Skip to content

Commit 940d764

Browse files
author
Mr-Question
committed
maddouri#7 Make test app and installation of headers optional
Added CMake variables DYNALO_INSTALL_API and DYNALO_BUILD_TEST to enable/disable usage of test app and installation of auxiliary files.
1 parent da36490 commit 940d764

File tree

1 file changed

+42
-38
lines changed

1 file changed

+42
-38
lines changed

CMakeLists.txt

+42-38
Original file line numberDiff line numberDiff line change
@@ -18,44 +18,48 @@ elseif(WIN32)
1818
target_link_libraries(${PROJECT_NAME} INTERFACE kernel32)
1919
endif()
2020

21+
set (DYNALO_INSTALL_API OFF CACHE BOOL "Installs headers and CMake helpers")
22+
if (DYNALO_INSTALL_API)
23+
install(
24+
DIRECTORY "include/${PROJECT_NAME}"
25+
DESTINATION "include"
26+
)
2127

28+
install(TARGETS ${PROJECT_NAME} EXPORT ${PROJECT_NAME}Targets)
2229

23-
install(
24-
DIRECTORY "include/${PROJECT_NAME}"
25-
DESTINATION "include"
26-
)
27-
28-
install(TARGETS ${PROJECT_NAME} EXPORT ${PROJECT_NAME}Targets)
29-
30-
include (CMakePackageConfigHelpers)
31-
set(CONFIG_PACKAGE_BUILD_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}")
32-
set(CONFIG_PACKAGE_INSTALL_LOCATION "lib/cmake/${PROJECT_NAME}")
33-
write_basic_package_version_file (
34-
"${CONFIG_PACKAGE_BUILD_LOCATION}/${PROJECT_NAME}ConfigVersion.cmake"
35-
VERSION 1.0.3
36-
COMPATIBILITY AnyNewerVersion
37-
)
38-
export(
39-
EXPORT ${PROJECT_NAME}Targets
40-
FILE "${CONFIG_PACKAGE_BUILD_LOCATION}/${PROJECT_NAME}Targets.cmake"
41-
#NAMESPACE ${PROJECT_NAME}::
42-
)
43-
configure_file(
44-
"cmake/Config.cmake"
45-
"${CONFIG_PACKAGE_BUILD_LOCATION}/${PROJECT_NAME}Config.cmake"
46-
@ONLY
47-
)
48-
install(
49-
EXPORT "${PROJECT_NAME}Targets"
50-
FILE "${PROJECT_NAME}Targets.cmake"
51-
#NAMESPACE ${PROJECT_NAME}::
52-
DESTINATION "${CONFIG_PACKAGE_INSTALL_LOCATION}"
53-
)
54-
install(
55-
FILES
56-
"${CONFIG_PACKAGE_BUILD_LOCATION}/${PROJECT_NAME}Config.cmake"
57-
"${CONFIG_PACKAGE_BUILD_LOCATION}/${PROJECT_NAME}ConfigVersion.cmake"
58-
DESTINATION "${CONFIG_PACKAGE_INSTALL_LOCATION}"
59-
)
30+
include (CMakePackageConfigHelpers)
31+
set(CONFIG_PACKAGE_BUILD_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}")
32+
set(CONFIG_PACKAGE_INSTALL_LOCATION "lib/cmake/${PROJECT_NAME}")
33+
write_basic_package_version_file (
34+
"${CONFIG_PACKAGE_BUILD_LOCATION}/${PROJECT_NAME}ConfigVersion.cmake"
35+
VERSION 1.0.3
36+
COMPATIBILITY AnyNewerVersion
37+
)
38+
export(
39+
EXPORT ${PROJECT_NAME}Targets
40+
FILE "${CONFIG_PACKAGE_BUILD_LOCATION}/${PROJECT_NAME}Targets.cmake"
41+
#NAMESPACE ${PROJECT_NAME}::
42+
)
43+
configure_file(
44+
"cmake/Config.cmake"
45+
"${CONFIG_PACKAGE_BUILD_LOCATION}/${PROJECT_NAME}Config.cmake"
46+
@ONLY
47+
)
48+
install(
49+
EXPORT "${PROJECT_NAME}Targets"
50+
FILE "${PROJECT_NAME}Targets.cmake"
51+
#NAMESPACE ${PROJECT_NAME}::
52+
DESTINATION "${CONFIG_PACKAGE_INSTALL_LOCATION}"
53+
)
54+
install(
55+
FILES
56+
"${CONFIG_PACKAGE_BUILD_LOCATION}/${PROJECT_NAME}Config.cmake"
57+
"${CONFIG_PACKAGE_BUILD_LOCATION}/${PROJECT_NAME}ConfigVersion.cmake"
58+
DESTINATION "${CONFIG_PACKAGE_INSTALL_LOCATION}"
59+
)
60+
endif()
6061

61-
add_subdirectory(test)
62+
set (DYNALO_BUILD_TEST OFF CACHE BOOL "Builds test application")
63+
if (DYNALO_BUILD_TEST)
64+
add_subdirectory(test)
65+
endif()

0 commit comments

Comments
 (0)