aboutsummaryrefslogtreecommitdiff
path: root/ports/mongo-c-driver
diff options
context:
space:
mode:
authorStefano Sinigardi <stesinigardi@hotmail.com>2019-10-07 19:35:13 +0200
committerCurtis J Bezault <curtbezault@gmail.com>2019-10-07 10:35:13 -0700
commit726c11148105a97aef39bec024fdb7c140b1b154 (patch)
tree26bd2aee0c13a8351b259cc4ffffaf0efededb4e /ports/mongo-c-driver
parente86ff2cc54bda9e9ee322ab69141e7113d5c40a9 (diff)
downloadvcpkg-726c11148105a97aef39bec024fdb7c140b1b154.tar.gz
vcpkg-726c11148105a97aef39bec024fdb7c140b1b154.zip
[vcpkg] fatal_error when patch fails to apply (#8087)
vcpkg will now fail on failure to apply patches except when using `--head`.
Diffstat (limited to 'ports/mongo-c-driver')
-rw-r--r--ports/mongo-c-driver/CONTROL2
-rw-r--r--ports/mongo-c-driver/fix-uwp.patch156
-rw-r--r--ports/mongo-c-driver/portfile.cmake9
-rw-r--r--ports/mongo-c-driver/static.patch11
4 files changed, 4 insertions, 174 deletions
diff --git a/ports/mongo-c-driver/CONTROL b/ports/mongo-c-driver/CONTROL
index ad9f9438f..18f189170 100644
--- a/ports/mongo-c-driver/CONTROL
+++ b/ports/mongo-c-driver/CONTROL
@@ -1,5 +1,5 @@
Source: mongo-c-driver
-Version: 1.14.0-4
+Version: 1.14.0-5
Build-Depends: libbson, openssl (!windows), zlib
Description: Client library written in C for MongoDB.
Homepage: https://github.com/mongodb/mongo-c-driver
diff --git a/ports/mongo-c-driver/fix-uwp.patch b/ports/mongo-c-driver/fix-uwp.patch
deleted file mode 100644
index 973c17b5c..000000000
--- a/ports/mongo-c-driver/fix-uwp.patch
+++ /dev/null
@@ -1,156 +0,0 @@
---- a/src/libbson/CMakeLists.txt
-+++ b/src/libbson/CMakeLists.txt
-@@ -217,6 +217,9 @@ set (HEADERS_FORWARDING
- ${PROJECT_SOURCE_DIR}/src/bson/forwarding/bson.h
- )
-
-+add_definitions(-D_CRT_SECURE_NO_WARNINGS)
-+
-+if (NOT ENABLE_STATIC MATCHES "ON|AUTO")
- add_library (bson_shared SHARED ${SOURCES} ${HEADERS} ${HEADERS_FORWARDING})
- set (CMAKE_CXX_VISIBILITY_PRESET hidden)
- set_target_properties (bson_shared PROPERTIES COMPILE_DEFINITIONS "BSON_COMPILATION;JSONSL_PARSE_NAN")
-@@ -258,16 +261,21 @@ if (WIN32)
- # must be handled specially since we can't resolve them
- set (BSON_SYSTEM_LIBRARIES ${BSON_SYSTEM_LIBRARIES} ws2_32)
- endif ()
-+endif ()
-
- if (ENABLE_STATIC MATCHES "ON|AUTO")
- add_library (bson_static STATIC ${SOURCES} ${HEADERS} ${HEADERS_FORWARDING})
-+ set(CMAKE_CXX_VISIBILITY_PRESET hidden)
- set_target_properties (bson_static PROPERTIES COMPILE_DEFINITIONS "BSON_COMPILATION;BSON_STATIC;JSONSL_PARSE_NAN")
- set_target_properties (bson_static PROPERTIES VERSION 0.0.0)
- set_target_properties (bson_static PROPERTIES OUTPUT_NAME "bson-static-${BSON_API_VERSION}")
-+ set(THREADS_PREFER_PTHREAD_FLAG 1)
-+ find_package (Threads REQUIRED)
- target_link_libraries (bson_static Threads::Threads)
- if (RT_LIBRARY)
- target_link_libraries (bson_static ${RT_LIBRARY})
- endif ()
-+ find_library(M_LIBRARY m)
- if (M_LIBRARY)
- target_link_libraries (bson_static ${M_LIBRARY})
- endif ()
-@@ -282,7 +290,7 @@ function (add_example bin src)
- add_executable (${bin} ${BSON_EXAMPLE_SOURCES})
-
- # Link against the shared lib like normal apps
-- target_link_libraries (${bin} bson_shared)
-+ target_link_libraries (${bin} bson_shared bson_static)
-
- set (EXAMPLES ${EXAMPLES} ${bin})
- endfunction ()
-@@ -304,6 +312,7 @@ set (BSON_HEADER_INSTALL_DIR
- "${CMAKE_INSTALL_INCLUDEDIR}/libbson-${BSON_API_VERSION}"
- )
-
-+if (NOT ENABLE_STATIC MATCHES "ON|AUTO")
- install (
- TARGETS bson_shared ${EXAMPLES}
- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-@@ -311,6 +320,7 @@ install (
- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
- FRAMEWORK DESTINATION ${CMAKE_INSTALL_BINDIR}
- )
-+endif ()
- if (ENABLE_STATIC MATCHES "ON|AUTO")
- install (
- TARGETS bson_static ${EXAMPLES}
---- a/src/libmongoc/CMakeLists.txt
-+++ b/src/libmongoc/CMakeLists.txt
-@@ -609,6 +609,7 @@ if (WIN32)
- set (LIBRARIES ${LIBRARIES} ws2_32)
- endif ()
-
-+if (NOT MONGOC_ENABLE_STATIC)
- add_library (mongoc_shared SHARED ${SOURCES} ${HEADERS} ${HEADERS_FORWARDING})
- set_target_properties (mongoc_shared PROPERTIES CMAKE_CXX_VISIBILITY_PRESET hidden)
- target_link_libraries (mongoc_shared ${LIBRARIES} ${BSON_LIBRARIES})
-@@ -617,6 +618,7 @@ target_compile_definitions (mongoc_shared PUBLIC MONGOC_COMPILATION ${BSON_DEFIN
-
- set_target_properties (mongoc_shared PROPERTIES VERSION 0.0.0 SOVERSION 0)
- set_target_properties (mongoc_shared PROPERTIES OUTPUT_NAME "mongoc-${MONGOC_API_VERSION}" PREFIX "lib")
-+endif ()
-
- if (MONGOC_ENABLE_STATIC)
- add_library (mongoc_static STATIC ${SOURCES} ${HEADERS} ${HEADERS_FORWARDING})
-@@ -639,7 +641,11 @@ if (ENABLE_APPLE_FRAMEWORK)
- endif ()
-
- add_executable (mongoc-stat ${PROJECT_SOURCE_DIR}/../../src/tools/mongoc-stat.c)
-+if (MONGOC_ENABLE_STATIC)
-+target_link_libraries (mongoc-stat mongoc_static)
-+else ()
- target_link_libraries (mongoc-stat mongoc_shared)
-+endif ()
-
- # mongoc-stat works if shared memory performance counters are enabled.
- if (ENABLE_SHM_COUNTERS STREQUAL "ON")
-@@ -870,6 +876,7 @@ file (COPY ${PROJECT_SOURCE_DIR}/tests/json DESTINATION ${PROJECT_BINARY_DIR}/te
- file (COPY ${PROJECT_SOURCE_DIR}/tests/x509gen DESTINATION ${PROJECT_BINARY_DIR}/tests)
- file (COPY ${PROJECT_SOURCE_DIR}/tests/release_files DESTINATION ${PROJECT_BINARY_DIR}/tests)
-
-+if (NOT MONGOC_ENABLE_STATIC)
- install (
- TARGETS mongoc_shared ${EXAMPLES}
- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-@@ -877,10 +884,11 @@ install (
- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
- FRAMEWORK DESTINATION ${CMAKE_INSTALL_BINDIR}
- )
-+endif ()
-
- if (MONGOC_ENABLE_STATIC)
- install (
-- TARGETS mongoc_shared mongoc_static ${EXAMPLES}
-+ TARGETS mongoc_static ${EXAMPLES}
- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
---- a/src/libmongoc/src/mongoc/mongoc-gridfs-file.c
-+++ b/src/libmongoc/src/mongoc/mongoc-gridfs-file.c
-@@ -765,7 +765,7 @@ _mongoc_gridfs_file_refresh_page (mongoc_gridfs_file_t *file)
- bson_t query;
- bson_t child;
- bson_t opts;
-- const bson_t *chunk;
-+ const bson_t *chunk = NULL;
- const char *key;
- bson_iter_t iter;
- int64_t existing_chunks;
---- a/src/libmongoc/src/mongoc/mongoc-handshake.c
-+++ b/src/libmongoc/src/mongoc/mongoc-handshake.c
-@@ -286,7 +286,8 @@ _get_os_version (void)
- char *ret = bson_malloc (HANDSHAKE_OS_VERSION_MAX);
- bool found = false;
-
--#ifdef _WIN32
-+#if defined (WINAPI_FAMILY_PARTITION) && !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM)
-+#elif defined (_WIN32)
- OSVERSIONINFO osvi;
- ZeroMemory (&osvi, sizeof (OSVERSIONINFO));
- osvi.dwOSVersionInfoSize = sizeof (OSVERSIONINFO);
---- a/src/libmongoc/src/mongoc/mongoc-util.c
-+++ b/src/libmongoc/src/mongoc/mongoc-util.c
-@@ -84,7 +84,11 @@ _mongoc_hex_md5 (const char *input)
- void
- _mongoc_usleep (int64_t usec)
- {
- #ifdef _WIN32
-+#if defined (WINAPI_FAMILY_PARTITION) && !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM)
-+ if (usec / 1000 > MAXDWORD || usec < 0)
-+ __fastfail(-1);
-+ Sleep((DWORD)(usec / 1000));
-+#else
- LARGE_INTEGER ft;
- HANDLE timer;
-
-@@ -80,6 +85,7 @@ _mongoc_usleep (int64_t usec)
- SetWaitableTimer (timer, &ft, 0, NULL, NULL, 0);
- WaitForSingleObject (timer, INFINITE);
- CloseHandle (timer);
-+#endif
- #else
- BSON_ASSERT (usec >= 0);
- usleep ((useconds_t) usec);
diff --git a/ports/mongo-c-driver/portfile.cmake b/ports/mongo-c-driver/portfile.cmake
index 800bf971c..958ffbcde 100644
--- a/ports/mongo-c-driver/portfile.cmake
+++ b/ports/mongo-c-driver/portfile.cmake
@@ -7,7 +7,6 @@ vcpkg_from_github(
REF ${BUILD_VERSION}
SHA512 bf2bb835543dd2a445aac6cafa7bbbf90921ec41014534779924a5eb7cbd9fd532acd8146ce81dfcf1bcac33a78d8fce22b962ed7f776449e4357eccab8d6110
HEAD_REF master
- PATCHES fix-uwp.patch
)
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
@@ -79,11 +78,9 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL static)
endif()
# drop the __declspec(dllimport) when building static
- vcpkg_apply_patches(
- SOURCE_PATH ${CURRENT_PACKAGES_DIR}/include
- PATCHES
- static.patch
- )
+ file(READ ${CURRENT_PACKAGES_DIR}/include/mongoc/mongoc-macros.h MONGOC_MACROS_H)
+ string(REPLACE "define MONGOC_API __declspec(dllimport)" "define MONGOC_API" MONGOC_MACROS_H "${MONGOC_MACROS_H}")
+ file(WRITE ${CURRENT_PACKAGES_DIR}/include/mongoc/mongoc-macros.h "${MONGOC_MACROS_H}")
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin ${CURRENT_PACKAGES_DIR}/bin)
endif()
diff --git a/ports/mongo-c-driver/static.patch b/ports/mongo-c-driver/static.patch
deleted file mode 100644
index 0f7fa98bb..000000000
--- a/ports/mongo-c-driver/static.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/mongoc/mongoc-macros.h
-+++ b/mongoc/mongoc-macros.h
-@@ -40,7 +40,7 @@
- #elif defined(MONGOC_COMPILATION)
- #define MONGOC_API __declspec(dllexport)
- #else
--#define MONGOC_API __declspec(dllimport)
-+#define MONGOC_API
- #endif
- #define MONGOC_CALL __cdecl
-