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)
    The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

    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