Development/CMake KDE 4 4: Difference between revisions

From KDE TechBase
(Created page with '=Changes in the buildsystem from KDE 4.3 to KDE 4.4= As with KDE 4.2 and 4.3, also for KDE 4.4 still CMake >= 2.6.2 is required, so no changes in this regard. ==Incompatible Ch...')
 
Line 17: Line 17:


===New libraries: knewstuff3, kunitconversion and kdewebkit===
===New libraries: knewstuff3, kunitconversion and kdewebkit===
With KDE 4.4 3 new libraries were added to kdelibs: the knewstuff3 library, the kunitconversion library and the kdewebkit library. These libraries come with their associated variables. So if you want to link against these libraries, use ${KDE4_KNEWSTUFF3_LIBS}, ${KDE4_KUNITCONVERSION_LIBS} and ${KDE4_KDEWEBKIT_LIBS} respectively. They don't require an additional include directory.


===New kdecore component KAuth===
===New kdecore component KAuth===


===File MacroAddFileDependencies.cmake removed===
With KDE 4.4 the kdecore library now contains a new authorization component, called KAuth, which support PolicyKit. Along with it come two new macros, KDE4_INSTALL_AUTH_ACTIONS() and KDE4_INSTALL_AUTH_HELPER_FILES(). These macros help with generating and installing the policy action files.
 
===Other minor changes===
 
* File MacroAddFileDependencies.cmake removed. We don't ship this file anymore since this file is part of CMake 2.6.2, which we still depend on for KDE 4.4. So it is not necessary to keep an identical copy in KDE.
 
* A new install location variable DBUS_SYSTEM_SERVICES_INSTALL_DIR has been added. It defaults  to ${CMAKE_INSTALL_PREFIX}/share/dbus-1/system-services/ . You probably want to set it to some system wide location.
 
* Macro KDE4_ADD_KCFG_FILES(): new optional argument USE_RELATIVE_PATH. Use this option to specify the (relative) path where the generated files will be put.


We don't ship this file anymore since this file is part of CMake 2.6.2, which we still depend on for KDE 4.4. So it is not necessary to keep an identical copy in KDE.
* Support for building KDE4 on GNU Hurd has been improved.


==New Modules==
==New Modules==

Revision as of 19:43, 27 January 2010

Changes in the buildsystem from KDE 4.3 to KDE 4.4

As with KDE 4.2 and 4.3, also for KDE 4.4 still CMake >= 2.6.2 is required, so no changes in this regard.

Incompatible Changes

FindQt4.cmake: Imported Targets for the libraries

This change which is under certain circumstances not source compatible.


Other Changes

Commit Policy for kdelibs/cmake/modules/

The commit policy introduced during the 4.3 development cycle has been kept and we try to follow it.

New libraries: knewstuff3, kunitconversion and kdewebkit

With KDE 4.4 3 new libraries were added to kdelibs: the knewstuff3 library, the kunitconversion library and the kdewebkit library. These libraries come with their associated variables. So if you want to link against these libraries, use ${KDE4_KNEWSTUFF3_LIBS}, ${KDE4_KUNITCONVERSION_LIBS} and ${KDE4_KDEWEBKIT_LIBS} respectively. They don't require an additional include directory.

New kdecore component KAuth

With KDE 4.4 the kdecore library now contains a new authorization component, called KAuth, which support PolicyKit. Along with it come two new macros, KDE4_INSTALL_AUTH_ACTIONS() and KDE4_INSTALL_AUTH_HELPER_FILES(). These macros help with generating and installing the policy action files.

Other minor changes

* File MacroAddFileDependencies.cmake removed. We don't ship this file anymore since this file is part of CMake 2.6.2, which we still depend on for KDE 4.4. So it is not necessary to keep an identical copy in KDE.
* A new install location variable DBUS_SYSTEM_SERVICES_INSTALL_DIR has been added. It defaults  to ${CMAKE_INSTALL_PREFIX}/share/dbus-1/system-services/ . You probably want to set it to some system wide location.
  • Macro KDE4_ADD_KCFG_FILES(): new optional argument USE_RELATIVE_PATH. Use this option to specify the (relative) path where the generated files will be put.
  • Support for building KDE4 on GNU Hurd has been improved.

New Modules

Some completely new installed modules have been added during this cycle:

  • FindHUNSPELL.cmake
  • FindKDevPlatform.cmake
  • FindLibAttica.cmake
  • FindSharedDesktopOntologies.cmake


Also added were FindPolkitQt-1.cmake and FindPolkitQt.cmake, but both are used only internally inside kdelibs and both are not installed.