mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-28 03:10:57 +08:00
[libbson] Fix UWP builds. Suppress building static in DLL mode and vice-versa.
This commit is contained in:
parent
d03171d122
commit
4765c5853c
@ -1,3 +1,3 @@
|
||||
Source: libbson
|
||||
Version: 1.5.1
|
||||
Version: 1.5.1-1
|
||||
Description: libbson is a library providing useful routines related to building, parsing, and iterating BSON documents.
|
58
ports/libbson/fix-uwp.patch
Normal file
58
ports/libbson/fix-uwp.patch
Normal file
@ -0,0 +1,58 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 553f13b..03dc546 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -194,6 +194,8 @@ set (HEADERS
|
||||
${SOURCE_DIR}/src/bson/bson-writer.h
|
||||
)
|
||||
|
||||
+add_definitions(-D_CRT_SECURE_NO_WARNINGS)
|
||||
+
|
||||
add_library(bson_shared SHARED ${SOURCES} ${HEADERS})
|
||||
add_library(bson_static STATIC ${SOURCES} ${HEADERS})
|
||||
|
||||
@@ -272,8 +274,10 @@ if (ENABLE_TESTS)
|
||||
DESTINATION ${PROJECT_BINARY_DIR}/tests)
|
||||
endif () # ENABLE_TESTS
|
||||
|
||||
+set(INSTALL_TARGETS bson_shared bson_static CACHE INTERNAL "List of library targets to install")
|
||||
+
|
||||
install(
|
||||
- TARGETS bson_shared bson_static
|
||||
+ TARGETS ${INSTALL_TARGETS}
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
RUNTIME DESTINATION bin
|
||||
diff --git a/src/bson/bson-compat.h b/src/bson/bson-compat.h
|
||||
index 05fc614..e8e2214 100644
|
||||
--- a/src/bson/bson-compat.h
|
||||
+++ b/src/bson/bson-compat.h
|
||||
@@ -39,11 +39,11 @@
|
||||
|
||||
|
||||
#ifdef BSON_OS_WIN32
|
||||
-# if defined(_WIN32_WINNT) && (_WIN32_WINNT < 0x0600)
|
||||
+# if defined(_WIN32_WINNT) && (_WIN32_WINNT < 0x0602)
|
||||
# undef _WIN32_WINNT
|
||||
# endif
|
||||
# ifndef _WIN32_WINNT
|
||||
-# define _WIN32_WINNT 0x0600
|
||||
+# define _WIN32_WINNT 0x0602
|
||||
# endif
|
||||
# ifndef NOMINMAX
|
||||
# define NOMINMAX
|
||||
diff --git a/src/bson/bson-iso8601.c b/src/bson/bson-iso8601.c
|
||||
index 8beea90..cb4b531 100644
|
||||
--- a/src/bson/bson-iso8601.c
|
||||
+++ b/src/bson/bson-iso8601.c
|
||||
@@ -117,8 +117,8 @@ _bson_iso8601_date_parse (const char *str,
|
||||
const char *day_ptr;
|
||||
const char *hour_ptr;
|
||||
const char *min_ptr;
|
||||
- const char *sec_ptr;
|
||||
- const char *millis_ptr;
|
||||
+ const char *sec_ptr = NULL;
|
||||
+ const char *millis_ptr = NULL;
|
||||
const char *tz_ptr;
|
||||
|
||||
int32_t year_len = 0;
|
@ -8,10 +8,23 @@ vcpkg_download_distfile(ARCHIVE
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES ${CMAKE_CURRENT_LIST_DIR}/fix-uwp.patch
|
||||
)
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
|
||||
set(TARGET_TO_INSTALL bson_static)
|
||||
else()
|
||||
set(TARGET_TO_INSTALL bson_shared)
|
||||
endif()
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
-DENABLE_TESTS=OFF
|
||||
-DINSTALL_TARGETS=${TARGET_TO_INSTALL}
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
@ -25,11 +38,6 @@ file(RENAME ${CURRENT_PACKAGES_DIR}/temp ${CURRENT_PACKAGES_DIR}/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
|
||||
if (VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin)
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/bson-1.0.lib)
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/bson-1.0.lib)
|
||||
|
||||
file(RENAME
|
||||
${CURRENT_PACKAGES_DIR}/lib/bson-static-1.0.lib
|
||||
${CURRENT_PACKAGES_DIR}/lib/bson-1.0.lib)
|
||||
@ -43,9 +51,6 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
PATCHES
|
||||
${CMAKE_CURRENT_LIST_DIR}/static.patch
|
||||
)
|
||||
else()
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/bson-static-1.0.lib)
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/bson-static-1.0.lib)
|
||||
endif()
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libbson RENAME copyright)
|
Loading…
x
Reference in New Issue
Block a user