(→New libraries: knewstuff3, kunitconversion and kdewebkit) |
|||
| Line 49: | Line 49: | ||
With KDE 4.5 3 four new libraries were added to kdelibs: the kemoticons library, the kidletime library, the kcmutils library and the kprintutils library. These libraries come with their associated variables. So if you want to link against these libraries, use ${KDE4_KEMOTICONS_LIBS}, ${KDE4_KIDLETIME_LIBS}, ${KDE4_KCMUTILS_LIBS} and ${KDE4_KPRINTUTILS_LIBS} respectively. They don't require an additional include directory. | With KDE 4.5 3 four new libraries were added to kdelibs: the kemoticons library, the kidletime library, the kcmutils library and the kprintutils library. These libraries come with their associated variables. So if you want to link against these libraries, use ${KDE4_KEMOTICONS_LIBS}, ${KDE4_KIDLETIME_LIBS}, ${KDE4_KCMUTILS_LIBS} and ${KDE4_KPRINTUTILS_LIBS} respectively. They don't require an additional include directory. | ||
| − | === | + | ===Improved RPATH settings=== |
| − | + | In the previous releases of KDE 4, the library installation directory was always added to the RPATH of libraries and executables. | |
| + | With KDE 4.5 this is now only done if the library installation directory is not one of the system default library directories. | ||
| + | This means that e.g. /usr/lib is not added anymore to the RPATH. | ||
===Other minor changes=== | ===Other minor changes=== | ||
| − | * | + | * A cache variable KDE4_SERIALIZE_TOOL has been added. It is empty by default, |
| + | but you can set it to a tool to serialize resource-intensive commands in parallel builds. | ||
| − | * | + | * Some improvements to make cross compiling KDE easier were committed to FindKDE4Internal.cmake, but we are still not ready for cross compiling. |
| − | * | + | * The documentation was improved, e.g. the macro KDE4_ADD_APP_ICON() was undocumented before. |
| − | + | ||
| − | + | ||
==New Modules== | ==New Modules== | ||
Contents |
Starting with KDE 4.5, CMake >= 2.6.4 is required.
Starting with KDE 4.5, CMake >= 2.6.4 is required (KDE 4.2 to 4.4 required 2.6.2).
The commit policy introduced during the 4.3 development cycle is still active and must be followed.
A lot of work went into FindQt4.cmake. This includes:
Imported Targets
FindQt4.cmake now creates an imported library target for each of the Qt libraries which has been found. These imported targets can then be used like "normal" targets in CMakeLists.txt, e.g. in TARGET_LINK_LIBRARIES(). These imported targets are named "Qt4::<library name>", e.g. Qt4::QtCore or Qt4::QtGui. This brings several advantages:
If the variable QT_USE_IMPORTED_TARGETS is set to TRUE before FindQt4.cmake is executed, also the Qt library variables like QT_QTCORE_LIBRARY are set to point to these imported targets instead to the file path. This is the case automatically when doing a find_package(KDE4).
With KDE 4.5 3 four new libraries were added to kdelibs: the kemoticons library, the kidletime library, the kcmutils library and the kprintutils library. These libraries come with their associated variables. So if you want to link against these libraries, use ${KDE4_KEMOTICONS_LIBS}, ${KDE4_KIDLETIME_LIBS}, ${KDE4_KCMUTILS_LIBS} and ${KDE4_KPRINTUTILS_LIBS} respectively. They don't require an additional include directory.
In the previous releases of KDE 4, the library installation directory was always added to the RPATH of libraries and executables. With KDE 4.5 this is now only done if the library installation directory is not one of the system default library directories. This means that e.g. /usr/lib is not added anymore to the RPATH.
but you can set it to a tool to serialize resource-intensive commands in parallel builds.
Some completely new installed modules have been added during this cycle:
Also added were FindDocBookXML.cmake and FindDocBookXSL.cmake, but both are used only internally inside kdelibs and both are not installed.