public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2015-12-31 14:07 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2015-12-31 14:07 UTC (permalink / raw
  To: gentoo-commits

commit:     b7d145c08adf1bb3cb8fa5621760fb2cc2e25ec4
Author:     Ultrabug <ultrabug <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 31 14:07:02 2015 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Thu Dec 31 14:07:02 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b7d145c0

dev-db/mongodb: drop 2.4 series

Package-Manager: portage-2.2.25

 dev-db/mongodb/Manifest                            |   2 -
 .../mongodb/files/mongodb-2.2-r1-fix-boost.patch   |  13 --
 dev-db/mongodb/files/mongodb-2.4-fix-sasl.patch    |  33 -----
 .../mongodb/files/mongodb-2.4.11-fix-scons.patch   |  23 ----
 dev-db/mongodb/files/mongodb.confd                 |  14 --
 dev-db/mongodb/files/mongodb.initd-r1              |  40 ------
 dev-db/mongodb/metadata.xml                        |   3 -
 dev-db/mongodb/mongodb-2.4.13.ebuild               | 150 ---------------------
 dev-db/mongodb/mongodb-2.4.14.ebuild               | 150 ---------------------
 9 files changed, 428 deletions(-)

diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
index ebaaf21..52cf81d 100644
--- a/dev-db/mongodb/Manifest
+++ b/dev-db/mongodb/Manifest
@@ -1,6 +1,4 @@
 DIST 20140409-mms-monitoring-agent.zip 40122 SHA256 9c4f89cfba10b4604512ab21eb082248104aeabe7e813b852db2b86f47d7ecb2 SHA512 5290a813c407251b5e4def813ce6fe7e09d6c3a1907fd409e326b15b07aed39f7db3a28710ecdaffe2771136c9433253c5d1857c823844a4b75dd38f1d15eefd WHIRLPOOL ce80870e2618f3d9ed80af41b1069ed5bd97af475089564eed1bc111e820c048bc5cbaa03f859349e772fe232f876127e0627c75c135a9b2e196ab13258ed9f1
-DIST mongodb-src-r2.4.13.tar.gz 14183056 SHA256 9ad8a3b58457c35b6dd020ca2364ee605e30b839f5475449a229fdcd4115866c SHA512 26256410593f2072e8a8728fbb2665bb98d4c73f3601136e8306d1d6b421421827f66e4073515fea7dfbc0a27f5615cd30f8a85e5980ea3dd46f2f06366946cb WHIRLPOOL 6e64a8ba466da74342f7eabd41b8eb86a3d1cd99c5665e54872642230ec0ed86216c0e533b08d21e0c6b6c20b7d7887a34aad0679ba32523dd3ca0e464190348
-DIST mongodb-src-r2.4.14.tar.gz 15120808 SHA256 f5ed949cf7c9669267e6f426f3dc30bf6c0e2d68ba7df9e29f16799e8212e7ce SHA512 6811f27a57a2df07f59215f544948708cd5846237c24df6eb14bf09384db4136d964587d82008ff2b0a4dea94d6869fc1dcf2ccd07e5f285da5012a0a091a74f WHIRLPOOL c89b2f4f1a77523f895b3fa21ec82813a4859391c82e3934952b25ab8602c30ac13b9e6b2a00082bbe7bace32edacdb3270e46ac0f3a8c0ab10ea48b5911e019
 DIST mongodb-src-r2.6.11.tar.gz 16461163 SHA256 e1a64a1ef7114f3e8ed3c7acaa4e97ffe30e2b57a1a5f2a40f0018bad3b8d12f SHA512 43b8c5e1ffde2c7f4bead392a95fdb34169419b8296acf04a17894379647c09bbec91be88037ab447da399f03a2c7c54c9d7613df0baa6e9e48e1267327ca937 WHIRLPOOL 083c897f83992c64a89e595058b7695671ca7e9339be2a54d14cf8a200d5063f4a33c320c02e45f5d3bd6367b5acf67a80677c92abba9a92a647d7310a2e6316
 DIST mongodb-src-r2.6.8.tar.gz 14545274 SHA256 1997f60d9de17320f22c604d8aa1cbe5f38d877142cd0e9130fe3dae7b311a06 SHA512 6fa69750debb40d0be4d5d057125320d97e882e30c43c664fcb6ec6a9e6a8bff5e63637fc8952a6d898556b2c2ce84254d135387dc0879bf65dbd5e91b8732ef WHIRLPOOL ba87ca07258ad4df90c92bc300da6cc661117a98f254a8ba62ac362a857ecc2462eb9ddf1d929a6e2187853233053e975aa02139f880d736e47e542a9504bd28
 DIST mongodb-src-r3.0.5.tar.gz 26332788 SHA256 05b16a7991aa65b1d396a3dc622107fba3216fffa8b9ed0817e76ae95f5f7fdb SHA512 17c66f9501e6517feba069f85bb468a421c45300306977ebfed71e6ce120e2bed64f14698e470c644360e23f40132171d64ac85f0962aa3ba824a48cf228775a WHIRLPOOL 7ed1f2b0daf7cb9ff081e69823e79504b8c99a221c74c2a541d673febacad9e555ef34eb4f2e97effe7e6fddafb81b903ab5a4ac8c4e8951640a0f2c6828ba14

diff --git a/dev-db/mongodb/files/mongodb-2.2-r1-fix-boost.patch b/dev-db/mongodb/files/mongodb-2.2-r1-fix-boost.patch
deleted file mode 100644
index b6c9a1e..0000000
--- a/dev-db/mongodb/files/mongodb-2.2-r1-fix-boost.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- mongodb-src-r2.2.0/SConstruct.old	2012-10-09 12:41:25.000000000 -0400
-+++ mongodb-src-r2.2.0/SConstruct	2012-10-09 12:41:41.000000000 -0400
-@@ -171,8 +171,8 @@
- add_option( "extrapathdyn", "comma separated list of add'l paths  (--extrapath /opt/foo/,/foo) dynamic linking" , 1 , True )
- add_option( "extralib", "comma separated list of libraries  (--extralib js_static,readline" , 1 , True )
- 
--add_option( "boost-compiler", "compiler used for boost (gcc41)" , 1 , True , "boostCompiler" )
--add_option( "boost-version", "boost version for linking(1_38)" , 1 , True , "boostVersion" )
-+add_option( "boost-compiler", "compiler used for boost (gcc41)" , 1 , False , "boostCompiler" )
-+add_option( "boost-version", "boost version for linking(1_38)" , 1 , False , "boostVersion" )
- 
- add_option( "no-glibc-check" , "don't check for new versions of glibc" , 0 , False )
- 

diff --git a/dev-db/mongodb/files/mongodb-2.4-fix-sasl.patch b/dev-db/mongodb/files/mongodb-2.4-fix-sasl.patch
deleted file mode 100644
index 553967e..0000000
--- a/dev-db/mongodb/files/mongodb-2.4-fix-sasl.patch
+++ /dev/null
@@ -1,33 +0,0 @@
---- a/src/mongo/client/sasl_client_session.cpp	2014-10-15 00:40:29.000000000 +0400
-+++ b/src/mongo/client/sasl_client_session.cpp	2015-02-07 18:56:02.287762467 +0300
-@@ -29,17 +29,26 @@
-      * doesn't initialize the library for us.
-      */
- 
--    void* saslOurMalloc(unsigned long sz) {
-+// Version 2.1.26 is the first version to use size_t in the allocator signatures
-+#if (SASL_VERSION_FULL >= ((2 << 16) | (1 << 8) | 26))
-+    typedef size_t SaslAllocSize;
-+#else
-+    typedef unsigned long SaslAllocSize;
-+#endif
-+
-+    typedef int(*SaslCallbackFn)();
-+
-+    void* saslOurMalloc(SaslAllocSize sz) {
-         return ourmalloc(sz);
-     }
- 
--    void* saslOurCalloc(unsigned long count, unsigned long size) {
-+    void* saslOurCalloc(SaslAllocSize count, SaslAllocSize size) {
-         void* ptr = calloc(count, size);
--        if (!ptr) printStackAndExit(0);
-+        if (!ptr) abort();
-         return ptr;
-     }
- 
--    void* saslOurRealloc(void* ptr, unsigned long sz) {
-+    void* saslOurRealloc(void* ptr, SaslAllocSize sz) {
-         return ourrealloc(ptr, sz);
-     }
- 

diff --git a/dev-db/mongodb/files/mongodb-2.4.11-fix-scons.patch b/dev-db/mongodb/files/mongodb-2.4.11-fix-scons.patch
deleted file mode 100644
index 5050fe7..0000000
--- a/dev-db/mongodb/files/mongodb-2.4.11-fix-scons.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- b/SConstruct	2014-09-01 19:12:24.289585592 +0200
-+++ a/SConstruct	2014-09-01 19:14:12.550312261 +0200
-@@ -704,7 +704,6 @@
-     # -Winvalid-pch Warn if a precompiled header (see Precompiled Headers) is found in the search path but can't be used.
-     env.Append( CCFLAGS=["-fPIC",
-                          "-fno-strict-aliasing",
--                         "-ggdb",
-                          "-pthread",
-                          "-Wall",
-                          "-Wsign-compare",
-@@ -719,9 +718,10 @@
-             env.Append( CCFLAGS=["-fno-builtin-memcmp"] ) # glibc's memcmp is faster than gcc's
- 
-     env.Append( CPPDEFINES=["_FILE_OFFSET_BITS=64"] )
--    env.Append( CXXFLAGS=["-Wnon-virtual-dtor", "-Woverloaded-virtual"] )
-+    env.Append( CXXFLAGS=os.environ['CXXFLAGS'] )
-+    env.Append( LINKFLAGS=os.environ['LDFLAGS'] )
-     env.Append( LINKFLAGS=["-fPIC", "-pthread",  "-rdynamic"] )
--    env.Append( LIBS=[] )
-+    env.Append( LIBS=['pcre', 'pcrecpp', 'snappy'] )
- 
-     #make scons colorgcc friendly
-     for key in ('HOME', 'TERM'):

diff --git a/dev-db/mongodb/files/mongodb.confd b/dev-db/mongodb/files/mongodb.confd
deleted file mode 100644
index 4f76c5a..0000000
--- a/dev-db/mongodb/files/mongodb.confd
+++ /dev/null
@@ -1,14 +0,0 @@
-# Mongodb essentials
-MONGODB_EXEC="/usr/bin/mongod"
-MONGODB_RUN="/var/run/mongodb"
-MONGODB_DATA="/var/lib/mongodb"
-MONGODB_USER="mongodb"
-
-# Listen to specified IP, comment this to listen to all
-MONGODB_IP="127.0.0.1"
-
-# Listen to specified port
-MONGODB_PORT="27017"
-
-# Set extra options here, such as disabling the admin web server
-MONGODB_OPTIONS="--journal"

diff --git a/dev-db/mongodb/files/mongodb.initd-r1 b/dev-db/mongodb/files/mongodb.initd-r1
deleted file mode 100644
index f52cca2..0000000
--- a/dev-db/mongodb/files/mongodb.initd-r1
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/sbin/runscript
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-depend() {
-	use net
-}
-
-start() {
-	checkpath -d -m 0750 -o "${MONGODB_USER}":mongodb "${MONGODB_RUN}"
-
-	# Listen to MONGODB_IP if configured
-	[ -z "${MONGODB_IP}" ] || MONGODB_OPTIONS="--bind_ip ${MONGODB_IP} ${MONGODB_OPTIONS}"
-
-	# Baselayout-1 user should use --chuid instead of --user
-	local USEROPT="--user"
-	if [ ! -f /etc/init.d/sysfs ]; then
-		USEROPT="--chuid"
-	fi
-
-	ebegin "Starting ${SVCNAME}"
-	start-stop-daemon --background --start --make-pidfile \
-		--pidfile ${MONGODB_RUN:-/var/run/mongodb}/${SVCNAME}.pid \
-		${USEROPT} ${MONGODB_USER:-mongodb} \
-		--exec ${MONGODB_EXEC:-/usr/bin/mongod} \
-		-- \
-		--port ${MONGODB_PORT:-27017} \
-		--dbpath ${MONGODB_DATA:-/var/lib/mongodb} \
-		--unixSocketPrefix ${MONGODB_RUN:-/var/run/mongodb} \
-		--logappend --logpath /var/log/mongodb/${SVCNAME}.log \
-		${MONGODB_OPTIONS}
-	eend $?
-}
-
-stop() {
-	ebegin "Stopping ${SVCNAME}"
-	start-stop-daemon --stop --pidfile ${MONGODB_RUN:-/var/run/mongodb}/${SVCNAME}.pid
-	eend $?
-}

diff --git a/dev-db/mongodb/metadata.xml b/dev-db/mongodb/metadata.xml
index 384484c..d8ed9c9 100644
--- a/dev-db/mongodb/metadata.xml
+++ b/dev-db/mongodb/metadata.xml
@@ -21,9 +21,6 @@
 	</longdescription>
 	<use>
 		<flag name="mms-agent">Install the MongoDB Monitoring Service agent</flag>
-		<flag name="sharedclient">build client shared library libmongoclient.so</flag>
-		<flag name="spidermonkey">Use embedded SpiderMonkey engine
-			(<pkg>dev-lang/spidermonkey</pkg>) instead of v8</flag>
 		<flag name="tools">Install the MongoDB tools (mongoimport, mongodump...) 
 			from <pkg>app-admin/mongo-tools</pkg></flag>
 	</use>

diff --git a/dev-db/mongodb/mongodb-2.4.13.ebuild b/dev-db/mongodb/mongodb-2.4.13.ebuild
deleted file mode 100644
index 271b973..0000000
--- a/dev-db/mongodb/mongodb-2.4.13.ebuild
+++ /dev/null
@@ -1,150 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=4
-SCONS_MIN_VERSION="1.2.0"
-CHECKREQS_DISK_BUILD="2400M"
-CHECKREQS_DISK_USR="512M"
-
-inherit eutils flag-o-matic multilib pax-utils scons-utils systemd user versionator check-reqs
-
-MY_P=${PN}-src-r${PV/_rc/-rc}
-
-DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
-HOMEPAGE="http://www.mongodb.org"
-SRC_URI="http://downloads.mongodb.org/src/${MY_P}.tar.gz
-	mms-agent? ( https://dev.gentoo.org/~ultrabug/20140409-mms-monitoring-agent.zip )"
-
-LICENSE="AGPL-3 Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="kerberos mms-agent sharedclient spidermonkey ssl static-libs"
-
-PDEPEND="mms-agent? ( dev-python/pymongo app-arch/unzip )"
-RDEPEND="
-	>=dev-libs/boost-1.50[threads(+)]
-	dev-libs/libpcre[cxx]
-	dev-util/google-perftools[-minimal]
-	net-libs/libpcap
-	app-arch/snappy
-	ssl? ( >=dev-libs/openssl-1.0.1c )"
-DEPEND="${RDEPEND}
-	sys-libs/readline
-	sys-libs/ncurses
-	kerberos? ( dev-libs/cyrus-sasl[kerberos] )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	enewgroup mongodb
-	enewuser mongodb -1 -1 /var/lib/${PN} mongodb
-
-	scons_opts="  --disable-warnings-as-errors --cc=$(tc-getCC) --cxx=$(tc-getCXX)"
-	scons_opts+=" --use-system-tcmalloc"
-	scons_opts+=" --use-system-pcre"
-	scons_opts+=" --use-system-snappy"
-	scons_opts+=" --use-system-boost"
-
-	if use prefix; then
-		scons_opts+=" --cpppath=${EPREFIX}/usr/include"
-		scons_opts+=" --libpath=${EPREFIX}/usr/$(get_libdir)"
-	fi
-
-	if use kerberos; then
-		scons_opts+=" --use-sasl-client"
-	fi
-
-	if use sharedclient; then
-		scons_opts+=" --sharedclient"
-	fi
-
-	if use spidermonkey; then
-		scons_opts+=" --usesm"
-	else
-		scons_opts+=" --usev8"
-	fi
-
-	if use ssl; then
-		scons_opts+=" --ssl"
-	fi
-}
-
-src_prepare() {
-	epatch "${FILESDIR}/${PN}-2.4.11-fix-scons.patch"
-	epatch "${FILESDIR}/${PN}-2.2-r1-fix-boost.patch"
-	epatch "${FILESDIR}/${PN}-2.4-fix-v8-pythonpath.patch"
-	epatch "${FILESDIR}/${PN}-2.4-fix-sasl.patch"
-
-	# bug #462606
-	sed -i -e "s@\$INSTALL_DIR/lib@\$INSTALL_DIR/$(get_libdir)@g" src/SConscript.client || die
-
-	# bug #482576
-	sed -i -e "/-Werror/d" src/third_party/v8/SConscript || die
-}
-
-src_compile() {
-	escons ${scons_opts} all
-}
-
-src_install() {
-	escons ${scons_opts} --full --nostrip install --prefix="${ED}"/usr
-
-	use static-libs || find "${ED}"/usr/ -type f -name "*.a" -delete
-
-	if ! use spidermonkey; then
-		pax-mark m "${ED}"/usr/bin/{mongo,mongod}
-	fi
-
-	for x in /var/{lib,log}/${PN}; do
-		keepdir "${x}"
-		fowners mongodb:mongodb "${x}"
-	done
-
-	doman debian/mongo*.1
-	dodoc README docs/building.md
-
-	newinitd "${FILESDIR}/${PN}.initd-r1" ${PN}
-	newconfd "${FILESDIR}/${PN}.confd" ${PN}
-	newinitd "${FILESDIR}/${PN/db/s}.initd-r1" ${PN/db/s}
-	newconfd "${FILESDIR}/${PN/db/s}.confd" ${PN/db/s}
-	systemd_dounit "${FILESDIR}"/${PN}.service
-	insinto /etc
-	doins "${FILESDIR}"/${PN}.conf
-
-	insinto /etc/logrotate.d/
-	newins "${FILESDIR}/${PN}.logrotate" ${PN}
-
-	if use mms-agent; then
-		local MY_PN="mms-agent"
-		local MY_D="/opt/${MY_PN}"
-		insinto ${MY_D}
-		doins "${WORKDIR}/${MY_PN}/"*
-		fowners -R mongodb:mongodb ${MY_D}
-		newinitd "${FILESDIR}/${MY_PN}.initd-r1" ${MY_PN}
-	fi
-}
-
-pkg_preinst() {
-	# wrt bug #461466
-	if [[ "$(get_libdir)" == "lib64" ]]; then
-		rmdir "${ED}"/usr/lib/ &>/dev/null
-	fi
-}
-
-src_test() {
-	escons ${scons_opts} test
-	"${S}"/test --dbpath=unittest || die
-}
-
-pkg_postinst() {
-	if [[ ${REPLACING_VERSIONS} < 2.4 ]]; then
-		ewarn "You just upgraded from a previous version of mongodb !"
-		ewarn "Make sure you run 'mongod --upgrade' before using this version."
-	fi
-	elog "Journaling is now enabled by default, see /etc/conf.d/${PN}"
-	if use mms-agent; then
-		elog "You have to configure MMS Agent yourself :"
-		elog "Edit the settings.py file in the /opt/mms-agent/ folder."
-	fi
-}

diff --git a/dev-db/mongodb/mongodb-2.4.14.ebuild b/dev-db/mongodb/mongodb-2.4.14.ebuild
deleted file mode 100644
index feb3aa8..0000000
--- a/dev-db/mongodb/mongodb-2.4.14.ebuild
+++ /dev/null
@@ -1,150 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=4
-SCONS_MIN_VERSION="1.2.0"
-CHECKREQS_DISK_BUILD="2400M"
-CHECKREQS_DISK_USR="512M"
-
-inherit eutils flag-o-matic multilib pax-utils scons-utils systemd user versionator check-reqs
-
-MY_P=${PN}-src-r${PV/_rc/-rc}
-
-DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
-HOMEPAGE="http://www.mongodb.org"
-SRC_URI="http://downloads.mongodb.org/src/${MY_P}.tar.gz
-	mms-agent? ( https://dev.gentoo.org/~ultrabug/20140409-mms-monitoring-agent.zip )"
-
-LICENSE="AGPL-3 Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="kerberos mms-agent sharedclient spidermonkey ssl static-libs"
-
-PDEPEND="mms-agent? ( dev-python/pymongo app-arch/unzip )"
-RDEPEND="
-	>=dev-libs/boost-1.50[threads(+)]
-	dev-libs/libpcre[cxx]
-	dev-util/google-perftools[-minimal]
-	net-libs/libpcap
-	app-arch/snappy
-	ssl? ( >=dev-libs/openssl-1.0.1c )"
-DEPEND="${RDEPEND}
-	sys-libs/readline
-	sys-libs/ncurses
-	kerberos? ( dev-libs/cyrus-sasl[kerberos] )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	enewgroup mongodb
-	enewuser mongodb -1 -1 /var/lib/${PN} mongodb
-
-	scons_opts="  --disable-warnings-as-errors --cc=$(tc-getCC) --cxx=$(tc-getCXX)"
-	scons_opts+=" --use-system-tcmalloc"
-	scons_opts+=" --use-system-pcre"
-	scons_opts+=" --use-system-snappy"
-	scons_opts+=" --use-system-boost"
-
-	if use prefix; then
-		scons_opts+=" --cpppath=${EPREFIX}/usr/include"
-		scons_opts+=" --libpath=${EPREFIX}/usr/$(get_libdir)"
-	fi
-
-	if use kerberos; then
-		scons_opts+=" --use-sasl-client"
-	fi
-
-	if use sharedclient; then
-		scons_opts+=" --sharedclient"
-	fi
-
-	if use spidermonkey; then
-		scons_opts+=" --usesm"
-	else
-		scons_opts+=" --usev8"
-	fi
-
-	if use ssl; then
-		scons_opts+=" --ssl"
-	fi
-}
-
-src_prepare() {
-	epatch "${FILESDIR}/${PN}-2.4.11-fix-scons.patch"
-	epatch "${FILESDIR}/${PN}-2.2-r1-fix-boost.patch"
-	epatch "${FILESDIR}/${PN}-2.4-fix-v8-pythonpath.patch"
-	epatch "${FILESDIR}/${PN}-2.4-fix-sasl.patch"
-
-	# bug #462606
-	sed -i -e "s@\$INSTALL_DIR/lib@\$INSTALL_DIR/$(get_libdir)@g" src/SConscript.client || die
-
-	# bug #482576
-	sed -i -e "/-Werror/d" src/third_party/v8/SConscript || die
-}
-
-src_compile() {
-	escons ${scons_opts} all
-}
-
-src_install() {
-	escons ${scons_opts} --full --nostrip install --prefix="${ED}"/usr
-
-	use static-libs || find "${ED}"/usr/ -type f -name "*.a" -delete
-
-	if ! use spidermonkey; then
-		pax-mark m "${ED}"/usr/bin/{mongo,mongod}
-	fi
-
-	for x in /var/{lib,log}/${PN}; do
-		keepdir "${x}"
-		fowners mongodb:mongodb "${x}"
-	done
-
-	doman debian/mongo*.1
-	dodoc README docs/building.md
-
-	newinitd "${FILESDIR}/${PN}.initd-r1" ${PN}
-	newconfd "${FILESDIR}/${PN}.confd" ${PN}
-	newinitd "${FILESDIR}/${PN/db/s}.initd-r1" ${PN/db/s}
-	newconfd "${FILESDIR}/${PN/db/s}.confd" ${PN/db/s}
-	systemd_dounit "${FILESDIR}"/${PN}.service
-	insinto /etc
-	doins "${FILESDIR}"/${PN}.conf
-
-	insinto /etc/logrotate.d/
-	newins "${FILESDIR}/${PN}.logrotate" ${PN}
-
-	if use mms-agent; then
-		local MY_PN="mms-agent"
-		local MY_D="/opt/${MY_PN}"
-		insinto ${MY_D}
-		doins "${WORKDIR}/${MY_PN}/"*
-		fowners -R mongodb:mongodb ${MY_D}
-		newinitd "${FILESDIR}/${MY_PN}.initd-r1" ${MY_PN}
-	fi
-}
-
-pkg_preinst() {
-	# wrt bug #461466
-	if [[ "$(get_libdir)" == "lib64" ]]; then
-		rmdir "${ED}"/usr/lib/ &>/dev/null
-	fi
-}
-
-src_test() {
-	escons ${scons_opts} test
-	"${S}"/test --dbpath=unittest || die
-}
-
-pkg_postinst() {
-	if [[ ${REPLACING_VERSIONS} < 2.4 ]]; then
-		ewarn "You just upgraded from a previous version of mongodb !"
-		ewarn "Make sure you run 'mongod --upgrade' before using this version."
-	fi
-	elog "Journaling is now enabled by default, see /etc/conf.d/${PN}"
-	if use mms-agent; then
-		elog "You have to configure MMS Agent yourself :"
-		elog "Edit the settings.py file in the /opt/mms-agent/ folder."
-	fi
-}


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2016-04-02 18:54 David Seifert
  0 siblings, 0 replies; 22+ messages in thread
From: David Seifert @ 2016-04-02 18:54 UTC (permalink / raw
  To: gentoo-commits

commit:     7f12cace81b63c922641029471c832b7f1666736
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sat Apr  2 18:54:40 2016 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sat Apr  2 18:54:53 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7f12cace

dev-db/mongodb: Fix boost::none usage

Gentoo-Bug: 578846

Package-Manager: portage-2.2.28

 .../mongodb/files/mongodb-3.2.4-boost-1.60.patch   | 84 ++++++++++++++++++++++
 dev-db/mongodb/mongodb-3.2.4.ebuild                |  3 +-
 2 files changed, 86 insertions(+), 1 deletion(-)

diff --git a/dev-db/mongodb/files/mongodb-3.2.4-boost-1.60.patch b/dev-db/mongodb/files/mongodb-3.2.4-boost-1.60.patch
new file mode 100644
index 0000000..41c9bd2
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-3.2.4-boost-1.60.patch
@@ -0,0 +1,84 @@
+Fix issues caused by boost::none changes.
+See also: https://bugs.gentoo.org/show_bug.cgi?id=578846
+Adapted from: https://github.com/mongodb/mongo/commit/92c3f80f384d2825efeabd0d26aa534c0deb6988
+
+--- mongodb-src-r3.2.4/src/mongo/db/ftdc/compressor.cpp
++++ mongodb-src-r3.2.4/src/mongo/db/ftdc/compressor.cpp
+@@ -47,7 +47,7 @@
+     if (_referenceDoc.isEmpty()) {
+         FTDCBSONUtil::extractMetricsFromDocument(sample, sample, &_metrics);
+         _reset(sample, date);
+-        return {boost::none_t()};
++        return {boost::none};
+     }
+ 
+     _metrics.resize(0);
+@@ -107,7 +107,7 @@
+     }
+ 
+     // The buffer is not full, inform the caller
+-    return {boost::none_t()};
++    return {boost::none};
+ }
+ 
+ StatusWith<std::tuple<ConstDataRange, Date_t>> FTDCCompressor::getCompressedSamples() {
+--- mongodb-src-r3.2.4/src/mongo/db/ftdc/compressor_test.cpp
++++ mongodb-src-r3.2.4/src/mongo/db/ftdc/compressor_test.cpp
+@@ -122,7 +122,7 @@
+     TestTie() : _compressor(&_config) {}
+ 
+     ~TestTie() {
+-        validate(boost::none_t());
++        validate(boost::none);
+     }
+ 
+     StatusWith<boost::optional<std::tuple<ConstDataRange, FTDCCompressor::CompressorState, Date_t>>>
+--- mongodb-src-r3.2.4/src/mongo/db/ftdc/file_writer.cpp
++++ mongodb-src-r3.2.4/src/mongo/db/ftdc/file_writer.cpp
+@@ -205,7 +205,7 @@
+ 
+ Status FTDCFileWriter::close() {
+     if (_archiveStream.is_open()) {
+-        Status s = flush(boost::none_t(), Date_t());
++        Status s = flush(boost::none, Date_t());
+ 
+         _archiveStream.close();
+ 
+--- mongodb-src-r3.2.4/src/mongo/util/concurrency/shared_mutex_win.hpp
++++ mongodb-src-r3.2.4/src/mongo/util/concurrency/shared_mutex_win.hpp
+@@ -175,7 +175,7 @@
+                     return true;
+                 }
+                     
+-                unsigned long const res=detail::win32::WaitForSingleObject(unlock_sem,::boost::detail::get_milliseconds_until(wait_until));
++                unsigned long const res=WaitForSingleObject(unlock_sem,::boost::detail::get_milliseconds_until(wait_until));
+                 if(res==detail::win32::timeout)
+                 {
+                     for(;;)
+@@ -328,7 +328,7 @@
+                 {
+                     return true;
+                 }
+-                unsigned long const wait_res=detail::win32::WaitForMultipleObjects(2,semaphores,true,::boost::detail::get_milliseconds_until(wait_until));
++                unsigned long const wait_res=WaitForMultipleObjects(2,semaphores,true,::boost::detail::get_milliseconds_until(wait_until));
+                 if(wait_res==detail::win32::timeout)
+                 {
+                     for(;;)
+@@ -421,7 +421,7 @@
+                     return;
+                 }
+                     
+-                BOOST_VERIFY(!detail::win32::WaitForSingleObject(unlock_sem,detail::win32::infinite));
++                BOOST_VERIFY(!WaitForSingleObject(unlock_sem,detail::win32::infinite));
+             }
+         }
+ 
+@@ -502,7 +502,7 @@
+                 {
+                     if(!last_reader)
+                     {
+-                        BOOST_VERIFY(!detail::win32::WaitForSingleObject(upgrade_sem,detail::win32::infinite));
++                        BOOST_VERIFY(!WaitForSingleObject(upgrade_sem,detail::win32::infinite));
+                     }
+                     break;
+                 }

diff --git a/dev-db/mongodb/mongodb-3.2.4.ebuild b/dev-db/mongodb/mongodb-3.2.4.ebuild
index e1e5a32..dce800b 100644
--- a/dev-db/mongodb/mongodb-3.2.4.ebuild
+++ b/dev-db/mongodb/mongodb-3.2.4.ebuild
@@ -101,7 +101,8 @@ pkg_setup() {
 }
 
 src_prepare() {
-	epatch "${FILESDIR}/${PN}-3.2.0-fix-scons.patch"
+	epatch "${FILESDIR}/${PN}-3.2.0-fix-scons.patch" \
+		"${FILESDIR}/${P}-boost-1.60.patch"
 	epatch_user
 }
 


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2016-10-21 18:50 David Seifert
  0 siblings, 0 replies; 22+ messages in thread
From: David Seifert @ 2016-10-21 18:50 UTC (permalink / raw
  To: gentoo-commits

commit:     81ae228cb75845a554b9932d4ae60db1083779ed
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 21 18:48:10 2016 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Fri Oct 21 18:49:57 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=81ae228c

dev-db/mongodb: Allow for building against boost 1.62

Gentoo-bug: 596222
* Add missing SLOT for libressl dependency

Package-Manager: portage-2.3.2

 dev-db/mongodb/files/mongodb-3.2.10-boost-1.62.patch | 15 +++++++++++++++
 dev-db/mongodb/mongodb-3.2.10.ebuild                 |  8 +++++---
 2 files changed, 20 insertions(+), 3 deletions(-)

diff --git a/dev-db/mongodb/files/mongodb-3.2.10-boost-1.62.patch b/dev-db/mongodb/files/mongodb-3.2.10-boost-1.62.patch
new file mode 100644
index 00000000..30a3bdf
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-3.2.10-boost-1.62.patch
@@ -0,0 +1,15 @@
+Derived from http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/databases/mongodb/patches/patch-src_mongo_db_fts_unicode_string.cpp v1.1
+
+* Fix build with boost 1.62.0
+
+--- a/src/mongo/db/fts/unicode/string.cpp	2016-09-26 12:10:04.000000000 +0000
++++ b/src/mongo/db/fts/unicode/string.cpp
+@@ -274,7 +274,7 @@ bool String::substrMatch(const std::stri
+ 
+     // Case sensitive and diacritic sensitive.
+     return boost::algorithm::boyer_moore_search(
+-               haystack.begin(), haystack.end(), needle.begin(), needle.end()) != haystack.end();
++               haystack.begin(), haystack.end(), needle.begin(), needle.end()) != std::make_pair(haystack.end(), haystack.end());
+ }
+ 
+ }  // namespace unicode

diff --git a/dev-db/mongodb/mongodb-3.2.10.ebuild b/dev-db/mongodb/mongodb-3.2.10.ebuild
index 15b346c..00c9f2a 100644
--- a/dev-db/mongodb/mongodb-3.2.10.ebuild
+++ b/dev-db/mongodb/mongodb-3.2.10.ebuild
@@ -31,7 +31,7 @@ RDEPEND=">=app-arch/snappy-1.1.2
 	mms-agent? ( app-admin/mms-agent )
 	ssl? (
 		!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
-		libressl? ( dev-libs/libressl:= )
+		libressl? ( dev-libs/libressl:0= )
 	)"
 DEPEND="${RDEPEND}
 	>=sys-devel/gcc-4.8.2:*
@@ -101,8 +101,10 @@ pkg_setup() {
 }
 
 src_prepare() {
-	epatch "${FILESDIR}/${PN}-3.2.0-fix-scons.patch" \
-		"${FILESDIR}/${PN}-3.2.4-boost-1.60.patch"
+	epatch \
+		"${FILESDIR}/${PN}-3.2.0-fix-scons.patch" \
+		"${FILESDIR}/${PN}-3.2.4-boost-1.60.patch" \
+		"${FILESDIR}/${PN}-3.2.10-boost-1.62.patch"
 	epatch_user
 }
 


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2017-07-31 12:14 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2017-07-31 12:14 UTC (permalink / raw
  To: gentoo-commits

commit:     aaab0acd3865595034b5c112471308c5dfcf4b5a
Author:     Tomas Mozes <hydrapolic <AT> gmail <DOT> com>
AuthorDate: Fri Jul  7 12:30:46 2017 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Mon Jul 31 12:14:07 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aaab0acd

dev-db/mongodb: bump to 3.4.6

Package-Manager: Portage-2.3.6, Repoman-2.3.2
Closes: https://github.com/gentoo/gentoo/pull/5062

 dev-db/mongodb/Manifest                            |   1 +
 .../files/mongodb-3.4.6-no-boost-check.patch       |  11 ++
 dev-db/mongodb/mongodb-3.4.6.ebuild                | 189 +++++++++++++++++++++
 3 files changed, 201 insertions(+)

diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
index 39de355282c..31b09dfc1eb 100644
--- a/dev-db/mongodb/Manifest
+++ b/dev-db/mongodb/Manifest
@@ -7,3 +7,4 @@ DIST mongodb-src-r3.2.13.tar.gz 29273616 SHA256 31492b99d12d6363a6ebcbba32269ce9
 DIST mongodb-src-r3.2.15.tar.gz 29281130 SHA256 6726634f86d5887f9a8f9ae5e9e57d5d27ef219b6154280782d95ab81a2e43d7 SHA512 19ed07d9a71f723730bbfd49adb7b3c91bc9fce875c74d74e50a8c2b82e9755172dd5f7481c00998a444324934185fef10c50b93288d1b1be42fb83ddc61dfe8 WHIRLPOOL c26f6ca7f5874dede615664adb9cf2f19cf23cd0b98bebd42905b06597d8037018b76d5527bbad67b27c0c1aa50c6f1295e8c6d234589012d2c9d3bac99000a1
 DIST mongodb-src-r3.4.3.tar.gz 39832718 SHA256 889d49312ed072130936cfa3281123a0e89228c04f3f8e992a0b92669b28d767 SHA512 e2fb5fc2f02e9dbca6c30d2e2aaf1569180ca15198226cdad46f47f44905293afe77763fe2e5c9add0b5bcbd62b7ce7905fb183068c0738cdeeae8d39f848cef WHIRLPOOL ba6fa864249cc80e5f65feaed685980b874b46bcf975142e15fa0eda3e474cc85388920e152474dc5527a30d215c309db6d471c716e6bbe374193ff6016ba22e
 DIST mongodb-src-r3.4.4.tar.gz 39867133 SHA256 09e962bf3428474b9790bbd464cb6176817f9da6121c30e096240dbb4d51c9f6 SHA512 dbae89b49c363e7258021cd31385e4449bfdfdfd5adfcb1683e4431372731e58ec33bf8f7576d2d52659a52461bd6a32fbc67d5c6e36d52184ec1aabb345d940 WHIRLPOOL 5ad9f80c7f0f597982a32f95365df961fcd80ffa7c04183f9cb4952a52262a27ab09fee4d0115405c5197b6d3848ede56c9a4e5012ec1c358ea8c752164405c2
+DIST mongodb-src-r3.4.6.tar.gz 39922209 SHA256 8170360f6dfede9c19c131f3d76831e952b3f1494925aa7e2a3a2f95b58ad901 SHA512 68da2f385a5e1d636f1699b13818e125af2b7f13c6ff74d5f6dc8f9e04025f9baaa23acfd386118d90ac0eb8b9b7dfbf5b00f1db580a1ea1fe2309361f46eae4 WHIRLPOOL 71b9f42a192b41c797763a02eb8b318488edbd7ffaa149497d3dea5c446c43ff078d24e48971ce4644d54767bcb848e1acaca3e17be9e8c50bbdd349e0d05fab

diff --git a/dev-db/mongodb/files/mongodb-3.4.6-no-boost-check.patch b/dev-db/mongodb/files/mongodb-3.4.6-no-boost-check.patch
new file mode 100644
index 00000000000..2abde5ef08e
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-3.4.6-no-boost-check.patch
@@ -0,0 +1,11 @@
+--- SConstruct.orig	2017-06-27 19:02:43.000000000 +0000
++++ SConstruct	2017-07-07 11:33:13.252639289 +0000
+@@ -2798,8 +2798,6 @@
+     if use_system_version_of_library("boost"):
+         if not conf.CheckCXXHeader( "boost/filesystem/operations.hpp" ):
+             myenv.ConfError("can't find boost headers")
+-        if not conf.CheckBoostMinVersion():
+-            myenv.ConfError("system's version of boost is too old. version 1.49 or better required")
+ 
+         # Note that on Windows with using-system-boost builds, the following
+         # FindSysLibDep calls do nothing useful (but nothing problematic either)

diff --git a/dev-db/mongodb/mongodb-3.4.6.ebuild b/dev-db/mongodb/mongodb-3.4.6.ebuild
new file mode 100644
index 00000000000..71647e4b938
--- /dev/null
+++ b/dev-db/mongodb/mongodb-3.4.6.ebuild
@@ -0,0 +1,189 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+SCONS_MIN_VERSION="2.3.0"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit eutils flag-o-matic multilib pax-utils scons-utils systemd toolchain-funcs user versionator check-reqs
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="http://www.mongodb.org"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="AGPL-3 Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug kerberos libressl mms-agent ssl test +tools"
+
+RDEPEND=">=app-arch/snappy-1.1.3
+	>=dev-cpp/yaml-cpp-0.5.3
+	>=dev-libs/boost-1.60[threads(+)]
+	>=dev-libs/libpcre-8.39[cxx]
+	dev-libs/snowball-stemmer
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.8
+	mms-agent? ( app-admin/mms-agent )
+	ssl? (
+		!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
+		libressl? ( dev-libs/libressl:0= )
+	)"
+DEPEND="${RDEPEND}
+	>=sys-devel/gcc-5.3.0:*
+	sys-libs/ncurses
+	sys-libs/readline
+	debug? ( dev-util/valgrind )
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	test? (
+		dev-python/pymongo
+		dev-python/pyyaml
+	)"
+PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_pretend() {
+	if [[ ${REPLACING_VERSIONS} < 3.0 ]]; then
+		ewarn "To upgrade from a version earlier than the 3.0-series, you must"
+		ewarn "successively upgrade major releases until you have upgraded"
+		ewarn "to 3.2-series. Then upgrade to 3.4 series."
+	fi
+}
+
+pkg_setup() {
+	enewgroup mongodb
+	enewuser mongodb -1 -1 /var/lib/${PN} mongodb
+
+	# Maintainer notes
+	#
+	# --use-system-tcmalloc is strongly NOT recommended:
+	# https://www.mongodb.org/about/contributors/tutorial/build-mongodb-from-source/
+
+	scons_opts=(
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+	)
+
+	# wiredtiger not supported on 32bit platforms #572166
+	use x86 && scons_opts+=( --wiredtiger=off )
+
+	if use debug; then
+		scons_opts+=( --dbg=on )
+	fi
+
+	if use prefix; then
+		scons_opts+=(
+			--cpppath="${EPREFIX}/usr/include"
+			--libpath="${EPREFIX}/usr/$(get_libdir)"
+		)
+	fi
+
+	if use kerberos; then
+		scons_opts+=( --use-sasl-client )
+	fi
+
+	if use ssl; then
+		scons_opts+=( --ssl )
+	fi
+}
+
+src_prepare() {
+	epatch "${FILESDIR}/${PN}-3.4.0-fix-scons.patch"
+	epatch "${FILESDIR}/${P}-no-boost-check.patch"
+	if has_version ">=dev-libs/boost-1.62"; then
+		epatch "${FILESDIR}/${PN}-3.2.10-boost-1.62.patch"
+	fi
+	epatch_user
+}
+
+src_compile() {
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+	escons "${scons_opts[@]}" core tools
+}
+
+src_install() {
+	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
+
+	for x in /var/{lib,log}/${PN}; do
+		keepdir "${x}"
+		fowners mongodb:mongodb "${x}"
+	done
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r2" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r2" ${PN}
+	newinitd "${FILESDIR}/${PN/db/s}.initd-r2" ${PN/db/s}
+	newconfd "${FILESDIR}/${PN/db/s}.confd-r2" ${PN/db/s}
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/${PN/db/s}.conf-r2" ${PN/db/s}.conf
+
+	systemd_dounit "${FILESDIR}/${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+}
+
+pkg_preinst() {
+	# wrt bug #461466
+	if [[ "$(get_libdir)" == "lib64" ]]; then
+		rmdir "${ED}"/usr/lib/ &>/dev/null
+	fi
+}
+
+src_test() {
+	# this one test fails
+	rm jstests/core/repl_write_threads_start_param.js
+
+	./buildscripts/resmoke.py --dbpathPrefix=test --suites core || die "Tests failed"
+}
+
+pkg_postinst() {
+	local v
+	for v in ${REPLACING_VERSIONS}; do
+		if ! version_is_at_least 3.0 ${v}; then
+			ewarn "!! IMPORTANT !!"
+			ewarn " "
+			ewarn "${PN} configuration files have changed !"
+			ewarn " "
+			ewarn "Make sure you migrate from /etc/conf.d/${PN} to the new YAML standard in /etc/${PN}.conf"
+			ewarn "  http://docs.mongodb.org/manual/reference/configuration-options/"
+			ewarn " "
+			ewarn "Make sure you also follow the upgrading process :"
+			ewarn "  http://docs.mongodb.org/master/release-notes/3.0-upgrade/"
+			ewarn " "
+			ewarn "MongoDB 3.0 introduces the WiredTiger storage engine."
+			ewarn "WiredTiger is incompatible with MMAPv1 and you need to dump/reload your data if you want to use it."
+			ewarn "Once you have your data dumped, you need to set storage.engine: wiredTiger in /etc/${PN}.conf"
+			ewarn "  http://docs.mongodb.org/master/release-notes/3.0-upgrade/#change-storage-engine-to-wiredtiger"
+			break
+		fi
+	done
+
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.org/manual/release-notes/3.4/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/3.4/#upgrade-procedures"
+}


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2017-09-21 19:50 Patrice Clement
  0 siblings, 0 replies; 22+ messages in thread
From: Patrice Clement @ 2017-09-21 19:50 UTC (permalink / raw
  To: gentoo-commits

commit:     4fb6b5123a834fbb1d1726aaeebee2ec3ad79fa4
Author:     Tomas Mozes <hydrapolic <AT> gmail <DOT> com>
AuthorDate: Tue Sep  5 16:09:31 2017 +0000
Commit:     Patrice Clement <monsieurp <AT> gentoo <DOT> org>
CommitDate: Thu Sep 21 19:50:01 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4fb6b512

dev-db/mongodb: fix building with newer libpcre/glibc.

Gentoo-Bug: https://bugs.gentoo.org/580768
Gentoo-Bug: https://bugs.gentoo.org/625148
Gentoo-Bug: https://bugs.gentoo.org/626342

Package-Manager: Portage-2.3.8, Repoman-2.3.2

 ...6-Replace-string-with-explicit-std-string.patch | 283 +++++++++++++++++++++
 dev-db/mongodb/mongodb-3.2.16.ebuild               |  23 +-
 2 files changed, 294 insertions(+), 12 deletions(-)

diff --git a/dev-db/mongodb/files/mongodb-3.2.16-Replace-string-with-explicit-std-string.patch b/dev-db/mongodb/files/mongodb-3.2.16-Replace-string-with-explicit-std-string.patch
new file mode 100644
index 00000000000..6067850ad0b
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-3.2.16-Replace-string-with-explicit-std-string.patch
@@ -0,0 +1,283 @@
+diff -Nru mongodb-src-r3.2.16_orig/src/mongo/db/dbwebserver.cpp mongodb-src-r3.2.16/src/mongo/db/dbwebserver.cpp
+--- mongodb-src-r3.2.16_orig/src/mongo/db/dbwebserver.cpp	2017-07-14 22:36:01.000000000 +0200
++++ mongodb-src-r3.2.16/src/mongo/db/dbwebserver.cpp	2017-08-01 15:43:55.860712772 +0200
+@@ -69,6 +69,7 @@
+ using std::map;
+ using std::stringstream;
+ using std::vector;
++using std::string;
+ 
+ using namespace html;
+ 
+diff -Nru mongodb-src-r3.2.16_orig/src/mongo/db/matcher/expression_leaf.cpp mongodb-src-r3.2.16/src/mongo/db/matcher/expression_leaf.cpp
+--- mongodb-src-r3.2.16_orig/src/mongo/db/matcher/expression_leaf.cpp	2017-07-14 22:36:01.000000000 +0200
++++ mongodb-src-r3.2.16/src/mongo/db/matcher/expression_leaf.cpp	2017-08-01 15:46:17.070708001 +0200
+@@ -200,7 +200,7 @@
+ }
+ 
+ void ComparisonMatchExpression::toBSON(BSONObjBuilder* out) const {
+-    string opString = "";
++    std::string opString = "";
+     switch (matchType()) {
+         case LT:
+             opString = "$lt";
+@@ -880,7 +880,7 @@
+ }
+ 
+ void BitTestMatchExpression::toBSON(BSONObjBuilder* out) const {
+-    string opString = "";
++    std::string opString = "";
+ 
+     switch (matchType()) {
+         case BITS_ALL_SET:
+diff -Nru mongodb-src-r3.2.16_orig/src/mongo/db/repl/master_slave.cpp mongodb-src-r3.2.16/src/mongo/db/repl/master_slave.cpp
+--- mongodb-src-r3.2.16_orig/src/mongo/db/repl/master_slave.cpp	2017-07-14 22:36:01.000000000 +0200
++++ mongodb-src-r3.2.16/src/mongo/db/repl/master_slave.cpp	2017-08-01 15:54:45.140690837 +0200
+@@ -161,7 +161,7 @@
+ 
+     BSONObjBuilder dbsNextPassBuilder;
+     int n = 0;
+-    for (set<string>::iterator i = addDbNextPass.begin(); i != addDbNextPass.end(); i++) {
++    for (set<std::string>::iterator i = addDbNextPass.begin(); i != addDbNextPass.end(); i++) {
+         n++;
+         dbsNextPassBuilder.appendBool(*i, 1);
+     }
+@@ -170,7 +170,7 @@
+ 
+     BSONObjBuilder incompleteCloneDbsBuilder;
+     n = 0;
+-    for (set<string>::iterator i = incompleteCloneDbs.begin(); i != incompleteCloneDbs.end(); i++) {
++    for (set<std::string>::iterator i = incompleteCloneDbs.begin(); i != incompleteCloneDbs.end(); i++) {
+         n++;
+         incompleteCloneDbsBuilder.appendBool(*i, 1);
+     }
+@@ -181,7 +181,7 @@
+ }
+ 
+ void ReplSource::ensureMe(OperationContext* txn) {
+-    string myname = getHostName();
++    std::string myname = getHostName();
+ 
+     // local.me is an identifier for a server for getLastError w:2+
+     bool exists = Helpers::getSingleton(txn, "local.me", _me);
+@@ -373,10 +373,10 @@
+     }
+ 
+     virtual bool run(OperationContext* txn,
+-                     const string& ns,
++                     const std::string& ns,
+                      BSONObj& cmdObj,
+                      int options,
+-                     string& errmsg,
++                     std::string& errmsg,
+                      BSONObjBuilder& result) {
+         HandshakeArgs handshake;
+         Status status = handshake.initialize(cmdObj);
+@@ -393,7 +393,7 @@
+ } handshakeCmd;
+ 
+ bool replHandshake(DBClientConnection* conn, const OID& myRID) {
+-    string myname = getHostName();
++    std::string myname = getHostName();
+ 
+     BSONObjBuilder cmd;
+     cmd.append("handshake", myRID);
+@@ -445,7 +445,7 @@
+         BSONElement e = i.next();
+         if (e.eoo())
+             break;
+-        string name = e.embeddedObject().getField("name").valuestr();
++	std::string name = e.embeddedObject().getField("name").valuestr();
+         if (!e.embeddedObject().getBoolField("empty")) {
+             if (name != "local") {
+                 if (only.empty() || only == name) {
+@@ -459,7 +459,7 @@
+     save(txn);
+ }
+ 
+-void ReplSource::resyncDrop(OperationContext* txn, const string& db) {
++void ReplSource::resyncDrop(OperationContext* txn, const std::string& db) {
+     log() << "resync: dropping database " << db;
+     OldClientContext ctx(txn, db);
+     dropDatabase(txn, ctx.db());
+@@ -502,13 +502,13 @@
+ 
+ static DatabaseIgnorer ___databaseIgnorer;
+ 
+-void DatabaseIgnorer::doIgnoreUntilAfter(const string& db, const Timestamp& futureOplogTime) {
++void DatabaseIgnorer::doIgnoreUntilAfter(const std::string& db, const Timestamp& futureOplogTime) {
+     if (futureOplogTime > _ignores[db]) {
+         _ignores[db] = futureOplogTime;
+     }
+ }
+ 
+-bool DatabaseIgnorer::ignoreAt(const string& db, const Timestamp& currentOplogTime) {
++bool DatabaseIgnorer::ignoreAt(const std::string& db, const Timestamp& currentOplogTime) {
+     if (_ignores[db].isNull()) {
+         return false;
+     }
+@@ -598,7 +598,7 @@
+ 
+     // The database is present on the master and no conflicting databases
+     // are present on the master.  Drop any local conflicts.
+-    for (set<string>::const_iterator i = duplicates.begin(); i != duplicates.end(); ++i) {
++    for (set<std::string>::const_iterator i = duplicates.begin(); i != duplicates.end(); ++i) {
+         ___databaseIgnorer.doIgnoreUntilAfter(*i, lastTime);
+         incompleteCloneDbs.erase(*i);
+         addDbNextPass.erase(*i);
+@@ -793,10 +793,10 @@
+ }
+ 
+ void ReplSource::syncToTailOfRemoteLog() {
+-    string _ns = ns();
++    std::string _ns = ns();
+     BSONObjBuilder b;
+     if (!only.empty()) {
+-        b.appendRegex("ns", string("^") + pcrecpp::RE::QuoteMeta(only));
++        b.appendRegex("ns", std::string("^") + pcrecpp::RE::QuoteMeta(only));
+     }
+     BSONObj last = oplogReader.findOne(_ns.c_str(), Query(b.done()).sort(BSON("$natural" << -1)));
+     if (!last.isEmpty()) {
+@@ -844,7 +844,7 @@
+ */
+ int ReplSource::_sync_pullOpLog(OperationContext* txn, int& nApplied) {
+     int okResultCode = 1;
+-    string ns = string("local.oplog.$") + sourceName();
++    std::string ns = std::string("local.oplog.$") + sourceName();
+     LOG(2) << "sync_pullOpLog " << ns << " syncedTo:" << syncedTo.toStringLong() << '\n';
+ 
+     bool tailing = true;
+@@ -864,7 +864,7 @@
+                 BSONElement e = i.next();
+                 if (e.eoo())
+                     break;
+-                string name = e.embeddedObject().getField("name").valuestr();
++		std::string name = e.embeddedObject().getField("name").valuestr();
+                 if (!e.embeddedObject().getBoolField("empty")) {
+                     if (name != "local") {
+                         if (only.empty() || only == name) {
+@@ -888,7 +888,7 @@
+         if (!only.empty()) {
+             // note we may here skip a LOT of data table scanning, a lot of work for the master.
+             // maybe append "\\." here?
+-            query.appendRegex("ns", string("^") + pcrecpp::RE::QuoteMeta(only));
++            query.appendRegex("ns", std::string("^") + pcrecpp::RE::QuoteMeta(only));
+         }
+         BSONObj queryObj = query.done();
+         // e.g. queryObj = { ts: { $gte: syncedTo } }
+@@ -907,7 +907,7 @@
+ 
+     // show any deferred database creates from a previous pass
+     {
+-        set<string>::iterator i = addDbNextPass.begin();
++        set<std::string>::iterator i = addDbNextPass.begin();
+         if (i != addDbNextPass.end()) {
+             BSONObjBuilder b;
+             b.append("ns", *i + '.');
+@@ -938,7 +938,7 @@
+         BSONObj op = oplogReader.next();
+         BSONElement ts = op.getField("ts");
+         if (ts.type() != Date && ts.type() != bsonTimestamp) {
+-            string err = op.getStringField("$err");
++	    std::string err = op.getStringField("$err");
+             if (!err.empty()) {
+                 // 13051 is "tailable cursor requested on non capped collection"
+                 if (op.getIntField("code") == 13051) {
+@@ -1106,7 +1106,7 @@
+ 
+     // FIXME Handle cases where this db isn't on default port, or default port is spec'd in
+     // hostName.
+-    if ((string("localhost") == hostName || string("127.0.0.1") == hostName) &&
++    if ((std::string("localhost") == hostName || std::string("127.0.0.1") == hostName) &&
+         serverGlobalParams.port == ServerGlobalParams::DefaultDBPort) {
+         log() << "can't sync from self (localhost). sources configuration may be wrong." << endl;
+         sleepsecs(5);
+@@ -1251,7 +1251,7 @@
+         if (s) {
+             stringstream ss;
+             ss << "sleep " << s << " sec before next pass";
+-            string msg = ss.str();
++	    std::string msg = ss.str();
+             if (!serverGlobalParams.quiet)
+                 log() << msg << endl;
+             ReplInfo r(msg.c_str());
+diff -Nru mongodb-src-r3.2.16_orig/src/mongo/shell/bench.cpp mongodb-src-r3.2.16/src/mongo/shell/bench.cpp
+--- mongodb-src-r3.2.16_orig/src/mongo/shell/bench.cpp	2017-07-14 22:36:01.000000000 +0200
++++ mongodb-src-r3.2.16/src/mongo/shell/bench.cpp	2017-08-01 16:20:20.864638957 +0200
+@@ -674,7 +674,7 @@
+     invariant(bsonTemplateEvaluator.setId(_id) == BsonTemplateEvaluator::StatusSuccess);
+ 
+     if (_config->username != "") {
+-        string errmsg;
++	std::string errmsg;
+         if (!conn->auth("admin", _config->username, _config->password, errmsg)) {
+             uasserted(15931, "Authenticating to connection for _benchThread failed: " + errmsg);
+         }
+@@ -920,7 +920,7 @@
+ 
+                             if (!result["err"].eoo() && result["err"].type() == String &&
+                                 (_config->throwGLE || op.throwGLE))
+-                                throw DBException((string) "From benchRun GLE" +
++                                throw DBException((std::string) "From benchRun GLE" +
+                                                       causedBy(result["err"].String()),
+                                                   result["code"].eoo() ? 0 : result["code"].Int());
+                         }
+@@ -987,7 +987,7 @@
+ 
+                             if (!result["err"].eoo() && result["err"].type() == String &&
+                                 (_config->throwGLE || op.throwGLE))
+-                                throw DBException((string) "From benchRun GLE" +
++                                throw DBException((std::string) "From benchRun GLE" +
+                                                       causedBy(result["err"].String()),
+                                                   result["code"].eoo() ? 0 : result["code"].Int());
+                         }
+@@ -1035,7 +1035,7 @@
+ 
+                             if (!result["err"].eoo() && result["err"].type() == String &&
+                                 (_config->throwGLE || op.throwGLE))
+-                                throw DBException((string) "From benchRun GLE " +
++                                throw DBException((std::string) "From benchRun GLE " +
+                                                       causedBy(result["err"].String()),
+                                                   result["code"].eoo() ? 0 : result["code"].Int());
+                         }
+@@ -1136,7 +1136,7 @@
+     try {
+         std::unique_ptr<DBClientBase> conn(_config->createConnection());
+         if (!_config->username.empty()) {
+-            string errmsg;
++	    std::string errmsg;
+             if (!conn->auth("admin", _config->username, _config->password, errmsg)) {
+                 uasserted(15932, "Authenticating to connection for benchThread failed: " + errmsg);
+             }
+@@ -1168,7 +1168,7 @@
+         std::unique_ptr<DBClientBase> conn(_config->createConnection());
+         // Must authenticate to admin db in order to run serverStatus command
+         if (_config->username != "") {
+-            string errmsg;
++	    std::string errmsg;
+             if (!conn->auth("admin", _config->username, _config->password, errmsg)) {
+                 uasserted(16704,
+                           str::stream()
+@@ -1204,7 +1204,7 @@
+     {
+         std::unique_ptr<DBClientBase> conn(_config->createConnection());
+         if (_config->username != "") {
+-            string errmsg;
++	    std::string errmsg;
+             // this can only fail if admin access was revoked since start of run
+             if (!conn->auth("admin", _config->username, _config->password, errmsg)) {
+                 uasserted(16705,
+diff -Nru mongodb-src-r3.2.16_orig/src/mongo/util/net/miniwebserver.cpp mongodb-src-r3.2.16/src/mongo/util/net/miniwebserver.cpp
+--- mongodb-src-r3.2.16_orig/src/mongo/util/net/miniwebserver.cpp	2017-07-14 22:36:01.000000000 +0200
++++ mongodb-src-r3.2.16/src/mongo/util/net/miniwebserver.cpp	2017-08-01 16:01:01.832678112 +0200
+@@ -45,8 +45,9 @@
+ using std::endl;
+ using std::stringstream;
+ using std::vector;
++using std::string;
+ 
+-MiniWebServer::MiniWebServer(const string& name, const string& ip, int port)
++MiniWebServer::MiniWebServer(const std::string& name, const std::string& ip, int port)
+     : Listener(name, ip, port, false) {}
+ 
+ string MiniWebServer::parseURL(const char* buf) {

diff --git a/dev-db/mongodb/mongodb-3.2.16.ebuild b/dev-db/mongodb/mongodb-3.2.16.ebuild
index c7a04e63cca..f18602bddd9 100644
--- a/dev-db/mongodb/mongodb-3.2.16.ebuild
+++ b/dev-db/mongodb/mongodb-3.2.16.ebuild
@@ -1,7 +1,7 @@
 # Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=5
+EAPI=6
 SCONS_MIN_VERSION="2.3.0"
 CHECKREQS_DISK_BUILD="2400M"
 CHECKREQS_DISK_USR="512M"
@@ -44,6 +44,14 @@ DEPEND="${RDEPEND}
 	)"
 PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
 
+PATCHES=(
+	"${FILESDIR}/${PN}-3.2.0-fix-scons.patch"
+	"${FILESDIR}/${PN}-3.2.4-boost-1.60.patch"
+	"${FILESDIR}/${PN}-3.2.10-boost-1.62.patch"
+	"${FILESDIR}/${PN}-3.2.16-Replace-string-with-explicit-std-string.patch"
+	"${FILESDIR}/${PN}-3.4.6-sysmacros-include.patch"
+)
+
 S=${WORKDIR}/${MY_P}
 
 pkg_pretend() {
@@ -99,16 +107,6 @@ pkg_setup() {
 	fi
 }
 
-src_prepare() {
-	epatch \
-		"${FILESDIR}/${PN}-3.2.0-fix-scons.patch" \
-		"${FILESDIR}/${PN}-3.2.4-boost-1.60.patch"
-	if has_version ">=dev-libs/boost-1.62"; then
-		epatch "${FILESDIR}/${PN}-3.2.10-boost-1.62.patch"
-	fi
-	epatch_user
-}
-
 src_compile() {
 	# respect mongoDB upstream's basic recommendations
 	# see bug #536688 and #526114
@@ -122,6 +120,7 @@ src_compile() {
 src_install() {
 	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
 
+	local x
 	for x in /var/{lib,log}/${PN}; do
 		keepdir "${x}"
 		fowners mongodb:mongodb "${x}"
@@ -157,7 +156,7 @@ pkg_preinst() {
 
 src_test() {
 	# this one test fails
-	rm jstests/core/repl_write_threads_start_param.js
+	rm jstests/core/repl_write_threads_start_param.js || die
 
 	./buildscripts/resmoke.py --dbpathPrefix=test --suites core || die "Tests failed"
 }


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2017-10-13  8:33 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2017-10-13  8:33 UTC (permalink / raw
  To: gentoo-commits

commit:     c309a1e0e20fd3af6f21f91db6ad67eddc3a488c
Author:     Tomas Mozes <hydrapolic <AT> gmail <DOT> com>
AuthorDate: Tue Sep 26 11:26:27 2017 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Fri Oct 13 08:33:13 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c309a1e0

dev-db/mongodb: prevent privilege escalation (bug #631000)

Package-Manager: Portage-2.3.10, Repoman-2.3.3
Closes: https://github.com/gentoo/gentoo/pull/5763

 dev-db/mongodb/files/mongodb.confd-r3 | 11 +++++++++++
 dev-db/mongodb/files/mongodb.initd-r3 | 18 ++++++++++++++++++
 dev-db/mongodb/files/mongos.confd-r3  | 11 +++++++++++
 dev-db/mongodb/files/mongos.initd-r3  | 18 ++++++++++++++++++
 dev-db/mongodb/mongodb-3.0.15.ebuild  |  8 ++++----
 dev-db/mongodb/mongodb-3.2.16.ebuild  |  8 ++++----
 dev-db/mongodb/mongodb-3.4.9.ebuild   |  8 ++++----
 7 files changed, 70 insertions(+), 12 deletions(-)

diff --git a/dev-db/mongodb/files/mongodb.confd-r3 b/dev-db/mongodb/files/mongodb.confd-r3
new file mode 100644
index 00000000000..e515d1ddc73
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb.confd-r3
@@ -0,0 +1,11 @@
+# !! IMPORTANT !!
+#
+# This file is ONLY used to override some of the init script configuration.
+#
+# You should NOT use this file to configure your mongodb instance,
+# see the /etc/mongodb.conf file instead.
+#
+# Available init script modifiers :
+# - config_file : the configuration file to use (default : /etc/mongodb.conf)
+# - user : the user used to run your mongodb instance (default : mongodb)
+# - group : the group used to run your mongodb instance (default : mongodb)

diff --git a/dev-db/mongodb/files/mongodb.initd-r3 b/dev-db/mongodb/files/mongodb.initd-r3
new file mode 100644
index 00000000000..778ef748240
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb.initd-r3
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+: ${config_file:="/etc/${RC_SVCNAME}.conf"}
+: ${user:=mongodb}
+: ${group:=mongodb}
+
+command="/usr/bin/mongod"
+command_args="--config ${config_file}"
+command_background="true"
+pidfile="/run/${RC_SVCNAME}.pid"
+command_user="${user}:${group}"
+required_files="${config_file}"
+
+depend() {
+	use net
+}

diff --git a/dev-db/mongodb/files/mongos.confd-r3 b/dev-db/mongodb/files/mongos.confd-r3
new file mode 100644
index 00000000000..7f297dfd3e4
--- /dev/null
+++ b/dev-db/mongodb/files/mongos.confd-r3
@@ -0,0 +1,11 @@
+# !! IMPORTANT !!
+#
+# This file is ONLY used to override some of the init script configuration.
+#
+# You should NOT use this file to configure your mongos instance,
+# see the /etc/mongos.conf file instead.
+#
+# Available init script modifiers :
+# - config_file : the configuration file to use (default : /etc/mongos.conf)
+# - user : the user used to run your mongodb instance (default : mongodb)
+# - group : the group used to run your mongodb instance (default : mongodb)

diff --git a/dev-db/mongodb/files/mongos.initd-r3 b/dev-db/mongodb/files/mongos.initd-r3
new file mode 100644
index 00000000000..cf5844ae30a
--- /dev/null
+++ b/dev-db/mongodb/files/mongos.initd-r3
@@ -0,0 +1,18 @@
+#!/sbin/openrc-run
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+: ${config_file:="/etc/${RC_SVCNAME}.conf"}
+: ${user:=mongodb}
+: ${group:=mongodb}
+
+command="/usr/bin/mongos"
+command_args="--config ${config_file}"
+command_background="true"
+pidfile="/run/${RC_SVCNAME}.pid"
+command_user="${user}:${group}"
+required_files="${config_file}"
+
+depend() {
+	use net
+}

diff --git a/dev-db/mongodb/mongodb-3.0.15.ebuild b/dev-db/mongodb/mongodb-3.0.15.ebuild
index 848080d0799..08741ca2af6 100644
--- a/dev-db/mongodb/mongodb-3.0.15.ebuild
+++ b/dev-db/mongodb/mongodb-3.0.15.ebuild
@@ -111,10 +111,10 @@ src_install() {
 	doman debian/mongo*.1
 	dodoc README docs/building.md
 
-	newinitd "${FILESDIR}/${PN}.initd-r2" ${PN}
-	newconfd "${FILESDIR}/${PN}.confd-r2" ${PN}
-	newinitd "${FILESDIR}/${PN/db/s}.initd-r2" ${PN/db/s}
-	newconfd "${FILESDIR}/${PN/db/s}.confd-r2" ${PN/db/s}
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/${PN/db/s}.initd-r3" ${PN/db/s}
+	newconfd "${FILESDIR}/${PN/db/s}.confd-r3" ${PN/db/s}
 
 	insinto /etc
 	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf

diff --git a/dev-db/mongodb/mongodb-3.2.16.ebuild b/dev-db/mongodb/mongodb-3.2.16.ebuild
index f18602bddd9..76293455988 100644
--- a/dev-db/mongodb/mongodb-3.2.16.ebuild
+++ b/dev-db/mongodb/mongodb-3.2.16.ebuild
@@ -129,10 +129,10 @@ src_install() {
 	doman debian/mongo*.1
 	dodoc README docs/building.md
 
-	newinitd "${FILESDIR}/${PN}.initd-r2" ${PN}
-	newconfd "${FILESDIR}/${PN}.confd-r2" ${PN}
-	newinitd "${FILESDIR}/${PN/db/s}.initd-r2" ${PN/db/s}
-	newconfd "${FILESDIR}/${PN/db/s}.confd-r2" ${PN/db/s}
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/${PN/db/s}.initd-r3" ${PN/db/s}
+	newconfd "${FILESDIR}/${PN/db/s}.confd-r3" ${PN/db/s}
 
 	insinto /etc
 	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf

diff --git a/dev-db/mongodb/mongodb-3.4.9.ebuild b/dev-db/mongodb/mongodb-3.4.9.ebuild
index 8b70cd5e8e2..1e193228dcc 100644
--- a/dev-db/mongodb/mongodb-3.4.9.ebuild
+++ b/dev-db/mongodb/mongodb-3.4.9.ebuild
@@ -134,10 +134,10 @@ src_install() {
 	doman debian/mongo*.1
 	dodoc README docs/building.md
 
-	newinitd "${FILESDIR}/${PN}.initd-r2" ${PN}
-	newconfd "${FILESDIR}/${PN}.confd-r2" ${PN}
-	newinitd "${FILESDIR}/${PN/db/s}.initd-r2" ${PN/db/s}
-	newconfd "${FILESDIR}/${PN/db/s}.confd-r2" ${PN/db/s}
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/${PN/db/s}.initd-r3" ${PN/db/s}
+	newconfd "${FILESDIR}/${PN/db/s}.confd-r3" ${PN/db/s}
 
 	insinto /etc
 	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2018-01-05 13:07 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2018-01-05 13:07 UTC (permalink / raw
  To: gentoo-commits

commit:     c17e73664b1be99b76b1f7e4c76068c43bca2846
Author:     Ultrabug <ultrabug <AT> gentoo <DOT> org>
AuthorDate: Fri Jan  5 13:05:50 2018 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Fri Jan  5 13:07:06 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c17e7366

dev-db/mongodb: drop obsolete 2.6 series

 dev-db/mongodb/Manifest                            |   2 -
 .../files/mongodb-2.4-fix-v8-pythonpath.patch      |  11 --
 .../files/mongodb-2.6.10-fix-boost-1.57.patch      |  13 --
 dev-db/mongodb/files/mongodb-2.6.2-fix-scons.patch |  35 ----
 dev-db/mongodb/mongodb-2.6.12.ebuild               | 183 ---------------------
 5 files changed, 244 deletions(-)

diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
index 9de795e1fd7..9d09d246826 100644
--- a/dev-db/mongodb/Manifest
+++ b/dev-db/mongodb/Manifest
@@ -1,5 +1,3 @@
-DIST 20140409-mms-monitoring-agent.zip 40122 BLAKE2B 265121024a973ca02634bf17fc680b2369db0681e365f79690f77fd0aec976d60a374062554c3a72af75911684ce7aa8537f72a3f4d321a65815fb1f7c1c89af SHA512 5290a813c407251b5e4def813ce6fe7e09d6c3a1907fd409e326b15b07aed39f7db3a28710ecdaffe2771136c9433253c5d1857c823844a4b75dd38f1d15eefd
-DIST mongodb-src-r2.6.12.tar.gz 16462842 BLAKE2B 881b71958abab312e21b2b3d07fc84a2d9b141999df9a01ca80c7b726f5d87ed95dd964d8a9daf9f37d5c9e81067d1ac2453152654d207e7c4d31ef08bf0a712 SHA512 ceed10f2da50ca390f56cc79d39ea4db7a1ef6764e37dae61c3f3f664708be72de09443bbf94f8e58479e4f2923ff2ab9eee45652e82271b3bad591e03ef7657
 DIST mongodb-src-r3.0.14.tar.gz 28093922 BLAKE2B c36f1868aaf8d149550d9e8fcfa3598b917426f896cdb9e1d12fb047345011b06975719d24db3ffadadf6e1f6007a3e32768eaaa9da9ec8f340c7a49c9239b45 SHA512 477fab29ca0ad2a0f24b895e30dc4770af8d6a1a57f3c10a02a989b58dd22510db554da0418129d4e81958342ad169696eed4b86bf5aa73916c7cec879db1152
 DIST mongodb-src-r3.0.15.tar.gz 28096395 BLAKE2B 123194723e7f1057bc5497ce9bf51f8dd2d65495f6e2c84adde22e3b41cace9c0bce8134a7b85fa1c8e89ce953a3df780eae013d61bba44bbf9339c1e2e478af SHA512 21cec235a691dad7d1d2c625ef04a851b59223b8f2c0bdc979f2a0b8249ed46b4e62753fd595afa7b74bce13851d1f6547e54d8ffad8ba1f56e36db664f5b27e
 DIST mongodb-src-r3.2.12.tar.gz 29178424 BLAKE2B 212a2aaac62460812874bb4d924f9cedcb591699367a72ace620e9635a6511048efa3f1202a51e4b58ca8e5f8879fbe4638284c5d3899290bff6b1ca9be565a3 SHA512 0c4ddaaddf15d97957faff46dc4a3f79c545cacc8a56dbe1d063778117ba9b645323b0cb7fd054fae805d092b8372c411a82e3370244b7939bda20a65fdb951c

diff --git a/dev-db/mongodb/files/mongodb-2.4-fix-v8-pythonpath.patch b/dev-db/mongodb/files/mongodb-2.4-fix-v8-pythonpath.patch
deleted file mode 100644
index 19efad67683..00000000000
--- a/dev-db/mongodb/files/mongodb-2.4-fix-v8-pythonpath.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/third_party/v8/SConscript	2014-05-26 11:00:37.725508098 +0200
-+++ b/src/third_party/v8/SConscript	2014-05-26 11:01:13.265029083 +0200
-@@ -29,7 +29,7 @@
- import sys
- from os.path import join, dirname, abspath
- root_dir = dirname(File('SConscript').rfile().abspath)
--sys.path.append(join(root_dir, 'tools'))
-+sys.path.insert(0, join(root_dir, 'tools'))
- import js2c
- 
- Import("env windows linux darwin solaris freebsd debugBuild")

diff --git a/dev-db/mongodb/files/mongodb-2.6.10-fix-boost-1.57.patch b/dev-db/mongodb/files/mongodb-2.6.10-fix-boost-1.57.patch
deleted file mode 100644
index 5f289c07883..00000000000
--- a/dev-db/mongodb/files/mongodb-2.6.10-fix-boost-1.57.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -up mongodb-src-r2.6.7/src/mongo/shell/linenoise_utf8.h\~ mongodb-src-r2.6.7/src/mongo/shell/linenoise_utf8.h
---- mongodb-src-r2.6.7/src/mongo/shell/linenoise_utf8.h~	2015-01-13 18:12:06.000000000 +0100
-+++ mongodb-src-r2.6.7/src/mongo/shell/linenoise_utf8.h	2015-01-28 22:22:50.538934558 +0100
-@@ -17,6 +17,7 @@
- 
- #include <boost/smart_ptr/scoped_array.hpp>
- #include <string.h>
-+#include <algorithm>
- 
- namespace linenoise_utf8 {
- 
-
-Diff finished.  Wed Jan 28 22:24:47 2015

diff --git a/dev-db/mongodb/files/mongodb-2.6.2-fix-scons.patch b/dev-db/mongodb/files/mongodb-2.6.2-fix-scons.patch
deleted file mode 100644
index 76feba7bfe7..00000000000
--- a/dev-db/mongodb/files/mongodb-2.6.2-fix-scons.patch
+++ /dev/null
@@ -1,35 +0,0 @@
---- a/SConstruct	2014-06-16 19:32:46.274507258 +0200
-+++ b/SConstruct	2014-06-16 19:34:04.763586829 +0200
-@@ -813,7 +813,6 @@
-     # -Winvalid-pch Warn if a precompiled header (see Precompiled Headers) is found in the search path but can't be used.
-     env.Append( CCFLAGS=["-fPIC",
-                          "-fno-strict-aliasing",
--                         "-ggdb",
-                          "-pthread",
-                          "-Wall",
-                          "-Wsign-compare",
-@@ -821,13 +820,13 @@
-                          "-Winvalid-pch"] )
-     # env.Append( " -Wconversion" ) TODO: this doesn't really work yet
-     if linux or darwin:
--        env.Append( CCFLAGS=["-pipe"] )
-         if not has_option("disable-warnings-as-errors"):
-             env.Append( CCFLAGS=["-Werror"] )
- 
-     env.Append( CPPDEFINES=["_FILE_OFFSET_BITS=64"] )
--    env.Append( CXXFLAGS=["-Wnon-virtual-dtor", "-Woverloaded-virtual"] )
-     env.Append( LINKFLAGS=["-fPIC", "-pthread"] )
-+    env.Append( CXXFLAGS=os.environ['CXXFLAGS'] )
-+    env.Append( LINKFLAGS=os.environ['LDFLAGS'] )
- 
-     # SERVER-9761: Ensure early detection of missing symbols in dependent libraries at program
-     # startup.
-@@ -844,7 +843,7 @@
-     if not darwin:
-         env.Append( LINKFLAGS=["-rdynamic"] )
- 
--    env.Append( LIBS=[] )
-+    env.Append( LIBS=['pcre', 'pcrecpp', 'snappy', 'yaml-cpp'] )
- 
-     #make scons colorgcc friendly
-     for key in ('HOME', 'TERM'):

diff --git a/dev-db/mongodb/mongodb-2.6.12.ebuild b/dev-db/mongodb/mongodb-2.6.12.ebuild
deleted file mode 100644
index e17d7986b3c..00000000000
--- a/dev-db/mongodb/mongodb-2.6.12.ebuild
+++ /dev/null
@@ -1,183 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-SCONS_MIN_VERSION="1.2.0"
-CHECKREQS_DISK_BUILD="2400M"
-CHECKREQS_DISK_USR="512M"
-CHECKREQS_MEMORY="1024M"
-
-inherit eutils flag-o-matic multilib pax-utils scons-utils systemd user versionator check-reqs
-
-MY_P=${PN}-src-r${PV/_rc/-rc}
-
-DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
-HOMEPAGE="http://www.mongodb.org"
-SRC_URI="http://downloads.mongodb.org/src/${MY_P}.tar.gz
-	mms-agent? ( https://dev.gentoo.org/~ultrabug/20140409-mms-monitoring-agent.zip )"
-
-LICENSE="AGPL-3 Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="debug kerberos mms-agent ssl static-libs"
-
-PDEPEND="mms-agent? ( dev-python/pymongo app-arch/unzip )"
-RDEPEND="
-	app-arch/snappy
-	>=dev-cpp/yaml-cpp-0.5.1
-	>=dev-libs/boost-1.50[threads(+)]
-	>=dev-libs/libpcre-8.37[cxx]
-	dev-libs/snowball-stemmer
-	dev-util/google-perftools[-minimal]
-	net-libs/libpcap
-	ssl? ( >=dev-libs/openssl-1.0.1g )"
-DEPEND="${RDEPEND}
-	sys-libs/ncurses
-	sys-libs/readline
-	kerberos? ( dev-libs/cyrus-sasl[kerberos] )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-	enewgroup mongodb
-	enewuser mongodb -1 -1 /var/lib/${PN} mongodb
-
-	scons_opts="--variant-dir=build --cc=$(tc-getCC) --cxx=$(tc-getCXX)"
-	scons_opts+=" --disable-warnings-as-errors"
-	scons_opts+=" --use-system-boost"
-	scons_opts+=" --use-system-pcre"
-	scons_opts+=" --use-system-snappy"
-	scons_opts+=" --use-system-stemmer"
-	scons_opts+=" --use-system-tcmalloc"
-	scons_opts+=" --use-system-yaml"
-	scons_opts+=" --usev8"
-
-	if use debug; then
-		scons_opts+=" --dbg=on"
-	fi
-
-	if use prefix; then
-		scons_opts+=" --cpppath=${EPREFIX}/usr/include"
-		scons_opts+=" --libpath=${EPREFIX}/usr/$(get_libdir)"
-	fi
-
-	if use kerberos; then
-		scons_opts+=" --use-sasl-client"
-	fi
-
-	if use ssl; then
-		scons_opts+=" --ssl"
-	fi
-}
-
-src_prepare() {
-	epatch "${FILESDIR}/${PN}-2.6.2-fix-scons.patch"
-	epatch "${FILESDIR}/${PN}-2.4-fix-v8-pythonpath.patch"
-	epatch "${FILESDIR}/${PN}-2.6.10-fix-boost-1.57.patch"
-
-	# fix yaml-cpp detection
-	sed -i -e "s/\[\"yaml\"\]/\[\"yaml-cpp\"\]/" SConstruct || die
-
-	# bug #462606
-	sed -i -e "s@\$INSTALL_DIR/lib@\$INSTALL_DIR/$(get_libdir)@g" src/SConscript.client || die
-
-	# bug #482576
-	sed -i -e "/-Werror/d" src/third_party/v8/SConscript || die
-}
-
-src_configure() {
-	# filter some problematic flags
-	filter-flags "-march=*"
-	filter-flags -O?
-}
-
-src_compile() {
-	escons ${scons_opts} all
-}
-
-src_install() {
-	escons ${scons_opts} --full --nostrip install --prefix="${ED}"/usr
-
-	use static-libs || find "${ED}"/usr/ -type f -name "*.a" -delete
-
-	for x in /var/{lib,log}/${PN}; do
-		keepdir "${x}"
-		fowners mongodb:mongodb "${x}"
-	done
-
-	doman debian/mongo*.1
-	dodoc README docs/building.md
-
-	newinitd "${FILESDIR}/${PN}.initd-r2" ${PN}
-	newconfd "${FILESDIR}/${PN}.confd-r2" ${PN}
-	newinitd "${FILESDIR}/${PN/db/s}.initd-r2" ${PN/db/s}
-	newconfd "${FILESDIR}/${PN/db/s}.confd-r2" ${PN/db/s}
-
-	insinto /etc
-	newins "${FILESDIR}/${PN}.conf-r2" ${PN}.conf
-	newins "${FILESDIR}/${PN/db/s}.conf-r2" ${PN/db/s}.conf
-
-	systemd_dounit "${FILESDIR}/${PN}.service"
-
-	insinto /etc/logrotate.d/
-	newins "${FILESDIR}/${PN}.logrotate" ${PN}
-
-	# see bug #526114
-	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
-
-	if use mms-agent; then
-		local MY_PN="mms-agent"
-		local MY_D="/opt/${MY_PN}"
-
-		insinto /etc
-		newins "${WORKDIR}/${MY_PN}/settings.py" mms-agent.conf
-		rm "${WORKDIR}/${MY_PN}/settings.py"
-
-		insinto ${MY_D}
-		doins "${WORKDIR}/${MY_PN}/"*
-		dosym /etc/mms-agent.conf ${MY_D}/settings.py
-
-		fowners -R mongodb:mongodb ${MY_D}
-		newinitd "${FILESDIR}/${MY_PN}.initd-r2" ${MY_PN}
-	fi
-}
-
-pkg_preinst() {
-	# wrt bug #461466
-	if [[ "$(get_libdir)" == "lib64" ]]; then
-		rmdir "${ED}"/usr/lib/ &>/dev/null
-	fi
-}
-
-src_test() {
-	escons ${scons_opts} test
-	"${S}"/test --dbpath=unittest || die
-}
-
-pkg_postinst() {
-	local v
-	for v in ${REPLACING_VERSIONS}; do
-		if ! version_is_at_least 2.6 ${v}; then
-			ewarn "!! IMPORTANT !!"
-			ewarn " "
-			ewarn "${PN} configuration files have changed !"
-			ewarn " "
-			ewarn "Make sure you migrate from /etc/conf.d/${PN} to the new YAML standard in /etc/${PN}.conf"
-			ewarn "  http://docs.mongodb.org/manual/reference/configuration-options/"
-			ewarn " "
-			ewarn "Make sure you also follow the upgrading process :"
-			ewarn "  http://docs.mongodb.org/master/release-notes/2.6-upgrade/"
-			ewarn " "
-			if use mms-agent; then
-				ewarn "MMS Agent configuration file has been moved to :"
-				ewarn "  /etc/mms-agent.conf"
-			fi
-			break
-		else
-			if use mms-agent; then
-				elog "Edit your MMS Agent configuration file :"
-				elog "  /etc/mms-agent.conf"
-			fi
-		fi
-	done
-}


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2018-01-06 21:34 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2018-01-06 21:34 UTC (permalink / raw
  To: gentoo-commits

commit:     b4064aaa6b6790f7eff7a2dd55aa32ae7ba6dac0
Author:     Tomas Mozes <hydrapolic <AT> gmail <DOT> com>
AuthorDate: Fri Jan  5 23:17:27 2018 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Sat Jan  6 21:34:32 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b4064aaa

dev-db/mongodb: version bump to 3.6.1

 dev-db/mongodb/Manifest                            |   1 +
 .../mongodb/files/mongodb-3.6.1-no-compass.patch   |  46 ++++++
 dev-db/mongodb/mongodb-3.6.1.ebuild                | 170 +++++++++++++++++++++
 3 files changed, 217 insertions(+)

diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
index 9d09d246826..1d9f22ce951 100644
--- a/dev-db/mongodb/Manifest
+++ b/dev-db/mongodb/Manifest
@@ -5,3 +5,4 @@ DIST mongodb-src-r3.2.13.tar.gz 29273616 BLAKE2B 9fb9851953ef1561340bcb33cac6a2c
 DIST mongodb-src-r3.2.16.tar.gz 29293555 BLAKE2B e2863ed0210bc66fcf2c80e28668674c254e78ee750a0eb84c45569c2224157f1db65aca5296a0ed0c32ef83ab6269de25bd69dbf1f0ef54b021bb0aecd2e46a SHA512 ba57aae430959f7df036b7e19e1b7d81956184bededd35631616c6e3dc9423dc79a50ab3265bc48b06d198a7043bca902aee2ea75954e38151ebead5b5ab2db2
 DIST mongodb-src-r3.2.17.tar.gz 29295394 BLAKE2B 3fa9d8fa0b50b72c3b2aa86980dd4d46bd053f23d044e321d6f98f5edb76c566bf00455cf745110a8c39355843664d9d1fbbdf554fc8696de73db2b270446adc SHA512 0d6a01278bc61805afd164e4a29abe150a5a96d551ed2c7c5d385b269924a7c5f065315e4f19c0ab070aa275ac03447959af45f33826457e5db0c5f98e623512
 DIST mongodb-src-r3.4.10.tar.gz 39959937 BLAKE2B f14f081525f694b939bc21f8cb6364c2a37573c0e1867322dd2062dc167b112751579c3e2d76730b3ff07b0c6bbfd36666bbea99162b7c10eef62d92eb1b0850 SHA512 6293dde40a8433477ba3b1cf77abbdb32b28ce58279cc616b488647c8ab71b5ab3eab2146058c4a74b9e00f0938f1415020e2f26ea01f2b29dd78a1a38d58c3a
+DIST mongodb-src-r3.6.1.tar.gz 39996730 BLAKE2B 4d05b5bec959ff6d87913aae7a30af1cdec5d22eaf7785ec7f49e3deb5d4d92db35f278c7cddf91ed8bd3750797c0461bb7bc188214c82cecf9d3b2e43fbf6aa SHA512 ad02fac423186da725493bf82a417cf5f68b08afe91c67f007b46324dfde3d6b4c51ed8eb1a314da73563be498b844f79be66a4f5d1fb83095df6c5458bd6d1f

diff --git a/dev-db/mongodb/files/mongodb-3.6.1-no-compass.patch b/dev-db/mongodb/files/mongodb-3.6.1-no-compass.patch
new file mode 100644
index 00000000000..133c10fd258
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-3.6.1-no-compass.patch
@@ -0,0 +1,46 @@
+diff --git a/src/mongo/SConscript b/src/mongo/SConscript
+index 9cde728..e29664e 100644
+--- a/src/mongo/SConscript
++++ b/src/mongo/SConscript
+@@ -629,33 +629,6 @@ for full_dir, archive_dir in env["ARCHIVE_ADDITION_DIR_MAP"].items():
+ for target in env["DIST_BINARIES"]:
+     installBinary(env, "db/modules/" + target)
+ 
+-# Set the download url to the right place
+-compass_type = 'compass-community'
+-if 'enterprise' in env['MONGO_MODULES']:
+-    compass_type = 'compass'
+-
+-compass_script = "install_compass"
+-if env.TargetOSIs('windows'):
+-    # On windows the .in needs to be explicitly added to the file.
+-    compass_script = "Install-Compass.ps1.in"
+-
+-compass_python_interpreter = '/usr/bin/env python2'
+-if env.TargetOSIs('darwin'):
+-    compass_python_interpreter = '/usr/bin/env python'
+-
+-compass_installer = env.Substfile('#/src/mongo/installer/compass/' + compass_script,
+-                                  SUBST_DICT=[
+-                                      ('@compass_type@', compass_type),
+-                                      ('@python_interpreter@', compass_python_interpreter),
+-                                  ])
+-distBinaries.append(compass_installer)
+-
+-compass_script_installer = env.Install("$INSTALL_DIR/bin", compass_installer)
+-
+-if env.TargetOSIs('posix'):
+-    env.AddPostAction( compass_script_installer, 'chmod 755 $TARGET' )
+-    env.AddPostAction( compass_installer, 'chmod 755 $TARGET' )
+-
+ # "dist" target is valid only when --use-new-tools is specified
+ # Attempts to build release artifacts without tools must fail
+ if has_option("use-new-tools"):
+@@ -673,7 +646,6 @@ if has_option("use-new-tools"):
+                 '--transform $BUILD_DIR/mongo=$SERVER_DIST_BASENAME/bin',
+                 '--transform $BUILD_DIR/mongo/stripped/src/mongo-tools=$SERVER_DIST_BASENAME/bin',
+                 '--transform src/mongo-tools=$SERVER_DIST_BASENAME/bin',
+-                '--transform src/mongo/installer/compass=$SERVER_DIST_BASENAME/bin',
+                 '${TEMPFILE(SOURCES[1:])}'
+             ],
+         ),

diff --git a/dev-db/mongodb/mongodb-3.6.1.ebuild b/dev-db/mongodb/mongodb-3.6.1.ebuild
new file mode 100644
index 00000000000..363620ef050
--- /dev/null
+++ b/dev-db/mongodb/mongodb-3.6.1.ebuild
@@ -0,0 +1,170 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+SCONS_MIN_VERSION="2.5.0"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs eutils flag-o-matic multilib multiprocessing pax-utils python-single-r1 scons-utils systemd toolchain-funcs user versionator
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="AGPL-3 Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug kerberos libressl mms-agent ssl test +tools"
+
+RDEPEND=">=app-arch/snappy-1.1.3
+	>=dev-cpp/yaml-cpp-0.5.3
+	>=dev-libs/boost-1.60:=[threads(+)]
+	>=dev-libs/libpcre-8.41[cxx]
+	dev-libs/snowball-stemmer
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.8:=
+	mms-agent? ( app-admin/mms-agent )
+	ssl? (
+		!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
+		libressl? ( dev-libs/libressl:0= )
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	dev-python/cheetah[${PYTHON_USEDEP}]
+	dev-python/pyyaml[${PYTHON_USEDEP}]
+	dev-python/typing[${PYTHON_USEDEP}]
+	<dev-util/scons-3
+	sys-libs/ncurses
+	sys-libs/readline
+	debug? ( dev-util/valgrind )
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	test? (
+		dev-python/pymongo[${PYTHON_USEDEP}]
+	)"
+PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-3.4.7-no-boost-check.patch"
+	"${FILESDIR}/${PN}-3.6.1-no-compass.patch"
+)
+
+S=${WORKDIR}/${MY_P}
+
+pkg_pretend() {
+	if [[ -n ${REPLACING_VERSIONS} ]] && [[ ${REPLACING_VERSIONS} < 3.4 ]]; then
+		ewarn "To upgrade from a version earlier than the 3.4-series, you must"
+		ewarn "successively upgrade major releases until you have upgraded"
+		ewarn "to 3.4-series. Then upgrade to 3.6 series."
+	fi
+}
+
+pkg_setup() {
+	enewgroup mongodb
+	enewuser mongodb -1 -1 /var/lib/${PN} mongodb
+
+	python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -rv src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
+
+	# remove compass
+	rm -rv src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	# https://www.mongodb.org/about/contributors/tutorial/build-mongodb-from-source/
+	scons_opts=(
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+	)
+
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use ssl && scons_opts+=( --ssl )
+
+	# wiredtiger not supported on 32bit platforms #572166
+	use x86 && scons_opts+=( --wiredtiger=off )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	escons "${scons_opts[@]}" core tools
+}
+
+# FEATURES="test -usersandbox" emerge dev-db/mongodb
+src_test() {
+	"${EPYTHON}" ./buildscripts/resmoke.py --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed"
+}
+
+src_install() {
+	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		keepdir "${x}"
+		fowners mongodb:mongodb "${x}"
+		fperms 0750 "${x}"
+	done
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/${PN/db/s}.initd-r3" ${PN/db/s}
+	newconfd "${FILESDIR}/${PN/db/s}.confd-r3" ${PN/db/s}
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/${PN/db/s}.conf-r2" ${PN/db/s}.conf
+
+	systemd_dounit "${FILESDIR}/${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+}
+
+pkg_preinst() {
+	# wrt bug #461466
+	if [[ "$(get_libdir)" == "lib64" ]]; then
+		rmdir "${ED}"/usr/lib/ &>/dev/null
+	fi
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(get_version_component_range 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(get_version_component_range 1-2)/#upgrade-procedures"
+}


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2019-09-22 18:59 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2019-09-22 18:59 UTC (permalink / raw
  To: gentoo-commits

commit:     c563fa5f8d2bbb80c3c11b9627cf7501f4b8237a
Author:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 22 18:57:33 2019 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Sun Sep 22 18:58:46 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c563fa5f

dev-db/mongodb: version bump, fix #693282

Package-Manager: Portage-2.3.75, Repoman-2.3.17
Signed-off-by: Alexys Jacob <ultrabug <AT> gentoo.org>

 dev-db/mongodb/Manifest                            |   1 +
 .../mongodb-4.2.0-fix-scons-third-party.patch      |  11 ++
 dev-db/mongodb/files/mongodb-4.2.0-fix-scons.patch |  30 ++++
 dev-db/mongodb/mongodb-4.2.0.ebuild                | 168 +++++++++++++++++++++
 4 files changed, 210 insertions(+)

diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
index a80964813a5..e468012ed5c 100644
--- a/dev-db/mongodb/Manifest
+++ b/dev-db/mongodb/Manifest
@@ -2,3 +2,4 @@ DIST mongodb-src-r3.6.13.tar.gz 40853787 BLAKE2B de9621de4f570d569df5cfe026ea5da
 DIST mongodb-src-r3.6.8.tar.gz 40428295 BLAKE2B cc02f73cfb49fb38ccabaad5a02610ce73fc41895ce944e48669e254bcbc70c8872a1bd7f8e04371fae4fcd9af2466fd8550367dd1d1da5cee50b86fc5023bf2 SHA512 c981f3269be3bafb59aa89d36c39a801fd7007b60db6c09b4616a559aaf8e50b34cabbdac2b59f23552c0a5112913fba468f7e2ed9a5f4daa3702dcffdf34999
 DIST mongodb-src-r4.0.10.tar.gz 49870574 BLAKE2B 1babbfa1a6d8fae390ec37042feff896c402772e832cc5b0b82fc4d531a6487ac2bd8d407c37ca75a76d78bc91cc665bfc3b7b223e6ceaaea2d921b337ef4d19 SHA512 891bfdc0d415515d7aa36aeb0618055ac6815c7d704537b88293226cecc1b677134db621fd90dee3913f4ff8174a888bcf68adee0a243d0f55ef6c0033a4f4b9
 DIST mongodb-src-r4.0.12.tar.gz 49937644 BLAKE2B 81044a6d68be6420d30fb2d7386ff29871a696cad94ce5977c1aba60c2ce80e18ccb86492c1947a359ef124332ea82ac3cb0fb73a68f51904a008fdf911aa055 SHA512 802eaf57d56c5e8e217344f10104a201acb6f5abef0065fc1bb8e6ceef13fe489b7ae46ed0d55b5bad50fe3579860b1c1471d224b51b0f15f968278cb5f6a47a
+DIST mongodb-src-r4.2.0.tar.gz 60781115 BLAKE2B 75531f69647c84f71127d4cdccf13bc21e50586240c767b4c1aa1efbf56cf008bf4f32b3a2011120ad9099da0f97be934375b8dd3d012670034327175c454f0e SHA512 be2f4e00364ac49b1a0490fa859640680a4d10d861252d200bd3db535c770a3b97cee9de6d2b0b6b3622502d055ba92b6c1d88cb1134d251aa2cf50a8951b64c

diff --git a/dev-db/mongodb/files/mongodb-4.2.0-fix-scons-third-party.patch b/dev-db/mongodb/files/mongodb-4.2.0-fix-scons-third-party.patch
new file mode 100644
index 00000000000..6afa0d75caf
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.2.0-fix-scons-third-party.patch
@@ -0,0 +1,11 @@
+--- a/src/third_party/SConscript	2019-09-22 14:31:48.847382840 +0200
++++ b/src/third_party/SConscript	2019-09-22 14:32:56.858997243 +0200
+@@ -188,7 +188,7 @@
+     libraries = thisEnv.Flatten([libraries])
+     parts = thisEnv.Flatten([parts])
+     for lib in libraries:
+-        mods = thirdPartyEnvironmentModifications[lib]
++        mods = thirdPartyEnvironmentModifications.get(lib, {})
+         if not parts:
+             thisEnv.PrependUnique(**mods)
+         else:

diff --git a/dev-db/mongodb/files/mongodb-4.2.0-fix-scons.patch b/dev-db/mongodb/files/mongodb-4.2.0-fix-scons.patch
new file mode 100644
index 00000000000..3c929df6f96
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.2.0-fix-scons.patch
@@ -0,0 +1,30 @@
+--- a/SConstruct	2019-08-21 09:25:00.980260318 +0200
++++ b/SConstruct	2019-08-21 09:27:53.653601283 +0200
+@@ -1858,7 +1858,6 @@
+     # -Winvalid-pch Warn if a precompiled header (see Precompiled Headers) is found in the search path but can't be used.
+     env.Append( CCFLAGS=["-fno-omit-frame-pointer",
+                          "-fno-strict-aliasing",
+-                         "-ggdb" if not env.TargetOSIs('emscripten') else "-g",
+                          "-pthread",
+                          "-Wall",
+                          "-Wsign-compare",
+@@ -1870,6 +1869,8 @@
+             env.Append( CCFLAGS=["-Werror"] )
+ 
+     env.Append( CXXFLAGS=["-Woverloaded-virtual"] )
++    env.Append( CXXFLAGS=os.environ['CXXFLAGS'] )
++    env.Append( LINKFLAGS=os.environ['LDFLAGS'] )
+     if env.ToolchainIs('clang'):
+         env.Append( CXXFLAGS=['-Werror=unused-result'] )
+ 
+@@ -1890,8 +1891,8 @@
+ 
+     env.Append( LIBS=[] )
+ 
+-    #make scons colorgcc friendly
+-    for key in ('HOME', 'TERM'):
++    #make scons colorgcc, distcc, ccache friendly
++    for key in ('HOME', 'PATH', 'TERM'):
+         try:
+             env['ENV'][key] = os.environ[key]
+         except KeyError:

diff --git a/dev-db/mongodb/mongodb-4.2.0.ebuild b/dev-db/mongodb/mongodb-4.2.0.ebuild
new file mode 100644
index 00000000000..932ef4e5405
--- /dev/null
+++ b/dev-db/mongodb/mongodb-4.2.0.ebuild
@@ -0,0 +1,168 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{5,6,7} )
+
+SCONS_MIN_VERSION="2.5.0"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs user
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug kerberos libressl lto mms-agent ssl test +tools"
+
+RDEPEND=">=app-arch/snappy-1.1.3
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	>=dev-libs/boost-1.70:=[threads(+)]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd
+	dev-libs/snowball-stemmer
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	mms-agent? ( app-admin/mms-agent )
+	ssl? (
+		!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
+		libressl? ( dev-libs/libressl:0= )
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+		virtual/python-typing[${PYTHON_USEDEP}]
+	')
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-util/valgrind )
+	test? (
+		$(python_gen_any_dep 'dev-python/pymongo[${PYTHON_USEDEP}]')
+	)"
+PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.2.0-fix-scons.patch"
+	"${FILESDIR}/${PN}-4.2.0-fix-scons-third-party.patch"
+	"${FILESDIR}/${PN}-4.0.0-no-compass.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_pretend() {
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.0; then
+			ewarn "To upgrade from a version earlier than the 4.0-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.0-series. Then upgrade to 4.2 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.0 before upgrading."
+		fi
+	fi
+}
+
+pkg_setup() {
+	enewgroup mongodb
+	enewuser mongodb -1 -1 /var/lib/${PN} mongodb
+
+	python-any-r1_pkg_setup
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*,zstandard-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	scons_opts=(
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use lto && scons_opts+=( --lto=on )
+	use ssl && scons_opts+=( --ssl )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	escons "${scons_opts[@]}" core tools
+}
+
+# FEATURES="test -usersandbox" emerge dev-db/mongodb
+src_test() {
+	"${EPYTHON}" ./buildscripts/resmoke.py --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed"
+}
+
+src_install() {
+	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_dounit "${FILESDIR}/${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		diropts -m0750 -o mongodb -g mongodb
+		keepdir "${x}"
+	done
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2020-11-09 14:11 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2020-11-09 14:11 UTC (permalink / raw
  To: gentoo-commits

commit:     a6fdb3ca290f3fc0b1bd932da6a72a9e1ba5b606
Author:     Tomáš Mózes <hydrapolic <AT> gmail <DOT> com>
AuthorDate: Fri Nov  6 06:32:39 2020 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Mon Nov  9 14:11:41 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a6fdb3ca

dev-db/mongodb: bump to 4.0.20/4.2.10

Signed-off-by: Tomáš Mózes <hydrapolic <AT> gmail.com>
Signed-off-by: Alexys Jacob <ultrabug <AT> gentoo.org>

 dev-db/mongodb/Manifest                            |   2 +
 .../mongodb/files/mongodb-4.2.10-no-compass.patch  |  54 +++++++
 dev-db/mongodb/mongodb-4.0.20.ebuild               | 173 ++++++++++++++++++++
 dev-db/mongodb/mongodb-4.2.10.ebuild               | 175 +++++++++++++++++++++
 4 files changed, 404 insertions(+)

diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
index 32c038e7f39..24e0bd844d7 100644
--- a/dev-db/mongodb/Manifest
+++ b/dev-db/mongodb/Manifest
@@ -1,4 +1,6 @@
 DIST mongodb-src-r3.6.13.tar.gz 40853787 BLAKE2B de9621de4f570d569df5cfe026ea5da24641c97f1ac9f3e58a0706b1d0bd74757390a075c95c6d3acd12f3c5c7bcbeb9302ac997248c54a5b7910b582debdc82 SHA512 eb84fb22ff871b5ec620d6fc29a6a66072211656e914630ad0f53e4fcad55aa40a76a0e68e68bdbe8ef061bea09ce6ad6aea5d8d865ea8a8fdca0ed829555fcd
 DIST mongodb-src-r3.6.17.tar.gz 40932592 BLAKE2B 94bbb943fd929318a2b32344cb4574243ad234d1cd14ffef864d7fd2d60841866fd5a1966eae8f14266a9648deb62b7b55386d41338b515d5e6849e980143d42 SHA512 b4d9e9bfc7ff886532641058c99da29420d1aa472cb4cf2b254e0fd0af5ecc72ac8bf28dcd55ab738b799b00132ffacddd154dea37ccfbf459c7cc603c2582e0
 DIST mongodb-src-r4.0.19.tar.gz 50126414 BLAKE2B 2691e2a9c8833ff9a086b28fd137bc8e8f10d58570117657c7cc01edbf61568ae62f58440d72e8711de98b9fc6868c1095b4ee88eb7b0eb63ea45ce19e842edd SHA512 57032a009ea7e79de4cac496a2d1266b83b99cc45eb9f1169be2fcdca1ed2003a659ceedf9eafbd4aa7fc5b3b0513066a5d712af7666cee5a897b2a2d7dd30cb
+DIST mongodb-src-r4.0.20.tar.gz 50160192 BLAKE2B 3395399791b0620d3852b5d0a2ab2419f08127d909fac52035dd2624eb22660069401e71b036f449d8fd46be03b9e48ee548fb0c327b67c1eecc72a6ee9045b8 SHA512 dc18216d9096520b309ff769898fb65cf26f765eb74e5e0517617bdb0732c456620bbce351be5ad9f89bc72fea0b6d3afe13bd4cffe2c2b4ea06c9cb2b3b1696
+DIST mongodb-src-r4.2.10.tar.gz 61800545 BLAKE2B 773f3da589107d932808c30ee3bd09ec006b1c570884fbe6929ea4767581e951fd32b1771e9adf1e392ef97bd4c0e2b4ce5ce30c8bbbfbd63aa36b6ebaa8cbe4 SHA512 3947b2880bc0aaa958f26dfddfe79c7878f389eeeb8d0783360667124d3b253928ef746433c260bf395a219d650a6907bbf712ef61da6137ab85e4e1ba38fcbd
 DIST mongodb-src-r4.2.8.tar.gz 61730247 BLAKE2B f1d98b8ac8f62c0c7aff100ef663bb20345de0e77e0ff420817db0843fe735b58af8075578a7f8d83cc9dc4e597c95ae09f89ce7a21cf8146ff15bcb11eba924 SHA512 163fce480762bd377d6c78b661bfe51fc883223a5309a68f9556e1bafb99e26e476d81dbe6de825d90469e835442be097be630ca9678e54b9d09091e0b5d67c4

diff --git a/dev-db/mongodb/files/mongodb-4.2.10-no-compass.patch b/dev-db/mongodb/files/mongodb-4.2.10-no-compass.patch
new file mode 100644
index 00000000000..e60cd827f49
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.2.10-no-compass.patch
@@ -0,0 +1,54 @@
+diff --git a/src/mongo/SConscript b/src/mongo/SConscript
+index 6c78164c..b4b7c579 100644
+--- a/src/mongo/SConscript
++++ b/src/mongo/SConscript
+@@ -805,41 +805,6 @@ for full_dir, archive_dir in list(env["ARCHIVE_ADDITION_DIR_MAP"].items()):
+ for target in env["DIST_BINARIES"]:
+     installBinary(env, "db/modules/" + target)
+ 
+-compass_type = 'compass'
+-
+-compass_script = "install_compass"
+-if env.TargetOSIs('windows'):
+-    # On windows the .in needs to be explicitly added to the file.
+-    compass_script = "Install-Compass.ps1.in"
+-
+-compass_python_interpreter = '/usr/bin/env python2'
+-if env.TargetOSIs('darwin'):
+-    compass_python_interpreter = '/usr/bin/env python'
+-
+-compass_installer = env.Substfile('#/src/mongo/installer/compass/' + compass_script,
+-                                  SUBST_DICT=[
+-                                      ('@compass_type@', compass_type),
+-                                      ('@python_interpreter@', compass_python_interpreter),
+-                                  ])
+-distBinaries.append(compass_installer)
+-
+-if not hygienic:
+-    compass_script_installer = env.Install("$INSTALL_DIR/bin", compass_installer)
+-else:
+-    compass_script_installer = env.AutoInstall(
+-        'bin',
+-        source=[
+-            compass_installer,
+-        ],
+-        INSTALL_ALIAS=[
+-            'tools',
+-        ],
+-    )
+-
+-if env.TargetOSIs('posix'):
+-    env.AddPostAction( compass_script_installer, 'chmod 755 $TARGET' )
+-    env.AddPostAction( compass_installer, 'chmod 755 $TARGET' )
+-
+ # "dist" target is valid only when --use-new-tools is specified
+ # Attempts to build release artifacts without tools must fail
+ if has_option("use-new-tools"):
+@@ -857,7 +822,6 @@ if has_option("use-new-tools"):
+                 '--transform $BUILD_DIR/mongo=$SERVER_DIST_BASENAME/bin',
+                 '--transform $BUILD_DIR/mongo/stripped/src/mongo-tools=$SERVER_DIST_BASENAME/bin',
+                 '--transform src/mongo-tools=$SERVER_DIST_BASENAME/bin',
+-                '--transform src/mongo/installer/compass=$SERVER_DIST_BASENAME/bin',
+                 '${TEMPFILE(SOURCES[1:])}'
+             ],
+         ),

diff --git a/dev-db/mongodb/mongodb-4.0.20.ebuild b/dev-db/mongodb/mongodb-4.0.20.ebuild
new file mode 100644
index 00000000000..65121949247
--- /dev/null
+++ b/dev-db/mongodb/mongodb-4.0.20.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 )
+
+SCONS_MIN_VERSION="2.5.0"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug kerberos libressl lto mms-agent ssl test +tools"
+RESTRICT="!test? ( test )"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.3
+	>=dev-cpp/yaml-cpp-0.5.3:=
+	>=dev-libs/boost-1.60:=[threads(+)]
+	>=dev-libs/libpcre-8.41[cxx]
+	dev-libs/snowball-stemmer
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	mms-agent? ( app-admin/mms-agent )
+	ssl? (
+		!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
+		libressl? ( dev-libs/libressl:0= )
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		test? ( dev-python/pymongo[${PYTHON_USEDEP}] )
+		>=dev-util/scons-2.5.0[${PYTHON_USEDEP}]
+		dev-python/cheetah[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+		dev-python/typing[${PYTHON_USEDEP}]
+	')
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-util/valgrind )"
+PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-3.6.1-fix-scons.patch"
+	"${FILESDIR}/${PN}-4.0.0-no-compass.patch"
+	"${FILESDIR}/${PN}-4.0.12-boost-1.71-cxxabi-include.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_pretend() {
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 3.6; then
+			ewarn "To upgrade from a version earlier than the 3.6-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 3.6-series. Then upgrade to 4.0 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 3.6 before upgrading."
+		fi
+	fi
+}
+
+python_check_deps() {
+	if use test; then
+		has_version "dev-python/pymongo[${PYTHON_USEDEP}]" ||
+			return 1
+	fi
+
+	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/cheetah[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/typing[${PYTHON_USEDEP}]"
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	scons_opts=(
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+	)
+
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use lto && scons_opts+=( --lto=on )
+	use ssl && scons_opts+=( --ssl )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	escons "${scons_opts[@]}" core tools
+}
+
+# FEATURES="test -usersandbox" emerge dev-db/mongodb
+src_test() {
+	"${EPYTHON}" ./buildscripts/resmoke.py --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed"
+}
+
+src_install() {
+	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_dounit "${FILESDIR}/${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		diropts -m0750 -o mongodb -g mongodb
+		keepdir "${x}"
+	done
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}

diff --git a/dev-db/mongodb/mongodb-4.2.10.ebuild b/dev-db/mongodb/mongodb-4.2.10.ebuild
new file mode 100644
index 00000000000..763bd774d5a
--- /dev/null
+++ b/dev-db/mongodb/mongodb-4.2.10.ebuild
@@ -0,0 +1,175 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7} )
+
+SCONS_MIN_VERSION="2.5.0"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="debug kerberos libressl lto ssl test +tools"
+RESTRICT="!test? ( test )"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.3
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	>=dev-libs/boost-1.70:=[threads(+)]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd
+	dev-libs/snowball-stemmer
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	ssl? (
+		!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
+		libressl? ( dev-libs/libressl:0= )
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
+		>=dev-util/scons-2.5.0[${PYTHON_USEDEP}]
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/psutil[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+	')
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-util/valgrind )"
+PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.2.0-fix-scons.patch"
+	"${FILESDIR}/${PN}-4.2.10-no-compass.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+python_check_deps() {
+	if use test; then
+		has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
+		has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
+	fi
+
+	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.0; then
+			ewarn "To upgrade from a version earlier than the 4.0-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.0-series. Then upgrade to 4.2 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.0 before upgrading."
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*,zstandard-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	scons_opts=(
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use lto && scons_opts+=( --lto=on )
+	use ssl && scons_opts+=( --ssl )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	escons "${scons_opts[@]}" core tools
+}
+
+# FEATURES="test -usersandbox" emerge dev-db/mongodb
+src_test() {
+	ewarn "Tests may hang with FEATURES=usersandbox"
+	"${EPYTHON}" ./buildscripts/resmoke.py run --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed with ${EPYTHON}"
+}
+
+src_install() {
+	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_dounit "${FILESDIR}/${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		diropts -m0750 -o mongodb -g mongodb
+		keepdir "${x}"
+	done
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2020-11-09 14:11 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2020-11-09 14:11 UTC (permalink / raw
  To: gentoo-commits

commit:     d234144d542c40aece724cf986d407c1c004d1aa
Author:     Tomáš Mózes <hydrapolic <AT> gmail <DOT> com>
AuthorDate: Mon Nov  9 13:49:07 2020 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Mon Nov  9 14:11:44 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d234144d

dev-db/mongodb: bump to 4.4.1

Signed-off-by: Tomáš Mózes <hydrapolic <AT> gmail.com>
Signed-off-by: Alexys Jacob <ultrabug <AT> gentoo.org>

 dev-db/mongodb/Manifest                            |   1 +
 dev-db/mongodb/files/mongodb-4.4.1-boost.patch     |  23 +++
 dev-db/mongodb/files/mongodb-4.4.1-fix-scons.patch |  33 ++++
 .../mongodb/files/mongodb-4.4.1-no-compass.patch   |  56 +++++++
 .../mongodb/files/mongodb-4.4.1-unwind-gcc10.patch |  12 ++
 dev-db/mongodb/mongodb-4.4.1.ebuild                | 177 +++++++++++++++++++++
 6 files changed, 302 insertions(+)

diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
index 24e0bd844d7..346f6a154fc 100644
--- a/dev-db/mongodb/Manifest
+++ b/dev-db/mongodb/Manifest
@@ -4,3 +4,4 @@ DIST mongodb-src-r4.0.19.tar.gz 50126414 BLAKE2B 2691e2a9c8833ff9a086b28fd137bc8
 DIST mongodb-src-r4.0.20.tar.gz 50160192 BLAKE2B 3395399791b0620d3852b5d0a2ab2419f08127d909fac52035dd2624eb22660069401e71b036f449d8fd46be03b9e48ee548fb0c327b67c1eecc72a6ee9045b8 SHA512 dc18216d9096520b309ff769898fb65cf26f765eb74e5e0517617bdb0732c456620bbce351be5ad9f89bc72fea0b6d3afe13bd4cffe2c2b4ea06c9cb2b3b1696
 DIST mongodb-src-r4.2.10.tar.gz 61800545 BLAKE2B 773f3da589107d932808c30ee3bd09ec006b1c570884fbe6929ea4767581e951fd32b1771e9adf1e392ef97bd4c0e2b4ce5ce30c8bbbfbd63aa36b6ebaa8cbe4 SHA512 3947b2880bc0aaa958f26dfddfe79c7878f389eeeb8d0783360667124d3b253928ef746433c260bf395a219d650a6907bbf712ef61da6137ab85e4e1ba38fcbd
 DIST mongodb-src-r4.2.8.tar.gz 61730247 BLAKE2B f1d98b8ac8f62c0c7aff100ef663bb20345de0e77e0ff420817db0843fe735b58af8075578a7f8d83cc9dc4e597c95ae09f89ce7a21cf8146ff15bcb11eba924 SHA512 163fce480762bd377d6c78b661bfe51fc883223a5309a68f9556e1bafb99e26e476d81dbe6de825d90469e835442be097be630ca9678e54b9d09091e0b5d67c4
+DIST mongodb-src-r4.4.1.tar.gz 49644743 BLAKE2B 7d84998c69b9b55164ebab04b49c38a4113a0f58d431612389ec37eb044fba1adf9284e9d4454bd40bb7a071fd042308a5cd350129d6d52480412cf6b868ec2b SHA512 16aa66995ea8cfe0cc47b96c1c5643a28ab47fc9f27bd93404cf572944ab30492df7c9255553f918b353cd7157a6ccde9ac6f58bfba322fb52c2d7409c6fb9b0

diff --git a/dev-db/mongodb/files/mongodb-4.4.1-boost.patch b/dev-db/mongodb/files/mongodb-4.4.1-boost.patch
new file mode 100644
index 00000000000..009ca6826a4
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.4.1-boost.patch
@@ -0,0 +1,23 @@
+diff --git a/SConstruct b/SConstruct
+index 89c044ab..0484e475 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -3511,17 +3511,11 @@ def doConfigure(myenv):
+             "BOOST_LOG_NO_SHORTHAND_NAMES",
+             "BOOST_LOG_USE_NATIVE_SYSLOG",
+             "BOOST_LOG_WITHOUT_THREAD_ATTR",
++            "BOOST_LOG_DYN_LINK",
+             "ABSL_FORCE_ALIGNED_ACCESS",
+         ]
+     )
+ 
+-    if link_model.startswith("dynamic") and not link_model == 'dynamic-sdk':
+-        conf.env.AppendUnique(
+-            CPPDEFINES=[
+-                "BOOST_LOG_DYN_LINK",
+-            ]
+-    )
+-
+     if use_system_version_of_library("boost"):
+         if not conf.CheckCXXHeader( "boost/filesystem/operations.hpp" ):
+             myenv.ConfError("can't find boost headers")

diff --git a/dev-db/mongodb/files/mongodb-4.4.1-fix-scons.patch b/dev-db/mongodb/files/mongodb-4.4.1-fix-scons.patch
new file mode 100644
index 00000000000..8b9d5d6d9fa
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.4.1-fix-scons.patch
@@ -0,0 +1,33 @@
+diff --git a/SConstruct b/SConstruct
+index 89c044ab..a6d02072 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -2064,7 +2064,6 @@ if env.TargetOSIs('posix'):
+     env.Append( CCFLAGS=["-fno-omit-frame-pointer",
+                          "-fno-strict-aliasing",
+                          "-fasynchronous-unwind-tables",
+-                         "-ggdb" if not env.TargetOSIs('emscripten') else "-g",
+                          "-pthread",
+                          "-Wall",
+                          "-Wsign-compare",
+@@ -2076,6 +2075,9 @@ if env.TargetOSIs('posix'):
+             env.Append( CCFLAGS=["-Werror"] )
+ 
+     env.Append( CXXFLAGS=["-Woverloaded-virtual"] )
++    env.Append( CXXFLAGS=os.environ['CXXFLAGS'] )
++    env.Append( LINKFLAGS=os.environ['LDFLAGS'] )
++
+     if env.ToolchainIs('clang'):
+         env.Append( CXXFLAGS=['-Werror=unused-result'] )
+ 
+@@ -2096,8 +2098,8 @@ if env.TargetOSIs('posix'):
+ 
+     env.Append( LIBS=[] )
+ 
+-    #make scons colorgcc friendly
+-    for key in ('HOME', 'TERM'):
++    #make scons colorgcc, distcc, ccache friendly
++    for key in ('HOME', 'PATH', 'TERM'):
+         try:
+             env['ENV'][key] = os.environ[key]
+         except KeyError:

diff --git a/dev-db/mongodb/files/mongodb-4.4.1-no-compass.patch b/dev-db/mongodb/files/mongodb-4.4.1-no-compass.patch
new file mode 100644
index 00000000000..15a7f9534bc
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.4.1-no-compass.patch
@@ -0,0 +1,56 @@
+diff --git a/src/mongo/SConscript b/src/mongo/SConscript
+index 8acf5469..737c31d4 100644
+--- a/src/mongo/SConscript
++++ b/src/mongo/SConscript
+@@ -834,43 +834,6 @@ for full_dir, archive_dir in list(env["ARCHIVE_ADDITION_DIR_MAP"].items()):
+ for target in env["DIST_BINARIES"]:
+     installBinary(env, "db/modules/" + target)
+ 
+-compass_type = 'compass'
+-
+-compass_script = "install_compass.in"
+-if env.TargetOSIs('windows'):
+-    compass_script = "Install-Compass.ps1.in"
+-
+-compass_python_interpreter = '/usr/bin/env python2'
+-if env.TargetOSIs('darwin'):
+-    compass_python_interpreter = '/usr/bin/env python'
+-
+-compass_installer = env.Substfile(
+-  target="$BUILD_DIR/mongo/installer/compass/" + compass_script[:-3],
+-  source='installer/compass/' + compass_script,
+-  SUBST_DICT=[
+-    ('@compass_type@', compass_type),
+-    ('@python_interpreter@', compass_python_interpreter),
+-  ],
+-)
+-
+-distBinaries.append(compass_installer)
+-
+-if not hygienic:
+-    compass_script_installer = env.Install("$DESTDIR/bin", compass_installer)
+-else:
+-    compass_script_installer = env.AutoInstall(
+-        target='$PREFIX_BINDIR',
+-        source=[
+-            compass_installer,
+-        ],
+-        AIB_COMPONENT='dist',
+-        AIB_ROLE='runtime',
+-    )
+-
+-if env.TargetOSIs('posix'):
+-    env.AddPostAction( compass_script_installer, 'chmod 755 $TARGET' )
+-    env.AddPostAction( compass_installer, 'chmod 755 $TARGET' )
+-
+ if not hygienic:
+     server_archive = env.Command(
+         target='#/${SERVER_ARCHIVE}',
+@@ -884,7 +847,6 @@ if not hygienic:
+                 '--transform $BUILD_DIR/mongo/stripped/db/modules/enterprise=$SERVER_DIST_BASENAME/bin',
+                 '--transform $BUILD_DIR/mongo/stripped=$SERVER_DIST_BASENAME/bin',
+                 '--transform $BUILD_DIR/mongo=$SERVER_DIST_BASENAME/bin',
+-                '--transform src/mongo/installer/compass=$SERVER_DIST_BASENAME/bin',
+                 '${TEMPFILE(SOURCES[1:])}'
+             ],
+         ),

diff --git a/dev-db/mongodb/files/mongodb-4.4.1-unwind-gcc10.patch b/dev-db/mongodb/files/mongodb-4.4.1-unwind-gcc10.patch
new file mode 100644
index 00000000000..a80f7e6474f
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.4.1-unwind-gcc10.patch
@@ -0,0 +1,12 @@
+diff --git a/src/third_party/unwind/SConscript b/src/third_party/unwind/SConscript
+index ed947c8e..7308956f 100644
+--- a/src/third_party/unwind/SConscript
++++ b/src/third_party/unwind/SConscript
+@@ -90,6 +90,7 @@ if env['TARGET_ARCH'] == 'aarch64':
+ 
+ env.Append(
+     CCFLAGS=[
++        '-fcommon',
+         '-fexceptions',
+         '-Wno-unused-result',
+         '-Wno-unused-value',

diff --git a/dev-db/mongodb/mongodb-4.4.1.ebuild b/dev-db/mongodb/mongodb-4.4.1.ebuild
new file mode 100644
index 00000000000..de14d8bf32c
--- /dev/null
+++ b/dev-db/mongodb/mongodb-4.4.1.ebuild
@@ -0,0 +1,177 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+
+SCONS_MIN_VERSION="3.3.1"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="debug kerberos libressl lto ssl test +tools"
+RESTRICT="!test? ( test )"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.3
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	>=dev-libs/boost-1.70:=[threads(+),nls]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd
+	dev-libs/snowball-stemmer
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	ssl? (
+		!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
+		libressl? ( dev-libs/libressl:0= )
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
+		>=dev-util/scons-3.1.1[${PYTHON_USEDEP}]
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/psutil[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+	')
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-util/valgrind )"
+PDEPEND="tools? ( >=app-admin/mongo-tools-100 )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.4.1-fix-scons.patch"
+	"${FILESDIR}/${PN}-4.4.1-no-compass.patch"
+	"${FILESDIR}/${PN}-4.4.1-unwind-gcc10.patch"
+	"${FILESDIR}/${PN}-4.4.1-boost.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+python_check_deps() {
+	if use test; then
+		has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
+		has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
+	fi
+
+	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.2; then
+			ewarn "To upgrade from a version earlier than the 4.2-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.2-series. Then upgrade to 4.4 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.2 before upgrading."
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	scons_opts=(
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use lto && scons_opts+=( --lto=on )
+	use ssl && scons_opts+=( --ssl )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	PREFIX="${ED}"/usr escons "${scons_opts[@]}" --nostrip install-core
+}
+
+# FEATURES="test -usersandbox" emerge dev-db/mongodb
+src_test() {
+	ewarn "Tests may hang with FEATURES=usersandbox"
+	"${EPYTHON}" ./buildscripts/resmoke.py run --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed with ${EPYTHON}"
+}
+
+src_install() {
+	dobin build/install/bin/{mongo,mongod,mongos}
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_dounit "${FILESDIR}/${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		diropts -m0750 -o mongodb -g mongodb
+		keepdir "${x}"
+	done
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2021-01-18 10:42 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2021-01-18 10:42 UTC (permalink / raw
  To: gentoo-commits

commit:     53e1b1668820ffaa146ca8806fd9e2a36e550662
Author:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 18 10:40:51 2021 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Mon Jan 18 10:41:34 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=53e1b166

dev-db/mongodb: drop pmasked and vulnerable wrt #760827

Package-Manager: Portage-3.0.13, Repoman-3.0.2
Signed-off-by: Alexys Jacob <ultrabug <AT> gentoo.org>

 dev-db/mongodb/Manifest                            |   5 -
 dev-db/mongodb/files/mongodb-3.6.1-fix-scons.patch |  32 ----
 .../mongodb/files/mongodb-3.6.1-no-compass.patch   |  46 ------
 .../mongodb-4.0.12-boost-1.71-cxxabi-include.patch |  12 --
 dev-db/mongodb/metadata.xml                        |   1 -
 dev-db/mongodb/mongodb-3.6.13.ebuild               | 166 -------------------
 dev-db/mongodb/mongodb-3.6.17.ebuild               | 162 -------------------
 dev-db/mongodb/mongodb-4.0.19.ebuild               | 173 --------------------
 dev-db/mongodb/mongodb-4.0.20.ebuild               | 173 --------------------
 dev-db/mongodb/mongodb-4.2.10.ebuild               | 175 ---------------------
 10 files changed, 945 deletions(-)

diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
index 2b128bbe16c..c3997673aaa 100644
--- a/dev-db/mongodb/Manifest
+++ b/dev-db/mongodb/Manifest
@@ -1,8 +1,3 @@
-DIST mongodb-src-r3.6.13.tar.gz 40853787 BLAKE2B de9621de4f570d569df5cfe026ea5da24641c97f1ac9f3e58a0706b1d0bd74757390a075c95c6d3acd12f3c5c7bcbeb9302ac997248c54a5b7910b582debdc82 SHA512 eb84fb22ff871b5ec620d6fc29a6a66072211656e914630ad0f53e4fcad55aa40a76a0e68e68bdbe8ef061bea09ce6ad6aea5d8d865ea8a8fdca0ed829555fcd
-DIST mongodb-src-r3.6.17.tar.gz 40932592 BLAKE2B 94bbb943fd929318a2b32344cb4574243ad234d1cd14ffef864d7fd2d60841866fd5a1966eae8f14266a9648deb62b7b55386d41338b515d5e6849e980143d42 SHA512 b4d9e9bfc7ff886532641058c99da29420d1aa472cb4cf2b254e0fd0af5ecc72ac8bf28dcd55ab738b799b00132ffacddd154dea37ccfbf459c7cc603c2582e0
-DIST mongodb-src-r4.0.19.tar.gz 50126414 BLAKE2B 2691e2a9c8833ff9a086b28fd137bc8e8f10d58570117657c7cc01edbf61568ae62f58440d72e8711de98b9fc6868c1095b4ee88eb7b0eb63ea45ce19e842edd SHA512 57032a009ea7e79de4cac496a2d1266b83b99cc45eb9f1169be2fcdca1ed2003a659ceedf9eafbd4aa7fc5b3b0513066a5d712af7666cee5a897b2a2d7dd30cb
-DIST mongodb-src-r4.0.20.tar.gz 50160192 BLAKE2B 3395399791b0620d3852b5d0a2ab2419f08127d909fac52035dd2624eb22660069401e71b036f449d8fd46be03b9e48ee548fb0c327b67c1eecc72a6ee9045b8 SHA512 dc18216d9096520b309ff769898fb65cf26f765eb74e5e0517617bdb0732c456620bbce351be5ad9f89bc72fea0b6d3afe13bd4cffe2c2b4ea06c9cb2b3b1696
-DIST mongodb-src-r4.2.10.tar.gz 61800545 BLAKE2B 773f3da589107d932808c30ee3bd09ec006b1c570884fbe6929ea4767581e951fd32b1771e9adf1e392ef97bd4c0e2b4ce5ce30c8bbbfbd63aa36b6ebaa8cbe4 SHA512 3947b2880bc0aaa958f26dfddfe79c7878f389eeeb8d0783360667124d3b253928ef746433c260bf395a219d650a6907bbf712ef61da6137ab85e4e1ba38fcbd
 DIST mongodb-src-r4.2.11.tar.gz 61829417 BLAKE2B cc989d6ea87a48b7402d119dda4678a966cf96cec0da5d00d792faf06ecb6fbe4bc426069e1a72548410adcbd26162038ec7201e76036ac599af5f53029c0e66 SHA512 ff398a9d3a012e0eb860c2139967e163b8b0ac045c1c47f2c0c5584ba7c60a1403bb423ce8c6e8b3900fdcad1164a84c6da79276f897fd640366e3f80cf54316
 DIST mongodb-src-r4.2.8.tar.gz 61730247 BLAKE2B f1d98b8ac8f62c0c7aff100ef663bb20345de0e77e0ff420817db0843fe735b58af8075578a7f8d83cc9dc4e597c95ae09f89ce7a21cf8146ff15bcb11eba924 SHA512 163fce480762bd377d6c78b661bfe51fc883223a5309a68f9556e1bafb99e26e476d81dbe6de825d90469e835442be097be630ca9678e54b9d09091e0b5d67c4
 DIST mongodb-src-r4.4.1.tar.gz 49644743 BLAKE2B 7d84998c69b9b55164ebab04b49c38a4113a0f58d431612389ec37eb044fba1adf9284e9d4454bd40bb7a071fd042308a5cd350129d6d52480412cf6b868ec2b SHA512 16aa66995ea8cfe0cc47b96c1c5643a28ab47fc9f27bd93404cf572944ab30492df7c9255553f918b353cd7157a6ccde9ac6f58bfba322fb52c2d7409c6fb9b0

diff --git a/dev-db/mongodb/files/mongodb-3.6.1-fix-scons.patch b/dev-db/mongodb/files/mongodb-3.6.1-fix-scons.patch
deleted file mode 100644
index d7bfb35b00d..00000000000
--- a/dev-db/mongodb/files/mongodb-3.6.1-fix-scons.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-diff --git a/SConstruct b/SConstruct
-index fe7975b..92659a7 100644
---- a/SConstruct
-+++ b/SConstruct
-@@ -1619,7 +1619,6 @@ if env.TargetOSIs('posix'):
-     # -Winvalid-pch Warn if a precompiled header (see Precompiled Headers) is found in the search path but can't be used.
-     env.Append( CCFLAGS=["-fno-omit-frame-pointer",
-                          "-fno-strict-aliasing",
--                         "-ggdb",
-                          "-pthread",
-                          "-Wall",
-                          "-Wsign-compare",
-@@ -1631,6 +1630,8 @@ if env.TargetOSIs('posix'):
-             env.Append( CCFLAGS=["-Werror"] )
- 
-     env.Append( CXXFLAGS=["-Woverloaded-virtual"] )
-+    env.Append( CXXFLAGS=os.environ['CXXFLAGS'] )
-+    env.Append( LINKFLAGS=os.environ['LDFLAGS'] )
-     if env.ToolchainIs('clang'):
-         env.Append( CXXFLAGS=['-Werror=unused-result'] )
- 
-@@ -1650,8 +1651,8 @@ if env.TargetOSIs('posix'):
- 
-     env.Append( LIBS=[] )
- 
--    #make scons colorgcc friendly
--    for key in ('HOME', 'TERM'):
-+    #make scons colorgcc, distcc, ccache friendly
-+    for key in ('HOME', 'PATH', 'TERM'):
-         try:
-             env['ENV'][key] = os.environ[key]
-         except KeyError:

diff --git a/dev-db/mongodb/files/mongodb-3.6.1-no-compass.patch b/dev-db/mongodb/files/mongodb-3.6.1-no-compass.patch
deleted file mode 100644
index 133c10fd258..00000000000
--- a/dev-db/mongodb/files/mongodb-3.6.1-no-compass.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-diff --git a/src/mongo/SConscript b/src/mongo/SConscript
-index 9cde728..e29664e 100644
---- a/src/mongo/SConscript
-+++ b/src/mongo/SConscript
-@@ -629,33 +629,6 @@ for full_dir, archive_dir in env["ARCHIVE_ADDITION_DIR_MAP"].items():
- for target in env["DIST_BINARIES"]:
-     installBinary(env, "db/modules/" + target)
- 
--# Set the download url to the right place
--compass_type = 'compass-community'
--if 'enterprise' in env['MONGO_MODULES']:
--    compass_type = 'compass'
--
--compass_script = "install_compass"
--if env.TargetOSIs('windows'):
--    # On windows the .in needs to be explicitly added to the file.
--    compass_script = "Install-Compass.ps1.in"
--
--compass_python_interpreter = '/usr/bin/env python2'
--if env.TargetOSIs('darwin'):
--    compass_python_interpreter = '/usr/bin/env python'
--
--compass_installer = env.Substfile('#/src/mongo/installer/compass/' + compass_script,
--                                  SUBST_DICT=[
--                                      ('@compass_type@', compass_type),
--                                      ('@python_interpreter@', compass_python_interpreter),
--                                  ])
--distBinaries.append(compass_installer)
--
--compass_script_installer = env.Install("$INSTALL_DIR/bin", compass_installer)
--
--if env.TargetOSIs('posix'):
--    env.AddPostAction( compass_script_installer, 'chmod 755 $TARGET' )
--    env.AddPostAction( compass_installer, 'chmod 755 $TARGET' )
--
- # "dist" target is valid only when --use-new-tools is specified
- # Attempts to build release artifacts without tools must fail
- if has_option("use-new-tools"):
-@@ -673,7 +646,6 @@ if has_option("use-new-tools"):
-                 '--transform $BUILD_DIR/mongo=$SERVER_DIST_BASENAME/bin',
-                 '--transform $BUILD_DIR/mongo/stripped/src/mongo-tools=$SERVER_DIST_BASENAME/bin',
-                 '--transform src/mongo-tools=$SERVER_DIST_BASENAME/bin',
--                '--transform src/mongo/installer/compass=$SERVER_DIST_BASENAME/bin',
-                 '${TEMPFILE(SOURCES[1:])}'
-             ],
-         ),

diff --git a/dev-db/mongodb/files/mongodb-4.0.12-boost-1.71-cxxabi-include.patch b/dev-db/mongodb/files/mongodb-4.0.12-boost-1.71-cxxabi-include.patch
deleted file mode 100644
index b65f9123677..00000000000
--- a/dev-db/mongodb/files/mongodb-4.0.12-boost-1.71-cxxabi-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/src/mongo/util/heap_profiler.cpp
-+++ b/src/mongo/util/heap_profiler.cpp
-@@ -49,6 +49,9 @@
- #include <dlfcn.h>
- #include <execinfo.h>
- 
-+// for abi::__cxa_demangle
-+#include <cxxabi.h>
-+
- //
- // Sampling heap profiler
- //

diff --git a/dev-db/mongodb/metadata.xml b/dev-db/mongodb/metadata.xml
index 5379d9760d4..a12b5966959 100644
--- a/dev-db/mongodb/metadata.xml
+++ b/dev-db/mongodb/metadata.xml
@@ -15,7 +15,6 @@
 	</longdescription>
 	<use>
 		<flag name="lto">Adds support for link time optimization</flag>
-		<flag name="mms-agent">Install the MongoDB Monitoring Service agent</flag>
 		<flag name="tools">Install the MongoDB tools (mongoimport, mongodump...) from <pkg>app-admin/mongo-tools</pkg></flag>
 	</use>
 </pkgmetadata>

diff --git a/dev-db/mongodb/mongodb-3.6.13.ebuild b/dev-db/mongodb/mongodb-3.6.13.ebuild
deleted file mode 100644
index 85e64d7df80..00000000000
--- a/dev-db/mongodb/mongodb-3.6.13.ebuild
+++ /dev/null
@@ -1,166 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 )
-
-SCONS_MIN_VERSION="2.5.0"
-CHECKREQS_DISK_BUILD="2400M"
-CHECKREQS_DISK_USR="512M"
-CHECKREQS_MEMORY="1024M"
-
-inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs user
-
-MY_P=${PN}-src-r${PV/_rc/-rc}
-
-DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
-HOMEPAGE="https://www.mongodb.com"
-SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0 SSPL-1"
-SLOT="0"
-KEYWORDS="amd64"
-IUSE="debug kerberos libressl lto mms-agent ssl test +tools"
-RESTRICT="!test? ( test )"
-
-RDEPEND=">=app-arch/snappy-1.1.3
-	>=dev-cpp/yaml-cpp-0.5.3:=
-	>=dev-libs/boost-1.60:=[threads(+)]
-	>=dev-libs/libpcre-8.41[cxx]
-	dev-libs/snowball-stemmer
-	net-libs/libpcap
-	>=sys-libs/zlib-1.2.8:=
-	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
-	mms-agent? ( app-admin/mms-agent )
-	ssl? (
-		!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
-		libressl? ( dev-libs/libressl:0= )
-	)"
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	$(python_gen_any_dep '
-		dev-python/cheetah[${PYTHON_USEDEP}]
-		dev-python/pyyaml[${PYTHON_USEDEP}]
-		dev-python/typing[${PYTHON_USEDEP}]
-	')
-	sys-libs/ncurses:0=
-	sys-libs/readline:0=
-	debug? ( dev-util/valgrind )
-	test? (
-		$(python_gen_any_dep 'dev-python/pymongo[${PYTHON_USEDEP}]')
-	)"
-PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-3.6.1-fix-scons.patch"
-	"${FILESDIR}/${PN}-3.6.1-no-compass.patch"
-)
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_pretend() {
-	if [[ -n ${REPLACING_VERSIONS} ]]; then
-		if ver_test "$REPLACING_VERSIONS" -lt 3.4; then
-			ewarn "To upgrade from a version earlier than the 3.4-series, you must"
-			ewarn "successively upgrade major releases until you have upgraded"
-			ewarn "to 3.4-series. Then upgrade to 3.6 series."
-		else
-			ewarn "Be sure to set featureCompatibilityVersion to 3.4 before upgrading."
-		fi
-	fi
-}
-
-pkg_setup() {
-	enewgroup mongodb
-	enewuser mongodb -1 -1 /var/lib/${PN} mongodb
-
-	python-any-r1_pkg_setup
-}
-
-src_prepare() {
-	default
-
-	# remove bundled libs
-	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
-
-	# remove compass
-	rm -r src/mongo/installer/compass || die
-}
-
-src_configure() {
-	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
-	# --use-system-icu fails tests
-	# --use-system-tcmalloc is strongly NOT recommended:
-	scons_opts=(
-		CC="$(tc-getCC)"
-		CXX="$(tc-getCXX)"
-
-		--disable-warnings-as-errors
-		--use-system-boost
-		--use-system-pcre
-		--use-system-snappy
-		--use-system-stemmer
-		--use-system-yaml
-		--use-system-zlib
-	)
-
-	use debug && scons_opts+=( --dbg=on )
-	use kerberos && scons_opts+=( --use-sasl-client )
-	use lto && scons_opts+=( --lto=on )
-	use ssl && scons_opts+=( --ssl )
-
-	# respect mongoDB upstream's basic recommendations
-	# see bug #536688 and #526114
-	if ! use debug; then
-		filter-flags '-m*'
-		filter-flags '-O?'
-	fi
-
-	default
-}
-
-src_compile() {
-	escons "${scons_opts[@]}" core tools
-}
-
-# FEATURES="test -usersandbox" emerge dev-db/mongodb
-src_test() {
-	"${EPYTHON}" ./buildscripts/resmoke.py --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed"
-}
-
-src_install() {
-	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
-
-	doman debian/mongo*.1
-	dodoc README docs/building.md
-
-	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
-	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
-	newinitd "${FILESDIR}/mongos.initd-r3" mongos
-	newconfd "${FILESDIR}/mongos.confd-r3" mongos
-
-	insinto /etc
-	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
-	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
-
-	systemd_dounit "${FILESDIR}/${PN}.service"
-
-	insinto /etc/logrotate.d/
-	newins "${FILESDIR}/${PN}.logrotate" ${PN}
-
-	# see bug #526114
-	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
-
-	local x
-	for x in /var/{lib,log}/${PN}; do
-		diropts -m0750 -o mongodb -g mongodb
-		keepdir "${x}"
-	done
-}
-
-pkg_postinst() {
-	ewarn "Make sure to read the release notes and follow the upgrade process:"
-	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
-	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
-}

diff --git a/dev-db/mongodb/mongodb-3.6.17.ebuild b/dev-db/mongodb/mongodb-3.6.17.ebuild
deleted file mode 100644
index b5718c0c148..00000000000
--- a/dev-db/mongodb/mongodb-3.6.17.ebuild
+++ /dev/null
@@ -1,162 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 )
-
-SCONS_MIN_VERSION="2.5.0"
-CHECKREQS_DISK_BUILD="2400M"
-CHECKREQS_DISK_USR="512M"
-CHECKREQS_MEMORY="1024M"
-
-inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
-
-MY_P=${PN}-src-r${PV/_rc/-rc}
-
-DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
-HOMEPAGE="https://www.mongodb.com"
-SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0 SSPL-1"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="debug kerberos libressl lto mms-agent ssl test +tools"
-RESTRICT="!test? ( test )"
-
-RDEPEND="acct-group/mongodb
-	acct-user/mongodb
-	>=app-arch/snappy-1.1.3
-	>=dev-cpp/yaml-cpp-0.5.3:=
-	>=dev-libs/boost-1.60:=[threads(+)]
-	>=dev-libs/libpcre-8.41[cxx]
-	dev-libs/snowball-stemmer
-	net-libs/libpcap
-	>=sys-libs/zlib-1.2.8:=
-	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
-	mms-agent? ( app-admin/mms-agent )
-	ssl? (
-		!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
-		libressl? ( dev-libs/libressl:0= )
-	)"
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	$(python_gen_any_dep '
-		dev-python/cheetah[${PYTHON_USEDEP}]
-		dev-python/pyyaml[${PYTHON_USEDEP}]
-		dev-python/typing[${PYTHON_USEDEP}]
-	')
-	sys-libs/ncurses:0=
-	sys-libs/readline:0=
-	debug? ( dev-util/valgrind )
-	test? (
-		$(python_gen_any_dep 'dev-python/pymongo[${PYTHON_USEDEP}]')
-	)"
-PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-3.6.1-fix-scons.patch"
-	"${FILESDIR}/${PN}-3.6.1-no-compass.patch"
-	"${FILESDIR}/${PN}-4.0.12-boost-1.71-cxxabi-include.patch"
-)
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_pretend() {
-	if [[ -n ${REPLACING_VERSIONS} ]]; then
-		if ver_test "$REPLACING_VERSIONS" -lt 3.4; then
-			ewarn "To upgrade from a version earlier than the 3.4-series, you must"
-			ewarn "successively upgrade major releases until you have upgraded"
-			ewarn "to 3.4-series. Then upgrade to 3.6 series."
-		else
-			ewarn "Be sure to set featureCompatibilityVersion to 3.4 before upgrading."
-		fi
-	fi
-}
-
-src_prepare() {
-	default
-
-	# remove bundled libs
-	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
-
-	# remove compass
-	rm -r src/mongo/installer/compass || die
-}
-
-src_configure() {
-	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
-	# --use-system-icu fails tests
-	# --use-system-tcmalloc is strongly NOT recommended:
-	scons_opts=(
-		CC="$(tc-getCC)"
-		CXX="$(tc-getCXX)"
-
-		--disable-warnings-as-errors
-		--use-system-boost
-		--use-system-pcre
-		--use-system-snappy
-		--use-system-stemmer
-		--use-system-yaml
-		--use-system-zlib
-	)
-
-	use debug && scons_opts+=( --dbg=on )
-	use kerberos && scons_opts+=( --use-sasl-client )
-	use lto && scons_opts+=( --lto=on )
-	use ssl && scons_opts+=( --ssl )
-
-	# respect mongoDB upstream's basic recommendations
-	# see bug #536688 and #526114
-	if ! use debug; then
-		filter-flags '-m*'
-		filter-flags '-O?'
-	fi
-
-	default
-}
-
-src_compile() {
-	escons "${scons_opts[@]}" core tools
-}
-
-# FEATURES="test -usersandbox" emerge dev-db/mongodb
-src_test() {
-	"${EPYTHON}" ./buildscripts/resmoke.py --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed"
-}
-
-src_install() {
-	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
-
-	doman debian/mongo*.1
-	dodoc README docs/building.md
-
-	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
-	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
-	newinitd "${FILESDIR}/mongos.initd-r3" mongos
-	newconfd "${FILESDIR}/mongos.confd-r3" mongos
-
-	insinto /etc
-	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
-	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
-
-	systemd_dounit "${FILESDIR}/${PN}.service"
-
-	insinto /etc/logrotate.d/
-	newins "${FILESDIR}/${PN}.logrotate" ${PN}
-
-	# see bug #526114
-	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
-
-	local x
-	for x in /var/{lib,log}/${PN}; do
-		diropts -m0750 -o mongodb -g mongodb
-		keepdir "${x}"
-	done
-}
-
-pkg_postinst() {
-	ewarn "Make sure to read the release notes and follow the upgrade process:"
-	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
-	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
-}

diff --git a/dev-db/mongodb/mongodb-4.0.19.ebuild b/dev-db/mongodb/mongodb-4.0.19.ebuild
deleted file mode 100644
index 8b315a9df68..00000000000
--- a/dev-db/mongodb/mongodb-4.0.19.ebuild
+++ /dev/null
@@ -1,173 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 )
-
-SCONS_MIN_VERSION="2.5.0"
-CHECKREQS_DISK_BUILD="2400M"
-CHECKREQS_DISK_USR="512M"
-CHECKREQS_MEMORY="1024M"
-
-inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
-
-MY_P=${PN}-src-r${PV/_rc/-rc}
-
-DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
-HOMEPAGE="https://www.mongodb.com"
-SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0 SSPL-1"
-SLOT="0"
-KEYWORDS="amd64"
-IUSE="debug kerberos libressl lto mms-agent ssl test +tools"
-RESTRICT="!test? ( test )"
-
-RDEPEND="acct-group/mongodb
-	acct-user/mongodb
-	>=app-arch/snappy-1.1.3
-	>=dev-cpp/yaml-cpp-0.5.3:=
-	>=dev-libs/boost-1.60:=[threads(+)]
-	>=dev-libs/libpcre-8.41[cxx]
-	dev-libs/snowball-stemmer
-	net-libs/libpcap
-	>=sys-libs/zlib-1.2.11:=
-	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
-	mms-agent? ( app-admin/mms-agent )
-	ssl? (
-		!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
-		libressl? ( dev-libs/libressl:0= )
-	)"
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	$(python_gen_any_dep '
-		test? ( dev-python/pymongo[${PYTHON_USEDEP}] )
-		>=dev-util/scons-2.5.0[${PYTHON_USEDEP}]
-		dev-python/cheetah[${PYTHON_USEDEP}]
-		dev-python/pyyaml[${PYTHON_USEDEP}]
-		dev-python/typing[${PYTHON_USEDEP}]
-	')
-	sys-libs/ncurses:0=
-	sys-libs/readline:0=
-	debug? ( dev-util/valgrind )"
-PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-3.6.1-fix-scons.patch"
-	"${FILESDIR}/${PN}-4.0.0-no-compass.patch"
-	"${FILESDIR}/${PN}-4.0.12-boost-1.71-cxxabi-include.patch"
-)
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_pretend() {
-	if [[ -n ${REPLACING_VERSIONS} ]]; then
-		if ver_test "$REPLACING_VERSIONS" -lt 3.6; then
-			ewarn "To upgrade from a version earlier than the 3.6-series, you must"
-			ewarn "successively upgrade major releases until you have upgraded"
-			ewarn "to 3.6-series. Then upgrade to 4.0 series."
-		else
-			ewarn "Be sure to set featureCompatibilityVersion to 3.6 before upgrading."
-		fi
-	fi
-}
-
-python_check_deps() {
-	if use test; then
-		has_version "dev-python/pymongo[${PYTHON_USEDEP}]" ||
-			return 1
-	fi
-
-	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
-	has_version "dev-python/cheetah[${PYTHON_USEDEP}]" &&
-	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" &&
-	has_version "dev-python/typing[${PYTHON_USEDEP}]"
-}
-
-src_prepare() {
-	default
-
-	# remove bundled libs
-	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
-
-	# remove compass
-	rm -r src/mongo/installer/compass || die
-}
-
-src_configure() {
-	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
-	# --use-system-icu fails tests
-	# --use-system-tcmalloc is strongly NOT recommended:
-	scons_opts=(
-		CC="$(tc-getCC)"
-		CXX="$(tc-getCXX)"
-
-		--disable-warnings-as-errors
-		--use-system-boost
-		--use-system-pcre
-		--use-system-snappy
-		--use-system-stemmer
-		--use-system-yaml
-		--use-system-zlib
-	)
-
-	use debug && scons_opts+=( --dbg=on )
-	use kerberos && scons_opts+=( --use-sasl-client )
-	use lto && scons_opts+=( --lto=on )
-	use ssl && scons_opts+=( --ssl )
-
-	# respect mongoDB upstream's basic recommendations
-	# see bug #536688 and #526114
-	if ! use debug; then
-		filter-flags '-m*'
-		filter-flags '-O?'
-	fi
-
-	default
-}
-
-src_compile() {
-	escons "${scons_opts[@]}" core tools
-}
-
-# FEATURES="test -usersandbox" emerge dev-db/mongodb
-src_test() {
-	"${EPYTHON}" ./buildscripts/resmoke.py --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed"
-}
-
-src_install() {
-	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
-
-	doman debian/mongo*.1
-	dodoc README docs/building.md
-
-	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
-	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
-	newinitd "${FILESDIR}/mongos.initd-r3" mongos
-	newconfd "${FILESDIR}/mongos.confd-r3" mongos
-
-	insinto /etc
-	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
-	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
-
-	systemd_dounit "${FILESDIR}/${PN}.service"
-
-	insinto /etc/logrotate.d/
-	newins "${FILESDIR}/${PN}.logrotate" ${PN}
-
-	# see bug #526114
-	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
-
-	local x
-	for x in /var/{lib,log}/${PN}; do
-		diropts -m0750 -o mongodb -g mongodb
-		keepdir "${x}"
-	done
-}
-
-pkg_postinst() {
-	ewarn "Make sure to read the release notes and follow the upgrade process:"
-	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
-	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
-}

diff --git a/dev-db/mongodb/mongodb-4.0.20.ebuild b/dev-db/mongodb/mongodb-4.0.20.ebuild
deleted file mode 100644
index 65121949247..00000000000
--- a/dev-db/mongodb/mongodb-4.0.20.ebuild
+++ /dev/null
@@ -1,173 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 )
-
-SCONS_MIN_VERSION="2.5.0"
-CHECKREQS_DISK_BUILD="2400M"
-CHECKREQS_DISK_USR="512M"
-CHECKREQS_MEMORY="1024M"
-
-inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
-
-MY_P=${PN}-src-r${PV/_rc/-rc}
-
-DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
-HOMEPAGE="https://www.mongodb.com"
-SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0 SSPL-1"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="debug kerberos libressl lto mms-agent ssl test +tools"
-RESTRICT="!test? ( test )"
-
-RDEPEND="acct-group/mongodb
-	acct-user/mongodb
-	>=app-arch/snappy-1.1.3
-	>=dev-cpp/yaml-cpp-0.5.3:=
-	>=dev-libs/boost-1.60:=[threads(+)]
-	>=dev-libs/libpcre-8.41[cxx]
-	dev-libs/snowball-stemmer
-	net-libs/libpcap
-	>=sys-libs/zlib-1.2.11:=
-	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
-	mms-agent? ( app-admin/mms-agent )
-	ssl? (
-		!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
-		libressl? ( dev-libs/libressl:0= )
-	)"
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	$(python_gen_any_dep '
-		test? ( dev-python/pymongo[${PYTHON_USEDEP}] )
-		>=dev-util/scons-2.5.0[${PYTHON_USEDEP}]
-		dev-python/cheetah[${PYTHON_USEDEP}]
-		dev-python/pyyaml[${PYTHON_USEDEP}]
-		dev-python/typing[${PYTHON_USEDEP}]
-	')
-	sys-libs/ncurses:0=
-	sys-libs/readline:0=
-	debug? ( dev-util/valgrind )"
-PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-3.6.1-fix-scons.patch"
-	"${FILESDIR}/${PN}-4.0.0-no-compass.patch"
-	"${FILESDIR}/${PN}-4.0.12-boost-1.71-cxxabi-include.patch"
-)
-
-S="${WORKDIR}/${MY_P}"
-
-pkg_pretend() {
-	if [[ -n ${REPLACING_VERSIONS} ]]; then
-		if ver_test "$REPLACING_VERSIONS" -lt 3.6; then
-			ewarn "To upgrade from a version earlier than the 3.6-series, you must"
-			ewarn "successively upgrade major releases until you have upgraded"
-			ewarn "to 3.6-series. Then upgrade to 4.0 series."
-		else
-			ewarn "Be sure to set featureCompatibilityVersion to 3.6 before upgrading."
-		fi
-	fi
-}
-
-python_check_deps() {
-	if use test; then
-		has_version "dev-python/pymongo[${PYTHON_USEDEP}]" ||
-			return 1
-	fi
-
-	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
-	has_version "dev-python/cheetah[${PYTHON_USEDEP}]" &&
-	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" &&
-	has_version "dev-python/typing[${PYTHON_USEDEP}]"
-}
-
-src_prepare() {
-	default
-
-	# remove bundled libs
-	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
-
-	# remove compass
-	rm -r src/mongo/installer/compass || die
-}
-
-src_configure() {
-	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
-	# --use-system-icu fails tests
-	# --use-system-tcmalloc is strongly NOT recommended:
-	scons_opts=(
-		CC="$(tc-getCC)"
-		CXX="$(tc-getCXX)"
-
-		--disable-warnings-as-errors
-		--use-system-boost
-		--use-system-pcre
-		--use-system-snappy
-		--use-system-stemmer
-		--use-system-yaml
-		--use-system-zlib
-	)
-
-	use debug && scons_opts+=( --dbg=on )
-	use kerberos && scons_opts+=( --use-sasl-client )
-	use lto && scons_opts+=( --lto=on )
-	use ssl && scons_opts+=( --ssl )
-
-	# respect mongoDB upstream's basic recommendations
-	# see bug #536688 and #526114
-	if ! use debug; then
-		filter-flags '-m*'
-		filter-flags '-O?'
-	fi
-
-	default
-}
-
-src_compile() {
-	escons "${scons_opts[@]}" core tools
-}
-
-# FEATURES="test -usersandbox" emerge dev-db/mongodb
-src_test() {
-	"${EPYTHON}" ./buildscripts/resmoke.py --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed"
-}
-
-src_install() {
-	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
-
-	doman debian/mongo*.1
-	dodoc README docs/building.md
-
-	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
-	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
-	newinitd "${FILESDIR}/mongos.initd-r3" mongos
-	newconfd "${FILESDIR}/mongos.confd-r3" mongos
-
-	insinto /etc
-	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
-	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
-
-	systemd_dounit "${FILESDIR}/${PN}.service"
-
-	insinto /etc/logrotate.d/
-	newins "${FILESDIR}/${PN}.logrotate" ${PN}
-
-	# see bug #526114
-	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
-
-	local x
-	for x in /var/{lib,log}/${PN}; do
-		diropts -m0750 -o mongodb -g mongodb
-		keepdir "${x}"
-	done
-}
-
-pkg_postinst() {
-	ewarn "Make sure to read the release notes and follow the upgrade process:"
-	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
-	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
-}

diff --git a/dev-db/mongodb/mongodb-4.2.10.ebuild b/dev-db/mongodb/mongodb-4.2.10.ebuild
deleted file mode 100644
index 763bd774d5a..00000000000
--- a/dev-db/mongodb/mongodb-4.2.10.ebuild
+++ /dev/null
@@ -1,175 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-
-SCONS_MIN_VERSION="2.5.0"
-CHECKREQS_DISK_BUILD="2400M"
-CHECKREQS_DISK_USR="512M"
-CHECKREQS_MEMORY="1024M"
-
-inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
-
-MY_P=${PN}-src-r${PV/_rc/-rc}
-
-DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
-HOMEPAGE="https://www.mongodb.com"
-SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0 SSPL-1"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64"
-IUSE="debug kerberos libressl lto ssl test +tools"
-RESTRICT="!test? ( test )"
-
-RDEPEND="acct-group/mongodb
-	acct-user/mongodb
-	>=app-arch/snappy-1.1.3
-	>=dev-cpp/yaml-cpp-0.6.2:=
-	>=dev-libs/boost-1.70:=[threads(+)]
-	>=dev-libs/libpcre-8.42[cxx]
-	app-arch/zstd
-	dev-libs/snowball-stemmer
-	net-libs/libpcap
-	>=sys-libs/zlib-1.2.11:=
-	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
-	ssl? (
-		!libressl? ( >=dev-libs/openssl-1.0.1g:0= )
-		libressl? ( dev-libs/libressl:0= )
-	)"
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	$(python_gen_any_dep '
-		test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
-		>=dev-util/scons-2.5.0[${PYTHON_USEDEP}]
-		dev-python/cheetah3[${PYTHON_USEDEP}]
-		dev-python/psutil[${PYTHON_USEDEP}]
-		dev-python/pyyaml[${PYTHON_USEDEP}]
-	')
-	sys-libs/ncurses:0=
-	sys-libs/readline:0=
-	debug? ( dev-util/valgrind )"
-PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-4.2.0-fix-scons.patch"
-	"${FILESDIR}/${PN}-4.2.10-no-compass.patch"
-)
-
-S="${WORKDIR}/${MY_P}"
-
-python_check_deps() {
-	if use test; then
-		has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
-		has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
-	fi
-
-	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
-	has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
-	has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
-	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
-}
-
-pkg_pretend() {
-	if [[ -n ${REPLACING_VERSIONS} ]]; then
-		if ver_test "$REPLACING_VERSIONS" -lt 4.0; then
-			ewarn "To upgrade from a version earlier than the 4.0-series, you must"
-			ewarn "successively upgrade major releases until you have upgraded"
-			ewarn "to 4.0-series. Then upgrade to 4.2 series."
-		else
-			ewarn "Be sure to set featureCompatibilityVersion to 4.0 before upgrading."
-		fi
-	fi
-}
-
-src_prepare() {
-	default
-
-	# remove bundled libs
-	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*,zstandard-*} || die
-
-	# remove compass
-	rm -r src/mongo/installer/compass || die
-}
-
-src_configure() {
-	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
-	# --use-system-icu fails tests
-	# --use-system-tcmalloc is strongly NOT recommended:
-	scons_opts=(
-		CC="$(tc-getCC)"
-		CXX="$(tc-getCXX)"
-
-		--disable-warnings-as-errors
-		--use-system-boost
-		--use-system-pcre
-		--use-system-snappy
-		--use-system-stemmer
-		--use-system-yaml
-		--use-system-zlib
-		--use-system-zstd
-	)
-
-	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
-	use debug && scons_opts+=( --dbg=on )
-	use kerberos && scons_opts+=( --use-sasl-client )
-	use lto && scons_opts+=( --lto=on )
-	use ssl && scons_opts+=( --ssl )
-
-	# respect mongoDB upstream's basic recommendations
-	# see bug #536688 and #526114
-	if ! use debug; then
-		filter-flags '-m*'
-		filter-flags '-O?'
-	fi
-
-	default
-}
-
-src_compile() {
-	escons "${scons_opts[@]}" core tools
-}
-
-# FEATURES="test -usersandbox" emerge dev-db/mongodb
-src_test() {
-	ewarn "Tests may hang with FEATURES=usersandbox"
-	"${EPYTHON}" ./buildscripts/resmoke.py run --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed with ${EPYTHON}"
-}
-
-src_install() {
-	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
-
-	doman debian/mongo*.1
-	dodoc README docs/building.md
-
-	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
-	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
-	newinitd "${FILESDIR}/mongos.initd-r3" mongos
-	newconfd "${FILESDIR}/mongos.confd-r3" mongos
-
-	insinto /etc
-	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
-	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
-
-	systemd_dounit "${FILESDIR}/${PN}.service"
-
-	insinto /etc/logrotate.d/
-	newins "${FILESDIR}/${PN}.logrotate" ${PN}
-
-	# see bug #526114
-	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
-
-	local x
-	for x in /var/{lib,log}/${PN}; do
-		diropts -m0750 -o mongodb -g mongodb
-		keepdir "${x}"
-	done
-}
-
-pkg_postinst() {
-	ewarn "Make sure to read the release notes and follow the upgrade process:"
-	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
-	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
-}


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2021-07-15 14:14 Thomas Deutschmann
  0 siblings, 0 replies; 22+ messages in thread
From: Thomas Deutschmann @ 2021-07-15 14:14 UTC (permalink / raw
  To: gentoo-commits

commit:     7168257cad6ea7c4856b01c5703d0ed5b764367c
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 15 14:02:31 2021 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Thu Jul 15 14:02:31 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7168257c

dev-db/mongodb: fix building against GCC 11.x

Thanks-to: Ivan Budiakov
Bug: https://bugs.gentoo.org/768339
Package-Manager: Portage-3.0.21, Repoman-3.0.3
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 dev-db/mongodb/files/mongodb-4.4.1-gcc11.patch | 12 ++++++++++++
 dev-db/mongodb/mongodb-4.4.1.ebuild            |  1 +
 dev-db/mongodb/mongodb-4.4.2.ebuild            |  1 +
 dev-db/mongodb/mongodb-4.4.4.ebuild            |  1 +
 4 files changed, 15 insertions(+)

diff --git a/dev-db/mongodb/files/mongodb-4.4.1-gcc11.patch b/dev-db/mongodb/files/mongodb-4.4.1-gcc11.patch
new file mode 100644
index 00000000000..a6ff02dcf66
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.4.1-gcc11.patch
@@ -0,0 +1,12 @@
+https://bugs.gentoo.org/768339
+
+--- a/src/mongo/db/exec/plan_stats.h
++++ b/src/mongo/db/exec/plan_stats.h
+@@ -33,6 +33,7 @@
+ #include <cstdlib>
+ #include <string>
+ #include <vector>
++#include <optional>
+
+ #include "mongo/db/index/multikey_paths.h"
+ 

diff --git a/dev-db/mongodb/mongodb-4.4.1.ebuild b/dev-db/mongodb/mongodb-4.4.1.ebuild
index b26fac9d1d8..4a2417af37c 100644
--- a/dev-db/mongodb/mongodb-4.4.1.ebuild
+++ b/dev-db/mongodb/mongodb-4.4.1.ebuild
@@ -57,6 +57,7 @@ PATCHES=(
 	"${FILESDIR}/${PN}-4.4.1-no-compass.patch"
 	"${FILESDIR}/${PN}-4.4.1-unwind-gcc10.patch"
 	"${FILESDIR}/${PN}-4.4.1-boost.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
 )
 
 S="${WORKDIR}/${MY_P}"

diff --git a/dev-db/mongodb/mongodb-4.4.2.ebuild b/dev-db/mongodb/mongodb-4.4.2.ebuild
index 1d0c36c3853..cad4067353e 100644
--- a/dev-db/mongodb/mongodb-4.4.2.ebuild
+++ b/dev-db/mongodb/mongodb-4.4.2.ebuild
@@ -56,6 +56,7 @@ PATCHES=(
 	"${FILESDIR}/${PN}-4.4.1-fix-scons.patch"
 	"${FILESDIR}/${PN}-4.4.1-no-compass.patch"
 	"${FILESDIR}/${PN}-4.4.1-boost.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
 )
 
 S="${WORKDIR}/${MY_P}"

diff --git a/dev-db/mongodb/mongodb-4.4.4.ebuild b/dev-db/mongodb/mongodb-4.4.4.ebuild
index 1d0c36c3853..cad4067353e 100644
--- a/dev-db/mongodb/mongodb-4.4.4.ebuild
+++ b/dev-db/mongodb/mongodb-4.4.4.ebuild
@@ -56,6 +56,7 @@ PATCHES=(
 	"${FILESDIR}/${PN}-4.4.1-fix-scons.patch"
 	"${FILESDIR}/${PN}-4.4.1-no-compass.patch"
 	"${FILESDIR}/${PN}-4.4.1-boost.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
 )
 
 S="${WORKDIR}/${MY_P}"


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2021-08-19 16:38 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2021-08-19 16:38 UTC (permalink / raw
  To: gentoo-commits

commit:     51dcdf206ff594f3a741857f75c1ede89f7449a4
Author:     Tomáš Mózes <hydrapolic <AT> gmail <DOT> com>
AuthorDate: Fri Aug  6 10:13:16 2021 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Thu Aug 19 16:38:08 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=51dcdf20

dev-db/mongodb: bump to 4.2.15

Signed-off-by: Tomáš Mózes <hydrapolic <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/21898
Signed-off-by: Alexys Jacob <ultrabug <AT> gentoo.org>

 dev-db/mongodb/Manifest                            |   1 +
 .../mongodb/files/mongodb-4.2.15-no-compass.patch  |  45 ++++++
 dev-db/mongodb/mongodb-4.2.15.ebuild               | 175 +++++++++++++++++++++
 3 files changed, 221 insertions(+)

diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
index ca2d95a7d38..a06a609dbd7 100644
--- a/dev-db/mongodb/Manifest
+++ b/dev-db/mongodb/Manifest
@@ -1,5 +1,6 @@
 DIST mongodb-src-r4.2.11.tar.gz 61829417 BLAKE2B cc989d6ea87a48b7402d119dda4678a966cf96cec0da5d00d792faf06ecb6fbe4bc426069e1a72548410adcbd26162038ec7201e76036ac599af5f53029c0e66 SHA512 ff398a9d3a012e0eb860c2139967e163b8b0ac045c1c47f2c0c5584ba7c60a1403bb423ce8c6e8b3900fdcad1164a84c6da79276f897fd640366e3f80cf54316
 DIST mongodb-src-r4.2.12.tar.gz 61855596 BLAKE2B 2114c3b6e7a941c566cf631e06b0f850d4f10b12fb6367caef5d6f6e92ebbee04650b41b8ea9d90e9ba983012f812144be9c50caa77c9a68263b6a6a19d522b2 SHA512 9be714b6d8f51cfd36530b103cfb5e9b31493c6294b453d32fe2176dd06e9a2145a671bd15b1f97865944c88256fbaea63542a994f2c033df75ab7280e82a576
+DIST mongodb-src-r4.2.15.tar.gz 62187847 BLAKE2B eb9cbf52b5aeb95d3c6c6bd14da9731a85a24e2c3560163be999bddff1cd1ac90f9cf07b4c3fe22e35ffcdd174a6b2720a801fa179f574ff33150d1a4660ef9e SHA512 ee46a2dfb7ae23ad38da49bf126a2bc7932bded8f01d34516ad575d2aed5d6233c5ad620b2a4424a98afb9e80e26acf40c66982cdd0637c13f0f7aaae8b746a0
 DIST mongodb-src-r4.4.1.tar.gz 49644743 BLAKE2B 7d84998c69b9b55164ebab04b49c38a4113a0f58d431612389ec37eb044fba1adf9284e9d4454bd40bb7a071fd042308a5cd350129d6d52480412cf6b868ec2b SHA512 16aa66995ea8cfe0cc47b96c1c5643a28ab47fc9f27bd93404cf572944ab30492df7c9255553f918b353cd7157a6ccde9ac6f58bfba322fb52c2d7409c6fb9b0
 DIST mongodb-src-r4.4.2.tar.gz 49816559 BLAKE2B 0e51302e7e414de9fef74872e44c8de1f5682cb3cac0aa7a02e3c1ee3084669ea647d1e574e8a76a3b6b2f34aa4ef693c8d1f3fa025ec3072eff7b7c408b94e5 SHA512 bbf59ed97a8718576c469c696d5331c122f63528dad950fd415b00269c2fa5e6949b372c575e2504c2a58b145bae485172b25000000481662e6543bc3127252a
 DIST mongodb-src-r4.4.4.tar.gz 49942905 BLAKE2B 8aa9813e87e216899b3c609b413ce6915d6ddf30faea3c0ecda2a14476fc6b08024614fa7b20e1703b5908759459e88e5e302539c27525c2359233743aa7dcda SHA512 a999528a8a6bf4bf0b8ff8f5169b1aadb3c4dab9c7d936c59d66f238b864fad6e8fb6a1b9ec27f395fca95152ee020f96a8c1cf8960a48de3ce5141f8dda7d88

diff --git a/dev-db/mongodb/files/mongodb-4.2.15-no-compass.patch b/dev-db/mongodb/files/mongodb-4.2.15-no-compass.patch
new file mode 100644
index 00000000000..de2eda82f21
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.2.15-no-compass.patch
@@ -0,0 +1,45 @@
+diff --git a/src/mongo/SConscript b/src/mongo/SConscript
+index 0379fcb0..1aabddba 100644
+--- a/src/mongo/SConscript
++++ b/src/mongo/SConscript
+@@ -808,32 +808,6 @@ for full_dir, archive_dir in list(env["ARCHIVE_ADDITION_DIR_MAP"].items()):
+ for target in env["DIST_BINARIES"]:
+     installBinary(env, "db/modules/" + target)
+ 
+-compass_script = "install_compass"
+-if env.TargetOSIs('windows'):
+-    # On windows the .in needs to be explicitly added to the file.
+-    compass_script = "Install-Compass.ps1"
+-
+-compass_installer = f"#/src/mongo/installer/compass/{compass_script}"
+-
+-distBinaries.append(compass_installer)
+-
+-if not hygienic:
+-    compass_script_installer = env.Install("$INSTALL_DIR/bin", compass_installer)
+-else:
+-    compass_script_installer = env.AutoInstall(
+-        'bin',
+-        source=[
+-            compass_installer,
+-        ],
+-        INSTALL_ALIAS=[
+-            'tools',
+-        ],
+-    )
+-
+-if env.TargetOSIs('posix'):
+-    env.AddPostAction( compass_script_installer, 'chmod 755 $TARGET' )
+-    env.AddPostAction( compass_installer, 'chmod 755 $TARGET' )
+-
+ # "dist" target is valid only when --use-new-tools is specified
+ # Attempts to build release artifacts without tools must fail
+ if has_option("use-new-tools"):
+@@ -851,7 +825,6 @@ if has_option("use-new-tools"):
+                 '--transform $BUILD_DIR/mongo=$SERVER_DIST_BASENAME/bin',
+                 '--transform $BUILD_DIR/mongo/stripped/src/mongo-tools=$SERVER_DIST_BASENAME/bin',
+                 '--transform src/mongo-tools=$SERVER_DIST_BASENAME/bin',
+-                '--transform src/mongo/installer/compass=$SERVER_DIST_BASENAME/bin',
+                 '${TEMPFILE(SOURCES[1:])}'
+             ],
+         ),

diff --git a/dev-db/mongodb/mongodb-4.2.15.ebuild b/dev-db/mongodb/mongodb-4.2.15.ebuild
new file mode 100644
index 00000000000..9d517a063d2
--- /dev/null
+++ b/dev-db/mongodb/mongodb-4.2.15.ebuild
@@ -0,0 +1,175 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..9} )
+
+SCONS_MIN_VERSION="2.5.0"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="debug kerberos lto ssl test +tools"
+RESTRICT="!test? ( test )"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.3
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	>=dev-libs/boost-1.70:=[threads(+)]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd
+	dev-libs/snowball-stemmer
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	ssl? (
+		>=dev-libs/openssl-1.0.1g:0=
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
+		>=dev-util/scons-2.5.0[${PYTHON_USEDEP}]
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/psutil[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+	')
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-util/valgrind )"
+PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.2.0-fix-scons.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+	"${FILESDIR}/${PN}-4.2.15-no-compass.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+python_check_deps() {
+	if use test; then
+		has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
+		has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
+	fi
+
+	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.0; then
+			ewarn "To upgrade from a version earlier than the 4.0-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.0-series. Then upgrade to 4.2 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.0 before upgrading."
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*,zstandard-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	scons_opts=(
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use lto && scons_opts+=( --lto=on )
+	use ssl && scons_opts+=( --ssl )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	escons "${scons_opts[@]}" core tools
+}
+
+# FEATURES="test -usersandbox" emerge dev-db/mongodb
+src_test() {
+	ewarn "Tests may hang with FEATURES=usersandbox"
+	"${EPYTHON}" ./buildscripts/resmoke.py run --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed with ${EPYTHON}"
+}
+
+src_install() {
+	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_dounit "${FILESDIR}/${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		diropts -m0750 -o mongodb -g mongodb
+		keepdir "${x}"
+	done
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2021-08-19 16:38 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2021-08-19 16:38 UTC (permalink / raw
  To: gentoo-commits

commit:     8fc9f41c5d7489794e250404fc25f92e644cca4b
Author:     Tomáš Mózes <hydrapolic <AT> gmail <DOT> com>
AuthorDate: Sat Aug  7 08:28:54 2021 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Thu Aug 19 16:38:14 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8fc9f41c

dev-db/mongodb: bump to 5.0.2

- Optional dep on new mongosh
- Skip tests as they now require new python packages

Signed-off-by: Tomáš Mózes <hydrapolic <AT> gmail.com>
Signed-off-by: Alexys Jacob <ultrabug <AT> gentoo.org>

 dev-db/mongodb/Manifest                            |   1 +
 dev-db/mongodb/files/mongodb-5.0.3-fix-scons.patch |  32 ++++
 .../mongodb/files/mongodb-5.0.3-no-compass.patch   |  12 ++
 .../files/mongodb-5.0.3-skip-no-exceptions.patch   |  13 ++
 .../files/mongodb-5.0.3-skip-reqs-check.patch      |  24 +++
 dev-db/mongodb/metadata.xml                        |   1 +
 dev-db/mongodb/mongodb-5.0.2.ebuild                | 173 +++++++++++++++++++++
 7 files changed, 256 insertions(+)

diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
index 543106b91b7..4d6584e3ab8 100644
--- a/dev-db/mongodb/Manifest
+++ b/dev-db/mongodb/Manifest
@@ -5,3 +5,4 @@ DIST mongodb-src-r4.4.1.tar.gz 49644743 BLAKE2B 7d84998c69b9b55164ebab04b49c38a4
 DIST mongodb-src-r4.4.2.tar.gz 49816559 BLAKE2B 0e51302e7e414de9fef74872e44c8de1f5682cb3cac0aa7a02e3c1ee3084669ea647d1e574e8a76a3b6b2f34aa4ef693c8d1f3fa025ec3072eff7b7c408b94e5 SHA512 bbf59ed97a8718576c469c696d5331c122f63528dad950fd415b00269c2fa5e6949b372c575e2504c2a58b145bae485172b25000000481662e6543bc3127252a
 DIST mongodb-src-r4.4.4.tar.gz 49942905 BLAKE2B 8aa9813e87e216899b3c609b413ce6915d6ddf30faea3c0ecda2a14476fc6b08024614fa7b20e1703b5908759459e88e5e302539c27525c2359233743aa7dcda SHA512 a999528a8a6bf4bf0b8ff8f5169b1aadb3c4dab9c7d936c59d66f238b864fad6e8fb6a1b9ec27f395fca95152ee020f96a8c1cf8960a48de3ce5141f8dda7d88
 DIST mongodb-src-r4.4.8.tar.gz 50492854 BLAKE2B 4776b17e88104879ea69468ff277b07dc317d936654bb26c69750e0aaf8f51bea73994e7fc4841228d8506db392e0454b5fd16257071b86a2e4ad34e90f33632 SHA512 9b0cd81c9c731255a6c079c040ed342a51a72e3ea72047d3ae959c0afde50b0cdb1fcfe7fcbea30c449a3618a09d213752277cee6eb9bc0a55915b9229543606
+DIST mongodb-src-r5.0.2.tar.gz 54527477 BLAKE2B f71102f4c2711074498c288817ee06156cb030ee647541f6604582b918fb75239cc5a551c08b745b6296a2693d2a1ac28d94c1365b86bc508257b9d42142612a SHA512 179d57a0a12c5c23e54208c262edff6976f509324be8ad68d6761997dc702534f618dea1a24568fdb2d716359762e64da54e2d152a685447b4e0450996bf2154

diff --git a/dev-db/mongodb/files/mongodb-5.0.3-fix-scons.patch b/dev-db/mongodb/files/mongodb-5.0.3-fix-scons.patch
new file mode 100644
index 00000000000..2d1a2f9312b
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-5.0.3-fix-scons.patch
@@ -0,0 +1,32 @@
+diff --git a/SConstruct b/SConstruct
+index 115de78a..613110b7 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -2366,7 +2366,6 @@ if env.TargetOSIs('posix'):
+ 
+     # -Winvalid-pch Warn if a precompiled header (see Precompiled Headers) is found in the search path but can't be used.
+     env.Append( CCFLAGS=["-fasynchronous-unwind-tables",
+-                         "-ggdb" if not env.TargetOSIs('emscripten') else "-g",
+                          "-Wall",
+                          "-Wsign-compare",
+                          "-Wno-unknown-pragmas",
+@@ -2422,6 +2421,8 @@ if env.TargetOSIs('posix'):
+ 
+     # env.Append( " -Wconversion" ) TODO: this doesn't really work yet
+     env.Append( CXXFLAGS=["-Woverloaded-virtual"] )
++    env.Append( CXXFLAGS=os.environ['CXXFLAGS'] )
++    env.Append( LINKFLAGS=os.environ['LDFLAGS'] )
+ 
+     # On OS X, clang doesn't want the pthread flag at link time, or it
+     # issues warnings which make it impossible for us to declare link
+@@ -2473,8 +2474,8 @@ if env.TargetOSIs('posix'):
+             ],
+         )
+ 
+-    #make scons colorgcc friendly
+-    for key in ('HOME', 'TERM'):
++    #make scons colorgcc, distcc, ccache friendly
++    for key in ('HOME', 'PATH', 'TERM'):
+         try:
+             env['ENV'][key] = os.environ[key]
+         except KeyError:

diff --git a/dev-db/mongodb/files/mongodb-5.0.3-no-compass.patch b/dev-db/mongodb/files/mongodb-5.0.3-no-compass.patch
new file mode 100644
index 00000000000..77725157729
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-5.0.3-no-compass.patch
@@ -0,0 +1,12 @@
+diff --git a/src/mongo/installer/SConscript b/src/mongo/installer/SConscript
+index 5bd89fe9..489e70ac 100644
+--- a/src/mongo/installer/SConscript
++++ b/src/mongo/installer/SConscript
+@@ -7,7 +7,6 @@ env = env.Clone()
+ 
+ env.SConscript(
+     dirs=[
+-        'compass',
+         'msi',
+     ],
+     exports=[

diff --git a/dev-db/mongodb/files/mongodb-5.0.3-skip-no-exceptions.patch b/dev-db/mongodb/files/mongodb-5.0.3-skip-no-exceptions.patch
new file mode 100644
index 00000000000..ae69befcea8
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-5.0.3-skip-no-exceptions.patch
@@ -0,0 +1,13 @@
+diff --git a/SConstruct b/SConstruct
+index 613110b7..4987e24e 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -2958,7 +2958,7 @@ def doConfigure(myenv):
+ 
+         # This warning was added in clang-5 and incorrectly flags our implementation of
+         # exceptionToStatus(). See https://bugs.llvm.org/show_bug.cgi?id=34804
+-        AddToCCFLAGSIfSupported(myenv, "-Wno-exceptions")
++        #AddToCCFLAGSIfSupported(myenv, "-Wno-exceptions")
+ 
+         # Enable sized deallocation support.
+         AddToCXXFLAGSIfSupported(myenv, '-fsized-deallocation')

diff --git a/dev-db/mongodb/files/mongodb-5.0.3-skip-reqs-check.patch b/dev-db/mongodb/files/mongodb-5.0.3-skip-reqs-check.patch
new file mode 100644
index 00000000000..823d481c208
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-5.0.3-skip-reqs-check.patch
@@ -0,0 +1,24 @@
+diff --git a/buildscripts/scons.py b/buildscripts/scons.py
+index 534fca32..c38f64df 100755
+--- a/buildscripts/scons.py
++++ b/buildscripts/scons.py
+@@ -19,13 +19,13 @@ SITE_TOOLS_DIR = os.path.join(MONGODB_ROOT, 'site_scons')
+ sys.path = [SCONS_DIR, SITE_TOOLS_DIR] + sys.path
+ 
+ # pylint: disable=C0413
+-from mongo.pip_requirements import verify_requirements, MissingRequirements
++#from mongo.pip_requirements import verify_requirements, MissingRequirements
+ 
+-try:
+-    verify_requirements('etc/pip/compile-requirements.txt')
+-except MissingRequirements as ex:
+-    print(ex)
+-    sys.exit(1)
++#try:
++#    verify_requirements('etc/pip/compile-requirements.txt')
++#except MissingRequirements as ex:
++#    print(ex)
++#    sys.exit(1)
+ 
+ try:
+     import SCons.Script

diff --git a/dev-db/mongodb/metadata.xml b/dev-db/mongodb/metadata.xml
index a12b5966959..77ae5030358 100644
--- a/dev-db/mongodb/metadata.xml
+++ b/dev-db/mongodb/metadata.xml
@@ -15,6 +15,7 @@
 	</longdescription>
 	<use>
 		<flag name="lto">Adds support for link time optimization</flag>
+		<flag name="mongosh">Install the MongoDB shell from <pkg>app-admin/mongosh-bin</pkg></flag>
 		<flag name="tools">Install the MongoDB tools (mongoimport, mongodump...) from <pkg>app-admin/mongo-tools</pkg></flag>
 	</use>
 </pkgmetadata>

diff --git a/dev-db/mongodb/mongodb-5.0.2.ebuild b/dev-db/mongodb/mongodb-5.0.2.ebuild
new file mode 100644
index 00000000000..2976e876c8f
--- /dev/null
+++ b/dev-db/mongodb/mongodb-5.0.2.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..9} )
+
+SCONS_MIN_VERSION="3.3.1"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 -riscv"
+IUSE="debug kerberos lto mongosh ssl +tools"
+
+# https://github.com/mongodb/mongo/wiki/Test-The-Mongodb-Server
+# resmoke needs python packages not yet present in Gentoo
+RESTRICT="test"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.3
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	>=dev-libs/boost-1.70:=[threads(+),nls]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd
+	dev-libs/snowball-stemmer
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	ssl? (
+		>=dev-libs/openssl-1.0.1g:0=
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		>=dev-util/scons-3.1.1[${PYTHON_USEDEP}]
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/psutil[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+	')
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-util/valgrind )"
+PDEPEND="
+	mongosh? ( app-admin/mongosh-bin )
+	tools? ( >=app-admin/mongo-tools-100 )
+"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.4.1-boost.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+	"${FILESDIR}/${PN}-5.0.3-fix-scons.patch"
+	"${FILESDIR}/${PN}-5.0.3-no-compass.patch"
+	"${FILESDIR}/${PN}-5.0.3-skip-no-exceptions.patch"
+	"${FILESDIR}/${PN}-5.0.3-skip-reqs-check.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+python_check_deps() {
+	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.4; then
+			ewarn "To upgrade from a version earlier than the 4.4-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.4-series. Then upgrade to 5.0 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.4 before upgrading."
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost,pcre-*,snappy-*,yaml-cpp,zlib-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	scons_opts=(
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--jobs="$(makeopts_jobs)"
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use lto && scons_opts+=( --lto=on )
+	use ssl && scons_opts+=( --ssl )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	PREFIX="${EPREFIX}/usr" ./buildscripts/scons.py "${scons_opts[@]}" install-core || die
+}
+
+src_install() {
+	dobin build/install/bin/{mongo,mongod,mongos}
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_dounit "${FILESDIR}/${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		diropts -m0750 -o mongodb -g mongodb
+		keepdir "${x}"
+	done
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2021-08-20 18:07 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2021-08-20 18:07 UTC (permalink / raw
  To: gentoo-commits

commit:     af45f6a7cb10bc582a6490d7c1466fef512322fb
Author:     Tomáš Mózes <hydrapolic <AT> gmail <DOT> com>
AuthorDate: Fri Aug 20 14:57:19 2021 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Fri Aug 20 18:07:18 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=af45f6a7

dev-db/mongodb: fix building with glibc-2.34

Patch taken from https://gerrit.openbmc-project.xyz/c/openbmc/openbmc/+/43608/11/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/0001-Do-not-use-MINSIGSTKSZ.patch

Closes: https://bugs.gentoo.org/806773
Signed-off-by: Tomáš Mózes <hydrapolic <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/22052
Signed-off-by: Alexys Jacob <ultrabug <AT> gentoo.org>

 ...0.3-fix-scons.patch => mongodb-5.0.2-fix-scons.patch} |  0
 dev-db/mongodb/files/mongodb-5.0.2-glibc-2.34.patch      | 16 ++++++++++++++++
 ...3-no-compass.patch => mongodb-5.0.2-no-compass.patch} |  0
 ...ions.patch => mongodb-5.0.2-skip-no-exceptions.patch} |  0
 ...s-check.patch => mongodb-5.0.2-skip-reqs-check.patch} |  0
 dev-db/mongodb/mongodb-4.2.15.ebuild                     |  1 +
 dev-db/mongodb/mongodb-4.4.8.ebuild                      |  1 +
 dev-db/mongodb/mongodb-5.0.2.ebuild                      |  9 +++++----
 8 files changed, 23 insertions(+), 4 deletions(-)

diff --git a/dev-db/mongodb/files/mongodb-5.0.3-fix-scons.patch b/dev-db/mongodb/files/mongodb-5.0.2-fix-scons.patch
similarity index 100%
rename from dev-db/mongodb/files/mongodb-5.0.3-fix-scons.patch
rename to dev-db/mongodb/files/mongodb-5.0.2-fix-scons.patch

diff --git a/dev-db/mongodb/files/mongodb-5.0.2-glibc-2.34.patch b/dev-db/mongodb/files/mongodb-5.0.2-glibc-2.34.patch
new file mode 100644
index 00000000000..b9c5241be37
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-5.0.2-glibc-2.34.patch
@@ -0,0 +1,16 @@
+diff --git a/src/mongo/stdx/thread.h b/src/mongo/stdx/thread.h
+index 7b15bb56..4d8f73ad 100644
+--- a/src/mongo/stdx/thread.h
++++ b/src/mongo/stdx/thread.h
+@@ -105,10 +105,7 @@ private:
+     //   .                     N   Y :      4,344 |  13,048 |     7,352
+     //   .                     Y   Y :      4,424 |  13,672 |     8,392
+     //   ( https://jira.mongodb.org/secure/attachment/233569/233569_stacktrace-writeup.txt )
+-    static constexpr std::size_t kMongoMinSignalStackSize = std::size_t{64} << 10;
+-
+-    static constexpr std::size_t kStackSize =
+-        std::max(kMongoMinSignalStackSize, std::size_t{MINSIGSTKSZ});
++    static constexpr std::size_t kStackSize = std::size_t{64} << 10;
+     std::unique_ptr<std::byte[]> _stackStorage = std::make_unique<std::byte[]>(kStackSize);
+ 
+ #else   // !MONGO_HAS_SIGALTSTACK

diff --git a/dev-db/mongodb/files/mongodb-5.0.3-no-compass.patch b/dev-db/mongodb/files/mongodb-5.0.2-no-compass.patch
similarity index 100%
rename from dev-db/mongodb/files/mongodb-5.0.3-no-compass.patch
rename to dev-db/mongodb/files/mongodb-5.0.2-no-compass.patch

diff --git a/dev-db/mongodb/files/mongodb-5.0.3-skip-no-exceptions.patch b/dev-db/mongodb/files/mongodb-5.0.2-skip-no-exceptions.patch
similarity index 100%
rename from dev-db/mongodb/files/mongodb-5.0.3-skip-no-exceptions.patch
rename to dev-db/mongodb/files/mongodb-5.0.2-skip-no-exceptions.patch

diff --git a/dev-db/mongodb/files/mongodb-5.0.3-skip-reqs-check.patch b/dev-db/mongodb/files/mongodb-5.0.2-skip-reqs-check.patch
similarity index 100%
rename from dev-db/mongodb/files/mongodb-5.0.3-skip-reqs-check.patch
rename to dev-db/mongodb/files/mongodb-5.0.2-skip-reqs-check.patch

diff --git a/dev-db/mongodb/mongodb-4.2.15.ebuild b/dev-db/mongodb/mongodb-4.2.15.ebuild
index 9d517a063d2..8d8aba1df78 100644
--- a/dev-db/mongodb/mongodb-4.2.15.ebuild
+++ b/dev-db/mongodb/mongodb-4.2.15.ebuild
@@ -56,6 +56,7 @@ PATCHES=(
 	"${FILESDIR}/${PN}-4.2.0-fix-scons.patch"
 	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
 	"${FILESDIR}/${PN}-4.2.15-no-compass.patch"
+	"${FILESDIR}/${PN}-5.0.2-glibc-2.34.patch"
 )
 
 S="${WORKDIR}/${MY_P}"

diff --git a/dev-db/mongodb/mongodb-4.4.8.ebuild b/dev-db/mongodb/mongodb-4.4.8.ebuild
index 64dd932d7a1..714abb8c3b8 100644
--- a/dev-db/mongodb/mongodb-4.4.8.ebuild
+++ b/dev-db/mongodb/mongodb-4.4.8.ebuild
@@ -57,6 +57,7 @@ PATCHES=(
 	"${FILESDIR}/${PN}-4.4.8-no-compass.patch"
 	"${FILESDIR}/${PN}-4.4.1-boost.patch"
 	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+	"${FILESDIR}/${PN}-5.0.2-glibc-2.34.patch"
 )
 
 S="${WORKDIR}/${MY_P}"

diff --git a/dev-db/mongodb/mongodb-5.0.2.ebuild b/dev-db/mongodb/mongodb-5.0.2.ebuild
index 2976e876c8f..03eb379258b 100644
--- a/dev-db/mongodb/mongodb-5.0.2.ebuild
+++ b/dev-db/mongodb/mongodb-5.0.2.ebuild
@@ -60,10 +60,11 @@ PDEPEND="
 PATCHES=(
 	"${FILESDIR}/${PN}-4.4.1-boost.patch"
 	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
-	"${FILESDIR}/${PN}-5.0.3-fix-scons.patch"
-	"${FILESDIR}/${PN}-5.0.3-no-compass.patch"
-	"${FILESDIR}/${PN}-5.0.3-skip-no-exceptions.patch"
-	"${FILESDIR}/${PN}-5.0.3-skip-reqs-check.patch"
+	"${FILESDIR}/${PN}-5.0.2-fix-scons.patch"
+	"${FILESDIR}/${PN}-5.0.2-no-compass.patch"
+	"${FILESDIR}/${PN}-5.0.2-skip-no-exceptions.patch"
+	"${FILESDIR}/${PN}-5.0.2-skip-reqs-check.patch"
+	"${FILESDIR}/${PN}-5.0.2-glibc-2.34.patch"
 )
 
 S="${WORKDIR}/${MY_P}"


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2022-04-26 13:37 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2022-04-26 13:37 UTC (permalink / raw
  To: gentoo-commits

commit:     5619c7f4b8cd351838a68bb9a17fc31408c6b422
Author:     Dennis Lamm <expeditioneer <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 22 09:44:57 2022 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Tue Apr 26 13:37:07 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5619c7f4

dev-db/mongodb: systemd service set LimitNOFILE

Closes: https://bugs.gentoo.org/839369
Signed-off-by: Dennis Lamm <expeditioneer <AT> gentoo.org>
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Closes: https://github.com/gentoo/gentoo/pull/25154
Signed-off-by: Alexys Jacob <ultrabug <AT> gentoo.org>

 dev-db/mongodb/files/mongodb.service-r1 |  12 +++
 dev-db/mongodb/mongodb-4.2.15-r2.ebuild | 176 ++++++++++++++++++++++++++++++
 dev-db/mongodb/mongodb-4.2.17-r1.ebuild | 177 +++++++++++++++++++++++++++++++
 dev-db/mongodb/mongodb-4.4.10-r1.ebuild | 178 +++++++++++++++++++++++++++++++
 dev-db/mongodb/mongodb-4.4.8-r2.ebuild  | 177 +++++++++++++++++++++++++++++++
 dev-db/mongodb/mongodb-5.0.2-r2.ebuild  | 182 ++++++++++++++++++++++++++++++++
 dev-db/mongodb/mongodb-5.0.5-r1.ebuild  | 182 ++++++++++++++++++++++++++++++++
 7 files changed, 1084 insertions(+)

diff --git a/dev-db/mongodb/files/mongodb.service-r1 b/dev-db/mongodb/files/mongodb.service-r1
new file mode 100644
index 000000000000..a9adb390bd19
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb.service-r1
@@ -0,0 +1,12 @@
+[Unit]
+Description=High-performance, schema-free document-oriented database
+After=network.target
+
+[Service]
+User=mongodb
+ExecStart=/usr/bin/mongod --quiet --config /etc/mongodb.conf
+LimitNOFILE=65536
+
+
+[Install]
+WantedBy=multi-user.target

diff --git a/dev-db/mongodb/mongodb-4.2.15-r2.ebuild b/dev-db/mongodb/mongodb-4.2.15-r2.ebuild
new file mode 100644
index 000000000000..3edd0a731a40
--- /dev/null
+++ b/dev-db/mongodb/mongodb-4.2.15-r2.ebuild
@@ -0,0 +1,176 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..9} )
+
+SCONS_MIN_VERSION="2.5.0"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="debug kerberos lto ssl test +tools"
+RESTRICT="!test? ( test )"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.3:=
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	>=dev-libs/boost-1.70:=[threads(+)]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd:=
+	dev-libs/snowball-stemmer:=
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	ssl? (
+		>=dev-libs/openssl-1.0.1g:0=
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
+		>=dev-util/scons-2.5.0[${PYTHON_USEDEP}]
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/psutil[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+	')
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-util/valgrind )"
+PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.2.0-fix-scons.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+	"${FILESDIR}/${PN}-4.2.15-no-compass.patch"
+	"${FILESDIR}/${PN}-5.0.2-glibc-2.34.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+python_check_deps() {
+	if use test; then
+		has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
+		has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
+	fi
+
+	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.0; then
+			ewarn "To upgrade from a version earlier than the 4.0-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.0-series. Then upgrade to 4.2 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.0 before upgrading."
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*,zstandard-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	scons_opts=(
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use lto && scons_opts+=( --lto=on )
+	use ssl && scons_opts+=( --ssl )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	escons "${scons_opts[@]}" core tools
+}
+
+# FEATURES="test -usersandbox" emerge dev-db/mongodb
+src_test() {
+	ewarn "Tests may hang with FEATURES=usersandbox"
+	"${EPYTHON}" ./buildscripts/resmoke.py run --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed with ${EPYTHON}"
+}
+
+src_install() {
+	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_newunit "${FILESDIR}/${PN}.service-r1" "${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		diropts -m0750 -o mongodb -g mongodb
+		keepdir "${x}"
+	done
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}

diff --git a/dev-db/mongodb/mongodb-4.2.17-r1.ebuild b/dev-db/mongodb/mongodb-4.2.17-r1.ebuild
new file mode 100644
index 000000000000..874b0f131583
--- /dev/null
+++ b/dev-db/mongodb/mongodb-4.2.17-r1.ebuild
@@ -0,0 +1,177 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..10} )
+
+SCONS_MIN_VERSION="2.5.0"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="debug kerberos lto ssl test +tools"
+RESTRICT="!test? ( test )"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.3:=
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	>=dev-libs/boost-1.70:=[threads(+)]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd:=
+	dev-libs/snowball-stemmer:=
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	ssl? (
+		>=dev-libs/openssl-1.0.1g:0=
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
+		>=dev-util/scons-2.5.0[${PYTHON_USEDEP}]
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/psutil[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+	')
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-util/valgrind )"
+PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.2.0-fix-scons.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+	"${FILESDIR}/${PN}-4.2.15-no-compass.patch"
+	"${FILESDIR}/${PN}-5.0.2-glibc-2.34.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+python_check_deps() {
+	if use test; then
+		has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
+		has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
+	fi
+
+	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.0; then
+			ewarn "To upgrade from a version earlier than the 4.0-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.0-series. Then upgrade to 4.2 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.0 before upgrading."
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*,zstandard-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	scons_opts=(
+		AR="$(tc-getAR)"
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use lto && scons_opts+=( --lto=on )
+	use ssl && scons_opts+=( --ssl )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	escons "${scons_opts[@]}" core tools
+}
+
+# FEATURES="test -usersandbox" emerge dev-db/mongodb
+src_test() {
+	ewarn "Tests may hang with FEATURES=usersandbox"
+	"${EPYTHON}" ./buildscripts/resmoke.py run --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed with ${EPYTHON}"
+}
+
+src_install() {
+	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_newunit "${FILESDIR}/${PN}.service-r1" "${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		diropts -m0750 -o mongodb -g mongodb
+		keepdir "${x}"
+	done
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}

diff --git a/dev-db/mongodb/mongodb-4.4.10-r1.ebuild b/dev-db/mongodb/mongodb-4.4.10-r1.ebuild
new file mode 100644
index 000000000000..a110d8e1be17
--- /dev/null
+++ b/dev-db/mongodb/mongodb-4.4.10-r1.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..10} )
+
+SCONS_MIN_VERSION="3.3.1"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 -riscv"
+IUSE="debug kerberos lto ssl test +tools"
+RESTRICT="!test? ( test )"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.3:=
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	>=dev-libs/boost-1.70:=[threads(+),nls]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd:=
+	dev-libs/snowball-stemmer:=
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	ssl? (
+		>=dev-libs/openssl-1.0.1g:0=
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
+		>=dev-util/scons-3.1.1[${PYTHON_USEDEP}]
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/psutil[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+	')
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-util/valgrind )"
+PDEPEND="tools? ( >=app-admin/mongo-tools-100 )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.4.1-fix-scons.patch"
+	"${FILESDIR}/${PN}-4.4.8-no-compass.patch"
+	"${FILESDIR}/${PN}-4.4.1-boost.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+	"${FILESDIR}/${PN}-5.0.2-glibc-2.34.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+python_check_deps() {
+	if use test; then
+		has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
+		has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
+	fi
+
+	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.2; then
+			ewarn "To upgrade from a version earlier than the 4.2-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.2-series. Then upgrade to 4.4 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.2 before upgrading."
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	scons_opts=(
+		AR="$(tc-getAR)"
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use lto && scons_opts+=( --lto=on )
+	use ssl && scons_opts+=( --ssl )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	PREFIX="${EPREFIX}/usr" escons "${scons_opts[@]}" --nostrip install-core
+}
+
+# FEATURES="test -usersandbox" emerge dev-db/mongodb
+src_test() {
+	ewarn "Tests may hang with FEATURES=usersandbox"
+	"${EPYTHON}" ./buildscripts/resmoke.py run --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed with ${EPYTHON}"
+}
+
+src_install() {
+	dobin build/install/bin/{mongo,mongod,mongos}
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_newunit "${FILESDIR}/${PN}.service-r1" "${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		diropts -m0750 -o mongodb -g mongodb
+		keepdir "${x}"
+	done
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}

diff --git a/dev-db/mongodb/mongodb-4.4.8-r2.ebuild b/dev-db/mongodb/mongodb-4.4.8-r2.ebuild
new file mode 100644
index 000000000000..1e73ef98da40
--- /dev/null
+++ b/dev-db/mongodb/mongodb-4.4.8-r2.ebuild
@@ -0,0 +1,177 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..9} )
+
+SCONS_MIN_VERSION="3.3.1"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 -riscv"
+IUSE="debug kerberos lto ssl test +tools"
+RESTRICT="!test? ( test )"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.3:=
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	>=dev-libs/boost-1.70:=[threads(+),nls]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd:=
+	dev-libs/snowball-stemmer:=
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	ssl? (
+		>=dev-libs/openssl-1.0.1g:0=
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
+		>=dev-util/scons-3.1.1[${PYTHON_USEDEP}]
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/psutil[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+	')
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-util/valgrind )"
+PDEPEND="tools? ( >=app-admin/mongo-tools-100 )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.4.1-fix-scons.patch"
+	"${FILESDIR}/${PN}-4.4.8-no-compass.patch"
+	"${FILESDIR}/${PN}-4.4.1-boost.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+	"${FILESDIR}/${PN}-5.0.2-glibc-2.34.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+python_check_deps() {
+	if use test; then
+		has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
+		has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
+	fi
+
+	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.2; then
+			ewarn "To upgrade from a version earlier than the 4.2-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.2-series. Then upgrade to 4.4 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.2 before upgrading."
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	scons_opts=(
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use lto && scons_opts+=( --lto=on )
+	use ssl && scons_opts+=( --ssl )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	PREFIX="${EPREFIX}/usr" escons "${scons_opts[@]}" --nostrip install-core
+}
+
+# FEATURES="test -usersandbox" emerge dev-db/mongodb
+src_test() {
+	ewarn "Tests may hang with FEATURES=usersandbox"
+	"${EPYTHON}" ./buildscripts/resmoke.py run --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed with ${EPYTHON}"
+}
+
+src_install() {
+	dobin build/install/bin/{mongo,mongod,mongos}
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_newunit "${FILESDIR}/${PN}.service-r1" "${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		diropts -m0750 -o mongodb -g mongodb
+		keepdir "${x}"
+	done
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}

diff --git a/dev-db/mongodb/mongodb-5.0.2-r2.ebuild b/dev-db/mongodb/mongodb-5.0.2-r2.ebuild
new file mode 100644
index 000000000000..f80a7d9aa426
--- /dev/null
+++ b/dev-db/mongodb/mongodb-5.0.2-r2.ebuild
@@ -0,0 +1,182 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..9} )
+
+SCONS_MIN_VERSION="3.3.1"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 -riscv"
+CPU_FLAGS="cpu_flags_x86_avx"
+IUSE="debug kerberos lto mongosh ssl +tools ${CPU_FLAGS}"
+
+# https://github.com/mongodb/mongo/wiki/Test-The-Mongodb-Server
+# resmoke needs python packages not yet present in Gentoo
+RESTRICT="test"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.3:=
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	>=dev-libs/boost-1.70:=[threads(+),nls]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd:=
+	dev-libs/snowball-stemmer:=
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	ssl? (
+		>=dev-libs/openssl-1.0.1g:0=
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		>=dev-util/scons-3.1.1[${PYTHON_USEDEP}]
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/psutil[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+	')
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-util/valgrind )"
+PDEPEND="
+	mongosh? ( app-admin/mongosh-bin )
+	tools? ( >=app-admin/mongo-tools-100 )
+"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.4.1-boost.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+	"${FILESDIR}/${PN}-5.0.2-fix-scons.patch"
+	"${FILESDIR}/${PN}-5.0.2-no-compass.patch"
+	"${FILESDIR}/${PN}-5.0.2-skip-no-exceptions.patch"
+	"${FILESDIR}/${PN}-5.0.2-skip-reqs-check.patch"
+	"${FILESDIR}/${PN}-5.0.2-glibc-2.34.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+python_check_deps() {
+	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+	# Bug 809692
+	if use amd64 && ! use cpu_flags_x86_avx; then
+		eerror "MongoDB 5.0 requires use of the AVX instruction set"
+		eerror "https://docs.mongodb.com/v5.0/administration/production-notes/"
+		die "MongoDB requires AVX"
+	fi
+
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.4; then
+			ewarn "To upgrade from a version earlier than the 4.4-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.4-series. Then upgrade to 5.0 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.4 before upgrading."
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost,pcre-*,snappy-*,yaml-cpp,zlib-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	scons_opts=(
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--jobs="$(makeopts_jobs)"
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use lto && scons_opts+=( --lto=on )
+	use ssl && scons_opts+=( --ssl )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	PREFIX="${EPREFIX}/usr" ./buildscripts/scons.py "${scons_opts[@]}" install-core || die
+}
+
+src_install() {
+	dobin build/install/bin/{mongo,mongod,mongos}
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_newunit "${FILESDIR}/${PN}.service-r1" "${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		diropts -m0750 -o mongodb -g mongodb
+		keepdir "${x}"
+	done
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}

diff --git a/dev-db/mongodb/mongodb-5.0.5-r1.ebuild b/dev-db/mongodb/mongodb-5.0.5-r1.ebuild
new file mode 100644
index 000000000000..7cdc397e6121
--- /dev/null
+++ b/dev-db/mongodb/mongodb-5.0.5-r1.ebuild
@@ -0,0 +1,182 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..10} )
+
+SCONS_MIN_VERSION="3.3.1"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 -riscv"
+CPU_FLAGS="cpu_flags_x86_avx"
+IUSE="debug kerberos lto mongosh ssl +tools ${CPU_FLAGS}"
+
+# https://github.com/mongodb/mongo/wiki/Test-The-Mongodb-Server
+# resmoke needs python packages not yet present in Gentoo
+RESTRICT="test"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.3:=
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	>=dev-libs/boost-1.70:=[threads(+),nls]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd:=
+	dev-libs/snowball-stemmer:=
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	ssl? (
+		>=dev-libs/openssl-1.0.1g:0=
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		>=dev-util/scons-3.1.1[${PYTHON_USEDEP}]
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/psutil[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+	')
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-util/valgrind )"
+PDEPEND="
+	mongosh? ( app-admin/mongosh-bin )
+	tools? ( >=app-admin/mongo-tools-100 )
+"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.4.1-boost.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+	"${FILESDIR}/${PN}-5.0.2-fix-scons.patch"
+	"${FILESDIR}/${PN}-5.0.2-no-compass.patch"
+	"${FILESDIR}/${PN}-5.0.2-skip-no-exceptions.patch"
+	"${FILESDIR}/${PN}-5.0.2-skip-reqs-check.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+python_check_deps() {
+	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+	# Bug 809692
+	if use amd64 && ! use cpu_flags_x86_avx; then
+		eerror "MongoDB 5.0 requires use of the AVX instruction set"
+		eerror "https://docs.mongodb.com/v5.0/administration/production-notes/"
+		die "MongoDB requires AVX"
+	fi
+
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.4; then
+			ewarn "To upgrade from a version earlier than the 4.4-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.4-series. Then upgrade to 5.0 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.4 before upgrading."
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost,pcre-*,snappy-*,yaml-cpp,zlib-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	scons_opts=(
+		AR="$(tc-getAR)"
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--jobs="$(makeopts_jobs)"
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use lto && scons_opts+=( --lto=on )
+	use ssl && scons_opts+=( --ssl )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	PREFIX="${EPREFIX}/usr" ./buildscripts/scons.py "${scons_opts[@]}" install-core || die
+}
+
+src_install() {
+	dobin build/install/bin/{mongo,mongod,mongos}
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_newunit "${FILESDIR}/${PN}.service-r1" "${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		diropts -m0750 -o mongodb -g mongodb
+		keepdir "${x}"
+	done
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2022-06-17 17:55 Sam James
  0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2022-06-17 17:55 UTC (permalink / raw
  To: gentoo-commits

commit:     5fec07c1189e779dfb1c9ec2bfd148871c49297b
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 17 17:55:06 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jun 17 17:55:14 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5fec07c1

dev-db/mongodb: fix build with Boost 1.79 for 4.2.17

Closes: https://bugs.gentoo.org/843290
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../mongodb/files/mongodb-4.2.17-boost-1.79.patch  |  41 +++++
 dev-db/mongodb/files/mongodb-4.4.1-boost.patch     |   2 -
 .../mongodb/files/mongodb-4.4.10-boost-1.79.patch  |  15 +-
 dev-db/mongodb/mongodb-4.2.17-r2.ebuild            | 182 +++++++++++++++++++++
 4 files changed, 224 insertions(+), 16 deletions(-)

diff --git a/dev-db/mongodb/files/mongodb-4.2.17-boost-1.79.patch b/dev-db/mongodb/files/mongodb-4.2.17-boost-1.79.patch
new file mode 100644
index 000000000000..b86efa142f5c
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.2.17-boost-1.79.patch
@@ -0,0 +1,41 @@
+https://bugs.gentoo.org/844235
+--- a/src/mongo/util/processinfo_linux.cpp
++++ b/src/mongo/util/processinfo_linux.cpp
+@@ -51,6 +51,7 @@
+ #endif
+ 
+ #include <boost/filesystem.hpp>
++#include <boost/filesystem/fstream.hpp>
+ #include <boost/none.hpp>
+ #include <boost/optional.hpp>
+ #include <fmt/format.h>
+--- a/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp
++++ b/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp
+@@ -36,6 +36,7 @@
+ #include <limits>
+ 
+ #include <boost/filesystem.hpp>
++#include <boost/filesystem/fstream.hpp>
+ #include <boost/filesystem/path.hpp>
+ 
+ #include "mongo/base/simple_string_data_comparator.h"
+--- a/src/mongo/shell/shell_utils_extended.cpp
++++ b/src/mongo/shell/shell_utils_extended.cpp
+@@ -37,6 +37,7 @@
+ #endif
+ 
+ #include <boost/filesystem.hpp>
++#include <boost/filesystem/fstream.hpp>
+ #include <fstream>
+ 
+ #include "mongo/scripting/engine.h"
+--- a/src/mongo/db/storage/storage_repair_observer.cpp
++++ b/src/mongo/db/storage/storage_repair_observer.cpp
+@@ -41,6 +41,7 @@
+ #include <sys/types.h>
+ #endif
+ 
++#include <boost/filesystem/fstream.hpp>
+ #include <boost/filesystem/path.hpp>
+ 
+ #include "mongo/db/dbhelpers.h"

diff --git a/dev-db/mongodb/files/mongodb-4.4.1-boost.patch b/dev-db/mongodb/files/mongodb-4.4.1-boost.patch
index 009ca6826a4f..d14f6fe3052f 100644
--- a/dev-db/mongodb/files/mongodb-4.4.1-boost.patch
+++ b/dev-db/mongodb/files/mongodb-4.4.1-boost.patch
@@ -1,5 +1,3 @@
-diff --git a/SConstruct b/SConstruct
-index 89c044ab..0484e475 100644
 --- a/SConstruct
 +++ b/SConstruct
 @@ -3511,17 +3511,11 @@ def doConfigure(myenv):

diff --git a/dev-db/mongodb/files/mongodb-4.4.10-boost-1.79.patch b/dev-db/mongodb/files/mongodb-4.4.10-boost-1.79.patch
index df7dbc001b05..601141e8d416 100644
--- a/dev-db/mongodb/files/mongodb-4.4.10-boost-1.79.patch
+++ b/dev-db/mongodb/files/mongodb-4.4.10-boost-1.79.patch
@@ -1,5 +1,4 @@
-diff --git a/src/mongo/db/auth/security_key_test.cpp b/src/mongo/db/auth/security_key_test.cpp
-index fc1787b5..70b977c1 100644
+https://bugs.gentoo.org/844235
 --- a/src/mongo/db/auth/security_key_test.cpp
 +++ b/src/mongo/db/auth/security_key_test.cpp
 @@ -30,6 +30,7 @@
@@ -10,8 +9,6 @@ index fc1787b5..70b977c1 100644
  
  #include "mongo/base/string_data.h"
  #include "mongo/db/auth/authorization_manager.h"
-diff --git a/src/mongo/db/storage/storage_repair_observer.cpp b/src/mongo/db/storage/storage_repair_observer.cpp
-index 22b76a6a..ec5bcece 100644
 --- a/src/mongo/db/storage/storage_repair_observer.cpp
 +++ b/src/mongo/db/storage/storage_repair_observer.cpp
 @@ -41,6 +41,7 @@
@@ -22,8 +19,6 @@ index 22b76a6a..ec5bcece 100644
  #include <boost/filesystem/path.hpp>
  
  #include "mongo/db/dbhelpers.h"
-diff --git a/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine_test.cpp b/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine_test.cpp
-index 01bb7806..78c15609 100644
 --- a/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine_test.cpp
 +++ b/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine_test.cpp
 @@ -34,6 +34,7 @@
@@ -34,8 +29,6 @@ index 01bb7806..78c15609 100644
  #include <boost/filesystem/path.hpp>
  #include <memory>
  
-diff --git a/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp b/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp
-index 58e85385..0f8a5148 100644
 --- a/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp
 +++ b/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp
 @@ -36,6 +36,7 @@
@@ -46,8 +39,6 @@ index 58e85385..0f8a5148 100644
  #include <boost/filesystem/path.hpp>
  
  #include "mongo/base/simple_string_data_comparator.h"
-diff --git a/src/mongo/shell/shell_utils_extended.cpp b/src/mongo/shell/shell_utils_extended.cpp
-index 8cd7f035..cd672eb5 100644
 --- a/src/mongo/shell/shell_utils_extended.cpp
 +++ b/src/mongo/shell/shell_utils_extended.cpp
 @@ -37,6 +37,7 @@
@@ -58,8 +49,6 @@ index 8cd7f035..cd672eb5 100644
  #include <fstream>
  
  #include "mongo/bson/bson_validate.h"
-diff --git a/src/mongo/util/processinfo_linux.cpp b/src/mongo/util/processinfo_linux.cpp
-index de4b84bc..b01fa7a2 100644
 --- a/src/mongo/util/processinfo_linux.cpp
 +++ b/src/mongo/util/processinfo_linux.cpp
 @@ -36,6 +36,7 @@
@@ -70,8 +59,6 @@ index de4b84bc..b01fa7a2 100644
  #include <sched.h>
  #include <stdio.h>
  #include <sys/mman.h>
-diff --git a/src/mongo/util/stacktrace_threads.cpp b/src/mongo/util/stacktrace_threads.cpp
-index 4667a261..73a36015 100644
 --- a/src/mongo/util/stacktrace_threads.cpp
 +++ b/src/mongo/util/stacktrace_threads.cpp
 @@ -36,6 +36,7 @@

diff --git a/dev-db/mongodb/mongodb-4.2.17-r2.ebuild b/dev-db/mongodb/mongodb-4.2.17-r2.ebuild
new file mode 100644
index 000000000000..7d281ed16289
--- /dev/null
+++ b/dev-db/mongodb/mongodb-4.2.17-r2.ebuild
@@ -0,0 +1,182 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..10} )
+
+SCONS_MIN_VERSION="2.5.0"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_P=${PN}-src-r${PV/_rc/-rc}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="debug kerberos lto ssl test +tools"
+RESTRICT="!test? ( test )"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.3:=
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	>=dev-libs/boost-1.70:=[threads(+)]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd:=
+	dev-libs/snowball-stemmer:=
+	net-libs/libpcap
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	ssl? (
+		>=dev-libs/openssl-1.0.1g:0=
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	$(python_gen_any_dep '
+		test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
+		>=dev-util/scons-2.5.0[${PYTHON_USEDEP}]
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/psutil[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+	')
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-util/valgrind )"
+PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.2.0-fix-scons.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+	"${FILESDIR}/${PN}-4.2.15-no-compass.patch"
+	"${FILESDIR}/${PN}-5.0.2-glibc-2.34.patch"
+	"${FILESDIR}/${PN}-4.2.17-boost-1.79.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+python_check_deps() {
+	if use test; then
+		has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
+		has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
+	fi
+
+	has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
+	has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.0; then
+			ewarn "To upgrade from a version earlier than the 4.0-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.0-series. Then upgrade to 4.2 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.0 before upgrading."
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*,zstandard-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	scons_opts=(
+		AR="$(tc-getAR)"
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+
+		--disable-warnings-as-errors
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use lto && scons_opts+=( --lto=on )
+	use ssl && scons_opts+=( --ssl )
+
+	# Needed to avoid forcing FORTIFY_SOURCE
+	# Gentoo's toolchain applies these anyway
+	scons_opts+=( --runtime-hardening=off )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	escons "${scons_opts[@]}" core tools
+}
+
+# FEATURES="test -usersandbox" emerge dev-db/mongodb
+src_test() {
+	ewarn "Tests may hang with FEATURES=usersandbox"
+	"${EPYTHON}" ./buildscripts/resmoke.py run --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed with ${EPYTHON}"
+}
+
+src_install() {
+	escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_newunit "${FILESDIR}/${PN}.service-r1" "${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	local x
+	for x in /var/{lib,log}/${PN}; do
+		diropts -m0750 -o mongodb -g mongodb
+		keepdir "${x}"
+	done
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2022-12-30 20:22 Sam James
  0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2022-12-30 20:22 UTC (permalink / raw
  To: gentoo-commits

commit:     ab2870232ca91c7537058c64caf2012d0a2945d8
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 30 20:19:15 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Dec 30 20:21:12 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ab287023

dev-db/mongodb: fix build w/ boost 1.81

Closes: https://bugs.gentoo.org/887037
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../mongodb/files/mongodb-4.4.10-boost-1.81.patch  | 317 +++++++++++++++++++++
 dev-db/mongodb/mongodb-4.4.10-r1.ebuild            |   1 +
 dev-db/mongodb/mongodb-5.0.5-r2.ebuild             |   1 +
 3 files changed, 319 insertions(+)

diff --git a/dev-db/mongodb/files/mongodb-4.4.10-boost-1.81.patch b/dev-db/mongodb/files/mongodb-4.4.10-boost-1.81.patch
new file mode 100644
index 000000000000..331f0c5b922a
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.4.10-boost-1.81.patch
@@ -0,0 +1,317 @@
+https://bugs.gentoo.org/887037
+
+Workaround https://github.com/boostorg/container/commit/99091420ae553b27345e04279fd19fe24fb684c1
+in Boost 1.81.
+
+Upstream s2 (as in real upstream, not MongoDB) has deviated substantially
+from the version vendored.
+--- a/src/third_party/s2/base/stl_decl_msvc.h
++++ b/src/third_party/s2/base/stl_decl_msvc.h
+@@ -118,8 +118,8 @@ namespace msvchash {
+   class hash_multimap;
+ }  // end namespace  msvchash
+ 
+-using msvchash::hash_set;
+-using msvchash::hash_map;
++using msvchash::hash_set = my_hash_set;
++using msvchash::hash_map = my_hash_map;
+ using msvchash::hash;
+ using msvchash::hash_multimap;
+ using msvchash::hash_multiset;
+--- a/src/third_party/s2/base/stl_decl_osx.h
++++ b/src/third_party/s2/base/stl_decl_osx.h
+@@ -68,8 +68,8 @@ using std::string;
+ 
+ using namespace std;
+ using __gnu_cxx::hash;
+-using __gnu_cxx::hash_set;
+-using __gnu_cxx::hash_map;
++using __gnu_cxx::hash_set = my_hash_set;
++using __gnu_cxx::hash_map = my_hash_map;
+ using __gnu_cxx::select1st;
+ 
+ /* On Linux (and gdrive on OSX), this comes from places like
+--- a/src/third_party/s2/hash.h
++++ b/src/third_party/s2/hash.h
+@@ -2,10 +2,10 @@
+ #define THIRD_PARTY_S2_HASH_H_
+ 
+ #include <unordered_map>
+-#define hash_map std::unordered_map
++#define my_hash_map std::unordered_map
+ 
+ #include <unordered_set>
+-#define hash_set std::unordered_set
++#define my_hash_set std::unordered_set
+ 
+ #define HASH_NAMESPACE_START namespace std {
+ #define HASH_NAMESPACE_END }
+--- a/src/third_party/s2/s2_test.cc
++++ b/src/third_party/s2/s2_test.cc
+@@ -10,7 +10,7 @@ using std::reverse;
+ 
+ #include <hash_set>
+ #include <hash_map>
+-using __gnu_cxx::hash_set;
++using __gnu_cxx::hash_set = my_hash_map;
+ 
+ #include "s2.h"
+ #include "base/logging.h"
+@@ -709,8 +709,8 @@ TEST(S2, Frames) {
+ #if 0
+ TEST(S2, S2PointHashSpreads) {
+   int kTestPoints = 1 << 16;
+-  hash_set<size_t> set;
+-  hash_set<S2Point> points;
++  my_hash_set<size_t> set;
++  my_hash_set<S2Point> points;
+   hash<S2Point> hasher;
+   S2Point base = S2Point(1, 1, 1);
+   for (int i = 0; i < kTestPoints; ++i) {
+@@ -733,7 +733,7 @@ TEST(S2, S2PointHashCollapsesZero) {
+   double minus_zero = -zero;
+   EXPECT_NE(*reinterpret_cast<uint64 const*>(&zero),
+             *reinterpret_cast<uint64 const*>(&minus_zero));
+-  hash_map<S2Point, int> map;
++  my_hash_map<S2Point, int> map;
+   S2Point zero_pt(zero, zero, zero);
+   S2Point minus_zero_pt(minus_zero, minus_zero, minus_zero);
+ 
+--- a/src/third_party/s2/s2cellid_test.cc
++++ b/src/third_party/s2/s2cellid_test.cc
+@@ -10,7 +10,7 @@ using std::reverse;
+ 
+ #include <cstdio>
+ #include <hash_map>
+-using __gnu_cxx::hash_map;
++using __gnu_cxx::hash_map = my_hash_map;
+ 
+ #include <sstream>
+ #include <vector>
+@@ -170,7 +170,7 @@ TEST(S2CellId, Tokens) {
+ static const int kMaxExpandLevel = 3;
+ 
+ static void ExpandCell(S2CellId const& parent, vector<S2CellId>* cells,
+-                       hash_map<S2CellId, S2CellId>* parent_map) {
++                       my_hash_map<S2CellId, S2CellId>* parent_map) {
+   cells->push_back(parent);
+   if (parent.level() == kMaxExpandLevel) return;
+   int i, j, orientation;
+@@ -194,7 +194,7 @@ static void ExpandCell(S2CellId const& parent, vector<S2CellId>* cells,
+ 
+ TEST(S2CellId, Containment) {
+   // Test contains() and intersects().
+-  hash_map<S2CellId, S2CellId> parent_map;
++  my_hash_map<S2CellId, S2CellId> parent_map;
+   vector<S2CellId> cells;
+   for (int face = 0; face < 6; ++face) {
+     ExpandCell(S2CellId::FromFacePosLevel(face, 0, 0), &cells, &parent_map);
+--- a/src/third_party/s2/s2loop.cc
++++ b/src/third_party/s2/s2loop.cc
+@@ -120,7 +120,7 @@ bool S2Loop::IsValid(string* err) const {
+     }
+   }
+   // Loops are not allowed to have any duplicate vertices.
+-  hash_map<S2Point, int> vmap;
++  my_hash_map<S2Point, int> vmap;
+   for (int i = 0; i < num_vertices(); ++i) {
+     if (!vmap.insert(make_pair(vertex(i), i)).second) {
+       VLOG(2) << "Duplicate vertices: " << vmap[vertex(i)] << " and " << i;
+--- a/src/third_party/s2/s2polygon.cc
++++ b/src/third_party/s2/s2polygon.cc
+@@ -117,7 +117,7 @@ HASH_NAMESPACE_END
+ bool S2Polygon::IsValid(const vector<S2Loop*>& loops, string* err) {
+   // If a loop contains an edge AB, then no other loop may contain AB or BA.
+   if (loops.size() > 1) {
+-    hash_map<S2PointPair, pair<int, int> > edges;
++    my_hash_map<S2PointPair, pair<int, int> > edges;
+     for (size_t i = 0; i < loops.size(); ++i) {
+       S2Loop* lp = loops[i];
+       for (int j = 0; j < lp->num_vertices(); ++j) {
+--- a/src/third_party/s2/s2polygonbuilder.cc
++++ b/src/third_party/s2/s2polygonbuilder.cc
+@@ -175,7 +175,7 @@ S2Loop* S2PolygonBuilder::AssembleLoop(S2Point const& v0, S2Point const& v1,
+   // This ensures that only CCW loops are constructed when possible.
+ 
+   vector<S2Point> path;          // The path so far.
+-  hash_map<S2Point, int> index;  // Maps a vertex to its index in "path".
++  my_hash_map<S2Point, int> index;  // Maps a vertex to its index in "path".
+   path.push_back(v0);
+   path.push_back(v1);
+   index[v1] = 1;
+@@ -361,7 +361,7 @@ void S2PolygonBuilder::BuildMergeMap(PointIndex* index, MergeMap* merge_map) {
+ 
+   // First, we build the set of all the distinct vertices in the input.
+   // We need to include the source and destination of every edge.
+-  hash_set<S2Point> vertices;
++  my_hash_set<S2Point> vertices;
+   for (EdgeSet::const_iterator i = edges_->begin(); i != edges_->end(); ++i) {
+     vertices.insert(i->first);
+     VertexSet const& vset = i->second;
+@@ -370,7 +370,7 @@ void S2PolygonBuilder::BuildMergeMap(PointIndex* index, MergeMap* merge_map) {
+   }
+ 
+   // Build a spatial index containing all the distinct vertices.
+-  for (hash_set<S2Point>::const_iterator i = vertices.begin();
++  for (my_hash_set<S2Point>::const_iterator i = vertices.begin();
+        i != vertices.end(); ++i) {
+     index->Insert(*i);
+   }
+@@ -378,7 +378,7 @@ void S2PolygonBuilder::BuildMergeMap(PointIndex* index, MergeMap* merge_map) {
+   // Next, we loop through all the vertices and attempt to grow a maximial
+   // mergeable group starting from each vertex.
+   vector<S2Point> frontier, mergeable;
+-  for (hash_set<S2Point>::const_iterator vstart = vertices.begin();
++  for (my_hash_set<S2Point>::const_iterator vstart = vertices.begin();
+        vstart != vertices.end(); ++vstart) {
+     // Skip any vertices that have already been merged with another vertex.
+     if (merge_map->find(*vstart) != merge_map->end()) continue;
+--- a/src/third_party/s2/s2polygonbuilder.h
++++ b/src/third_party/s2/s2polygonbuilder.h
+@@ -262,7 +262,7 @@ class S2PolygonBuilder {
+   // current position to a new position, and also returns a spatial index
+   // containing all of the vertices that do not need to be moved.
+   class PointIndex;
+-  typedef hash_map<S2Point, S2Point> MergeMap;
++  typedef my_hash_map<S2Point, S2Point> MergeMap;
+   void BuildMergeMap(PointIndex* index, MergeMap* merge_map);
+ 
+   // Moves a set of vertices from old to new positions.
+@@ -282,7 +282,7 @@ class S2PolygonBuilder {
+   // once.  We could have also used a multiset<pair<S2Point, S2Point> >,
+   // but this representation is a bit more convenient.
+   typedef multiset<S2Point> VertexSet;
+-  typedef hash_map<S2Point, VertexSet> EdgeSet;
++  typedef my_hash_map<S2Point, VertexSet> EdgeSet;
+   scoped_ptr<EdgeSet> edges_;
+ 
+   // Unique collection of the starting (first) vertex of all edges,
+--- a/src/third_party/s2/s2regioncoverer.cc
++++ b/src/third_party/s2/s2regioncoverer.cc
+@@ -321,7 +321,7 @@ void S2RegionCoverer::GetInteriorCellUnion(S2Region const& region,
+ 
+ void S2RegionCoverer::FloodFill(
+     S2Region const& region, S2CellId const& start, vector<S2CellId>* output) {
+-  hash_set<S2CellId> all;
++  my_hash_set<S2CellId> all;
+   vector<S2CellId> frontier;
+   output->clear();
+   all.insert(start);
+--- a/src/third_party/s2/s2regioncoverer_test.cc
++++ b/src/third_party/s2/s2regioncoverer_test.cc
+@@ -11,7 +11,7 @@ using std::swap;
+ using std::reverse;
+ 
+ #include <hash_map>
+-using __gnu_cxx::hash_map;
++using __gnu_cxx::hash_map = my_hash_map;
+ 
+ #include <queue>
+ using std::priority_queue;
+@@ -65,7 +65,7 @@ static void CheckCovering(S2RegionCoverer const& coverer,
+                           vector<S2CellId> const& covering,
+                           bool interior) {
+   // Keep track of how many cells have the same coverer.min_level() ancestor.
+-  hash_map<S2CellId, int> min_level_cells;
++  my_hash_map<S2CellId, int> min_level_cells;
+   for (int i = 0; i < covering.size(); ++i) {
+     int level = covering[i].level();
+     EXPECT_GE(level, coverer.min_level());
+@@ -76,7 +76,7 @@ static void CheckCovering(S2RegionCoverer const& coverer,
+   if (covering.size() > coverer.max_cells()) {
+     // If the covering has more than the requested number of cells, then check
+     // that the cell count cannot be reduced by using the parent of some cell.
+-    for (hash_map<S2CellId, int>::const_iterator i = min_level_cells.begin();
++    for (my_hash_map<S2CellId, int>::const_iterator i = min_level_cells.begin();
+          i != min_level_cells.end(); ++i) {
+       EXPECT_EQ(i->second, 1);
+     }
+--- a/src/third_party/s2/strings/split.cc
++++ b/src/third_party/s2/strings/split.cc
+@@ -156,7 +156,7 @@ struct simple_insert_iterator {
+ // SplitStringToIterator{Using|AllowEmpty}().
+ template <typename T>
+ struct simple_hash_map_iterator {
+-  typedef hash_map<T, T> hashmap;
++  typedef my_hash_map<T, T> hashmap;
+   hashmap* t;
+   bool even;
+   typename hashmap::iterator curr;
+@@ -246,8 +246,8 @@ void SplitStringAllowEmpty(const string& full, const char* delim,
+ }
+ 
+ void SplitStringToHashsetAllowEmpty(const string& full, const char* delim,
+-                                    hash_set<string>* result) {
+-  simple_insert_iterator<hash_set<string> > it(result);
++                                    my_hash_set<string>* result) {
++  simple_insert_iterator<my_hash_set<string> > it(result);
+   SplitStringToIteratorAllowEmpty(full, delim, 0, it);
+ }
+ 
+@@ -258,7 +258,7 @@ void SplitStringToSetAllowEmpty(const string& full, const char* delim,
+ }
+ 
+ void SplitStringToHashmapAllowEmpty(const string& full, const char* delim,
+-                                    hash_map<string, string>* result) {
++                                    my_hash_map<string, string>* result) {
+   simple_hash_map_iterator<string> it(result);
+   SplitStringToIteratorAllowEmpty(full, delim, 0, it);
+ }
+@@ -352,8 +352,8 @@ void SplitStringUsing(const string& full,
+ }
+ 
+ void SplitStringToHashsetUsing(const string& full, const char* delim,
+-                               hash_set<string>* result) {
+-  simple_insert_iterator<hash_set<string> > it(result);
++                               my_hash_set<string>* result) {
++  simple_insert_iterator<my_hash_set<string> > it(result);
+   SplitStringToIteratorUsing(full, delim, it);
+ }
+ 
+@@ -364,7 +364,7 @@ void SplitStringToSetUsing(const string& full, const char* delim,
+ }
+ 
+ void SplitStringToHashmapUsing(const string& full, const char* delim,
+-                               hash_map<string, string>* result) {
++                               my_hash_map<string, string>* result) {
+   simple_hash_map_iterator<string> it(result);
+   SplitStringToIteratorUsing(full, delim, it);
+ }
+--- a/src/third_party/s2/strings/split.h
++++ b/src/third_party/s2/strings/split.h
+@@ -41,7 +41,7 @@ using namespace std;
+ void SplitStringAllowEmpty(const string& full, const char* delim,
+                            vector<string>* res);
+ void SplitStringToHashsetAllowEmpty(const string& full, const char* delim,
+-                                    hash_set<string>* res);
++                                    my_hash_set<string>* res);
+ void SplitStringToSetAllowEmpty(const string& full, const char* delim,
+                                 set<string>* res);
+ // The even-positioned (0-based) components become the keys for the
+@@ -50,7 +50,7 @@ void SplitStringToSetAllowEmpty(const string& full, const char* delim,
+ // if the key was already present in the hash table, or will be the
+ // empty string if the key is a newly inserted key.
+ void SplitStringToHashmapAllowEmpty(const string& full, const char* delim,
+-                                    hash_map<string, string>* result);
++                                    my_hash_map<string, string>* result);
+ 
+ // ----------------------------------------------------------------------
+ // SplitStringUsing()
+@@ -66,7 +66,7 @@ void SplitStringToHashmapAllowEmpty(const string& full, const char* delim,
+ void SplitStringUsing(const string& full, const char* delim,
+                       vector<string>* res);
+ void SplitStringToHashsetUsing(const string& full, const char* delim,
+-                               hash_set<string>* res);
++                               my_hash_set<string>* res);
+ void SplitStringToSetUsing(const string& full, const char* delim,
+                            set<string>* res);
+ // The even-positioned (0-based) components become the keys for the
+@@ -75,7 +75,7 @@ void SplitStringToSetUsing(const string& full, const char* delim,
+ // if the key was already present in the hash table, or will be the
+ // empty string if the key is a newly inserted key.
+ void SplitStringToHashmapUsing(const string& full, const char* delim,
+-                               hash_map<string, string>* result);
++                               my_hash_map<string, string>* result);
+ 
+ // ----------------------------------------------------------------------
+ // SplitOneIntToken()

diff --git a/dev-db/mongodb/mongodb-4.4.10-r1.ebuild b/dev-db/mongodb/mongodb-4.4.10-r1.ebuild
index b7037132f4ff..1c0661aee4ae 100644
--- a/dev-db/mongodb/mongodb-4.4.10-r1.ebuild
+++ b/dev-db/mongodb/mongodb-4.4.10-r1.ebuild
@@ -62,6 +62,7 @@ PATCHES=(
 	"${FILESDIR}/${PN}-5.0.2-glibc-2.34.patch"
 	"${FILESDIR}/${PN}-4.4.10-boost-1.79.patch"
 	"${FILESDIR}/${PN}-4.4.10-no-force-lld.patch"
+	"${FILESDIR}/${PN}-4.4.10-boost-1.81.patch"
 )
 
 S="${WORKDIR}/${MY_P}"

diff --git a/dev-db/mongodb/mongodb-5.0.5-r2.ebuild b/dev-db/mongodb/mongodb-5.0.5-r2.ebuild
index d0b26e5aafbf..d49a2e02c20b 100644
--- a/dev-db/mongodb/mongodb-5.0.5-r2.ebuild
+++ b/dev-db/mongodb/mongodb-5.0.5-r2.ebuild
@@ -69,6 +69,7 @@ PATCHES=(
 	"${FILESDIR}/${PN}-5.0.2-skip-reqs-check.patch"
 	"${FILESDIR}/${PN}-5.0.2-boost-1.79.patch"
 	"${FILESDIR}/${PN}-5.0.5-no-force-lld.patch"
+	"${FILESDIR}/${PN}-4.4.10-boost-1.81.patch"
 )
 
 S="${WORKDIR}/${MY_P}"


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2022-12-31 15:36 Sam James
  0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2022-12-31 15:36 UTC (permalink / raw
  To: gentoo-commits

commit:     70d4aa4b03070603df55a6a5eace22b8a9551ad3
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 31 15:34:21 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Dec 31 15:36:06 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=70d4aa4b

dev-db/mongodb: further Boost 1.81 fixes

Closes: https://bugs.gentoo.org/889020
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-db/mongodb/files/mongodb-5.0.5-boost-1.81-extra.patch | 11 +++++++++++
 dev-db/mongodb/mongodb-5.0.5-r2.ebuild                    |  1 +
 2 files changed, 12 insertions(+)

diff --git a/dev-db/mongodb/files/mongodb-5.0.5-boost-1.81-extra.patch b/dev-db/mongodb/files/mongodb-5.0.5-boost-1.81-extra.patch
new file mode 100644
index 000000000000..af83692d16d2
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-5.0.5-boost-1.81-extra.patch
@@ -0,0 +1,11 @@
+https://bugs.gentoo.org/889020
+--- a/src/mongo/util/boost_assert_shim.cpp
++++ b/src/mongo/util/boost_assert_shim.cpp
+@@ -31,6 +31,7 @@
+ 
+ #if defined(BOOST_ENABLE_ASSERT_DEBUG_HANDLER) && !defined(NDEBUG)
+ 
++#include <exception>
+ #include <boost/assert.hpp>
+ 
+ namespace mongo {

diff --git a/dev-db/mongodb/mongodb-5.0.5-r2.ebuild b/dev-db/mongodb/mongodb-5.0.5-r2.ebuild
index d49a2e02c20b..fe18f3873d13 100644
--- a/dev-db/mongodb/mongodb-5.0.5-r2.ebuild
+++ b/dev-db/mongodb/mongodb-5.0.5-r2.ebuild
@@ -70,6 +70,7 @@ PATCHES=(
 	"${FILESDIR}/${PN}-5.0.2-boost-1.79.patch"
 	"${FILESDIR}/${PN}-5.0.5-no-force-lld.patch"
 	"${FILESDIR}/${PN}-4.4.10-boost-1.81.patch"
+	"${FILESDIR}/${PN}-5.0.5-boost-1.81-extra.patch"
 )
 
 S="${WORKDIR}/${MY_P}"


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2023-01-30  3:27 Sam James
  0 siblings, 0 replies; 22+ messages in thread
From: Sam James @ 2023-01-30  3:27 UTC (permalink / raw
  To: gentoo-commits

commit:     c50c94ccdbf6a695a082daaba0b74946c1f477d0
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 30 03:24:18 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jan 30 03:24:46 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c50c94cc

dev-db/mongodb: fix build w/ gcc 13

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-db/mongodb/files/mongodb-4.4.8-gcc-13.patch | 25 +++++++++++++++++++++++++
 dev-db/mongodb/mongodb-4.4.8-r2.ebuild          |  1 +
 dev-db/mongodb/mongodb-5.0.5-r2.ebuild          |  1 +
 3 files changed, 27 insertions(+)

diff --git a/dev-db/mongodb/files/mongodb-4.4.8-gcc-13.patch b/dev-db/mongodb/files/mongodb-4.4.8-gcc-13.patch
new file mode 100644
index 000000000000..00b82aca94fc
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.4.8-gcc-13.patch
@@ -0,0 +1,25 @@
+https://cgit.openembedded.org/meta-openembedded-contrib/commit/?id=856c21b061e000640829e158b9bb9e978a974386
+
+From 5d8218b8a1b5bc71e2a0cf543a000e194daba599 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 29 Jan 2023 17:15:30 -0800
+Subject: [PATCH] free_mon: Include missing <cstdint>
+
+gcc 13 moved some includes around and as a result <cstdint> is no
+longer transitively included [1]. Explicitly include it
+for uintXX_t.
+
+[1] https://gcc.gnu.org/gcc-13/porting_to.html#header-dep-changes
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/src/mongo/db/free_mon/free_mon_options.h
++++ b/src/mongo/db/free_mon/free_mon_options.h
+@@ -29,6 +29,7 @@
+ 
+ #pragma once
+ 
++#include <cstdint>
+ #include <string>
+ #include <vector>
+ 
+

diff --git a/dev-db/mongodb/mongodb-4.4.8-r2.ebuild b/dev-db/mongodb/mongodb-4.4.8-r2.ebuild
index f32ccf17a5fc..210b70da8006 100644
--- a/dev-db/mongodb/mongodb-4.4.8-r2.ebuild
+++ b/dev-db/mongodb/mongodb-4.4.8-r2.ebuild
@@ -59,6 +59,7 @@ PATCHES=(
 	"${FILESDIR}/${PN}-4.4.8-no-compass.patch"
 	"${FILESDIR}/${PN}-4.4.1-boost.patch"
 	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+	"${FILESDIR}/${PN}-4.4.8-gcc-13.patch"
 	"${FILESDIR}/${PN}-5.0.2-glibc-2.34.patch"
 )
 

diff --git a/dev-db/mongodb/mongodb-5.0.5-r2.ebuild b/dev-db/mongodb/mongodb-5.0.5-r2.ebuild
index de1b7a578f54..33dcd7a556ab 100644
--- a/dev-db/mongodb/mongodb-5.0.5-r2.ebuild
+++ b/dev-db/mongodb/mongodb-5.0.5-r2.ebuild
@@ -71,6 +71,7 @@ PATCHES=(
 	"${FILESDIR}/${PN}-5.0.5-no-force-lld.patch"
 	"${FILESDIR}/${PN}-4.4.10-boost-1.81.patch"
 	"${FILESDIR}/${PN}-5.0.5-boost-1.81-extra.patch"
+	"${FILESDIR}/${PN}-4.4.8-gcc-13.patch"
 )
 
 S="${WORKDIR}/${MY_P}"


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/
@ 2024-05-10 14:18 Alexys Jacob
  0 siblings, 0 replies; 22+ messages in thread
From: Alexys Jacob @ 2024-05-10 14:18 UTC (permalink / raw
  To: gentoo-commits

commit:     527bd7903fb935261270268e47ec6dd2ecd611fa
Author:     Robert Förster <Dessa <AT> gmake <DOT> de>
AuthorDate: Mon May  6 19:41:22 2024 +0000
Commit:     Alexys Jacob <ultrabug <AT> gentoo <DOT> org>
CommitDate: Fri May 10 14:18:18 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=527bd790

dev-db/mongodb: add 4.4.29, 5.0.26

Bug: https://bugs.gentoo.org/843329
Bug: https://bugs.gentoo.org/908987
Closes: https://bugs.gentoo.org/919768
Closes: https://bugs.gentoo.org/929386
Signed-off-by: Robert Förster <Dessa <AT> gmake.de>
Closes: https://github.com/gentoo/gentoo/pull/36591
Signed-off-by: Alexys Jacob <ultrabug <AT> gentoo.org>

 dev-db/mongodb/Manifest                            |   2 +
 .../files/mongodb-4.4.29-no-enterprise.patch       |  24 +++
 dev-db/mongodb/metadata.xml                        |   3 +
 dev-db/mongodb/mongodb-4.4.29.ebuild               | 188 +++++++++++++++++++
 dev-db/mongodb/mongodb-5.0.26.ebuild               | 205 +++++++++++++++++++++
 5 files changed, 422 insertions(+)

diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
index 259768739a73..d432e2c66186 100644
--- a/dev-db/mongodb/Manifest
+++ b/dev-db/mongodb/Manifest
@@ -1,2 +1,4 @@
+DIST mongodb-4.4.29.gh.tar.gz 51651007 BLAKE2B 9e9bd08ce87659fcf788964ec1bff80baef5bb9c2f5bd4968588511d289b9baf9fc68812f72ee89f90fb557dcc8d2ecbb3f607ca8e31c2212ec9633c0b99da37 SHA512 3c32a918c8b5587b04ee9263788c250a9bbd64f34ed2c19939e78607456215697966e596c2cfd160604b629188e4bdf3fff071db268bb3c25de3077a7c2ef335
+DIST mongodb-5.0.26.gh.tar.gz 57252091 BLAKE2B a4663a4dbac90118b56646816b178680a6bd99be6abb582fdfdb662c8ddf14eb9db18ed97260a37b2d04bf11715e6cfaa34bb12c4f4b08426e3afa90908f0b3c SHA512 efd56649006bb61070a2f255e8d843e4ddab33562ec9454afe55848dcc3ce8ee90431f70c9362b14e52c4a49a162ea3075a869a6fd71f63efdd5f4358703fea4
 DIST mongodb-src-r4.4.20.tar.gz 50883098 BLAKE2B 3ef2fddc4d926e372033449a14b0a71c606b6f8a9bb6767ff32c8da5a9287bf2972fae9dd83eab3ad934b1341c3edeed7708afd46f9a096819e9eca48aca40f5 SHA512 70b264b6a6f3ec16c8b0750d47026928f6250cb7a1a64d980c400ffbcc3af1b9c6301fe098d209fb8461cba4534b7c2edffdcdeb0548e627da107cc23d9a6b9c
 DIST mongodb-src-r5.0.16.tar.gz 56217257 BLAKE2B d78704c0cff4f8c1da20fdc5e083634c6dbe539136de58410ae6b86c9c5cd8044926425545ae07a7011a5febec5abb6f67773b8e539a4ac16daa1ad0ffc6a070 SHA512 d5fccd6cd3ee3f70457bd96a8eff66ca9872df37e196f1baf26993b6c080297d77504020e5554eaf3a2e92bb2730a467226b4bef47ab7fdc4de247d91c0143eb

diff --git a/dev-db/mongodb/files/mongodb-4.4.29-no-enterprise.patch b/dev-db/mongodb/files/mongodb-4.4.29-no-enterprise.patch
new file mode 100644
index 000000000000..bbcbe34fe6f3
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.4.29-no-enterprise.patch
@@ -0,0 +1,24 @@
+ buildscripts/moduleconfig.py | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/buildscripts/moduleconfig.py b/buildscripts/moduleconfig.py
+index b4d0bba0490..03541fab940 100644
+--- a/buildscripts/moduleconfig.py
++++ b/buildscripts/moduleconfig.py
+@@ -27,7 +27,6 @@ MongoDB SConscript files do.
+ __all__ = ('discover_modules', 'discover_module_directories', 'configure_modules',
+            'register_module_test')  # pylint: disable=undefined-all-variable
+ 
+-import imp
+ import inspect
+ import os
+ 
+@@ -71,8 +70,6 @@ def discover_modules(module_root, allowed_modules):
+             print("adding module: %s" % (name))
+             fp = open(build_py, "r")
+             try:
+-                module = imp.load_module("module_" + name, fp, build_py,
+-                                         (".py", "r", imp.PY_SOURCE))
+                 if getattr(module, "name", None) is None:
+                     module.name = name
+                 found_modules.append(module)

diff --git a/dev-db/mongodb/metadata.xml b/dev-db/mongodb/metadata.xml
index f8c3c65fba50..1f55f5a2d2d2 100644
--- a/dev-db/mongodb/metadata.xml
+++ b/dev-db/mongodb/metadata.xml
@@ -17,4 +17,7 @@
 		<flag name="mongosh">Install the MongoDB shell from <pkg>app-admin/mongosh-bin</pkg></flag>
 		<flag name="tools">Install the MongoDB tools (mongoimport, mongodump...) from <pkg>app-admin/mongo-tools</pkg></flag>
 	</use>
+	<upstream>
+		<remote-id type="github">mongodb/mongo</remote-id>
+	</upstream>
 </pkgmetadata>

diff --git a/dev-db/mongodb/mongodb-4.4.29.ebuild b/dev-db/mongodb/mongodb-4.4.29.ebuild
new file mode 100644
index 000000000000..830acd956f53
--- /dev/null
+++ b/dev-db/mongodb/mongodb-4.4.29.ebuild
@@ -0,0 +1,188 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+SCONS_MIN_VERSION="3.3.1"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_PV=r${PV/_rc/-rc}
+MY_P=mongo-${MY_PV}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://github.com/mongodb/mongo/archive/refs/tags/${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${MY_P}"
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 -riscv"
+IUSE="debug kerberos ssl test +tools"
+RESTRICT="!test? ( test )"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.3:=
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	dev-libs/boost:=[nls]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd:=
+	dev-libs/snowball-stemmer:=
+	net-misc/curl
+	>=sys-libs/zlib-1.2.11:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	ssl? (
+		>=dev-libs/openssl-1.0.1g:0=
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-debug/valgrind )"
+BDEPEND="
+	$(python_gen_any_dep '
+		test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
+		>=dev-build/scons-3.1.1[${PYTHON_USEDEP}]
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/psutil[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+	')
+"
+PDEPEND="tools? ( >=app-admin/mongo-tools-100 )"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.4.1-fix-scons.patch"
+	"${FILESDIR}/${PN}-4.4.8-no-compass.patch"
+	"${FILESDIR}/${PN}-4.4.1-boost.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+	"${FILESDIR}/${PN}-4.4.10-boost-1.79.patch"
+	"${FILESDIR}/${PN}-4.4.10-no-force-lld.patch"
+	"${FILESDIR}/${PN}-4.4.10-boost-1.81.patch"
+	"${FILESDIR}/${P}-no-enterprise.patch"
+)
+
+python_check_deps() {
+	if use test; then
+		python_has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
+		python_has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
+	fi
+	python_has_version -b ">=dev-build/scons-3.1.1[${PYTHON_USEDEP}]" &&
+	python_has_version -b "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
+	python_has_version -b "dev-python/psutil[${PYTHON_USEDEP}]" &&
+	python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.2; then
+			ewarn "To upgrade from a version earlier than the 4.2-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.2-series. Then upgrade to 4.4 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.2 before upgrading."
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	# for MONGO_GIT_HASH use GitOrigin-RevId from the commit of the tag
+	scons_opts=(
+		AR="$(tc-getAR)"
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+		CCFLAGS="${CXXFLAGS}"
+
+		VERBOSE=1
+		VARIANT_DIR=gentoo
+		MONGO_VERSION="${PV}"
+		MONGO_GIT_HASH="f4dda329a99811c707eb06d05ad023599f9be263"
+
+		--disable-warnings-as-errors
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+	use ssl && scons_opts+=( --ssl )
+
+	# Needed to avoid forcing FORTIFY_SOURCE
+	# Gentoo's toolchain applies these anyway
+	scons_opts+=( --runtime-hardening=off )
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	PREFIX="${EPREFIX}/usr" escons "${scons_opts[@]}" --nostrip install-core
+}
+
+# FEATURES="test -usersandbox" emerge dev-db/mongodb
+src_test() {
+	ewarn "Tests may hang with FEATURES=usersandbox"
+	"${EPYTHON}" ./buildscripts/resmoke.py run --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed with ${EPYTHON}"
+}
+
+src_install() {
+	dobin build/install/bin/{mongo,mongod,mongos}
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_newunit "${FILESDIR}/${PN}.service-r1" "${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	diropts -m0750 -o mongodb -g mongodb
+	keepdir /var/log/${PN}
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}

diff --git a/dev-db/mongodb/mongodb-5.0.26.ebuild b/dev-db/mongodb/mongodb-5.0.26.ebuild
new file mode 100644
index 000000000000..f40515d8f961
--- /dev/null
+++ b/dev-db/mongodb/mongodb-5.0.26.ebuild
@@ -0,0 +1,205 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+SCONS_MIN_VERSION="3.3.1"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
+
+MY_PV=r${PV/_rc/-rc}
+MY_P=mongo-${MY_PV}
+
+DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
+HOMEPAGE="https://www.mongodb.com"
+SRC_URI="https://github.com/mongodb/mongo/archive/refs/tags/${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 -riscv"
+CPU_FLAGS="cpu_flags_x86_avx"
+IUSE="debug kerberos mongosh ssl +tools ${CPU_FLAGS}"
+
+# https://github.com/mongodb/mongo/wiki/Test-The-Mongodb-Server
+# resmoke needs python packages not yet present in Gentoo
+RESTRICT="test"
+
+RDEPEND="acct-group/mongodb
+	acct-user/mongodb
+	>=app-arch/snappy-1.1.7:=
+	>=dev-cpp/yaml-cpp-0.6.2:=
+	dev-libs/boost:=[nls]
+	>=dev-libs/libpcre-8.42[cxx]
+	app-arch/zstd:=
+	dev-libs/snowball-stemmer:=
+	>=sys-libs/zlib-1.2.12:=
+	kerberos? ( dev-libs/cyrus-sasl[kerberos] )
+	ssl? (
+		>=dev-libs/openssl-1.0.1g:0=
+	)"
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	sys-libs/ncurses:0=
+	sys-libs/readline:0=
+	debug? ( dev-debug/valgrind )"
+BDEPEND="
+	$(python_gen_any_dep '
+		>=dev-build/scons-3.1.1[${PYTHON_USEDEP}]
+		dev-python/cheetah3[${PYTHON_USEDEP}]
+		dev-python/psutil[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+	')
+"
+PDEPEND="
+	mongosh? ( app-admin/mongosh-bin )
+	tools? ( >=app-admin/mongo-tools-100 )
+"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-4.4.1-boost.patch"
+	"${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+	"${FILESDIR}/${PN}-5.0.2-fix-scons.patch"
+	"${FILESDIR}/${PN}-5.0.2-no-compass.patch"
+	"${FILESDIR}/${PN}-5.0.2-skip-no-exceptions.patch"
+	"${FILESDIR}/${PN}-5.0.2-skip-reqs-check.patch"
+	"${FILESDIR}/${PN}-5.0.2-boost-1.79.patch"
+	"${FILESDIR}/${PN}-5.0.5-no-force-lld.patch"
+	"${FILESDIR}/${PN}-4.4.10-boost-1.81.patch"
+	"${FILESDIR}/${PN}-5.0.5-boost-1.81-extra.patch"
+	"${FILESDIR}/${PN}-4.4.29-no-enterprise.patch"
+)
+
+python_check_deps() {
+	python_has_version -b ">=dev-build/scons-3.1.1[${PYTHON_USEDEP}]" &&
+	python_has_version -b "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
+	python_has_version -b "dev-python/psutil[${PYTHON_USEDEP}]" &&
+	python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+	# Bug 809692 + 890294
+	if use amd64 && ! use cpu_flags_x86_avx; then
+		ewarn "MongoDB 5.0 requires use of the AVX instruction set."
+		ewarn "This ebuild will use --experimental-optimization=-sandybridge which"
+		ewarn "will result in an experimental build of MongoDB as per upstream."
+		ewarn "https://docs.mongodb.com/v5.0/administration/production-notes/"
+	fi
+
+	if [[ -n ${REPLACING_VERSIONS} ]]; then
+		if ver_test "$REPLACING_VERSIONS" -lt 4.4; then
+			ewarn "To upgrade from a version earlier than the 4.4-series, you must"
+			ewarn "successively upgrade major releases until you have upgraded"
+			ewarn "to 4.4-series. Then upgrade to 5.0 series."
+		else
+			ewarn "Be sure to set featureCompatibilityVersion to 4.4 before upgrading."
+		fi
+	fi
+}
+
+src_prepare() {
+	default
+
+	# remove bundled libs
+	rm -r src/third_party/{boost,pcre-*,snappy-*,yaml-cpp,zlib-*} || die
+
+	# remove compass
+	rm -r src/mongo/installer/compass || die
+}
+
+src_configure() {
+	# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
+	# --use-system-icu fails tests
+	# --use-system-tcmalloc is strongly NOT recommended:
+	# for MONGO_GIT_HASH use GitOrigin-RevId from the commit of the tag
+	scons_opts=(
+		AR="$(tc-getAR)"
+		CC="$(tc-getCC)"
+		CXX="$(tc-getCXX)"
+		CCFLAGS="${CXXFLAGS}"
+
+		VERBOSE=1
+		VARIANT_DIR=gentoo
+		MONGO_VERSION="${PV}"
+		MONGO_GIT_HASH="0b4f1ea980b5380a66425a90b414106a191365f4"
+
+		--disable-warnings-as-errors
+		--jobs="$(makeopts_jobs)"
+		--use-system-boost
+		--use-system-pcre
+		--use-system-snappy
+		--use-system-stemmer
+		--use-system-yaml
+		--use-system-zlib
+		--use-system-zstd
+	)
+
+	use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
+	use amd64 && scons_opts+=( --experimental-optimization=-sandybridge ) # Bug 890294
+	use debug && scons_opts+=( --dbg=on )
+	use kerberos && scons_opts+=( --use-sasl-client )
+
+	scons_opts+=( --ssl=$(usex ssl on off) )
+
+	# Needed to avoid forcing FORTIFY_SOURCE
+	# Gentoo's toolchain applies these anyway
+	scons_opts+=( --runtime-hardening=off )
+
+	# gold is an option here but we don't really do that anymore
+	if tc-ld-is-lld; then
+		 scons_opts+=( --linker=lld )
+	else
+		 scons_opts+=( --linker=bfd )
+	fi
+
+	# respect mongoDB upstream's basic recommendations
+	# see bug #536688 and #526114
+	if ! use debug; then
+		filter-flags '-m*'
+		filter-flags '-O?'
+	fi
+
+	default
+}
+
+src_compile() {
+	PREFIX="${EPREFIX}/usr" ./buildscripts/scons.py "${scons_opts[@]}" install-core || die
+}
+
+src_install() {
+	dobin build/install/bin/{mongo,mongod,mongos}
+
+	doman debian/mongo*.1
+	dodoc README docs/building.md
+
+	newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
+	newinitd "${FILESDIR}/mongos.initd-r3" mongos
+	newconfd "${FILESDIR}/mongos.confd-r3" mongos
+
+	insinto /etc
+	newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
+	newins "${FILESDIR}/mongos.conf-r2" mongos.conf
+
+	systemd_newunit "${FILESDIR}/${PN}.service-r1" "${PN}.service"
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+	# see bug #526114
+	pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
+
+	diropts -m0750 -o mongodb -g mongodb
+	keepdir /var/log/${PN}
+}
+
+pkg_postinst() {
+	ewarn "Make sure to read the release notes and follow the upgrade process:"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
+	ewarn "  https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
+}


^ permalink raw reply related	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2024-05-10 14:18 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-11-09 14:11 [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/files/, dev-db/mongodb/ Alexys Jacob
  -- strict thread matches above, loose matches on Subject: below --
2024-05-10 14:18 Alexys Jacob
2023-01-30  3:27 Sam James
2022-12-31 15:36 Sam James
2022-12-30 20:22 Sam James
2022-06-17 17:55 Sam James
2022-04-26 13:37 Alexys Jacob
2021-08-20 18:07 Alexys Jacob
2021-08-19 16:38 Alexys Jacob
2021-08-19 16:38 Alexys Jacob
2021-07-15 14:14 Thomas Deutschmann
2021-01-18 10:42 Alexys Jacob
2020-11-09 14:11 Alexys Jacob
2019-09-22 18:59 Alexys Jacob
2018-01-06 21:34 Alexys Jacob
2018-01-05 13:07 Alexys Jacob
2017-10-13  8:33 Alexys Jacob
2017-09-21 19:50 Patrice Clement
2017-07-31 12:14 Alexys Jacob
2016-10-21 18:50 David Seifert
2016-04-02 18:54 David Seifert
2015-12-31 14:07 Alexys Jacob

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox