From 948e8fda455ec8bcacfcd6877ac99808bcbf220f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20F=C3=B6rster?= Date: Sat, 18 Oct 2025 15:52:20 +0200 Subject: [PATCH] [dev-libs/mongo-c-driver] bump and static libs regression fix --- dev-libs/mongo-c-driver/Manifest | 6 +- ...tch => mongo-c-driver-1.30.6-cmake4.patch} | 8 ++ .../mongo-c-driver-1.24.4-r1.ebuild | 126 ++++++++++++++++++ ...ebuild => mongo-c-driver-1.30.6-r1.ebuild} | 13 +- ....5.ebuild => mongo-c-driver-1.30.6.ebuild} | 13 +- 5 files changed, 153 insertions(+), 13 deletions(-) rename dev-libs/mongo-c-driver/files/{mongo-c-driver-1.30.5-cmake4.patch => mongo-c-driver-1.30.6-cmake4.patch} (96%) create mode 100644 dev-libs/mongo-c-driver/mongo-c-driver-1.24.4-r1.ebuild rename dev-libs/mongo-c-driver/{mongo-c-driver-1.30.5-r1.ebuild => mongo-c-driver-1.30.6-r1.ebuild} (92%) rename dev-libs/mongo-c-driver/{mongo-c-driver-1.30.5.ebuild => mongo-c-driver-1.30.6.ebuild} (92%) diff --git a/dev-libs/mongo-c-driver/Manifest b/dev-libs/mongo-c-driver/Manifest index a2f2bbf..7fbd1b2 100644 --- a/dev-libs/mongo-c-driver/Manifest +++ b/dev-libs/mongo-c-driver/Manifest @@ -1,3 +1,3 @@ -DIST mongo-c-driver-1.30.5-docs.tar.xz 124180 BLAKE2B 7235d0f66b74f86195ec0b3cbdfd5b65880fbd5245340869ebe064f23a741725d7901855c33abb512102711e46e216df4fa7d183df27e57c54c3efdd2f6cce89 SHA512 0c02647fac30ac65494dce2da6f8a1ff42e0fe67c2ff75cb12d81d634e07243edf4f5bb2f1b23aa5f77a247dc9f5e274e82bedb6e61f8fb87f4c5c9133034ba9 -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 +DIST mongo-c-driver-1.24.4.tar.gz 7916661 BLAKE2B e361b52bf16eed7437428b0481d792ecf2f9cc283fdd6f23916d4a3ffb1b7d7c9ea7a7c4cf5f369e21fb6d4f564b91e07ac2ee44656855993218593dc4f1c166 SHA512 3563c061565d17a76581e188f6e184d7e41f2729812c8815afd34e03ebe6c1d25d7498a2cb1b599a09d24f6268c36473ef5113a14c7585a1532c9abf2e56e936 +DIST mongo-c-driver-1.30.6.tar.gz 7450898 BLAKE2B 242b41fed6b6155a35cb8dc696bc3d246795aa6df77c1eb2eb58c16fb603e4bcdf01cbdb382f68c4ede6d29186cdbfebab3fc2262b2acd9994f5f936ffc30e34 SHA512 3351fd784dcaffd5454776e8ebceae444634b525aee63ff1dc45a9f3a0ab5d0716b990bb0a0960553f76e64ac99b18a1f88bec6225f5c000aee48688b9d6d318 +DIST mongo-c-driver-1.30.6.tar.gz.asc 833 BLAKE2B 2be5cf50f50191a74213ae7400793a1b4142f34b4ef589eff90db4a00b66514142fe510e941b50a304590cdec256f6020ff1f8220c25fd6aa63444e24dd817c0 SHA512 93c82ba89d4d6741fbe3a92dc36c6fbca16c6d43e2d874261ab38736cba4d74dc6d20808aae9afe8e112a04a65ae27f301d45c9ab9d585f258e7f7fea219f1a1 diff --git a/dev-libs/mongo-c-driver/files/mongo-c-driver-1.30.5-cmake4.patch b/dev-libs/mongo-c-driver/files/mongo-c-driver-1.30.6-cmake4.patch similarity index 96% rename from dev-libs/mongo-c-driver/files/mongo-c-driver-1.30.5-cmake4.patch rename to dev-libs/mongo-c-driver/files/mongo-c-driver-1.30.6-cmake4.patch index 5a3d391..f34b0e6 100644 --- a/dev-libs/mongo-c-driver/files/mongo-c-driver-1.30.5-cmake4.patch +++ b/dev-libs/mongo-c-driver/files/mongo-c-driver-1.30.6-cmake4.patch @@ -168,3 +168,11 @@ Subject: [PATCH] CDRIVER-6059 Set CMake max policy version to 4.0 (#2066) set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS ON) project(zlib C) +--- a/src/kms-message/CMakeLists.txt ++++ b/src/kms-message/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required (VERSION 3.5) ++cmake_minimum_required (VERSION 3.15...4.0) + project (kms_message + VERSION 0.0.1 + LANGUAGES C diff --git a/dev-libs/mongo-c-driver/mongo-c-driver-1.24.4-r1.ebuild b/dev-libs/mongo-c-driver/mongo-c-driver-1.24.4-r1.ebuild new file mode 100644 index 0000000..51b4a0a --- /dev/null +++ b/dev-libs/mongo-c-driver/mongo-c-driver-1.24.4-r1.ebuild @@ -0,0 +1,126 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..13} pypy3_11 ) + +inherit cmake python-any-r1 + +DESCRIPTION="Client library written in C for MongoDB" +HOMEPAGE="https://github.com/mongodb/mongo-c-driver" +SRC_URI="https://github.com/mongodb/mongo-c-driver/releases/download/${PV}/${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha amd64 arm64 ~hppa ~riscv x86" +IUSE="debug examples icu sasl ssl static-libs test +test-full" +REQUIRED_USE="test? ( static-libs )" + +RESTRICT="!test? ( test )" + +RDEPEND="app-arch/snappy:= + app-arch/zstd:= + ~dev-libs/libbson-${PV}[static-libs?] + dev-python/sphinx + sys-libs/zlib:= + icu? ( dev-libs/icu:= ) + sasl? ( dev-libs/cyrus-sasl:= ) + ssl? ( + dev-libs/openssl:= + )" +DEPEND=" + ${RDEPEND} + test? ( + dev-libs/libbson[static-libs] + test-full? ( + dev-db/mongodb + ) + ) +" +BDEPEND=" + $(python_gen_any_dep ' + dev-python/sphinx[${PYTHON_USEDEP}] + ') +" + +python_check_deps() { + python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" +} + +src_prepare() { + cmake_src_prepare + + # copy private headers for tests since we don't build libbson + if use test; then + mkdir -p src/libbson/tests/bson || die + cp src/libbson/src/bson/bson-*.h src/libbson/tests/bson/ || die + fi + + # remove doc files + sed -i '/^\s*install\s*(FILES COPYING NEWS/,/^\s*)/{d}' CMakeLists.txt || die + + # enable tests + sed -i '/message (STATUS "disabling test-libmongoc since using system libbson")/{d}' CMakeLists.txt || die + sed -i '/SET (ENABLE_TESTS OFF)/{d}' CMakeLists.txt || die + sed -i 's##"bson/bson-private.h"#' src/libbson/tests/test-bson.c || die + + # bug 953521 + sed -i 's/message (FATAL_ERROR "System libbson built without static library target")/message (STATUS "System libbson built without static library target")/' CMakeLists.txt || die +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON # mongoc-stat insecure runpath + -DUSE_SYSTEM_LIBBSON=ON + -DENABLE_EXAMPLES=OFF + -DENABLE_ICU="$(usex icu ON OFF)" + -DENABLE_MAN_PAGES=ON + -DENABLE_MONGOC=ON + -DENABLE_SNAPPY=ON + -DENABLE_ZLIB=SYSTEM + -DENABLE_SASL="$(usex sasl CYRUS OFF)" + -DENABLE_SSL="$(usex ssl $(usex ssl OPENSSL) OFF)" + -DENABLE_STATIC="$(usex static-libs ON OFF)" + -DENABLE_TESTS="$(usex test ON OFF)" + -DENABLE_TRACING="$(usex debug ON OFF)" + -DENABLE_UNINSTALL=OFF + -DENABLE_ZSTD=ON + ) + + cmake_src_configure +} + +src_test() { + export MONGOC_TEST_OFFLINE=on + export MONGOC_TEST_SKIP_MOCK=on + echo "/Samples" >> "${T}/skip-tests.txt" + if ! use test-full; then + export MONGOC_TEST_SKIP_LIVE=on + else + local PORT=27099 + export MONGOC_TEST_URI="mongodb://[127.0.0.1]:${PORT}" + export MONGOC_ENABLE_MAJORITY_READ_CONCERN=on + LC_ALL=C \ + mongod --setParameter enableTestCommands=1 \ + --port ${PORT} --bind_ip 127.0.0.1 --nounixsocket \ + --fork --dbpath="${T}"\ + --logpath="${T}/mongod.log" || die + fi + + ../mongo-c-driver-${PV}_build/src/libmongoc/test-libmongoc \ + --skip-tests "${T}/skip-tests.txt" || die + if use test-full; then + kill $(<"${T}/mongod.lock") + fi + +} + +src_install() { + if use examples; then + docinto examples + dodoc src/libmongoc/examples/*.c + fi + + cmake_src_install +} diff --git a/dev-libs/mongo-c-driver/mongo-c-driver-1.30.5-r1.ebuild b/dev-libs/mongo-c-driver/mongo-c-driver-1.30.6-r1.ebuild similarity index 92% rename from dev-libs/mongo-c-driver/mongo-c-driver-1.30.5-r1.ebuild rename to dev-libs/mongo-c-driver/mongo-c-driver-1.30.6-r1.ebuild index 3623c59..f0203cd 100644 --- a/dev-libs/mongo-c-driver/mongo-c-driver-1.30.5-r1.ebuild +++ b/dev-libs/mongo-c-driver/mongo-c-driver-1.30.6-r1.ebuild @@ -6,7 +6,7 @@ EAPI=8 # Generate using slight deviation from https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs # Set to 1 if prebuilt, 0 if not # (the construct below is to allow overriding from env for script) -: ${MONGOCDRIVER_DOCS_PREBUILT:=1} +: ${MONGOCDRIVER_DOCS_PREBUILT:=0} # Default to generating man pages if no prebuilt; overridden later MONGOCDRIVER_DOCS_USEFLAG="+man" @@ -27,13 +27,13 @@ SRC_URI=" if [[ ${MONGOCDRIVER_DOCS_PREBUILT} == 1 ]] ; then SRC_URI+=" !man? ( https://people.znc.in/~dessa/gentoo/distfiles/${CATEGORY}/${PN}/${PN}-${PV}-docs.tar.xz )" - MONGOCDRIVER_DOC_USEFLAG="man" + MONGOCDRIVER_DOCS_USEFLAG="man" fi LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64 ~arm64 ~hppa ~riscv ~x86" -IUSE="debug examples ${MONGOCDRIVER_DOC_USEFLAG} +s3 sasl +ssl static-libs test +test-full" +IUSE="debug examples ${MONGOCDRIVER_DOCS_USEFLAG} +s3 sasl +ssl static-libs test +test-full" REQUIRED_USE=" s3? ( ssl ) test? ( static-libs )" @@ -65,7 +65,7 @@ DEPEND=" BDEPEND=" man? ( $(python_gen_any_dep ' - #"bson/bson-json-private.h"#' src/libbson/tests/test-json.c || die sed -i 's##"bson/bson-context-private.h"#' src/libbson/tests/test-oid.c || die sed -i 's##"bson/bson-iso8601-private.h"#' src/libbson/tests/test-oid.c || die + + # bug 953521 + sed -i 's/message (FATAL_ERROR "System libbson built without static library target")/message (STATUS "System libbson built without static library target")/' CMakeLists.txt || die } src_configure() { diff --git a/dev-libs/mongo-c-driver/mongo-c-driver-1.30.5.ebuild b/dev-libs/mongo-c-driver/mongo-c-driver-1.30.6.ebuild similarity index 92% rename from dev-libs/mongo-c-driver/mongo-c-driver-1.30.5.ebuild rename to dev-libs/mongo-c-driver/mongo-c-driver-1.30.6.ebuild index ee45448..9354336 100644 --- a/dev-libs/mongo-c-driver/mongo-c-driver-1.30.5.ebuild +++ b/dev-libs/mongo-c-driver/mongo-c-driver-1.30.6.ebuild @@ -6,7 +6,7 @@ EAPI=8 # Generate using slight deviation from https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs # Set to 1 if prebuilt, 0 if not # (the construct below is to allow overriding from env for script) -: ${MONGOCDRIVER_DOCS_PREBUILT:=1} +: ${MONGOCDRIVER_DOCS_PREBUILT:=0} # Default to generating man pages if no prebuilt; overridden later MONGOCDRIVER_DOCS_USEFLAG="+man" @@ -27,13 +27,13 @@ SRC_URI=" if [[ ${MONGOCDRIVER_DOCS_PREBUILT} == 1 ]] ; then SRC_URI+=" !man? ( https://people.znc.in/~dessa/gentoo/distfiles/${CATEGORY}/${PN}/${PN}-${PV}-docs.tar.xz )" - MONGOCDRIVER_DOC_USEFLAG="man" + MONGOCDRIVER_DOCS_USEFLAG="man" fi LICENSE="Apache-2.0" SLOT="0" KEYWORDS="~amd64 ~arm64 ~hppa ~riscv ~x86" -IUSE="debug examples ${MONGOCDRIVER_DOC_USEFLAG} sasl +ssl static-libs test +test-full" +IUSE="debug examples ${MONGOCDRIVER_DOCS_USEFLAG} sasl +ssl static-libs test +test-full" REQUIRED_USE=" test? ( static-libs )" @@ -62,7 +62,7 @@ DEPEND=" BDEPEND=" man? ( $(python_gen_any_dep ' - #"bson/bson-json-private.h"#' src/libbson/tests/test-json.c || die sed -i 's##"bson/bson-context-private.h"#' src/libbson/tests/test-oid.c || die sed -i 's##"bson/bson-iso8601-private.h"#' src/libbson/tests/test-oid.c || die + + # bug 953521 + sed -i 's/message (FATAL_ERROR "System libbson built without static library target")/message (STATUS "System libbson built without static library target")/' CMakeLists.txt || die } src_configure() {