Bug 341877 - "circular dependency" between kdepimlibs and new split PIM kmailtransport
Summary: "circular dependency" between kdepimlibs and new split PIM kmailtransport
Status: RESOLVED NOT A BUG
Alias: None
Product: kdepimlibs
Classification: Applications
Component: general (show other bugs)
Version: GIT (master)
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
: 341923 (view as bug list)
Depends on:
Blocks:
 
Reported: 2014-12-14 12:51 UTC by Gustavo Alvarez
Modified: 2016-04-12 16:06 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gustavo Alvarez 2014-12-14 12:51:44 UTC
When try build kdepimlibs:

CMake Error at akonadi-calendar/CMakeLists.txt:33 (find_package):
  Could not find a package configuration file provided by "KF5MailTransport"
  (requested version 4.78.0) with any of the following names:

    KF5MailTransportConfig.cmake
    kf5mailtransport-config.cmake

  Add the installation prefix of "KF5MailTransport" to CMAKE_PREFIX_PATH or
  set "KF5MailTransport_DIR" to a directory containing one of the above
  files.  If "KF5MailTransport" provides a separate development package or
  SDK, be sure it has been installed.


-- Configuring incomplete, errors occurred!


When build kmailtransport:

CMake Error at CMakeLists.txt:39 (find_package):
  Could not find a package configuration file provided by "KF5Akonadi"
  (requested version 4.78.0) with any of the following names:

    KF5AkonadiConfig.cmake
    kf5akonadi-config.cmake

  Add the installation prefix of "KF5Akonadi" to CMAKE_PREFIX_PATH or set
  "KF5Akonadi_DIR" to a directory containing one of the above files.  If
  "KF5Akonadi" provides a separate development package or SDK, be sure it has
  been installed.


-- Configuring incomplete, errors occurred!

Reproducible: Always

Steps to Reproduce:
1. try build kdepimlibs and kmailtransport from GIT
2. build kdepimlibs
3. build kamiltransport to attempt solve the kdepimlibs dependency

Actual Results:  
fail build both in cmake configure

Expected Results:  
build
Comment 1 Christophe Marin 2014-12-16 16:33:19 UTC
*** Bug 341923 has been marked as a duplicate of this bug. ***
Comment 2 Christophe Marin 2014-12-17 11:25:15 UTC
akonadi-calendar is not in kdepimlibs anymore.

https://projects.kde.org/akonadi-calendar
Comment 3 James Richard Tyrer 2016-03-29 12:36:32 UTC
This same problem, or a very similar one, appears to occur with KDEPIMlibs-15.12.3

Therefore, this bug needs to be reopened and actually fixed.
Comment 4 Laurent Montel 2016-03-29 13:31:57 UTC
nope I build correctly for sure.
Comment 5 James Richard Tyrer 2016-03-29 17:34:48 UTC
16.03.80 behaves as follows:

configure of KDEpimligs asks for:

KF5CalendarCoreConfig.cmake

which is supplied by: akonadi-calendar

configure of akonadi-calendar asks for

KF5MailTransportConfig.cmake

which is supplied by: kmailtransport

configure of kmailtransport asks for

KF5AkonadiMimeConfig.cmake

which is supplied by KDEpimlibs

AND SO IT GOES ROUND!!
Comment 6 James Richard Tyrer 2016-03-29 17:44:55 UTC
(In reply to Laurent Montel from comment #4)
> nope I build correctly for sure.
Do you understand that if you try building it on a system where it has been previously installed that you can probably install it without any problem.  To test it, you need to move these three files:

KF5CalendarCoreConfig.cmake
KF5MailTransportConfig.cmake
KF5AkonadiMimeConfig.cmake

to a SCRATCH or $HOME area where they will not be found.

If you would please post your:

KF5CalendarCoreConfig.cmake

file, I will experiment with it and try to confirm that that is indeed the case.  It should only take one file to break the circle.
Comment 7 Laurent Montel 2016-03-30 04:44:58 UTC
Wrong KF5CalendarCoreConfig.cmake is provided by kcalcore. which doesn't ask kdepimlibs or kmailtransport
it asks just 
find_dependency(KF5KDELibs4Support "5.19.0")
find_dependency(LibIcal "0.42")
Comment 8 James Richard Tyrer 2016-03-30 14:12:51 UTC
(In reply to James Richard Tyrer from comment #5)
> 16.03.80 behaves as follows:
> 
> configure of KDEpimligs asks for:
> 
> KF5CalendarCoreConfig.cmake
> 
Yes, that is provided by: kcalcore.  Which I might note that you don't find if you look for "calendar".

Should I revise the Bug to state the problem as being that there are CAM (Content Addressable Memory) references that indicate which dependencies are required rather than the actual name of the package.  Not to mention the fact that they are all very similar.  That is if you have the package, you can look to see what it provides but how do you do the reverse?  Is there a reason why the dependencies don't state the name of the package which is needed rather than a file which that package would supply AFTER it is installed?
Comment 9 Christophe Marin 2016-04-12 16:06:20 UTC
No thanks.