Merge pull request #789 from offlinemark/mark/cmake-clean
cmake: Refactor targets export variable and improve comments
This commit is contained in:
@@ -46,6 +46,8 @@ set(CMAKE_VISIBILITY_INLINES_HIDDEN 1)
|
||||
# to distinguish between debug and release lib
|
||||
set(CMAKE_DEBUG_POSTFIX "d")
|
||||
|
||||
set(TARGETS_EXPORT_NAME "${CMAKE_PROJECT_NAME}Targets")
|
||||
|
||||
add_library(tinyxml2 tinyxml2.cpp tinyxml2.h)
|
||||
|
||||
set_target_properties(tinyxml2 PROPERTIES
|
||||
@@ -71,12 +73,13 @@ else()
|
||||
endif(MSVC)
|
||||
endif()
|
||||
|
||||
# export targets for find_package config mode
|
||||
# Export cmake script that can be used by downstream project
|
||||
# via `include()`
|
||||
export(TARGETS tinyxml2
|
||||
FILE ${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}Targets.cmake)
|
||||
FILE ${CMAKE_BINARY_DIR}/${TARGETS_EXPORT_NAME}.cmake)
|
||||
|
||||
install(TARGETS tinyxml2
|
||||
EXPORT ${CMAKE_PROJECT_NAME}Targets
|
||||
EXPORT ${TARGETS_EXPORT_NAME}
|
||||
RUNTIME
|
||||
DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
COMPONENT tinyxml2_runtime
|
||||
@@ -119,7 +122,6 @@ if(NOT TARGET uninstall)
|
||||
endif()
|
||||
|
||||
include(CMakePackageConfigHelpers)
|
||||
set(TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets")
|
||||
configure_package_config_file(
|
||||
"Config.cmake.in"
|
||||
"${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}Config.cmake"
|
||||
@@ -136,6 +138,7 @@ install(FILES
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${CMAKE_PROJECT_NAME}
|
||||
COMPONENT tinyxml2_config)
|
||||
|
||||
install(EXPORT ${CMAKE_PROJECT_NAME}Targets NAMESPACE tinyxml2::
|
||||
# Export targets for find_package config mode
|
||||
install(EXPORT ${TARGETS_EXPORT_NAME} NAMESPACE tinyxml2::
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${CMAKE_PROJECT_NAME}
|
||||
COMPONENT tinyxml2_config)
|
||||
|
||||
Reference in New Issue
Block a user