commit: 56192c875c9139eee2bd13e85928efe499d5c01f Author: Tomas Mozes <hydrapolic <AT> gmail <DOT> com> AuthorDate: Thu Jul 19 10:46:43 2018 +0000 Commit: Alexys Jacob <ultrabug <AT> gentoo <DOT> org> CommitDate: Thu Aug 2 07:30:53 2018 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56192c87
dev-db/mongodb: bump to 3.6.6 Package-Manager: Portage-2.3.43, Repoman-2.3.10 app-admin/mongo-tools/mongo-tools-3.4.16.ebuild | 18 +++--- app-admin/mongo-tools/mongo-tools-3.6.6.ebuild | 20 +++---- dev-db/mongodb/Manifest | 1 + dev-db/mongodb/mongodb-3.4.16.ebuild | 51 +++++++--------- ...{mongodb-3.4.16.ebuild => mongodb-3.6.6.ebuild} | 69 +++++++++++----------- 5 files changed, 75 insertions(+), 84 deletions(-) diff --git a/app-admin/mongo-tools/mongo-tools-3.4.16.ebuild b/app-admin/mongo-tools/mongo-tools-3.4.16.ebuild index 509a9eb6a0e..5efc22cf1e8 100644 --- a/app-admin/mongo-tools/mongo-tools-3.4.16.ebuild +++ b/app-admin/mongo-tools/mongo-tools-3.4.16.ebuild @@ -27,32 +27,32 @@ S=${WORKDIR}/${MY_P} src_prepare() { default - # do not substitute version because it uses git - sed -i '/^sed/,+3d' build.sh || die - sed -i '/^mv/d' build.sh || die + # 1) ensure we use bash wrt #582906 + # 2) do not substitute version because it uses git + sed -e 's@/bin/sh@/bin/bash@g' \ + -e '/^sed/,+3d' \ + -e '/^mv/d' \ + -i build.sh || die # build pie to avoid text relocations wrt #582854 # skip on ppc64 wrt #610984 if ! use ppc64; then sed -i 's/\(go build\)/\1 -buildmode=pie/g' build.sh || die fi - - # ensure we use bash wrt #582906 - sed -i 's@/bin/sh@/bin/bash@g' build.sh || die } src_compile() { local myconf=() if use sasl; then - myconf+=(sasl) + myconf+=(sasl) fi if use ssl; then - myconf+=(ssl) + myconf+=(ssl) fi - ./build.sh ${myconf[@]} || die "build failed" + ./build.sh "${myconf[@]}" || die "build failed" } src_install() { diff --git a/app-admin/mongo-tools/mongo-tools-3.6.6.ebuild b/app-admin/mongo-tools/mongo-tools-3.6.6.ebuild index 3589981cbd8..47f22a423a8 100644 --- a/app-admin/mongo-tools/mongo-tools-3.6.6.ebuild +++ b/app-admin/mongo-tools/mongo-tools-3.6.6.ebuild @@ -27,33 +27,33 @@ S=${WORKDIR}/${MY_P} src_prepare() { default - # do not substitute version because it uses git - sed -i '/^sed/,+3d' build.sh || die - sed -i '/^stty/d' build.sh || die - sed -i '/^mv/d' build.sh || die + # 1) ensure we use bash wrt #582906 + # 2) do not substitute version because it uses git + sed -e 's@/bin/sh@/bin/bash@g' \ + -e '/^sed/,+3d' \ + -e '/^stty/d' \ + -e '/^mv/d' \ + -i build.sh || die # build pie to avoid text relocations wrt #582854 # skip on ppc64 wrt #610984 if ! use ppc64; then sed -i 's/\(go build\)/\1 -buildmode=pie/g' build.sh || die fi - - # ensure we use bash wrt #582906 - sed -i 's@/bin/sh@/bin/bash@g' build.sh || die } src_compile() { local myconf=() if use sasl; then - myconf+=(sasl) + myconf+=(sasl) fi if use ssl; then - myconf+=(ssl) + myconf+=(ssl) fi - ./build.sh ${myconf[@]} || die "build failed" + ./build.sh "${myconf[@]}" || die "build failed" } src_install() { diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest index 08ba14fc001..b59b7af8535 100644 --- a/dev-db/mongodb/Manifest +++ b/dev-db/mongodb/Manifest @@ -10,4 +10,5 @@ DIST mongodb-src-r3.6.2.tar.gz 39999539 BLAKE2B 3e38917ebaf79b63bf054279fbb91a64 DIST mongodb-src-r3.6.3.tar.gz 40093607 BLAKE2B bb21bf0487661eec6140ade22526617b26b2499bd36e138d955d14a4b13a0685ec7308bccfc11ef17c785cd8a71c5b6cd9d154d461b8973410b03952b93953ec SHA512 94aa9955f99d5f6bbbe65dc3755583952525398308ca7cb9224b91d1fa403de5bb3abb63a651583815cbecaff58966b5cfe7334a36ef6583f73d8c213410ddbc DIST mongodb-src-r3.6.4.tar.gz 40159916 BLAKE2B d3878d4e6bbf331de672768b2c92a4d71f758232170432d757f7e61849e6e1ef3b190e6a089101c9ea23c4ce23087c684c86fc6ea0f32f6fe052ce322d47e438 SHA512 02c2a697af9fdcbb16d19792be17d987e18c684418a63ed4750471c7ec22eb2eabf84e93cb1d298f67898b7e23687f668bb333c50ffc4e1b8adf8859f856ad95 DIST mongodb-src-r3.6.5.tar.gz 40310152 BLAKE2B 72110ae47b17ec8b1f60636a5ef8491b076e1cc019513fd872ea38b3bb8393efff4bddc7b795b3da711f258d21be9fa23e24d396a9429349c51ce05fff180a53 SHA512 6ecb3140ee4a7929fabe62d698f23e87cb5030cf31abefe7f82374f407fb87dc05f712089998f96bc40e23698836a86e7f3590892bde9d2d6f2c4bcc15cc3ebf +DIST mongodb-src-r3.6.6.tar.gz 40391572 BLAKE2B 1cee1ad5431d2941cf2f0ee31290b2b5bc1c628f2cb5041d4d5a1427d342ecc3bbfb123e540581d81a1c5b018464abb9dcd1ead8df0de6a01a1462ca0c258e83 SHA512 cd91979ba29538c9e1645fe81e03ac56101b0fa8980ea2bdf89a4987ee8f7f6ddc97e2b27495500548a4424f155a1847471c7a5715beabf75ff894edf05c546b DIST mongodb-src-r4.0.0.tar.gz 49138467 BLAKE2B 616e267c737729103de544d82db60489e7a32c5f9847ffd2d643a9025c18aa867718216f5de9f18a93fb2a7930c3dbe9ec3850eef09dbec084570328a99f2865 SHA512 11d00cdde606cfea268471cffccedb6d003e421aeffda2303aff4d4126c386aaec50a1de733d7a1d5fb6605403cf9f2218dae50374c7b5e8625fa80317804589 diff --git a/dev-db/mongodb/mongodb-3.4.16.ebuild b/dev-db/mongodb/mongodb-3.4.16.ebuild index 3869755fe9f..309759cbd00 100644 --- a/dev-db/mongodb/mongodb-3.4.16.ebuild +++ b/dev-db/mongodb/mongodb-3.4.16.ebuild @@ -10,7 +10,7 @@ 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 +inherit check-reqs eapi7-ver eutils flag-o-matic multilib multiprocessing pax-utils python-single-r1 scons-utils systemd toolchain-funcs user MY_P=${PN}-src-r${PV/_rc/-rc} @@ -30,6 +30,7 @@ RDEPEND=">=app-arch/snappy-1.1.3 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= ) @@ -37,11 +38,10 @@ RDEPEND=">=app-arch/snappy-1.1.3 )" DEPEND="${RDEPEND} ${PYTHON_DEPS} - <dev-util/scons-3 - sys-libs/ncurses - sys-libs/readline + dev-util/scons + sys-libs/ncurses:0= + sys-libs/readline:0= debug? ( dev-util/valgrind ) - kerberos? ( dev-libs/cyrus-sasl[kerberos] ) test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/pyyaml[${PYTHON_USEDEP}] @@ -57,10 +57,12 @@ PATCHES=( S=${WORKDIR}/${MY_P} pkg_pretend() { - if [[ -n ${REPLACING_VERSIONS} ]] && [[ ${REPLACING_VERSIONS} < 3.2 ]]; then - ewarn "To upgrade from a version earlier than the 3.2-series, you must" - ewarn "successively upgrade major releases until you have upgraded" - ewarn "to 3.2-series. Then upgrade to 3.4 series." + if [[ -n ${REPLACING_VERSIONS} ]]; then + if ver_test "$REPLACING_VERSIONS" -lt 3.2; then + ewarn "To upgrade from a version earlier than the 3.2-series, you must" + ewarn "successively upgrade major releases until you have upgraded" + ewarn "to 3.2-series. Then upgrade to 3.4 series." + fi fi } @@ -75,14 +77,13 @@ src_prepare() { default # remove bundled libs - rm -rv src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die + rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || 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)" @@ -125,24 +126,17 @@ src_test() { 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} + newinitd "${FILESDIR}/mongos.initd-r3" ${PN/db/s} + newconfd "${FILESDIR}/mongos.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 + newins "${FILESDIR}/mongos.conf-r2" ${PN/db/s}.conf systemd_dounit "${FILESDIR}/${PN}.service" @@ -151,17 +145,16 @@ src_install() { # 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 + 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/$(get_version_component_range 1-2)/" - ewarn " https://docs.mongodb.com/manual/release-notes/$(get_version_component_range 1-2)/#upgrade-procedures" + 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.4.16.ebuild b/dev-db/mongodb/mongodb-3.6.6.ebuild similarity index 68% copy from dev-db/mongodb/mongodb-3.4.16.ebuild copy to dev-db/mongodb/mongodb-3.6.6.ebuild index 3869755fe9f..8945e0387ba 100644 --- a/dev-db/mongodb/mongodb-3.4.16.ebuild +++ b/dev-db/mongodb/mongodb-3.6.6.ebuild @@ -5,12 +5,12 @@ EAPI=6 PYTHON_COMPAT=( python2_7 ) -SCONS_MIN_VERSION="2.3.0" +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 +inherit check-reqs eapi7-ver eutils flag-o-matic multilib multiprocessing pax-utils python-single-r1 scons-utils systemd toolchain-funcs user MY_P=${PN}-src-r${PV/_rc/-rc} @@ -30,6 +30,7 @@ RDEPEND=">=app-arch/snappy-1.1.3 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= ) @@ -37,30 +38,35 @@ RDEPEND=">=app-arch/snappy-1.1.3 )" DEPEND="${RDEPEND} ${PYTHON_DEPS} - <dev-util/scons-3 - sys-libs/ncurses - sys-libs/readline + dev-python/cheetah[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + virtual/python-typing[${PYTHON_USEDEP}] + dev-util/scons + sys-libs/ncurses:0= + sys-libs/readline:0= debug? ( dev-util/valgrind ) - kerberos? ( dev-libs/cyrus-sasl[kerberos] ) test? ( dev-python/pymongo[${PYTHON_USEDEP}] - dev-python/pyyaml[${PYTHON_USEDEP}] )" PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )" PATCHES=( - "${FILESDIR}/${PN}-3.4.0-fix-scons.patch" - "${FILESDIR}/${PN}-3.4.6-sysmacros-include.patch" "${FILESDIR}/${PN}-3.4.7-no-boost-check.patch" + "${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} ]] && [[ ${REPLACING_VERSIONS} < 3.2 ]]; then - ewarn "To upgrade from a version earlier than the 3.2-series, you must" - ewarn "successively upgrade major releases until you have upgraded" - ewarn "to 3.2-series. Then upgrade to 3.4 series." + 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 } @@ -75,14 +81,16 @@ src_prepare() { default # remove bundled libs - rm -rv src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die + 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)" @@ -116,33 +124,23 @@ src_compile() { # FEATURES="test -usersandbox" emerge dev-db/mongodb src_test() { - # this one test fails - rm jstests/core/jsHeapLimit.js || die - "${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} + newinitd "${FILESDIR}/mongos.initd-r3" ${PN/db/s} + newconfd "${FILESDIR}/mongos.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 + newins "${FILESDIR}/mongos.conf-r2" ${PN/db/s}.conf systemd_dounit "${FILESDIR}/${PN}.service" @@ -151,17 +149,16 @@ src_install() { # 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 + 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/$(get_version_component_range 1-2)/" - ewarn " https://docs.mongodb.com/manual/release-notes/$(get_version_component_range 1-2)/#upgrade-procedures" + 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" }