diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/CMakeLists.txt | 3 | ||||
| -rw-r--r-- | tests/KDEInstallDirsTest/CMakeLists.txt | 7 | ||||
| -rw-r--r-- | tests/KDEInstallDirsTest/usr_vars_defined/CMakeLists.txt | 179 | ||||
| -rw-r--r-- | tests/KDEInstallDirsTest/usr_vars_defined/main.c | 4 | 
4 files changed, 186 insertions, 7 deletions
| diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index b8fb3b84..0ee544a5 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -32,6 +32,9 @@ add_test_macro(ExecuteKDEModules dummy)  add_test_macro(KDEInstallDirsTest.vars_defined dummy)  add_test_macro(KDEInstallDirsTest.not_cache_variable dummy) +set(KDEInstallDirsTest.usr_vars_defined_EXTRA_OPTIONS +    --build-options -DCMAKE_INSTALL_PREFIX=/usr) +add_test_macro(KDEInstallDirsTest.usr_vars_defined dummy)  find_package(Qt5Core QUIET)  if (TARGET Qt5::qmake)      set(KDEInstallDirsTest.qt_vars_defined_EXTRA_OPTIONS diff --git a/tests/KDEInstallDirsTest/CMakeLists.txt b/tests/KDEInstallDirsTest/CMakeLists.txt deleted file mode 100644 index ad3febe5..00000000 --- a/tests/KDEInstallDirsTest/CMakeLists.txt +++ /dev/null @@ -1,7 +0,0 @@ -file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/not_cache_variable) - -add_test( -    NAME KDEInstallDirs_not_cache_variable -    WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/not_cache_variable -    COMMAND "${CMAKE_COMMAND}" "${CMAKE_CURRENT_SOURCE_DIR}/not_cache_variable" -    ) diff --git a/tests/KDEInstallDirsTest/usr_vars_defined/CMakeLists.txt b/tests/KDEInstallDirsTest/usr_vars_defined/CMakeLists.txt new file mode 100644 index 00000000..aea07604 --- /dev/null +++ b/tests/KDEInstallDirsTest/usr_vars_defined/CMakeLists.txt @@ -0,0 +1,179 @@ +# In this test, CMAKE_INSTALL_DIR=/usr + +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 +    BIN_INSTALL_DIR +    CMAKECONFIG_INSTALL_PREFIX +    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 +    IMPORTS_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 +    PLUGIN_INSTALL_DIR +    QML_INSTALL_DIR +    QT_PLUGIN_INSTALL_DIR +    SBIN_INSTALL_DIR +    SERVICES_INSTALL_DIR +    SERVICETYPES_INSTALL_DIR +    SHARE_INSTALL_PREFIX +    SOUND_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_BINDIR +    CMAKE_INSTALL_CMAKEPACKAGEDIR +    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_PLUGINDIR +    CMAKE_INSTALL_QMLDIR +    CMAKE_INSTALL_QTPLUGINDIR +    CMAKE_INSTALL_QTQUICKIMPORTSDIR +    CMAKE_INSTALL_SBINDIR +    CMAKE_INSTALL_SHAREDSTATEDIR +    CMAKE_INSTALL_SOUNDDIR +    CMAKE_INSTALL_TEMPLATEDIR +    CMAKE_INSTALL_WALLPAPERDIR +) + +set(absolute_path_vars +    AUTOSTART_INSTALL_DIR +    CONFIG_INSTALL_DIR +    SYSCONF_INSTALL_DIR + +    CMAKE_INSTALL_AUTOSTARTDIR +    CMAKE_INSTALL_CONFDIR +    CMAKE_INSTALL_SYSCONFDIR + +    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}) diff --git a/tests/KDEInstallDirsTest/usr_vars_defined/main.c b/tests/KDEInstallDirsTest/usr_vars_defined/main.c new file mode 100644 index 00000000..c13815ce --- /dev/null +++ b/tests/KDEInstallDirsTest/usr_vars_defined/main.c @@ -0,0 +1,4 @@ +int main() +{ +   return 0; +} | 
