New "official" way how to use an installed kdelibs from the frameworks branch
Alexander Neundorf
neundorf at kde.org
Thu Feb 7 23:14:30 UTC 2013
Hi,
after looking at the current plasma-framework buildsystem I worked a bit on
the kdelibs and plasma buildsystem, and there is now a somewhat sane way to
use an installed kdelibs from the frameworks branch.
So, compared to kdelibs before, now FindKDE4Internal.cmake is no longer
installed.
Instead kdelibs now installs a KDELibs4Config.cmake, which (still) contains
most of what was in FindKDE4Internal.cmake.
KDELibs4Config.cmake is installed into lib/cmake/KDELibs4/, i.e. in a
directory where cmake searches for Config.cmake files in NO_MODULE mode.
KDELibs4Config.cmake does not contain cmake- or compiler settings anymore.
This must now come from extra-cmake-modules by finding KF5:
find_package(KF5 MODULE REQUIRED CMake Compiler InstallDirs)
This "finds" KF5 and the meta-components
* CMake : cmake settings, e.g. RPATH handling
* Compiler : the compiler switches we had in FindKDE4Internal.cmake
* InstallDirs : the install dir variables as they were in
FindKDE4Internal.cmake
When searching KDELibs4, the tier1 libraries and ki18n the order matters.
The tier1 libs don't depend on anything, so they must be searched first.
ki18n must also be searched before KDELibs4, because libraries in KDELibs4
depend on it, and it fails otherwise.
What I committed/pushed is not perfect, but at least somewhat sane, and it
kind of works.
Let me know if it doesn't for you.
Alex
More information about the Kde-buildsystem
mailing list