Skip to content

Commit

Permalink
Remove from targets
Browse files Browse the repository at this point in the history
  • Loading branch information
bernedom committed Feb 11, 2022
1 parent d7f5c18 commit 4d5b4a8
Showing 1 changed file with 21 additions and 22 deletions.
43 changes: 21 additions & 22 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,6 @@ project(
HOMEPAGE_URL "https://github.com/bernedom/SI"
LANGUAGES CXX)

add_library(${PROJECT_NAME} INTERFACE)
# add alias so the project can be uses with add_subdirectory
add_library(${PROJECT_NAME}::${PROJECT_NAME} ALIAS ${PROJECT_NAME})

include(GNUInstallDirs)
include(CTest)

Expand All @@ -27,14 +23,17 @@ option(SI_INSTALL_LIBRARY
option(SI_BUILD_TESTING "Build and run SI tests " ${IS_TOPLEVEL_PROJECT})
option(SI_BUILD_DOC "Generate SI documentation" ${IS_TOPLEVEL_PROJECT})

add_library(SI INTERFACE)
# add alias so the project can be uses with add_subdirectory
add_library(SI::SI ALIAS SI)

# Adding the install interface generator expression makes sure that the include
# files are installed to the proper location (provided by GNUInstallDirs)
target_include_directories(
${PROJECT_NAME}
INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
SI INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)

target_compile_features(${PROJECT_NAME} INTERFACE cxx_std_17)
target_compile_features(SI INTERFACE cxx_std_17)

if(BUILD_TESTING AND SI_BUILD_TESTING)
add_subdirectory(test)
Expand All @@ -47,32 +46,32 @@ endif()
if(SI_INSTALL_LIBRARY)
# locations are provided by GNUInstallDirs
install(
TARGETS ${PROJECT_NAME}
EXPORT ${PROJECT_NAME}_Targets
TARGETS SI
EXPORT SI_Targets
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})

include(CMakePackageConfigHelpers)
write_basic_package_version_file(
"${PROJECT_NAME}ConfigVersion.cmake"
"SIConfigVersion.cmake"
VERSION ${PROJECT_VERSION}
COMPATIBILITY SameMajorVersion)

configure_package_config_file(
"${PROJECT_SOURCE_DIR}/cmake/${PROJECT_NAME}Config.cmake.in"
"${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
INSTALL_DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME}/cmake)
"${PROJECT_SOURCE_DIR}/cmake/SIConfig.cmake.in"
"${PROJECT_BINARY_DIR}/SIConfig.cmake"
INSTALL_DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/SI/cmake)

install(
EXPORT ${PROJECT_NAME}_Targets
FILE ${PROJECT_NAME}Targets.cmake
NAMESPACE ${PROJECT_NAME}::
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME}/cmake)

install(FILES "${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
"${PROJECT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake"
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME}/cmake)
EXPORT SI_Targets
FILE SITargets.cmake
NAMESPACE SI::
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/SI/cmake)

install(FILES "${PROJECT_BINARY_DIR}/SIConfig.cmake"
"${PROJECT_BINARY_DIR}/SIConfigVersion.cmake"
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/SI/cmake)

install(DIRECTORY ${PROJECT_SOURCE_DIR}/include/SI
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
Expand Down

0 comments on commit 4d5b4a8

Please sign in to comment.