build, cmake: update cmake to export Config to use find_package()

This commit is contained in:
Recep Aslantas
2020-05-25 17:06:48 +03:00
parent 799de548f4
commit 74cf89a82f
2 changed files with 30 additions and 10 deletions

View File

@@ -70,16 +70,13 @@ set_target_properties(${PROJECT_NAME} PROPERTIES
VERSION ${PROJECT_VERSION} VERSION ${PROJECT_VERSION}
SOVERSION ${PROJECT_VERSION_MAJOR}) SOVERSION ${PROJECT_VERSION_MAJOR})
target_include_directories(${PROJECT_NAME} PRIVATE include) target_include_directories(${PROJECT_NAME}
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) PUBLIC
$<INSTALL_INTERFACE:include>
# Install $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
install(TARGETS ${PROJECT_NAME} PRIVATE
EXPORT ${PROJECT_NAME} ${CMAKE_CURRENT_SOURCE_DIR}/src
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) )
install(DIRECTORY include/${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
PATTERN ".*" EXCLUDE)
# Test Configuration # Test Configuration
if(CGLM_USE_TEST) if(CGLM_USE_TEST)
@@ -87,3 +84,24 @@ if(CGLM_USE_TEST)
enable_testing() enable_testing()
add_subdirectory(test) add_subdirectory(test)
endif() endif()
# Install
install(TARGETS ${PROJECT_NAME}
EXPORT ${PROJECT_NAME}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_LIBDIR})
install(DIRECTORY include/${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
PATTERN ".*" EXCLUDE)
# Config
export(TARGETS ${PROJECT_NAME}
NAMESPACE ${PROJECT_NAME}::
FILE "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
)
install(EXPORT ${PROJECT_NAME}
NAMESPACE ${PROJECT_NAME}::
DESTINATION ${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}/cmake)

View File

@@ -179,6 +179,8 @@ target_link_libraries(${LIBRARY_NAME} PRIVATE
cglm) cglm)
add_subdirectory(external/cglm/) add_subdirectory(external/cglm/)
# or you can use find_package to configure cglm
``` ```
### Unix (Autotools) ### Unix (Autotools)