# Install config if(${CMAKE_VERSION} VERSION_LESS "3.23.0") # Old way # Define exports install(TARGETS bimap EXPORT ojl_bimapExports ) # Install header directory # Don't install bijection.hpp yet install(DIRECTORY ${CMAKE_SOURCE_DIR}/include/ojl DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} FILES_MATCHING PATTERN *bimap.hpp #*bijection.hpp ) else() # Define export set bimapTargets, install headers install(TARGETS bimap EXPORT ojl_bimapExports FILE_SET HEADERS DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ojl ) endif() # Generate the export set file install(EXPORT ojl_bimapExports FILE ojl_bimapExports.cmake NAMESPACE ojl:: DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/ojl_bimap-${PROJECT_VERSION} ) #I'd like for these paths to be cmake/ojl/bimap-version, but CMake won't find that #Generate the config include(CMakePackageConfigHelpers) # Generate the CMake Config file configure_package_config_file( "${PROJECT_SOURCE_DIR}/cmake/ojl_bimapConfig.cmake.in" "${PROJECT_BINARY_DIR}/ojl_bimapConfig.cmake" INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/ojl_bimap-${PROJECT_VERSION} ) # Generate a file that checks the version write_basic_package_version_file( "ojl_bimapConfigVersion.cmake" VERSION ${bimap_VERSION} COMPATIBILITY SameMajorVersion ) install(FILES "${CMAKE_CURRENT_BINARY_DIR}/ojl_bimapConfig.cmake" "${CMAKE_CURRENT_BINARY_DIR}/ojl_bimapConfigVersion.cmake" DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/ojl_bimap-${PROJECT_VERSION} )