Development/CMake/Addons for KDE
Appearance
< Development | CMake
A page to document the variables, macros and other useful stuff we have to use CMake as the KDE4 buildsystem.
Variables
The tools required to compile KDE software:
- KDE4_KCFGC_EXECUTABLE - the kconfig_compiler executable
- KDE4_AUTOMOC_EXECUTABLE - the kde4automoc executable
- KDE4_MEINPROC_EXECUTABLE - the meinproc4 executable
- KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets executable
The location of the KDE libraries:
- KDE4_KDECORE_LIBS - the kdecore library and all depending libraries
- KDE4_KDEUI_LIBS - the kdeui library and all depending libraries
- KDE4_KIO_LIBS - the kio library and all depending libraries
- KDE4_KPARTS_LIBS - the kparts library and all depending libraries
- KDE4_KUTILS_LIBS - the kutils library and all depending libraries
- KDE4_KDE3SUPPORT_LIBS - the kde3support library and all depending libraries
- KDE4_KFILE_LIBS - the kfile library and all depending libraries
- KDE4_KHTML_LIBS - the khtml library and all depending libraries
- KDE4_KJS_LIBS - the kjs library and all depending libraries
- KDE4_KNEWSTUFF2_LIBS - the knewstuff2 library and all depending libraries
- KDE4_KDEPRINT_LIBS - the kdeprint library and all depending libraries
- KDE4_KDNSSD_LIBS - the kdnssd library and all depending libraries
- KDE4_KDESU_LIBS - the kdesu library and all depending libraries
- KDE4_PHONON_LIBS - the phonon library and all depending librairies
- KDE4_KDEFX_LIBS - the kdefx library and all depending librairies
- KDE4_THREADWEAVER_LIBRARIES- the threadweaver library and all depending libraries
- KDE4_SOLID_LIBS - the solid library and all depending libraries
- KDE4_KNOTIFYCONFIG_LIBS - the knotify config library and all depending libraries
- KDE4_KROSSCORE_LIBS - the kross core library and all depending libraries
- KDE4_KROSSUI_LIBS - the kross ui library which includes core and all depending libraries
- KDE4_KTEXTEDITOR_LIBS - the ktexteditor library and all depending libraries
- KDE4_KNEPOMUK_LIBS - the knepomuk library and all depending libraries
- KDE4_KMETADATA_LIBS - the kmetadata library and all depending libraries
The locations of install directories. They are all interpreted relative to CMAKE_INSTALL_PREFIX:
- BIN_INSTALL_DIR - the directory where executables be installed (default is prefix/bin)
- SBIN_INSTALL_DIR - the directory where system executables will be installed (default is prefix/sbin)
- LIB_INSTALL_DIR - the directory where libraries will be installed (default is prefix/lib)
- CONFIG_INSTALL_DIR - the config file install dir
- DATA_INSTALL_DIR - the parent directory where applications can install their data
- HTML_INSTALL_DIR - the HTML install dir for documentation
- ICON_INSTALL_DIR - the icon install dir (default is prefix/share/icons)
- INFO_INSTALL_DIR - the kde info install dir (default is prefix/info)
- KCFG_INSTALL_DIR - the install dir for kconfig files
- LOCALE_INSTALL_DIR - the install dir for translations
- MAN_INSTALL_DIR - the kde man page install dir (default is prefix/man)
- MIME_INSTALL_DIR - the install dir for the mimetype desktop files
- PLUGIN_INSTALL_DIR - the subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)
- SERVICES_INSTALL_DIR - the install dir for service (desktop, protocol, ...) files
- SERVICETYPES_INSTALL_DIR - the install dir for servicestypes desktop files
- SOUND_INSTALL_DIR - the install dir for sound files
- TEMPLATES_INSTALL_DIR - the install dir for templates (Create new file...)
- WALLPAPER_INSTALL_DIR - the install dir for wallpapers
- KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir
- XDG_APPS_INSTALL_DIR - the XDG apps dir
- XDG_DIRECTORY_INSTALL_DIR- the XDG directory
- XDG_MIME_INSTALL_DIR - the XDG mimetypes install dir
- DBUS_INTERFACES_INSTALL_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces)
- DBUS_SERVICES_INSTALL_DIR - the directory where dbus services be installed (default is prefix/share/dbus-1/services)
Macros
Lots of useful macros:
- KDE4_ADD_UI_FILES
- KDE4_ADD_UI3_FILES
- KDE4_ADD_KCFG_FILES
- KDE4_SET_CUSTOM_TARGET_PROPERTY
- KDE4_GET_CUSTOM_TARGET_PROPERTY
- KDE4_MOC_HEADERS
- KDE4_HANDLE_AUTOMOC
- KDE4_CREATE_FINAL_FILES
- KDE4_ADD_PLUGIN
- KDE4_ADD_KDEINIT_EXECUTABLE
- KDE4_ADD_UNIT_TEST
- KDE4_ADD_TEST_EXECUTABLE
- KDE4_ADD_EXECUTABLE
- KDE4_ADD_WIDGET_FILES
- KDE4_UPDATE_ICONCACHE
- KDE4_INSTALL_ICONS
- KDE4_REMOVE_OBSOLETE_CMAKE_FILES
- KDE4_NO_ENABLE_FINAL
- KDE4_CREATE_HANDBOOK