Gentoo Archives: gentoo-commits

From: Thomas Deutschmann <whissi@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-db/mongodb/
Date: Mon, 04 Mar 2019 01:36:04
Message-Id: 1551660445.75cfc144412904f2d774738160ff6b8c6386798b.whissi@gentoo
1 commit: 75cfc144412904f2d774738160ff6b8c6386798b
2 Author: Tomas Mozes <hydrapolic <AT> gmail <DOT> com>
3 AuthorDate: Sat Jan 26 05:24:59 2019 +0000
4 Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
5 CommitDate: Mon Mar 4 00:47:25 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=75cfc144
7
8 dev-db/mongodb: bump to 3.6.10
9
10 Signed-off-by: Tomas Mozes <hydrapolic <AT> gmail.com>
11 Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
12
13 dev-db/mongodb/Manifest | 1 +
14 dev-db/mongodb/metadata.xml | 1 +
15 dev-db/mongodb/mongodb-3.6.10.ebuild | 164 +++++++++++++++++++++++++++++++++++
16 3 files changed, 166 insertions(+)
17
18 diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
19 index c248028ed80..a464d6ef12e 100644
20 --- a/dev-db/mongodb/Manifest
21 +++ b/dev-db/mongodb/Manifest
22 @@ -1,4 +1,5 @@
23 DIST mongodb-src-r3.4.16.tar.gz 40093657 BLAKE2B 7123444dbdd0b2ad3adfb3391e0177d33c1b6c6a4ea83027821c564faad047a736e52926bc15c58bef59c18282436e913fd3bc9963705e030da01356f83ea367 SHA512 e22eb1fe2a832fed8305200614988c5ecfd619cee44fe2263bffa151732c0e26584084e64065dbc65152be6e5c1767a538193770359bea92f3703c72239075db
24 +DIST mongodb-src-r3.6.10.tar.gz 40562421 BLAKE2B c4fbb9e9586350503df84b344e5c0e05176e681f50a0e96551f157c81c85b71e45c235f0788c1886aa5b6b79fa452afa1a6e8de4acfbfe4c4a0ae62379599f86 SHA512 e0833885a2b1fc14d99749304bd83931a9016039fa32826f9961653601975474f37003eb40fbe8cc5b09644ea447cdc59ccf63110b527d51d4c772cfff88804f
25 DIST mongodb-src-r3.6.8.tar.gz 40428295 BLAKE2B cc02f73cfb49fb38ccabaad5a02610ce73fc41895ce944e48669e254bcbc70c8872a1bd7f8e04371fae4fcd9af2466fd8550367dd1d1da5cee50b86fc5023bf2 SHA512 c981f3269be3bafb59aa89d36c39a801fd7007b60db6c09b4616a559aaf8e50b34cabbdac2b59f23552c0a5112913fba468f7e2ed9a5f4daa3702dcffdf34999
26 DIST mongodb-src-r3.6.9.tar.gz 40515460 BLAKE2B 5637e7b5cc4b3c7874fedacbe0b05dac1b3dde3ae1c58ecbfc8caf9526c0a8696bdfa1b9b40ffd1adfc81ef90fcb7a41de2c53ccce09da8b7879b9ab2f238eb7 SHA512 00202820570ba5cdc16951b1cb0e9b52bcb8362cee252c857b84d9107761f4061496fc3379ceae6e052f14477d702714384ad1b24eca2c4173af2506a8d1f39f
27 DIST mongodb-src-r4.0.3.tar.gz 49435646 BLAKE2B 1663823d48ec6d93b30b4d68a09bab164291530fd4966fcdd07ffbaceaf25d9fc5c7480d0d794fdd374fa3a2d11f19d87556cf0c47198a13f9d8fb5ccf7f0343 SHA512 c77a01d8d16322514f42030c46a0aa9cedb90f186375222eeb31648060265006b5e929bdde6ca8e7ecd71018f7c19f5bade463d98db0f053d586ffc8adc99550
28
29 diff --git a/dev-db/mongodb/metadata.xml b/dev-db/mongodb/metadata.xml
30 index 32785d23917..5379d9760d4 100644
31 --- a/dev-db/mongodb/metadata.xml
32 +++ b/dev-db/mongodb/metadata.xml
33 @@ -14,6 +14,7 @@
34 and powerful queries).
35 </longdescription>
36 <use>
37 + <flag name="lto">Adds support for link time optimization</flag>
38 <flag name="mms-agent">Install the MongoDB Monitoring Service agent</flag>
39 <flag name="tools">Install the MongoDB tools (mongoimport, mongodump...) from <pkg>app-admin/mongo-tools</pkg></flag>
40 </use>
41
42 diff --git a/dev-db/mongodb/mongodb-3.6.10.ebuild b/dev-db/mongodb/mongodb-3.6.10.ebuild
43 new file mode 100644
44 index 00000000000..cb53a4e70da
45 --- /dev/null
46 +++ b/dev-db/mongodb/mongodb-3.6.10.ebuild
47 @@ -0,0 +1,164 @@
48 +# Copyright 1999-2019 Gentoo Authors
49 +# Distributed under the terms of the GNU General Public License v2
50 +
51 +EAPI=7
52 +
53 +PYTHON_COMPAT=( python2_7 )
54 +
55 +SCONS_MIN_VERSION="2.5.0"
56 +CHECKREQS_DISK_BUILD="2400M"
57 +CHECKREQS_DISK_USR="512M"
58 +CHECKREQS_MEMORY="1024M"
59 +
60 +inherit check-reqs flag-o-matic multiprocessing pax-utils python-single-r1 scons-utils systemd toolchain-funcs user
61 +
62 +MY_P=${PN}-src-r${PV/_rc/-rc}
63 +
64 +DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
65 +HOMEPAGE="https://www.mongodb.com"
66 +SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
67 +
68 +LICENSE="Apache-2.0 SSPL"
69 +SLOT="0"
70 +KEYWORDS="~amd64"
71 +IUSE="debug kerberos libressl lto mms-agent ssl test +tools"
72 +
73 +RDEPEND=">=app-arch/snappy-1.1.3
74 + >=dev-cpp/yaml-cpp-0.5.3:=
75 + >=dev-libs/boost-1.60:=[threads(+)]
76 + >=dev-libs/libpcre-8.41[cxx]
77 + dev-libs/snowball-stemmer
78 + net-libs/libpcap
79 + >=sys-libs/zlib-1.2.8:=
80 + kerberos? ( dev-libs/cyrus-sasl[kerberos] )
81 + mms-agent? ( app-admin/mms-agent )
82 + ssl? (
83 + !libressl? ( >=dev-libs/openssl-1.0.1g:0= )
84 + libressl? ( dev-libs/libressl:0= )
85 + )"
86 +DEPEND="${RDEPEND}
87 + ${PYTHON_DEPS}
88 + dev-python/cheetah[${PYTHON_USEDEP}]
89 + dev-python/pyyaml[${PYTHON_USEDEP}]
90 + virtual/python-typing[${PYTHON_USEDEP}]
91 + sys-libs/ncurses:0=
92 + sys-libs/readline:0=
93 + debug? ( dev-util/valgrind )
94 + test? (
95 + dev-python/pymongo[${PYTHON_USEDEP}]
96 + )"
97 +PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
98 +
99 +PATCHES=(
100 + "${FILESDIR}/${PN}-3.4.7-no-boost-check.patch"
101 + "${FILESDIR}/${PN}-3.6.1-fix-scons.patch"
102 + "${FILESDIR}/${PN}-3.6.1-no-compass.patch"
103 +)
104 +
105 +S="${WORKDIR}/${MY_P}"
106 +
107 +pkg_pretend() {
108 + if [[ -n ${REPLACING_VERSIONS} ]]; then
109 + if ver_test "$REPLACING_VERSIONS" -lt 3.4; then
110 + ewarn "To upgrade from a version earlier than the 3.4-series, you must"
111 + ewarn "successively upgrade major releases until you have upgraded"
112 + ewarn "to 3.4-series. Then upgrade to 3.6 series."
113 + else
114 + ewarn "Be sure to set featureCompatibilityVersion to 3.4 before upgrading."
115 + fi
116 + fi
117 +}
118 +
119 +pkg_setup() {
120 + enewgroup mongodb
121 + enewuser mongodb -1 -1 /var/lib/${PN} mongodb
122 +
123 + python-single-r1_pkg_setup
124 +}
125 +
126 +src_prepare() {
127 + default
128 +
129 + # remove bundled libs
130 + rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*} || die
131 +
132 + # remove compass
133 + rm -r src/mongo/installer/compass || die
134 +}
135 +
136 +src_configure() {
137 + # https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
138 + # --use-system-icu fails tests
139 + # --use-system-tcmalloc is strongly NOT recommended:
140 + scons_opts=(
141 + CC="$(tc-getCC)"
142 + CXX="$(tc-getCXX)"
143 +
144 + --disable-warnings-as-errors
145 + --use-system-boost
146 + --use-system-pcre
147 + --use-system-snappy
148 + --use-system-stemmer
149 + --use-system-yaml
150 + --use-system-zlib
151 + )
152 +
153 + use debug && scons_opts+=( --dbg=on )
154 + use kerberos && scons_opts+=( --use-sasl-client )
155 + use lto && scons_opts+=( --lto=on )
156 + use ssl && scons_opts+=( --ssl )
157 +
158 + # respect mongoDB upstream's basic recommendations
159 + # see bug #536688 and #526114
160 + if ! use debug; then
161 + filter-flags '-m*'
162 + filter-flags '-O?'
163 + fi
164 +
165 + default
166 +}
167 +
168 +src_compile() {
169 + escons "${scons_opts[@]}" core tools
170 +}
171 +
172 +# FEATURES="test -usersandbox" emerge dev-db/mongodb
173 +src_test() {
174 + "${EPYTHON}" ./buildscripts/resmoke.py --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed"
175 +}
176 +
177 +src_install() {
178 + escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
179 +
180 + doman debian/mongo*.1
181 + dodoc README docs/building.md
182 +
183 + newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
184 + newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
185 + newinitd "${FILESDIR}/mongos.initd-r3" mongos
186 + newconfd "${FILESDIR}/mongos.confd-r3" mongos
187 +
188 + insinto /etc
189 + newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
190 + newins "${FILESDIR}/mongos.conf-r2" mongos.conf
191 +
192 + systemd_dounit "${FILESDIR}/${PN}.service"
193 +
194 + insinto /etc/logrotate.d/
195 + newins "${FILESDIR}/${PN}.logrotate" ${PN}
196 +
197 + # see bug #526114
198 + pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
199 +
200 + local x
201 + for x in /var/{lib,log}/${PN}; do
202 + diropts -m0750 -o mongodb -g mongodb
203 + keepdir "${x}"
204 + done
205 +}
206 +
207 +pkg_postinst() {
208 + ewarn "Make sure to read the release notes and follow the upgrade process:"
209 + ewarn " https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
210 + ewarn " https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
211 +}