diff options
Diffstat (limited to 'ports/libbson')
| -rw-r--r-- | ports/libbson/0001_cmake.patch | 35 | ||||
| -rw-r--r-- | ports/libbson/CONTROL | 2 | ||||
| -rw-r--r-- | ports/libbson/portfile.cmake | 77 | ||||
| -rw-r--r-- | ports/libbson/static.patch | 13 |
4 files changed, 66 insertions, 61 deletions
diff --git a/ports/libbson/0001_cmake.patch b/ports/libbson/0001_cmake.patch deleted file mode 100644 index af1f1a598..000000000 --- a/ports/libbson/0001_cmake.patch +++ /dev/null @@ -1,35 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index d09a298..e64a6cd 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -12,7 +12,6 @@ include(CheckIncludeFile) - include(CheckStructHasMember) - include(CheckSymbolExists) - include(TestBigEndian) --include(InstallRequiredSystemLibraries) - - set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/build/cmake) - -@@ -47,13 +46,6 @@ TEST_BIG_ENDIAN(BSON_BIG_ENDIAN) - set (BSON_PTHREAD_ONCE_INIT_NEEDS_BRACES 0) - set (BSON_HAVE_DECIMAL128 0) - --#librt needed on linux for clock_gettime --find_library(RT_LIBRARY rt) --if (RT_LIBRARY) -- #set required libraries for CHECK_FUNCTION_EXISTS -- set(CMAKE_REQUIRED_LIBRARIES ${RT_LIBRARY}) --endif() -- - # See https://public.kitware.com/Bug/view.php?id=15659 - CHECK_SYMBOL_EXISTS(snprintf stdio.h BSON_HAVE_SNPRINTF) - if (NOT BSON_HAVE_SNPRINTF) -@@ -314,7 +306,7 @@ install( - ) - install( - FILES ${HEADERS} -- DESTINATION "include/libbson-${BSON_API_VERSION}" -+ DESTINATION "include" - ) - - set(VERSION "${BSON_VERSION}") diff --git a/ports/libbson/CONTROL b/ports/libbson/CONTROL index 71f48c354..371dfcf0c 100644 --- a/ports/libbson/CONTROL +++ b/ports/libbson/CONTROL @@ -1,3 +1,3 @@ Source: libbson -Version: 1.4.2 +Version: 1.5.1 Description: libbson is a library providing useful routines related to building, parsing, and iterating BSON documents.
\ No newline at end of file diff --git a/ports/libbson/portfile.cmake b/ports/libbson/portfile.cmake index ca7e97c16..ce2ccea40 100644 --- a/ports/libbson/portfile.cmake +++ b/ports/libbson/portfile.cmake @@ -1,25 +1,52 @@ -include(${CMAKE_TRIPLET_FILE}) -include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libbson-1.4.2) - -vcpkg_download_distfile(ARCHIVE - URLS "https://github.com/mongodb/libbson/releases/download/1.4.2/libbson-1.4.2.tar.gz" - FILENAME "libbson-1.4.2.tar.gz" - SHA512 4cc8f833978483af3dcbc30bede33f2a9b448930fabf7be2d5581c8368e875dc1707d31eae209c747e69be1f82fa525c7362c5ac9c4e0b6b3f3346dd5147860e -) -vcpkg_extract_source_archive(${ARCHIVE}) - -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES ${CMAKE_CURRENT_LIST_DIR}/0001_cmake.patch -) - -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} -) - -vcpkg_install_cmake() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) - -file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libbson) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/libbson/COPYING ${CURRENT_PACKAGES_DIR}/share/libbson/copyright)
\ No newline at end of file +include(vcpkg_common_functions)
+set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libbson-1.5.1)
+
+vcpkg_download_distfile(ARCHIVE
+ URLS "https://github.com/mongodb/libbson/archive/1.5.1.tar.gz"
+ FILENAME "libbson-1.5.1.tar.gz"
+ SHA512 b641e23ca041e532fe566167ad0292d12934e0fae2c110f81bf6ca3b71b5d01b651a604a7ce6da0d1b54b98cd95674ef331ef4e23c2dedfc706f371eac4efaec
+)
+vcpkg_extract_source_archive(${ARCHIVE})
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ OPTIONS
+ -DENABLE_TESTS=OFF
+ -DCMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP=ON
+)
+
+vcpkg_install_cmake()
+
+file(RENAME
+ ${CURRENT_PACKAGES_DIR}/include/libbson-1.0
+ ${CURRENT_PACKAGES_DIR}/temp)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include)
+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)
+ file(RENAME
+ ${CURRENT_PACKAGES_DIR}/debug/lib/bson-static-1.0.lib
+ ${CURRENT_PACKAGES_DIR}/debug/lib/bson-1.0.lib)
+
+ # drop the __declspec(dllimport) when building static
+ vcpkg_apply_patches(
+ SOURCE_PATH ${CURRENT_PACKAGES_DIR}/include
+ 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)
\ No newline at end of file diff --git a/ports/libbson/static.patch b/ports/libbson/static.patch new file mode 100644 index 000000000..adb52fa4f --- /dev/null +++ b/ports/libbson/static.patch @@ -0,0 +1,13 @@ +diff --git a/bson-macros.h b/bson-macros.h +index 909bf6c..0a1f612 100644 +--- a/bson-macros.h ++++ b/bson-macros.h +@@ -69,7 +69,7 @@ + # ifdef BSON_COMPILATION + # define BSON_API __declspec(dllexport) + # else +-# define BSON_API __declspec(dllimport) ++# define BSON_API + # endif + #elif defined(__GNUC__) + # define BSON_API __attribute__ ((visibility ("default"))) |
