diff options
| author | Trent Weiss <ttw2xk@virginia.edu> | 2020-05-21 14:54:42 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-05-21 11:54:42 -0700 |
| commit | 2c2735a9e1729c1926d22d980ebd61b7318e81ae (patch) | |
| tree | acb28707efd2d7e4085763fe40f7cd1a837316bc | |
| parent | 4c1db6840fa7661cf2adb27fa56e4bd0c6f022ea (diff) | |
| download | vcpkg-2c2735a9e1729c1926d22d980ebd61b7318e81ae.tar.gz vcpkg-2c2735a9e1729c1926d22d980ebd61b7318e81ae.zip | |
[tinyxml] Use proper CMake targets (#11383)
* use proper cmake targets
* change target name to be unofficial
| -rw-r--r-- | ports/tinyxml/CMakeLists.txt | 27 | ||||
| -rw-r--r-- | ports/tinyxml/portfile.cmake | 3 | ||||
| -rw-r--r-- | ports/tinyxml/tinyxml-config.cmake | 17 |
3 files changed, 24 insertions, 23 deletions
diff --git a/ports/tinyxml/CMakeLists.txt b/ports/tinyxml/CMakeLists.txt index b849c07f9..2004da4af 100644 --- a/ports/tinyxml/CMakeLists.txt +++ b/ports/tinyxml/CMakeLists.txt @@ -10,20 +10,31 @@ set(SOURCES "tinyxml.cpp" option(BUILD_SHARED_LIBS "Build shared libs" OFF) -add_library(tinyxml ${SOURCES}) -target_compile_definitions(tinyxml PRIVATE "-DTIXML_USE_STL") +add_library(unofficial-tinyxml ${SOURCES}) +target_compile_definitions(unofficial-tinyxml PRIVATE "-DTIXML_USE_STL") +set_target_properties(unofficial-tinyxml PROPERTIES OUTPUT_NAME tinyxml) include(GenerateExportHeader) -generate_export_header(tinyxml) +generate_export_header(unofficial-tinyxml BASE_NAME tinyxml) -target_include_directories(tinyxml PRIVATE ${CMAKE_CURRENT_BINARY_DIR}) - -install( - TARGETS tinyxml +target_include_directories(unofficial-tinyxml + PUBLIC + $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}> + $<INSTALL_INTERFACE:include> +) +install(TARGETS unofficial-tinyxml + EXPORT tinyxml-export ARCHIVE DESTINATION lib LIBRARY DESTINATION lib RUNTIME DESTINATION bin ) - +install(EXPORT tinyxml-export +FILE + tinyxmlTargets.cmake +NAMESPACE + unofficial-tinyxml:: +DESTINATION + share/tinyxml +) install(FILES ${HEADERS} ${CMAKE_CURRENT_BINARY_DIR}/tinyxml_export.h DESTINATION include) diff --git a/ports/tinyxml/portfile.cmake b/ports/tinyxml/portfile.cmake index b43526efa..0ffc859aa 100644 --- a/ports/tinyxml/portfile.cmake +++ b/ports/tinyxml/portfile.cmake @@ -26,8 +26,9 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() - +vcpkg_fixup_cmake_targets() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/License.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/tinyxml RENAME copyright) file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/tinyxml-config.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/tinyxml) diff --git a/ports/tinyxml/tinyxml-config.cmake b/ports/tinyxml/tinyxml-config.cmake index 1bdc5ad7f..15ad7bdc5 100644 --- a/ports/tinyxml/tinyxml-config.cmake +++ b/ports/tinyxml/tinyxml-config.cmake @@ -3,17 +3,6 @@ if (tinyxml_CONFIG_INCLUDED) endif()
set(tinyxml_CONFIG_INCLUDED TRUE)
-set(tinyxml_INCLUDE_DIRS "${CMAKE_CURRENT_LIST_DIR}/../../include")
-
-foreach(lib tinyxml)
- set(onelib "${lib}-NOTFOUND")
- find_library(onelib ${lib}
- PATHS "${CMAKE_CURRENT_LIST_DIR}/../../lib"
- NO_DEFAULT_PATH
- )
- if(NOT onelib)
- message(FATAL_ERROR "Library '${lib}' in package tinyxml is not installed properly")
- endif()
- list(APPEND tinyxml_LIBRARIES ${onelib})
-endforeach()
-
+include(${CMAKE_CURRENT_LIST_DIR}/tinyxmlTargets.cmake)
+set(tinyxml_LIBRARIES unofficial-tinyxml::unofficial-tinyxml)
+get_target_property(tinyxml_INCLUDE_DIRS unofficial-tinyxml::unofficial-tinyxml INTERFACE_INCLUDE_DIRECTORIES)
\ No newline at end of file |
