project(KDEInstallDirs.vars_defined) cmake_minimum_required(VERSION 2.8.12) set(ECM_KDE_MODULE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../../kde-modules) set(ECM_MODULE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../../modules) set(CMAKE_MODULE_PATH "${ECM_KDE_MODULE_DIR}") include(KDEInstallDirs) set(misc_vars CMAKE_INSTALL_DEFAULT_COMPONENT_NAME INSTALL_TARGETS_DEFAULT_ARGS KF5_INSTALL_TARGETS_DEFAULT_ARGS ) set(relative_path_vars # old-style variables AUTOSTART_INSTALL_DIR BIN_INSTALL_DIR CMAKECONFIG_INSTALL_PREFIX CONFIG_INSTALL_DIR DATA_INSTALL_DIR DBUS_INTERFACES_INSTALL_DIR DBUS_SERVICES_INSTALL_DIR DBUS_SYSTEM_SERVICES_INSTALL_DIR EXEC_INSTALL_PREFIX HTML_INSTALL_DIR ICON_INSTALL_DIR INCLUDE_INSTALL_DIR KCFG_INSTALL_DIR KCONF_UPDATE_INSTALL_DIR KF5_DATA_INSTALL_DIR KF5_INCLUDE_INSTALL_DIR KF5_LIBEXEC_INSTALL_DIR KNOTIFYRC_INSTALL_DIR KXMLGUI_INSTALL_DIR LIBEXEC_INSTALL_DIR LIB_INSTALL_DIR LOCALE_INSTALL_DIR MAN_INSTALL_DIR SBIN_INSTALL_DIR SERVICES_INSTALL_DIR SERVICETYPES_INSTALL_DIR SHARE_INSTALL_PREFIX SOUND_INSTALL_DIR SYSCONF_INSTALL_DIR TEMPLATES_INSTALL_DIR WALLPAPER_INSTALL_DIR XDG_APPS_INSTALL_DIR XDG_DIRECTORY_INSTALL_DIR XDG_MIME_INSTALL_DIR # new-style variables CMAKE_INSTALL_APPDIR CMAKE_INSTALL_AUTOSTARTDIR CMAKE_INSTALL_BINDIR CMAKE_INSTALL_CMAKEPACKAGEDIR CMAKE_INSTALL_CONFDIR CMAKE_INSTALL_DATADIR CMAKE_INSTALL_DATADIR_KF5 CMAKE_INSTALL_DATAROOTDIR CMAKE_INSTALL_DBUSDIR CMAKE_INSTALL_DBUSINTERFACEDIR CMAKE_INSTALL_DBUSSERVICEDIR CMAKE_INSTALL_DBUSSYSTEMSERVICEDIR CMAKE_INSTALL_DESKTOPDIR CMAKE_INSTALL_DOCBUNDLEDIR CMAKE_INSTALL_EXECROOTDIR CMAKE_INSTALL_ICONDIR CMAKE_INSTALL_INCLUDEDIR CMAKE_INSTALL_INCLUDEDIR_KF5 CMAKE_INSTALL_INFODIR CMAKE_INSTALL_KCFGDIR CMAKE_INSTALL_KCONFUPDATEDIR CMAKE_INSTALL_KNOTIFY5RCDIR CMAKE_INSTALL_KXMLGUI5DIR CMAKE_INSTALL_KSERVICES5DIR CMAKE_INSTALL_KSERVICETYPES5DIR CMAKE_INSTALL_LIBDIR CMAKE_INSTALL_LIBEXECDIR CMAKE_INSTALL_LIBEXECDIR_KF5 CMAKE_INSTALL_LOCALEDIR CMAKE_INSTALL_LOCALSTATEDIR CMAKE_INSTALL_MANDIR CMAKE_INSTALL_MIMEDIR CMAKE_INSTALL_METAINFODIR CMAKE_INSTALL_SBINDIR CMAKE_INSTALL_SHAREDSTATEDIR CMAKE_INSTALL_SOUNDDIR CMAKE_INSTALL_SYSCONFDIR CMAKE_INSTALL_TEMPLATEDIR CMAKE_INSTALL_WALLPAPERDIR ) set(absolute_path_vars IMPORTS_INSTALL_DIR PLUGIN_INSTALL_DIR QML_INSTALL_DIR QT_PLUGIN_INSTALL_DIR CMAKE_INSTALL_PLUGINDIR CMAKE_INSTALL_QMLDIR CMAKE_INSTALL_QTPLUGINDIR CMAKE_INSTALL_QTQUICKIMPORTSDIR CMAKE_INSTALL_FULL_APPDIR CMAKE_INSTALL_FULL_AUTOSTARTDIR CMAKE_INSTALL_FULL_BINDIR CMAKE_INSTALL_FULL_CMAKEPACKAGEDIR CMAKE_INSTALL_FULL_CONFDIR CMAKE_INSTALL_FULL_DATADIR CMAKE_INSTALL_FULL_DATADIR_KF5 CMAKE_INSTALL_FULL_DATAROOTDIR CMAKE_INSTALL_FULL_DBUSDIR CMAKE_INSTALL_FULL_DBUSINTERFACEDIR CMAKE_INSTALL_FULL_DBUSSERVICEDIR CMAKE_INSTALL_FULL_DBUSSYSTEMSERVICEDIR CMAKE_INSTALL_FULL_DESKTOPDIR CMAKE_INSTALL_FULL_DOCBUNDLEDIR CMAKE_INSTALL_FULL_EXECROOTDIR CMAKE_INSTALL_FULL_ICONDIR CMAKE_INSTALL_FULL_INCLUDEDIR CMAKE_INSTALL_FULL_INCLUDEDIR_KF5 CMAKE_INSTALL_FULL_INFODIR CMAKE_INSTALL_FULL_KCFGDIR CMAKE_INSTALL_FULL_KCONFUPDATEDIR CMAKE_INSTALL_FULL_KNOTIFY5RCDIR CMAKE_INSTALL_FULL_KXMLGUI5DIR CMAKE_INSTALL_FULL_KSERVICES5DIR CMAKE_INSTALL_FULL_KSERVICETYPES5DIR CMAKE_INSTALL_FULL_LIBDIR CMAKE_INSTALL_FULL_LIBEXECDIR CMAKE_INSTALL_FULL_LIBEXECDIR_KF5 CMAKE_INSTALL_FULL_LOCALEDIR CMAKE_INSTALL_FULL_LOCALSTATEDIR CMAKE_INSTALL_FULL_MANDIR CMAKE_INSTALL_FULL_MIMEDIR CMAKE_INSTALL_FULL_METAINFODIR CMAKE_INSTALL_FULL_PLUGINDIR CMAKE_INSTALL_FULL_QMLDIR CMAKE_INSTALL_FULL_QTPLUGINDIR CMAKE_INSTALL_FULL_QTQUICKIMPORTSDIR CMAKE_INSTALL_FULL_SBINDIR CMAKE_INSTALL_FULL_SHAREDSTATEDIR CMAKE_INSTALL_FULL_SOUNDDIR CMAKE_INSTALL_FULL_SYSCONFDIR CMAKE_INSTALL_FULL_TEMPLATEDIR CMAKE_INSTALL_FULL_WALLPAPERDIR ) if(APPLE) # The default bundle directory is an absolute path list(APPEND absolute_path_vars BUNDLE_INSTALL_DIR CMAKE_INSTALL_BUNDLEDIR CMAKE_INSTALL_FULL_BUNDLEDIR ) endif() foreach(variable ${misc_vars} ${relative_path_vars} ${absolute_path_vars}) if(NOT DEFINED ${variable}) message(SEND_ERROR "${variable} is not defined.") endif() endforeach() foreach(variable ${relative_path_vars}) if(IS_ABSOLUTE ${${variable}}) message(SEND_ERROR "${variable} (${${variable}}) should be a relative path, but is absolute.") endif() endforeach() foreach(variable ${absolute_path_vars}) if(NOT IS_ABSOLUTE ${${variable}}) message(SEND_ERROR "${variable} (${${variable}}) should be an absolute path, but is relative.") endif() endforeach() add_executable(dummy main.c) set_target_properties(dummy PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})