diff options
author | Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) <spamtrap@nedprod.com> | 2020-11-11 15:04:20 +0300 |
---|---|---|
committer | Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) <spamtrap@nedprod.com> | 2020-11-11 15:04:20 +0300 |
commit | bbd44623594142155d49bd3ce8820d3cf9da1e1e (patch) | |
tree | 00dca57294fd8da6cc59030ac3e22de02efeada8 | |
parent | 2a6d4d320ee3df3921d6fd3562f0fc593b1823f3 (diff) |
Fix cmake install not installing libraries nor binaries, and use EXPORT_NAME instead of FixupInstall.HEADv1.0.0master
-rw-r--r-- | CMakeLists.txt | 44 | ||||
-rw-r--r-- | FixupInstall.cmake.in | 6 |
2 files changed, 38 insertions, 12 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index fbfb983..33eeb49 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -37,10 +37,27 @@ set_target_properties(${PROJECT_NAME}_dl PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" ) add_library(${PROJECT_NAME}::dl ALIAS ${PROJECT_NAME}_dl) +if(CMAKE_GENERATOR MATCHES "Visual Studio") + set_target_properties(${PROJECT_NAME}_dl PROPERTIES + OUTPUT_NAME "${PROJECT_NAME}_dl-${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}-$<PLATFORM_ID>-${CMAKE_SYSTEM_PROCESSOR}-$<CONFIG>" + ) +elseif(CMAKE_GENERATOR MATCHES "Xcode") + set_target_properties(${PROJECT_NAME}_dl PROPERTIES + OUTPUT_NAME "${PROJECT_NAME}_dl-${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}-$<PLATFORM_ID>-${CMAKE_SYSTEM_PROCESSOR}-$<CONFIG>" + ) +else() + set_target_properties(${PROJECT_NAME}_dl PROPERTIES + OUTPUT_NAME "${PROJECT_NAME}_dl-${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}-${CMAKE_BUILD_TYPE}" + ) +endif() install(TARGETS ${PROJECT_NAME}_dl EXPORT ${PROJECT_NAME}Exports INCLUDES DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" ) +set_target_properties(${PROJECT_NAME}_dl PROPERTIES EXPORT_NAME dl) add_library(${PROJECT_NAME}_sl STATIC "src/ntkernel_category.cpp") target_compile_features(${PROJECT_NAME}_sl PUBLIC cxx_std_11) @@ -54,11 +71,28 @@ set_target_properties(${PROJECT_NAME}_sl PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" ) +if(CMAKE_GENERATOR MATCHES "Visual Studio") + set_target_properties(${PROJECT_NAME}_sl PROPERTIES + OUTPUT_NAME "${PROJECT_NAME}_sl-${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}-$<PLATFORM_ID>-${CMAKE_SYSTEM_PROCESSOR}-$<CONFIG>" + ) +elseif(CMAKE_GENERATOR MATCHES "Xcode") + set_target_properties(${PROJECT_NAME}_sl PROPERTIES + OUTPUT_NAME "${PROJECT_NAME}_sl-${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}-$<PLATFORM_ID>-${CMAKE_SYSTEM_PROCESSOR}-$<CONFIG>" + ) +else() + set_target_properties(${PROJECT_NAME}_sl PROPERTIES + OUTPUT_NAME "${PROJECT_NAME}_sl-${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}-${CMAKE_BUILD_TYPE}" + ) +endif() add_library(${PROJECT_NAME}::sl ALIAS ${PROJECT_NAME}_sl) install(TARGETS ${PROJECT_NAME}_sl EXPORT ${PROJECT_NAME}Exports INCLUDES DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" ) +set_target_properties(${PROJECT_NAME}_sl PROPERTIES EXPORT_NAME sl) add_library(${PROJECT_NAME}_hl INTERFACE) target_compile_features(${PROJECT_NAME}_hl INTERFACE cxx_std_11) @@ -74,7 +108,11 @@ add_library(${PROJECT_NAME}::hl ALIAS ${PROJECT_NAME}_hl) install(TARGETS ${PROJECT_NAME}_hl EXPORT ${PROJECT_NAME}Exports INCLUDES DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" ) +set_target_properties(${PROJECT_NAME}_hl PROPERTIES EXPORT_NAME hl) configure_file( "${CMAKE_CURRENT_LIST_DIR}/ProjectConfig.cmake.in" @@ -89,12 +127,6 @@ install(EXPORT ${PROJECT_NAME}Exports NAMESPACE ${PROJECT_NAME}:: DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}" ) -configure_file( - "${CMAKE_CURRENT_LIST_DIR}/FixupInstall.cmake.in" - "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}FixupInstall.cmake" - @ONLY -) -install(SCRIPT "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}FixupInstall.cmake") if(NOT PROJECT_IS_DEPENDENCY) diff --git a/FixupInstall.cmake.in b/FixupInstall.cmake.in deleted file mode 100644 index c784402..0000000 --- a/FixupInstall.cmake.in +++ /dev/null @@ -1,6 +0,0 @@ -file(READ "@CMAKE_BINARY_DIR@/CMakeFiles/Export/lib/cmake/@PROJECT_NAME@/@PROJECT_NAME@Exports.cmake" exportfile1) -string(REGEX REPLACE "[^ :\"(;]+::([^_]+)_(hl|sl|dl)" "\\1::\\2" exportfile2 "${exportfile1}") -if(NOT exportfile1 STREQUAL exportfile2) - file(WRITE "@CMAKE_BINARY_DIR@/CMakeFiles/Export/lib/cmake/@PROJECT_NAME@/@PROJECT_NAME@Exports.cmake" "${exportfile2}") - file(WRITE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/@PROJECT_NAME@/@PROJECT_NAME@Exports.cmake" "${exportfile2}") -endif() |