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: Fri, 26 Jun 2020 23:00:48
Message-Id: 1593212388.071d0ff045ecae2fb9dc347c505cbf6f4114c8c9.whissi@gentoo
1 commit: 071d0ff045ecae2fb9dc347c505cbf6f4114c8c9
2 Author: Tomáš Mózes <hydrapolic <AT> gmail <DOT> com>
3 AuthorDate: Wed Jun 24 10:18:58 2020 +0000
4 Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
5 CommitDate: Fri Jun 26 22:59:48 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=071d0ff0
7
8 dev-db/mongodb: bump to 4.2.8
9
10 Package-Manager: Portage-2.3.102, Repoman-2.3.23
11 Signed-off-by: Tomáš Mózes <hydrapolic <AT> gmail.com>
12 Closes: https://github.com/gentoo/gentoo/pull/16392
13 Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
14
15 dev-db/mongodb/Manifest | 1 +
16 dev-db/mongodb/mongodb-4.2.8.ebuild | 174 ++++++++++++++++++++++++++++++++++++
17 2 files changed, 175 insertions(+)
18
19 diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
20 index e0116fc3986..6c786db69ba 100644
21 --- a/dev-db/mongodb/Manifest
22 +++ b/dev-db/mongodb/Manifest
23 @@ -5,3 +5,4 @@ DIST mongodb-src-r4.0.16.tar.gz 50091501 BLAKE2B a383f9fef8e5b2ceda9646dfc4f4f46
24 DIST mongodb-src-r4.0.19.tar.gz 50126414 BLAKE2B 2691e2a9c8833ff9a086b28fd137bc8e8f10d58570117657c7cc01edbf61568ae62f58440d72e8711de98b9fc6868c1095b4ee88eb7b0eb63ea45ce19e842edd SHA512 57032a009ea7e79de4cac496a2d1266b83b99cc45eb9f1169be2fcdca1ed2003a659ceedf9eafbd4aa7fc5b3b0513066a5d712af7666cee5a897b2a2d7dd30cb
25 DIST mongodb-src-r4.2.3.tar.gz 61565615 BLAKE2B 695310a497e57f1c735f175f5b321c93cda376ec734bb08d4cabbd562a865b327f529560220be9c22f571cc70af333a77f0116f04c7f7e3a40f275ab53ab1bf9 SHA512 60e9091cfab4a189a937dfa7ce232eb6ead2ca192c916579f4fb5da2040aa340ae9de0ea8c7a4ccb0edcfdbdf6e666144657f171c3f23c0a62bccf27cd351c69
26 DIST mongodb-src-r4.2.6.tar.gz 61671088 BLAKE2B 7f2b6240b05639d2bbe37ea148cbb225b30813879f71a5fc3c135ef7debd58edf75abe925d00f9ff96dc6a75a525b4504e25254b0046326069c05bb1dfd60827 SHA512 117c910807a8363aab6b899b436a4b06564b6e53abfa7f0fe6e01c1e242401ab5a3634d9edc5e0a5e2d548a480c90b70ac492eb199b3f2476d9045a78e376af8
27 +DIST mongodb-src-r4.2.8.tar.gz 61730247 BLAKE2B f1d98b8ac8f62c0c7aff100ef663bb20345de0e77e0ff420817db0843fe735b58af8075578a7f8d83cc9dc4e597c95ae09f89ce7a21cf8146ff15bcb11eba924 SHA512 163fce480762bd377d6c78b661bfe51fc883223a5309a68f9556e1bafb99e26e476d81dbe6de825d90469e835442be097be630ca9678e54b9d09091e0b5d67c4
28
29 diff --git a/dev-db/mongodb/mongodb-4.2.8.ebuild b/dev-db/mongodb/mongodb-4.2.8.ebuild
30 new file mode 100644
31 index 00000000000..b88bcf9c846
32 --- /dev/null
33 +++ b/dev-db/mongodb/mongodb-4.2.8.ebuild
34 @@ -0,0 +1,174 @@
35 +# Copyright 1999-2020 Gentoo Authors
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI=7
39 +
40 +PYTHON_COMPAT=( python3_{6,7} )
41 +
42 +SCONS_MIN_VERSION="2.5.0"
43 +CHECKREQS_DISK_BUILD="2400M"
44 +CHECKREQS_DISK_USR="512M"
45 +CHECKREQS_MEMORY="1024M"
46 +
47 +inherit check-reqs flag-o-matic multiprocessing pax-utils python-any-r1 scons-utils systemd toolchain-funcs
48 +
49 +MY_P=${PN}-src-r${PV/_rc/-rc}
50 +
51 +DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
52 +HOMEPAGE="https://www.mongodb.com"
53 +SRC_URI="https://fastdl.mongodb.org/src/${MY_P}.tar.gz"
54 +
55 +LICENSE="Apache-2.0 SSPL-1"
56 +SLOT="0"
57 +KEYWORDS="~amd64 ~arm64"
58 +IUSE="debug kerberos libressl lto ssl test +tools"
59 +RESTRICT="!test? ( test )"
60 +
61 +RDEPEND="acct-group/mongodb
62 + acct-user/mongodb
63 + >=app-arch/snappy-1.1.3
64 + >=dev-cpp/yaml-cpp-0.6.2:=
65 + >=dev-libs/boost-1.70:=[threads(+)]
66 + >=dev-libs/libpcre-8.42[cxx]
67 + app-arch/zstd
68 + dev-libs/snowball-stemmer
69 + net-libs/libpcap
70 + >=sys-libs/zlib-1.2.11:=
71 + kerberos? ( dev-libs/cyrus-sasl[kerberos] )
72 + ssl? (
73 + !libressl? ( >=dev-libs/openssl-1.0.1g:0= )
74 + libressl? ( dev-libs/libressl:0= )
75 + )"
76 +DEPEND="${RDEPEND}
77 + ${PYTHON_DEPS}
78 + $(python_gen_any_dep '
79 + test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
80 + >=dev-util/scons-2.5.0[${PYTHON_USEDEP}]
81 + dev-python/cheetah3[${PYTHON_USEDEP}]
82 + dev-python/psutil[${PYTHON_USEDEP}]
83 + dev-python/pyyaml[${PYTHON_USEDEP}]
84 + ')
85 + sys-libs/ncurses:0=
86 + sys-libs/readline:0=
87 + debug? ( dev-util/valgrind )"
88 +PDEPEND="tools? ( >=app-admin/mongo-tools-${PV} )"
89 +
90 +PATCHES=(
91 + "${FILESDIR}/${PN}-4.2.0-fix-scons.patch"
92 + "${FILESDIR}/${PN}-4.0.0-no-compass.patch"
93 +)
94 +
95 +S="${WORKDIR}/${MY_P}"
96 +
97 +python_check_deps() {
98 + if use test; then
99 + has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
100 + has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
101 + fi
102 +
103 + has_version ">=dev-util/scons-2.5.0[${PYTHON_USEDEP}]" &&
104 + has_version "dev-python/cheetah3[${PYTHON_USEDEP}]" &&
105 + has_version "dev-python/psutil[${PYTHON_USEDEP}]" &&
106 + has_version "dev-python/pyyaml[${PYTHON_USEDEP}]"
107 +}
108 +
109 +pkg_pretend() {
110 + if [[ -n ${REPLACING_VERSIONS} ]]; then
111 + if ver_test "$REPLACING_VERSIONS" -lt 4.0; then
112 + ewarn "To upgrade from a version earlier than the 4.0-series, you must"
113 + ewarn "successively upgrade major releases until you have upgraded"
114 + ewarn "to 4.0-series. Then upgrade to 4.2 series."
115 + else
116 + ewarn "Be sure to set featureCompatibilityVersion to 4.0 before upgrading."
117 + fi
118 + fi
119 +}
120 +
121 +src_prepare() {
122 + default
123 +
124 + # remove bundled libs
125 + rm -r src/third_party/{boost-*,pcre-*,scons-*,snappy-*,yaml-cpp-*,zlib-*,zstandard-*} || die
126 +
127 + # remove compass
128 + rm -r src/mongo/installer/compass || die
129 +}
130 +
131 +src_configure() {
132 + # https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
133 + # --use-system-icu fails tests
134 + # --use-system-tcmalloc is strongly NOT recommended:
135 + scons_opts=(
136 + CC="$(tc-getCC)"
137 + CXX="$(tc-getCXX)"
138 +
139 + --disable-warnings-as-errors
140 + --use-system-boost
141 + --use-system-pcre
142 + --use-system-snappy
143 + --use-system-stemmer
144 + --use-system-yaml
145 + --use-system-zlib
146 + --use-system-zstd
147 + )
148 +
149 + use arm64 && scons_opts+=( --use-hardware-crc32=off ) # Bug 701300
150 + use debug && scons_opts+=( --dbg=on )
151 + use kerberos && scons_opts+=( --use-sasl-client )
152 + use lto && scons_opts+=( --lto=on )
153 + use ssl && scons_opts+=( --ssl )
154 +
155 + # respect mongoDB upstream's basic recommendations
156 + # see bug #536688 and #526114
157 + if ! use debug; then
158 + filter-flags '-m*'
159 + filter-flags '-O?'
160 + fi
161 +
162 + default
163 +}
164 +
165 +src_compile() {
166 + escons "${scons_opts[@]}" core tools
167 +}
168 +
169 +# FEATURES="test -usersandbox" emerge dev-db/mongodb
170 +src_test() {
171 + "${EPYTHON}" ./buildscripts/resmoke.py --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed"
172 +}
173 +
174 +src_install() {
175 + escons "${scons_opts[@]}" --nostrip install --prefix="${ED}"/usr
176 +
177 + doman debian/mongo*.1
178 + dodoc README docs/building.md
179 +
180 + newinitd "${FILESDIR}/${PN}.initd-r3" ${PN}
181 + newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
182 + newinitd "${FILESDIR}/mongos.initd-r3" mongos
183 + newconfd "${FILESDIR}/mongos.confd-r3" mongos
184 +
185 + insinto /etc
186 + newins "${FILESDIR}/${PN}.conf-r3" ${PN}.conf
187 + newins "${FILESDIR}/mongos.conf-r2" mongos.conf
188 +
189 + systemd_dounit "${FILESDIR}/${PN}.service"
190 +
191 + insinto /etc/logrotate.d/
192 + newins "${FILESDIR}/${PN}.logrotate" ${PN}
193 +
194 + # see bug #526114
195 + pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
196 +
197 + local x
198 + for x in /var/{lib,log}/${PN}; do
199 + diropts -m0750 -o mongodb -g mongodb
200 + keepdir "${x}"
201 + done
202 +}
203 +
204 +pkg_postinst() {
205 + ewarn "Make sure to read the release notes and follow the upgrade process:"
206 + ewarn " https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/"
207 + ewarn " https://docs.mongodb.com/manual/release-notes/$(ver_cut 1-2)/#upgrade-procedures"
208 +}