From 33bba7b3f3b3f12684a3ad8c2e84ac760f7b66af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20F=C3=B6rster?= Date: Sun, 14 Sep 2025 14:32:47 +0200 Subject: [PATCH] [dev-libs/libbson] add verify-sig, cmake4 compat --- dev-libs/libbson/Manifest | 1 + .../libbson/files/libbson-1.30.5-cmake4.patch | 170 ++++++++++++++++++ dev-libs/libbson/libbson-1.30.5.ebuild | 15 +- 3 files changed, 184 insertions(+), 2 deletions(-) create mode 100644 dev-libs/libbson/files/libbson-1.30.5-cmake4.patch diff --git a/dev-libs/libbson/Manifest b/dev-libs/libbson/Manifest index cbc3c70..3c6f558 100644 --- a/dev-libs/libbson/Manifest +++ b/dev-libs/libbson/Manifest @@ -1 +1,2 @@ DIST mongo-c-driver-1.30.5.tar.gz 7434294 BLAKE2B 910a3929481625add6578f26cddacdbda788a8c6a6828ca7d6c2abc9a4350edc5f0ee13003197f93bb01cbd42e07330344f8a7c8d194ad86525665e23469e3d8 SHA512 3740f91a6d72d400057ecd0920740579ff664f230815bbf2cad1d0a0a268de99b40be3f05cdfe22759ca789d938cf7d3bbd439c431867b82d83c3d1690df3f68 +DIST mongo-c-driver-1.30.5.tar.gz.asc 833 BLAKE2B f92098b9946a0eb0b633ae5e8b7c444d5c0085fc5980993a25910802289def5cd04e19a0aba077ea9f4c954a65c06769cf63cb6f7961813bfd95c66101072b52 SHA512 5d7cc4037a5a145ed53e8e60d18d47f3d7b867320f08b3c755e00fe11a8305c7f449b30b31e59310577344495406aaeca78b2cd843d7c31c02e03200e55e0bf6 diff --git a/dev-libs/libbson/files/libbson-1.30.5-cmake4.patch b/dev-libs/libbson/files/libbson-1.30.5-cmake4.patch new file mode 100644 index 0000000..5a3d391 --- /dev/null +++ b/dev-libs/libbson/files/libbson-1.30.5-cmake4.patch @@ -0,0 +1,170 @@ +https://jira.mongodb.org/browse/CDRIVER-6059 +https://github.com/mongodb/mongo-c-driver/pull/2066 +https://github.com/mongodb/mongo-c-driver/commit/e8ea70127f7bbbb4bcdb450026f059d8459b98db + +Removed non cmake changes + +From e8ea70127f7bbbb4bcdb450026f059d8459b98db Mon Sep 17 00:00:00 2001 +From: Ezra Chung <88335979+eramongodb@users.noreply.github.com> +Date: Tue, 22 Jul 2025 15:47:09 -0500 +Subject: [PATCH] CDRIVER-6059 Set CMake max policy version to 4.0 (#2066) + +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required (VERSION 3.15) ++cmake_minimum_required (VERSION 3.15...4.0) + + list (INSERT CMAKE_MODULE_PATH 0 "${CMAKE_CURRENT_LIST_DIR}/build/cmake") + # Defines BUILD_VERSION, which we use throughout: +@@ -402,11 +402,6 @@ set (CMAKE_INSTALL_RPATH_USE_LINK_PATH ON) + # Install libs with names like @rpath/libmongoc-1.0.0.dylib, not bare names. + set (CMAKE_MACOSX_RPATH ON) + +-# https://cmake.org/cmake/help/v3.11/policy/CMP0042.html +-# Enable a CMake 3.0+ policy that sets CMAKE_MACOSX_RPATH by default, and +-# silence a CMake 3.11 warning that the old behavior is deprecated. +-cmake_policy (SET CMP0042 NEW) +- + # By default, ensure conformance with a minimum C standard. + # Required extensions to the language (i.e. POSIX) are (re)enabled further below. + if (NOT DEFINED CMAKE_C_STANDARD) +--- a/build/cmake/GenerateUninstaller.cmake ++++ b/build/cmake/GenerateUninstaller.cmake +@@ -1,5 +1,3 @@ +-cmake_policy(VERSION 3.15) +- + if(NOT CMAKE_SCRIPT_MODE_FILE) + # We are being included from within a project, so we should generate the install rules + # The script name is "uninstall" by default: +--- a/src/libbson/CMakeLists.txt ++++ b/src/libbson/CMakeLists.txt +@@ -11,7 +11,7 @@ + # 888 + # 888 + +-cmake_minimum_required (VERSION 3.15) ++cmake_minimum_required (VERSION 3.15...4.0) + + project (libbson + LANGUAGES C +--- a/src/libbson/examples/cmake-deprecated/find_package/CMakeLists.txt ++++ b/src/libbson/examples/cmake-deprecated/find_package/CMakeLists.txt +@@ -15,7 +15,7 @@ + # Demonstrates how to use the CMake 'find_package' mechanism to locate + # and build against libbson. + +-cmake_minimum_required (VERSION 2.8) ++cmake_minimum_required (VERSION 3.15) + + project (hello_bson LANGUAGES C) + +--- a/src/libbson/examples/cmake-deprecated/find_package_static/CMakeLists.txt ++++ b/src/libbson/examples/cmake-deprecated/find_package_static/CMakeLists.txt +@@ -15,7 +15,7 @@ + # Demonstrates how to use the CMake 'find_package' mechanism to locate + # and build against libbson. + +-cmake_minimum_required (VERSION 2.8) ++cmake_minimum_required (VERSION 3.15) + + project (hello_bson LANGUAGES C) + +--- a/src/libbson/examples/cmake/find_package/CMakeLists.txt ++++ b/src/libbson/examples/cmake/find_package/CMakeLists.txt +@@ -15,7 +15,7 @@ + # Demonstrates how to use the CMake 'find_package' mechanism to locate + # and build against libbson. + +-cmake_minimum_required (VERSION 3.0) ++cmake_minimum_required (VERSION 3.15...4.0) + + project (hello_bson LANGUAGES C) + +--- a/src/libbson/examples/cmake/find_package_static/CMakeLists.txt ++++ b/src/libbson/examples/cmake/find_package_static/CMakeLists.txt +@@ -15,7 +15,7 @@ + # Demonstrates how to use the CMake 'find_package' mechanism to locate + # and build against libbson. + +-cmake_minimum_required (VERSION 2.8) ++cmake_minimum_required (VERSION 3.15...4.0) + + project (hello_bson LANGUAGES C) + +--- a/src/libmongoc/CMakeLists.txt ++++ b/src/libmongoc/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required (VERSION 3.15) ++cmake_minimum_required (VERSION 3.15...4.0) + + project (libmongoc + LANGUAGES C +--- a/src/libmongoc/examples/cmake-deprecated/find_package/CMakeLists.txt ++++ b/src/libmongoc/examples/cmake-deprecated/find_package/CMakeLists.txt +@@ -15,7 +15,7 @@ + # Demonstrates how to use the CMake 'find_package' mechanism to locate + # and build against libmongoc. + +-cmake_minimum_required (VERSION 2.8) ++cmake_minimum_required (VERSION 3.15) + + project (hello_mongoc LANGUAGES C) + +--- a/src/libmongoc/examples/cmake-deprecated/find_package_static/CMakeLists.txt ++++ b/src/libmongoc/examples/cmake-deprecated/find_package_static/CMakeLists.txt +@@ -15,7 +15,7 @@ + # Demonstrates how to use the CMake 'find_package' mechanism to locate + # and build against libmongoc. + +-cmake_minimum_required (VERSION 2.8) ++cmake_minimum_required (VERSION 3.15) + + project (hello_mongoc LANGUAGES C) + +--- a/src/libmongoc/examples/cmake/find_package/CMakeLists.txt ++++ b/src/libmongoc/examples/cmake/find_package/CMakeLists.txt +@@ -15,7 +15,7 @@ + # Demonstrates how to use the CMake 'find_package' mechanism to locate + # and build against libmongoc. + +-cmake_minimum_required (VERSION 3.0) ++cmake_minimum_required (VERSION 3.15...4.0) + + project (hello_mongoc LANGUAGES C) + +--- a/src/libmongoc/examples/cmake/find_package_static/CMakeLists.txt ++++ b/src/libmongoc/examples/cmake/find_package_static/CMakeLists.txt +@@ -15,7 +15,7 @@ + # Demonstrates how to use the CMake 'find_package' mechanism to locate + # and build against libmongoc. + +-cmake_minimum_required (VERSION 3.0) ++cmake_minimum_required (VERSION 3.15...4.0) + + project (hello_mongoc LANGUAGES C) + +--- a/src/libmongoc/examples/cmake/vcpkg/CMakeLists.txt ++++ b/src/libmongoc/examples/cmake/vcpkg/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required(VERSION 3.15) ++cmake_minimum_required (VERSION 3.15...4.0) + project(vcpkg-example-project) + + find_package(mongoc CONFIG REQUIRED) +--- a/src/libmongoc/tests/cmake-import/CMakeLists.txt ++++ b/src/libmongoc/tests/cmake-import/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required(VERSION 3.15) ++cmake_minimum_required (VERSION 3.15...4.0) + project(ImportTestProject) + + include(CTest) +--- a/src/zlib-1.3.1/CMakeLists.txt ++++ b/src/zlib-1.3.1/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required(VERSION 2.4.4...3.15.0) ++cmake_minimum_required(VERSION 3.15.0) + set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS ON) + + project(zlib C) diff --git a/dev-libs/libbson/libbson-1.30.5.ebuild b/dev-libs/libbson/libbson-1.30.5.ebuild index 3ab20e2..f7375d4 100644 --- a/dev-libs/libbson/libbson-1.30.5.ebuild +++ b/dev-libs/libbson/libbson-1.30.5.ebuild @@ -4,12 +4,18 @@ EAPI=8 PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/mongo-c-driver.asc -inherit cmake dot-a python-any-r1 +inherit cmake dot-a python-any-r1 verify-sig DESCRIPTION="Library routines related to building,parsing and iterating BSON documents" HOMEPAGE="https://github.com/mongodb/mongo-c-driver/tree/master/src/libbson" -SRC_URI="https://github.com/mongodb/mongo-c-driver/releases/download/${PV}/mongo-c-driver-${PV}.tar.gz" +SRC_URI=" + https://github.com/mongodb/mongo-c-driver/releases/download/${PV}/mongo-c-driver-${PV}.tar.gz + verify-sig? ( + https://github.com/mongodb/mongo-c-driver/releases/download/${PV}/mongo-c-driver-${PV}.tar.gz.asc + ) +" S="${WORKDIR}/mongo-c-driver-${PV}" LICENSE="Apache-2.0" @@ -24,8 +30,13 @@ BDEPEND=" $(python_gen_any_dep ' dev-python/sphinx[${PYTHON_USEDEP}] ') + verify-sig? ( sec-keys/openpgp-keys-mongo-c-driver ) " +PATCHES=( + "${FILESDIR}"/libbson-1.30.5-cmake4.patch +) + python_check_deps() { python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" }