Development/CMake/Addons for KDE

From KDE TechBase
Revision as of 13:15, 17 September 2007 by Winterz (talk | contribs) (First draft)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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