Skip to content

Commit

Permalink
[tinyxml2] Update to 8.0.0; avoid exporting symbols when building sta…
Browse files Browse the repository at this point in the history
…tic libraries (microsoft#11616)

* [tinyxml2] Update to 8.0.0; avoid exporting symbols when building static libraries

* [tinyxml2] Clean up files
  • Loading branch information
orudge authored Jun 12, 2020
1 parent 269aeb7 commit 50deb3e
Show file tree
Hide file tree
Showing 3 changed files with 42 additions and 11 deletions.
3 changes: 1 addition & 2 deletions ports/tinyxml2/CONTROL
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
Source: tinyxml2
Version: 7.1.0
Version: 8.0.0
Homepage: https://github.com/leethomason/tinyxml2
Description: A simple, small, efficient, C++ XML parser

36 changes: 36 additions & 0 deletions ports/tinyxml2/fix-symbol-exports.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
From f8b048656b9937252ce5fb4ebea9e5df5b203bdb Mon Sep 17 00:00:00 2001
From: Owen Rudge <[email protected]>
Date: Wed, 27 May 2020 09:40:59 +0100
Subject: [PATCH] cmake: Don't export symbols if building static library

---
CMakeLists.txt | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9f9ab07..67b4f33 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -50,10 +50,16 @@ set(CMAKE_DEBUG_POSTFIX "d")

add_library(tinyxml2 tinyxml2.cpp tinyxml2.h)

-set_target_properties(tinyxml2 PROPERTIES
+if(BUILD_SHARED_LIBS)
+ set_target_properties(tinyxml2 PROPERTIES
COMPILE_DEFINITIONS "TINYXML2_EXPORT"
- VERSION "${GENERIC_LIB_VERSION}"
- SOVERSION "${GENERIC_LIB_SOVERSION}")
+ VERSION "${GENERIC_LIB_VERSION}"
+ SOVERSION "${GENERIC_LIB_SOVERSION}")
+else()
+ set_target_properties(tinyxml2 PROPERTIES
+ VERSION "${GENERIC_LIB_VERSION}"
+ SOVERSION "${GENERIC_LIB_SOVERSION}")
+endif()

target_compile_definitions(tinyxml2 PUBLIC $<$<CONFIG:Debug>:TINYXML2_DEBUG>)

--
2.25.1.windows.1

14 changes: 5 additions & 9 deletions ports/tinyxml2/portfile.cmake
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
include(vcpkg_common_functions)

vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO leethomason/tinyxml2
REF 9c740e8d2341bd46dbe8e87053cdb4d931971967 # 7.1.0
SHA512 a0e9634875f4c5f426f41510040b9f078af24adf176d2daf3cb3343d629b8068f3a1841df80a06d977bd19e3acaaa3736719a900754c1fe675631f3337820130
REF 8.0.0
SHA512 bcbb065c2af34ea681ec556377fd22e720b6f5d4caa73f432b1e34e08603a96f2233763f0ec5ae86b9ee71ddbe3062f58d3794cd3a162ce6903435530de0bba6
HEAD_REF master
PATCHES
fix-symbol-exports.patch
)

vcpkg_configure_cmake(
Expand All @@ -22,8 +22,4 @@ vcpkg_copy_pdbs()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)

file(COPY
${SOURCE_PATH}/readme.md
DESTINATION ${CURRENT_PACKAGES_DIR}/share/tinyxml2
)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/tinyxml2/readme.md ${CURRENT_PACKAGES_DIR}/share/tinyxml2/copyright)
file(INSTALL ${SOURCE_PATH}/readme.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)

0 comments on commit 50deb3e

Please sign in to comment.