From de6ed10a9cecc21c54cf015c7698351c967c55d2 Mon Sep 17 00:00:00 2001 From: Ultrabug Date: Tue, 25 Aug 2015 10:38:38 +0200 Subject: dev-db/mongodb: version bump, drop old Package-Manager: portage-2.2.20.1 --- dev-db/mongodb/Manifest | 4 +- dev-db/mongodb/mongodb-2.6.10.ebuild | 180 ----------------------------------- dev-db/mongodb/mongodb-2.6.11.ebuild | 180 +++++++++++++++++++++++++++++++++++ dev-db/mongodb/mongodb-3.0.4.ebuild | 147 ---------------------------- dev-db/mongodb/mongodb-3.0.6.ebuild | 153 +++++++++++++++++++++++++++++ 5 files changed, 335 insertions(+), 329 deletions(-) delete mode 100644 dev-db/mongodb/mongodb-2.6.10.ebuild create mode 100644 dev-db/mongodb/mongodb-2.6.11.ebuild delete mode 100644 dev-db/mongodb/mongodb-3.0.4.ebuild create mode 100644 dev-db/mongodb/mongodb-3.0.6.ebuild diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest index b17d87bf155..7f380619928 100644 --- a/dev-db/mongodb/Manifest +++ b/dev-db/mongodb/Manifest @@ -1,7 +1,7 @@ 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.10.tar.gz 16456717 SHA256 74228a22aaf99570e706ecde20658165e3983ee8a9f327e80974f82a4e819476 SHA512 acce5faf1986e9650469359fac48a5e83475c1e1e34d3bdeaaaf12da08f7f01eb68f4885ee9877b012f0d705b4f814be2832b3de446cab72ba254afba1e33c7f WHIRLPOOL b39766df876d9e225683bf806f0b05b70d3140900c04c9de3d3640bd933d0c942fbbe74968dcd9d6523750df076ad99e31b59ef09f7d1b2a620e7d2848c0e1ce +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.4.tar.gz 26615962 SHA256 6de7aa8b12ad892ee3852ac949069fda8cb87b3ee606a88226817505e2864360 SHA512 bd35a252cd351a2d755edf5e20c69c904de326d7e47aebc055cd0160476ecf966cf53f3263410c32f70e108ff2a019f86a21e1a71917246c2f13db9251082bc3 WHIRLPOOL 224ca39c0411b1608f75191eb14d86256434d3e5ce293a9ac5d1febc3d0285bf79db0875e97fd5559f47734c7f97fedc1bcff3a28aec0a39924da1a4cc24744d DIST mongodb-src-r3.0.5.tar.gz 26332788 SHA256 05b16a7991aa65b1d396a3dc622107fba3216fffa8b9ed0817e76ae95f5f7fdb SHA512 17c66f9501e6517feba069f85bb468a421c45300306977ebfed71e6ce120e2bed64f14698e470c644360e23f40132171d64ac85f0962aa3ba824a48cf228775a WHIRLPOOL 7ed1f2b0daf7cb9ff081e69823e79504b8c99a221c74c2a541d673febacad9e555ef34eb4f2e97effe7e6fddafb81b903ab5a4ac8c4e8951640a0f2c6828ba14 +DIST mongodb-src-r3.0.6.tar.gz 26241944 SHA256 609f6bd416ed11898b49406332b8ff301de239ba72df0bdbf1603233229c822d SHA512 1990e9011ae586e30aef28be58f9fc6d8b7f45b787dbde9785c82eff6fb0a70ea45152e450c032a898e6464bbb9b1683082f2a072ba874f7532e167330658175 WHIRLPOOL 4090cfb5912f81e6329d3c3680009037f22cd406611f78dc0ddd6fc9a63ee5261c7751fe83c60add2d5917f57b2a3c2796c48abb6f633157a8811d0571793a35 diff --git a/dev-db/mongodb/mongodb-2.6.10.ebuild b/dev-db/mongodb/mongodb-2.6.10.ebuild deleted file mode 100644 index 72addb11db5..00000000000 --- a/dev-db/mongodb/mongodb-2.6.10.ebuild +++ /dev/null @@ -1,180 +0,0 @@ -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -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() { - if [[ ${REPLACING_VERSIONS} < 2.6 ]]; 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 - else - if use mms-agent; then - elog "Edit your MMS Agent configuration file :" - elog " /etc/mms-agent.conf" - fi - fi -} diff --git a/dev-db/mongodb/mongodb-2.6.11.ebuild b/dev-db/mongodb/mongodb-2.6.11.ebuild new file mode 100644 index 00000000000..72addb11db5 --- /dev/null +++ b/dev-db/mongodb/mongodb-2.6.11.ebuild @@ -0,0 +1,180 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +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() { + if [[ ${REPLACING_VERSIONS} < 2.6 ]]; 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 + else + if use mms-agent; then + elog "Edit your MMS Agent configuration file :" + elog " /etc/mms-agent.conf" + fi + fi +} diff --git a/dev-db/mongodb/mongodb-3.0.4.ebuild b/dev-db/mongodb/mongodb-3.0.4.ebuild deleted file mode 100644 index 3151cfe7e1f..00000000000 --- a/dev-db/mongodb/mongodb-3.0.4.ebuild +++ /dev/null @@ -1,147 +0,0 @@ -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -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 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" - -LICENSE="AGPL-3 Apache-2.0" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="debug kerberos mms-agent ssl +tools" - -RDEPEND="app-arch/snappy - >=dev-cpp/yaml-cpp-0.5.1 - >=dev-libs/boost-1.50[threads(+)] - >=dev-libs/libpcre-8.30[cxx] - dev-libs/snowball-stemmer - dev-util/google-perftools[-minimal] - net-libs/libpcap - sys-libs/zlib - mms-agent? ( app-admin/mms-agent ) - ssl? ( >=dev-libs/openssl-1.0.1g:= )" -DEPEND="${RDEPEND} - >=sys-devel/gcc-4.8.2:* - sys-libs/ncurses - sys-libs/readline - kerberos? ( dev-libs/cyrus-sasl[kerberos] )" -PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )" - -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" - - 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}-3.0.0-fix-scons.patch" -} - -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() { - escons ${scons_opts} dbtest - "${S}"/dbtest --dbpath=unittest || die "dbtest failed" - escons ${scons_opts} smokeCppUnittests --smokedbprefix="smokecpptest" || die "smokeCppUnittests tests failed" -} - -pkg_postinst() { - if [[ ${REPLACING_VERSIONS} < 3.0 ]]; 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" - fi -} diff --git a/dev-db/mongodb/mongodb-3.0.6.ebuild b/dev-db/mongodb/mongodb-3.0.6.ebuild new file mode 100644 index 00000000000..7fa4bb104e6 --- /dev/null +++ b/dev-db/mongodb/mongodb-3.0.6.ebuild @@ -0,0 +1,153 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +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 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" + +LICENSE="AGPL-3 Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="debug kerberos mms-agent ssl +tools" + +RDEPEND="app-arch/snappy + >=dev-cpp/yaml-cpp-0.5.1 + >=dev-libs/boost-1.57[threads(+)] + >=dev-libs/libpcre-8.30[cxx] + dev-libs/snowball-stemmer + net-libs/libpcap + sys-libs/zlib + mms-agent? ( app-admin/mms-agent ) + ssl? ( >=dev-libs/openssl-1.0.1g:= )" +DEPEND="${RDEPEND} + >=sys-devel/gcc-4.8.2:* + sys-libs/ncurses + sys-libs/readline + kerberos? ( dev-libs/cyrus-sasl[kerberos] )" +PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )" + +S=${WORKDIR}/${MY_P} + +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/ + # + # --c++11 is required by scons instead of auto detection: + # https://jira.mongodb.org/browse/SERVER-19661 + + scons_opts="--variant-dir=build --cc=$(tc-getCC) --cxx=$(tc-getCXX) --c++11" + 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-yaml" + + 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}-3.0.0-fix-scons.patch" +} + +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() { + escons ${scons_opts} dbtest + "${S}"/dbtest --dbpath=unittest || die "dbtest failed" + escons ${scons_opts} smokeCppUnittests --smokedbprefix="smokecpptest" || die "smokeCppUnittests tests failed" +} + +pkg_postinst() { + if [[ ${REPLACING_VERSIONS} < 3.0 ]]; 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" + fi +} -- cgit v1.2.1