diff options
author | lgotszal <lukasz.gotszald@intel.com> | 2019-09-24 16:44:13 +0200 |
---|---|---|
committer | lgotszal <lukasz.gotszald@intel.com> | 2019-09-24 16:44:13 +0200 |
commit | 3f9bad6fc4f6a534eb233352317aa5d9acc9d6e2 (patch) | |
tree | 1bdca22c8cf0f5ab10bd99fbdefbb23cda6eef76 | |
parent | 601d738723ac381741311c6c98c36d6170be14a2 (diff) | |
download | SPIRV-Headers-3f9bad6fc4f6a534eb233352317aa5d9acc9d6e2.tar.gz |
add cmake option SPIRV_HEADERS_SKIP_INSTALL
-rw-r--r-- | CMakeLists.txt | 104 |
1 files changed, 58 insertions, 46 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 5fd0196..c6f4c4c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -51,9 +51,18 @@ add_custom_target(install-headers option(SPIRV_HEADERS_SKIP_EXAMPLES "Skip building examples" ${SPIRV_HEADERS_SKIP_EXAMPLES}) + +option(SPIRV_HEADERS_SKIP_INSTALL "Skip install" + ${SPIRV_HEADERS_SKIP_INSTALL}) + if(NOT ${SPIRV_HEADERS_SKIP_EXAMPLES}) set(SPIRV_HEADERS_ENABLE_EXAMPLES ON) endif() + +if(NOT ${SPIRV_HEADERS_SKIP_INSTALL}) + set(SPIRV_HEADERS_ENABLE_INSTALL ON) +endif() + if (SPIRV_HEADERS_ENABLE_EXAMPLES) message(STATUS "Building SPIRV-Header examples") add_subdirectory(example) @@ -67,49 +76,52 @@ target_include_directories(${PROJECT_NAME} INTERFACE # Installation -set(config_install_dir "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}") - -set(generated_dir "${CMAKE_CURRENT_BINARY_DIR}/generated") - -set(version_config "${generated_dir}/${PROJECT_NAME}ConfigVersion.cmake") -set(project_config "${generated_dir}/${PROJECT_NAME}Config.cmake") -set(TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets") -set(namespace "${PROJECT_NAME}::") - -include(CMakePackageConfigHelpers) -write_basic_package_version_file( - "${version_config}" - COMPATIBILITY SameMajorVersion -) - -configure_package_config_file( - "cmake/Config.cmake.in" - "${project_config}" - INSTALL_DESTINATION "${config_install_dir}" -) - -install( - TARGETS ${PROJECT_NAME} - EXPORT "${TARGETS_EXPORT_NAME}" - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} - INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} -) - -install( - DIRECTORY include/spirv - DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} -) - -install( - FILES "${project_config}" "${version_config}" - DESTINATION "${config_install_dir}" -) - -install( - EXPORT "${TARGETS_EXPORT_NAME}" - NAMESPACE "${namespace}" - DESTINATION "${config_install_dir}" -) - +if (SPIRV_HEADERS_ENABLE_INSTALL) + message(STATUS "Installing SPIRV-Header") + + set(config_install_dir "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}") + + set(generated_dir "${CMAKE_CURRENT_BINARY_DIR}/generated") + + set(version_config "${generated_dir}/${PROJECT_NAME}ConfigVersion.cmake") + set(project_config "${generated_dir}/${PROJECT_NAME}Config.cmake") + set(TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets") + set(namespace "${PROJECT_NAME}::") + + include(CMakePackageConfigHelpers) + write_basic_package_version_file( + "${version_config}" + COMPATIBILITY SameMajorVersion + ) + + configure_package_config_file( + "cmake/Config.cmake.in" + "${project_config}" + INSTALL_DESTINATION "${config_install_dir}" + ) + + install( + TARGETS ${PROJECT_NAME} + EXPORT "${TARGETS_EXPORT_NAME}" + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} + ) + + install( + DIRECTORY include/spirv + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} + ) + + install( + FILES "${project_config}" "${version_config}" + DESTINATION "${config_install_dir}" + ) + + install( + EXPORT "${TARGETS_EXPORT_NAME}" + NAMESPACE "${namespace}" + DESTINATION "${config_install_dir}" + ) +endif() |