Compare commits

..

535 Commits

Author SHA1 Message Date
7e5751baa5 [minio] remove, its basically EOL
looks like i will be using garage from ::phackerlay
2025-12-05 12:49:24 +01:00
e1434993fa [app-admin/loki] bump to 3, still needs alloy handling 2025-11-30 01:52:27 +01:00
7eda41404b [dev-libs/Ice] sync with tree 2025-11-28 14:09:37 +01:00
ec1e6aa230 [app-admin/loki] interim version, not really tested. 2025-11-28 13:45:03 +01:00
d1cf9f63fd [acct-user/loki] add 2025-11-28 13:44:30 +01:00
688a8df0b5 [app-admin/fluentd] bump, build tested and starts, nothing else yet 2025-11-28 13:41:56 +01:00
8de4f95793 [net-dns/bind] bump 2025-11-27 07:11:18 +01:00
a8484ad0ea [www-apps/grafana] bump 2025-11-22 12:46:21 +01:00
0835dea374 [dev-libs/mongo-c-driver] replace patch with upstream commit 2025-11-22 12:44:09 +01:00
3f5ad5a1c4 [dev-libs/libbson] replace patch with upstream commit 2025-11-22 12:43:47 +01:00
1231cdafe5 [dev-libs/mongo-c-driver] refresh patch from pr, fix libutf8proc dep 2025-11-15 17:04:05 +01:00
a0f5784eaa [dev-libs/libbson] refresh patch from pr 2025-11-15 17:02:13 +01:00
c0a68bbaaa [dev-db/timescaledb] bump 2025-11-14 12:30:23 +01:00
f49a692db8 [dev-db/mongodb] untested bump 2025-11-14 12:15:10 +01:00
8314a051af [dev-libs/libmongocrypt] unbreak non-test build 2025-11-14 12:10:36 +01:00
aaa45b474d [dev-db/postgresql] bump 17 series, add 18 2025-11-14 11:51:45 +01:00
d6f71d1cb2 [dev-lang/php] fix build (hack) move to zlib virtual 2025-11-09 17:06:51 +01:00
5c03dca335 [dev-db/mariadb-connector-c] yank weak blocker, irrelevant on newer versions 2025-11-09 17:05:06 +01:00
629cd040ac [dev-libs/mongo-c-driver] consolidate s3 useflag into ssl 2025-11-09 14:04:45 +01:00
cb54d60eb8 [dev-python/pymongo-auth-aws] py3k14 2025-11-09 12:29:42 +01:00
e2a8a6f7ce [dev-python/pymongocrypt] bump 2025-11-09 12:27:59 +01:00
b841574c7b [dev-libs/libmongocrypt] wire up tests and fix some cmake4isms 2025-11-09 12:02:37 +01:00
e1d5dbf030 [dev-libs/mongo-c-driver] sync against pr version, docutils 0.22 patch 2025-11-04 12:54:50 +01:00
150dcb8bd1 [dev-libs/libbson] sync against pr version, docutils 0.22 patch 2025-11-04 12:52:40 +01:00
2ac3ca79b2 [sec-keys/openpgp-keys-mongo-c-driver] ready to push this whole thing today, i think, fix metadata 2025-11-03 13:00:09 +01:00
1b2a5c5c9b [net-dns/bind] bump 2025-11-01 11:29:10 +01:00
175fde9437 [www-apps/grafana] clean up 2025-10-31 20:46:10 +01:00
d7fb27e28f [dev-go/wire] clean up 2025-10-31 20:44:14 +01:00
cf509a9900 [dev-libs/libbson] and fix it again ugh 2025-10-28 23:39:55 +01:00
05847b18f1 [dev-libs/libbson] fix USE=verify-sig 2025-10-28 19:01:20 +01:00
b46bc97782 [sec-keys/openpgp-keys-mongo-c-driver] rename for tree inclusion 2025-10-28 19:00:48 +01:00
3a93d52e7d [dev-libs/libmongocrypt] bump, untested 2025-10-28 01:16:21 +01:00
66adfd38a0 [www-misc/awstats] bump 2025-10-27 20:42:07 +01:00
bb3c564868 [www-apps/grafana] bump 2025-10-25 19:49:08 +02:00
22bf68fce3 [acct-*/grafana] minor updates i forgot to commit 2025-10-25 19:47:22 +02:00
089b435d52 [dev-lang/php] bump 7.4 2025-10-22 22:26:08 +02:00
f77997a8b1 [dev-db/postgresql] revbump to match tree 2025-10-20 14:10:19 +02:00
5379c9f4de [dev-libs/mongo-c-driver] roll new doc tarball with fixed script (thanks sam) and remove python eclass 2025-10-19 18:15:17 +02:00
03f74ef951 [dev-libs/libbson] roll new doc tarball and remove python eclass 2025-10-19 18:13:34 +02:00
7f63b7011b [dev-libs/mongo-c-driver] jank 1.24.4-r1, as its in a pr 2025-10-19 12:52:43 +02:00
948e8fda45 [dev-libs/mongo-c-driver] bump and static libs regression fix 2025-10-18 15:52:20 +02:00
958a8c9827 [dev-libs/libbson] bump 2025-10-18 15:50:24 +02:00
af9e666648 [net-irc/znc] sync with tree 2025-10-11 20:06:19 +02:00
0c53874a63 [dev-util/include-what-you-use] its in tree 2025-10-10 19:28:06 +02:00
229c6fcb3e [net-dns/bind] bump 2025-10-05 12:17:48 +02:00
25fda6cdfc [www-apps/grafana] add 2025-09-25 10:44:07 +02:00
1dd3f5cfe6 [acct-user/grafana] add for grafana 2025-09-25 10:43:17 +02:00
9ec4dfe05a [acct-group/grafana] add for grafana 2025-09-25 10:42:42 +02:00
714d0b092a [dev-go/wire] add for grafana 2025-09-23 00:49:02 +02:00
e57bdae767 [dev-util/include-what-you-use] py3k14 and LLVM 21 2025-09-22 21:41:28 +02:00
7a9993f852 [dev-libs/mongo-c-driver] disable manpage gen, fix verify-sig 2025-09-15 16:56:55 +02:00
1d89bc4211 [dev-libs/libbson] disable manpage gen, fix verify-sig 2025-09-15 16:56:19 +02:00
728ab5ef13 [dev-db/timescaledb] missed pg14 removal 2025-09-15 16:51:00 +02:00
cac773ad0e [dev-db/postgresql] support llvm21 2025-09-15 15:56:16 +02:00
5a0ccc7e1f [dev-libs/mongo-c-driver] add docs tarball 2025-09-15 15:43:19 +02:00
7573325668 [dev-libs/libbson] add docs tarball 2025-09-15 15:41:11 +02:00
d0414b7994 [dev-libs/mongo-c-driver] migrate to ctest, verify-sig, cmake4 2025-09-14 14:38:57 +02:00
33bba7b3f3 [dev-libs/libbson] add verify-sig, cmake4 compat 2025-09-14 14:33:59 +02:00
0bf538d486 [sec-keys/openpgp-keys-mongo-c-driver] initial import 2025-09-14 14:31:43 +02:00
0a3601bf16 [net-nds/389-ds-base] rm, in tree 2025-09-14 14:31:02 +02:00
1c025ed03a [net-nds/389-ds-base] add some patches 2025-09-12 16:55:13 +02:00
ff1202d171 Revert "[acct-*] change to seaweedfs, plans have changed"
it is not worth it, minio it is, then.

This reverts commit 61ed3aba26.
2025-09-02 19:20:25 +02:00
a500af9cdb [dev-util/include-what-you-use] add IWYU for clang 20 2025-09-02 19:19:10 +02:00
6a89c517c8 [dev-db/postgresql] bump 2025-08-16 21:20:22 +02:00
61ed3aba26 [acct-*] change to seaweedfs, plans have changed 2025-08-10 20:58:16 +02:00
ad3c054e69 [net-nds/389-ds-base] bump 2025-08-09 19:37:06 +02:00
89340f1a0c [net-dns/bind] bump 2025-08-02 22:33:35 +02:00
f0b1a20bc8 [dev-libs/libmongocrypt] bump 2025-08-02 11:25:48 +02:00
a63c42cdfd [sec-keys/openpgp-keys-mongodb] remove obsolete package 2025-07-22 15:40:28 +02:00
d6fb6280c5 [sec-keys/openpgp-keys-sssd] fix Manifest 2025-07-22 15:39:30 +02:00
eac0d0dbf0 [dev-libs/libmongocrypt] QA fix 2025-07-22 15:38:12 +02:00
1cf7d7802b [dev-libs/mongo-c-driver] bump and also libmongocrypt-less version 2025-07-22 15:37:24 +02:00
cdb3eed64d [dev-libs/libbson] bump 2025-07-22 15:32:59 +02:00
e601519a5a [app-admin/mongo-tools] QA fixes 2025-07-22 15:31:04 +02:00
067b432856 [dev-db/mongodb] bump 6 series 2025-07-19 17:20:57 +02:00
9fd084c297 [dev-db/timescaledb] bump 2025-07-19 02:20:22 +02:00
a78fc71ad4 [dev-db/timescaledb] rm old 2025-07-19 02:19:11 +02:00
5711c93437 [dev-db/postgresql] fix manifest 2025-07-19 02:18:52 +02:00
e5d8211833 [dev-lang/php] update snapshot 2025-07-11 02:52:41 +02:00
c7d8423e53 [sys-kernel/dracut] in-tree is fine now 2025-07-04 19:40:39 +02:00
92e546c2c6 [dev-python/reretry] turns out this was never needed 2025-07-04 19:39:18 +02:00
d0aefdd1fd [dev-python/pymongocrypt] bump 2025-07-04 19:38:41 +02:00
12537a2eaa [dev-libs/libmongocrypt] bump 2025-07-04 19:37:43 +02:00
63c65e6742 [dev-php/pecl-timezonedb] bump and reduce package to only relevant php versions 2025-07-04 19:27:23 +02:00
c49304f6c9 [sys-auth/libnss-extrausers] bump debian version, no source change 2025-07-04 19:10:07 +02:00
63371b48e7 [net-dns/bind] fix IUSE 2025-06-30 15:53:40 +02:00
bfe8b3d417 [net-dns/bind] bump 2025-06-29 23:49:34 +02:00
000a1fab68 [dev-db/postgresql] 16 removal and libxml2 subslot 2025-06-09 12:05:15 +02:00
d372b06a5a [dev-lang/php] add libxml2 subslot 2025-06-09 11:58:54 +02:00
726789c4f0 [sys-cluster/glusterfs] remove overshadowed 2025-06-09 11:57:22 +02:00
f24eb89380 [net-dns/bind] bump 2025-06-01 12:31:50 +02:00
940383d3c5 [dev-libs/Ice] py3.14 apparently works, so does php 8.4 2025-05-30 02:01:20 +02:00
6867dbd1cf [net-dns/bind] sync 2025-05-30 01:24:28 +02:00
a1e14eb551 [sys-auth/sssd] bump 2025-05-27 23:32:35 +02:00
d0bd08afd7 {dev-python/pymongocrypt] bump 2025-05-27 15:22:14 +02:00
f966ebb261 [dev-lang/php] update patchset 2025-05-17 19:37:19 +02:00
dddfde2022 [dev-libs/Ice] py3k13 2025-05-17 12:41:59 +02:00
52ddf32299 [dev-db/timescaledb] bump 2025-05-17 12:36:23 +02:00
d0a971040c [net-fs/nfs-ganesha] py3k13, which i apparently never commited 2025-05-15 14:01:20 +02:00
efa6126076 [dev-db/postgresql] bump 2025-05-15 13:57:32 +02:00
82c12b2341 [sys-cluster/glusterfs] sync 2025-05-11 21:44:01 +02:00
d0ad97eec8 [dev-libs/libmongocrypt] bump, use dot-a 2025-05-07 21:59:47 +02:00
9ab68b1bf2 [dev-libs/mongo-c-driver] bump, use dot-a 2025-05-07 21:58:45 +02:00
3aa2ae6c1b [dev-libs/libbson] bump, use dot-a 2025-05-07 21:58:04 +02:00
9fb465cae4 [dev-db/postgresql] sync 2025-05-07 21:26:53 +02:00
d1f41316a2 [net-nds/389-ds-base] py3k13 2025-05-06 14:33:38 +02:00
1dfc0f2167 [sys-cluster/glusterfs] sync tree 2025-04-25 12:55:16 +02:00
2f37b70508 [net-dns/bind] and the keys 2025-04-21 17:56:59 +02:00
dadb838313 [net-dns/bind] somehow the cache file keeps slipping back in 2025-04-21 17:44:38 +02:00
02ae36bb47 [net-dns/bind] bump 2025-04-21 17:29:49 +02:00
3e52eb10d5 [sys-auth/sssd] sync with tree 2025-04-21 16:45:58 +02:00
4ab380a405 [dev-python/reretry] new package, not tested with mongo8 yet 2025-04-21 16:44:45 +02:00
7c5d982f3f [dev-db/mongodb] bump 7 2025-04-14 22:14:38 +02:00
9bcea35893 [dev-db/mongodb] updates
removed 5, no longer in scope,
updated 6 and refreshed patches, mostly no change, revert to older configs for now to minimize diff to tree
refreshed 7 on top of 6, pending update
2025-04-14 18:29:56 +02:00
087c4ca311 [net-fs/minio] resurrect, probably builds, untested, inspiration from net-fs/mc 2025-04-11 18:46:15 +02:00
c415f64f65 [acct-user/minio] resurrect, eapi bump 2025-04-11 18:44:49 +02:00
75a62f600f [acct-group/minio] resurrect, eapi bump 2025-04-11 18:44:22 +02:00
7e1ba411dd [dev-python/pymongocrypt] bump 2025-04-09 14:35:58 +02:00
3d67332018 [dev-libs/libmongocrypt] bump 2025-04-09 14:34:14 +02:00
a795443578 [dev-libs/mongo-c-driver] bump 2025-04-09 14:32:55 +02:00
0a66a5635e [dev-libs/libbson] bump 2025-04-09 14:30:16 +02:00
0657a0ff49 [dev-python/pymongo-auth-aws] remove py3k10 2025-04-09 14:26:24 +02:00
f56ed735a0 [dev-libs/mongo-c-driver] skip a flaky test 2025-04-07 21:27:43 +02:00
6d0548c028 [dev-libs/mongo-c-driver] touch up old version for the tree again 2025-04-07 20:24:14 +02:00
cb97dd4739 [dev-libs/libbson] touch up old version for the tree again 2025-04-07 20:23:47 +02:00
1db773241a [sys-cluster/glusterfs] try py3k13 2025-04-06 20:56:13 +02:00
2c704daf1d [dev-lang/php] use a newer snapshot 2025-04-01 00:34:19 +02:00
9487fe22d8 [sys-auth/sssd] sync with tree 2025-03-31 21:44:54 +02:00
4075801cb5 [dev-lang/php] update to inode64 version 2025-03-31 21:40:45 +02:00
8046ba7502 [dev-db/mongodb] bump 5 series, sync the others 2025-03-22 23:18:46 +01:00
283cbf65ea [dev-db/timescaledb] bump 2025-03-12 18:13:53 +01:00
a55b727590 [dev-db/postgresql] sync 2025-03-07 19:09:55 +01:00
e676a16bc4 [dev-db/postgresql] bump 2025-02-22 12:48:12 +01:00
1add46f0c1 [app-crypt/certbot-dns-rfc2136] superseded by app-crypt/certbot in-tree 2025-02-21 18:11:22 +01:00
d18b34dfb3 [dev-db/postgresql] bump 2025-02-13 16:32:39 +01:00
329fe1fe90 [dev-db/timescaledb] bump, rm old 2025-02-13 15:55:24 +01:00
864d9a3f8a [sys-auth/sssd] sync 2025-01-15 13:29:16 +01:00
ef6ad0040c [dev-python/pymongocrypt] bump 2025-01-05 08:11:39 +01:00
5da9f07c05 [dev-db/mongodb] fix patch name 2024-12-21 04:40:26 +01:00
4444949d58 [dev-db/mongodb] bump 6 series, tree candidate 2024-12-21 04:36:43 +01:00
96772d9b66 [dev-db/mongodb] fix inherits 2024-12-19 00:00:32 +01:00
b571427429 [dev-lang/php] rebase 2024-12-17 16:21:30 +01:00
abbda3f701 [dev-db/mongodb] fix patch for 6 and up 2024-12-17 16:19:51 +01:00
1a7a3a7ecf [dev-db/mongodb] sync with tree, untested 2024-12-13 15:42:56 +01:00
ebc7d420e7 [sys-auth/sssd] fix the fix 2024-12-09 03:45:55 +01:00
fb7d45bc3d [sys-auth/sssd] fix multilib build 2024-12-09 03:40:01 +01:00
aeb6fbe34e [dev-db/mongodb] more clang. sigh. 2024-12-08 21:42:21 +01:00
dada1fc5ce [sys-auth/sssd] bump 2024-12-08 02:36:42 +01:00
f3067850e8 [dev-db/postgresql] sync with tree 2024-11-23 13:39:04 +01:00
966a7f96fa [dev-lang/php] rebase, new security stuff, change icu patch (no actual change) 2024-11-23 03:59:30 +01:00
2ee933af85 [dev-db/mongodb] bump 7 series 2024-11-20 19:23:06 +01:00
595982e4cb [dev-db/mongodb] bump 6 series, gcc11 patch needs rebase 2024-11-20 19:14:08 +01:00
47e7b1da90 [dev-db/mongodb] bump 5 series 2024-11-20 19:07:46 +01:00
7b9e4397ed [dev-db/timescaledb] sync 2024-11-17 13:45:01 +01:00
4e258a1599 [dev-libs/mongo-c-driver] bump 2024-11-16 20:08:41 +01:00
00aac76d11 [dev-libs/libmongocrypt] bump 2024-11-16 20:06:38 +01:00
2948003cdc [dev-libs/libbson] bump 2024-11-16 20:05:57 +01:00
159d61f161 [dev-db/timescaledb] welcome to "fix multibuild once and for all" season 2 2024-11-16 20:03:55 +01:00
6a90c9af59 [net-nds/389-ds-base] add with maximum rust removed since it builds fine 2024-11-16 15:01:04 +01:00
ad22304a63 [sys-kernel/dracut] sync 2024-11-16 15:00:17 +01:00
5541c03700 [dev-db/postgresql] fix drunk quoting 2024-11-15 22:06:18 +01:00
34c3105b84 [dev-db/mongodb] drop llvm 19 until toolchain upgrade (likely not for 6 anyway) 2024-11-15 22:00:55 +01:00
9e2efadd1c [dev-db/timescaledb] bump 2024-11-15 01:14:22 +01:00
c2a41f091e [dev-db/postgresql] sync 2024-11-15 01:00:24 +01:00
d524664c38 [sys-kernel/dracut] sync to in-tree live, deal with real cpio later 2024-11-12 22:35:47 +01:00
1da9e36a1a [sys-kernel/dracut] sync 2024-11-10 04:09:32 +01:00
b7aa1f2e70 [net-dns/bind] sync 2024-11-09 13:03:26 +01:00
2d3920dd89 [sys-kernel/dracut] sync 2024-11-06 15:35:00 +01:00
403c700a49 [net-dns/bind] fix the fix 2024-10-29 16:35:47 +01:00
de1117886a [net-dns/bind] remove old stuff again 2024-10-29 16:08:33 +01:00
a5bf0a0402 [net-dns/bind] sync 2024-10-29 12:19:41 +01:00
cdfcfe78b2 [sys-auth/sssd] sync 2024-10-29 12:01:26 +01:00
e622843475 [dev-db/mongodb] remove clang support from 5.0, almost EOL 2024-10-18 18:57:47 +02:00
e1c96a1978 [sys-auth/sssd] fix build with samba 4.21 2024-10-18 16:28:49 +02:00
fbcb1d3bb8 [sys-auth/sssd] sync 2024-10-15 11:52:37 +02:00
662a41cd01 [dev-java] arm--; 2024-10-12 19:37:11 +02:00
626ca68358 [app-crypt/certbot-dns-rfc2136] bump 2024-10-12 15:03:03 +02:00
9d7bf9b364 [dev-db/mongodb] bump to 7
doesn't really work on clang, needs variant removal backport as 6 does
2024-10-03 23:34:50 +02:00
0ecbee4bbd [sys-kernel/dracut] sync with tree 2024-10-02 12:18:37 +02:00
c58055499b [dev-db/postgresql] fix Manifest 2024-10-02 12:17:39 +02:00
88722430ed [dev-db/postgresql] fix USE=-server 2024-09-27 15:52:35 +02:00
f776862fd2 [dev-lang/php] --with-pear fix 2024-09-27 15:48:38 +02:00
92504c1c00 [dev-db/postgresql] sync with tree 2024-09-26 23:29:03 +02:00
0fb7b3f09d [dev-lang/php] rebase for new security fixes 2024-09-26 23:17:48 +02:00
f83e376a53 [dev-libs/mongo-c-driver] bump 2024-09-18 18:22:27 +02:00
6f8c769dfa [dev-libs/libbson] bump 2024-09-18 18:21:36 +02:00
a9f98e0c9a [dev-db/mongodb] bump 6 series 2024-09-15 19:05:03 +02:00
d311f6a293 [net-analyzer/netdata] sync, not tested yet 2024-09-14 17:59:19 +02:00
ef4ecb830f ekeyword ^ia64 */*/* 2024-09-12 21:40:03 +02:00
78c2cbd195 [dev-python/pymongo-auth-aws] bump 2024-09-12 01:55:23 +02:00
e3687455e4 [dev-db/mongodb] remove unused patch 2024-09-12 01:54:29 +02:00
a16f047b30 [dev-python/pymongocrypt] bump 2024-09-09 17:33:29 +02:00
e5d5ad4d94 add cpe identifiers for all mongodb packages, add clang useflag description to mongodb 2024-09-09 05:21:36 +02:00
0512a7e3a3 [net-im/spectrum2] remove protobuf hack 2024-09-08 21:33:57 +02:00
040134f5b2 [dev-db/mongodb] hopefully finish clang changes 2024-09-08 19:54:02 +02:00
b360af06a9 [dev-db/mongodb] allow clang on gcc profile 2024-09-08 03:51:44 +02:00
62b49ec482 [dev-db/mongodb] py3k13 stopped segfaulting, also add missed phase function 2024-09-07 22:15:36 +02:00
6f3e41662d [dev-db/mongodb] switch extra useflags to optfeature 2024-09-07 19:35:28 +02:00
e631839318 [dev-db/mongodb] add gcc 15 patch from abseil 2024-09-06 20:05:59 +02:00
5d71012c2d [dev-db/mongodb] clang stuff 2024-09-05 20:25:52 +02:00
602417250d [net-dns/bind] sync 2024-09-04 01:46:38 +02:00
8993dd075b [net-dns/bind] fix paths 2024-09-02 17:31:56 +02:00
88bd423204 [net-dns/bind] forgot to rename the file 2024-09-02 17:13:01 +02:00
5cc053875f [sys-auth/sssd] use in-tree bind dependency string 2024-09-02 16:57:15 +02:00
04642ca6f6 [net-dns/bind] whitespace 2024-09-02 16:50:44 +02:00
9a851e23bd [net-dns/bind] sync with tree, hopefully not breaking anything 2024-09-02 16:47:24 +02:00
6d4b7f8bba [net-dns/bind-tools] unsplit 2024-09-02 16:42:55 +02:00
ade75f86ff [sys-auth/libnss-extrausers] move from froxlor overlay 2024-09-01 17:54:39 +02:00
23324988ac [sys-auth/sssd] sync 2024-08-31 04:50:33 +02:00
057b5afc26 [net-fs/nfs-ganesha] pin for now, add subslot though. 2024-08-31 04:17:06 +02:00
f4f071f890 [dev-db/timescaledb] it helps to save actually. 2024-08-31 04:16:26 +02:00
6d44a3eddf [dev-db/timescaledb] bump 2024-08-31 04:01:33 +02:00
441892bc3d [sys-kernel/dracut] sync 2024-08-27 20:15:09 +02:00
e026074dac [dev-db/mongodb] bump, remove gh suffix 2024-08-26 22:56:13 +02:00
5892ffabe3 sync layout.conf from tree 2024-08-26 19:22:10 +02:00
9267591109 [dev-db/mongodb] fix clang 2024-08-25 00:37:56 +02:00
adbb4ea444 [net-fs/nfs-ganesha] complete the work on it for now, python untested 2024-08-23 16:31:24 +02:00
ea5de217c0 [net-libs/ntirpc] bump, also adjust nfs-ganesha dep so it might actually build this time 2024-08-23 07:03:49 +02:00
de14b751c6 [net-fs/nfs-ganesha] well, its slow, but we are getting somewhere. 2024-08-23 03:33:39 +02:00
d620cf6b4f fix use expand for ganesha for good now 2024-08-23 03:03:01 +02:00
a6a924e808 [dev-php/pecl-timezonedb] bump 2024-08-22 17:41:56 +02:00
3f2036bf6d [sys-kernel/dracut] sync 2024-08-17 22:03:42 +02:00
eed5e0f7b3 [net-mail/automx2] remove old 2024-08-17 14:51:46 +02:00
c47ac8d562 [dev-lang/php] use original patch 2024-08-17 14:02:39 +02:00
0d79d4ba69 [dev-lang/php] rebase (macos only patches) add icu75 from freebsd 2024-08-17 03:13:02 +02:00
e85a4f35de [dev-db/mysql] migrated to mariadb so delete 2024-08-17 02:36:48 +02:00
0dd32babce [dev-db/mongodb] drop py3k13 since it appears to be segfaulting now 2024-08-14 17:25:16 +02:00
6452dd8efb [dev-db/mongodb] fix filename 2024-08-14 04:14:47 +02:00
1afe3e5d08 [dev-db/mongodb] rebase patches and bump 6 series 2024-08-14 03:45:50 +02:00
95e4663968 [dev-db/postgresql] sync with tree 2024-08-11 13:00:42 +02:00
5f3651dab4 [dev-libs/libmongocrypt] bump 2024-08-03 07:50:31 +02:00
ee33e935c7 [dev-db/mongodb] fix last commit for 6 2024-07-26 03:18:21 +02:00
3ec35b706e [dev-db/mongodb] driver dep dropped, added clang patch 2024-07-25 12:10:58 +02:00
897da73489 [dev-db/mongodb] sync with tree 2024-07-24 14:40:39 +02:00
14426d85bb [dev-python/pymongo-auth-aws] replace test with sed from pymongo 2024-07-24 14:35:32 +02:00
50976c650d [dev-python/pymongocrypt] replace test with sed from pymongo 2024-07-24 14:33:24 +02:00
3be784dbc2 [dev-db/timescaledb] remove old 2024-07-24 14:30:40 +02:00
813324109f [app-crypt/certbot-dns-rfc2136] sync with tree 2024-07-23 11:39:03 +02:00
4c9b82680e [sys-kernel/dracut] sync 2024-07-21 12:16:18 +02:00
3887b81bd7 [sys-kernel/dracut] sync with tree 2024-07-20 04:02:15 +02:00
3201c0b3f4 [dev-libs/mongo-c-driver] only kill mongod if its started 2024-07-16 09:10:17 +02:00
bf6335f804 [dev-libs/mongo-c-driver] pkgcheck, minus s3 useflag description 2024-07-14 00:02:22 +02:00
0f058465d3 [dev-libs/libbson] pkgcheck 2024-07-14 00:00:33 +02:00
5ec920778a [dev-libs/mongo-c-driver] clean up 2024-07-13 23:53:27 +02:00
a78b0b860c [dev-libs/libbson] clean up 2024-07-13 23:36:10 +02:00
0e95b91953 [dev-libs/mongo-c-driver] skip mock tests 2024-07-13 19:41:52 +02:00
d7904ebfdb [dev-libs/mongo-c-driver] prepare version for tree 2024-07-13 01:59:29 +02:00
0ece479d4b [dev-libs/libbson] prepare version for tree 2024-07-13 01:58:20 +02:00
456262ff7b [dev-libs/libmongocrypt] add reference to static patch 2024-07-13 01:55:05 +02:00
478bfcff2d [dev-python/pymongocrypt] update PYTHON_COMPAT 2024-07-13 01:54:15 +02:00
b42212354f [dev-python/pymongo-auth-aws] update PYTHON_COMPAT 2024-07-13 01:53:27 +02:00
58d7ed5be4 [dev-db/timescaledb] bump, removing direct openssl linking 2024-07-11 17:23:58 +02:00
f3e586d3b6 [dev-db/mongodb] fix git hash for 5 series 2024-07-09 20:43:06 +02:00
12edae6bef [dev-db/mongodb] bump 5 series 2024-07-09 08:13:56 +02:00
d286bd20ad [dev-libs/libmongocrypt] add fix from pr to fix static, refresh version patch 2024-07-09 08:10:43 +02:00
20b46776f1 [dev-python/pymongocrypt] skip the segfaulting tests, need to check exact reason 2024-07-09 08:05:51 +02:00
196defa264 [dev-libs/libmongocrypt] enable inteldfp again, now that FETCHCOMMAND_FULLY_DISCONNECTED is gone
given its "fetching" from local fs its a non-issue
2024-07-06 02:18:49 +02:00
148a4f8dd7 [dev-libs/mongo-c-driver] bump 2024-07-04 02:56:26 +02:00
be3cf70d1a [dev-libs/libbson] bump 2024-07-04 02:54:43 +02:00
1f7ff865cd [app-admin/mongo-tools] bump 2024-07-04 02:52:43 +02:00
fc8c98c39a [dev-db/mongodb] add back dep on curl, use mongo-c-driver as bdep 2024-07-02 19:25:09 +02:00
eda630e4b2 [dev-python/pymongocrypt] bump, no real changes 2024-07-02 18:08:50 +02:00
c75c4b914c [dev-libs/mongo-c-driver] fix some stupid 2024-06-27 02:47:44 +02:00
9941b08cb5 [dev-libs/mongo-c-driver] bump to use proper release archive and python deps 2024-06-27 02:42:21 +02:00
83f727445f [dev-libs/libbson] bump to use proper release archive and python deps 2024-06-27 02:39:14 +02:00
22063264f4 [dev-db/mongodb] fix patches for 6 series 2024-06-27 00:18:26 +02:00
fb4fcdca2b [dev-python/pymongocrypt] bump, check tests still needed 2024-06-27 00:17:37 +02:00
cdb55721c8 [dev-python/pymongo-auth-aws] bump, tree candidate after checking keywords 2024-06-26 15:40:16 +02:00
cec770b120 [dev-libs/libmongocrypt] bump to 1.10.1 2024-06-25 23:24:35 +02:00
59b3658281 [dev-db/mongodb] bump to 6.0.16 2024-06-25 23:20:49 +02:00
8660a0ae86 [dev-libs/mongo-c-driver] try fixing stable candidate and remove non-existant option 2024-06-25 18:05:22 +02:00
a3be220c85 [dev-db/mongodb] re-add force jobs, needed for distcc 2024-06-25 18:02:26 +02:00
1d2885fbf9 [dev-db/mongodb] remove 4.4, its EOL 2024-06-25 18:01:35 +02:00
66fd904640 [dev-libs/mongo-c-driver] remove test restriction on x86 2024-06-25 01:51:24 +02:00
9cf87dd318 [dev-libs/mongo-c-driver] add a test-full useflag to mask on non-mongodb arches 2024-06-25 01:41:24 +02:00
45aadb32ea [dev-libs/mongo-c-driver] start test mongod with LC_ALL=C 2024-06-24 05:28:06 +02:00
31fdcd5f79 [dev-libs/libbson] restrict tests 2024-06-24 05:27:05 +02:00
85a2e481e3 [dev-libs/libmongocrypt] clean up 2024-06-23 18:14:23 +02:00
44a9d02f87 [dev-python/pymongocrypt] clean up 2024-06-23 18:10:33 +02:00
a5027e1c9e [dev-python/pymongo-auth-aws] clean up 2024-06-23 17:46:45 +02:00
eb35f025aa [dev-python/pymongo-auth-aws] add 2024-06-22 00:59:06 +02:00
e658d61f13 [dev-python/pymongocrypt] add 2024-06-22 00:58:40 +02:00
3e9c691316 [dev-libs/mongo-c-driver] add libmongocrypt and aws support 2024-06-22 00:57:50 +02:00
68b96b1f2e [dev-libs/libmongocrypt] add 2024-06-22 00:56:22 +02:00
4b78c7ceb6 [dev-libs/mongo-c-driver] skip tests with file and also run some more tests 2024-06-18 03:20:31 +02:00
360d56fbce [net-dns/bind] sync with eras overlay and remove uneeded patch 2024-06-18 03:13:38 +02:00
c7ee2425ee [dev-lang/php] refresh for one security fix 2024-06-14 18:29:20 +02:00
0ec3552ce2 [dev-db/timescaledb] fix build 2024-06-14 02:21:55 +02:00
994b448b18 [dev-db/timescaledb] EAPI 8 2024-06-12 16:41:42 +02:00
b3177c95f3 [dev-libs/libbson] move S up 2024-06-11 17:31:05 +02:00
5e911f8366 [dev-db/mongodb] fix typo 2024-06-09 14:57:09 +02:00
582220d3ad [dev-libs/mongo-c-driver] drop unneeded patches 2024-06-08 22:33:03 +02:00
171d8a9b7b [dev-libs/mongo-c-driver] bump, for mongodb6 (or 7, who knows) 2024-06-08 22:30:15 +02:00
8fe813c80f [dev-libs/libbson] bump, for mongodb6 (or 7, who knows) 2024-06-08 22:25:42 +02:00
203e31cda5 [dev-db/mongodb] commit some half finished work i guess 2024-06-08 22:24:15 +02:00
3bc4b1708f [dev-db/mongodb] fix tmpfiles install 2024-06-06 19:57:42 +02:00
360db7b1ab [dev-db/mongodb] for 6 migrate socket to /run and change logdir creation to tmpfiles 2024-06-06 15:20:40 +02:00
94ebf5ce48 [sys-auth/sssd] sync with tree 2024-06-06 03:26:25 +02:00
e800a863bf [dev-db/mongodb] bump 5 series 2024-06-06 03:20:08 +02:00
4368c5f7d0 [sys-kernel/dracut] sync with tree 2024-06-06 03:16:35 +02:00
6b974d959a [dev-db/mongodb] split boost 1.85 so it can be reused, 6 should build now 2024-06-01 18:37:41 +02:00
515cc1e59d [dev-db/mongodb] WIP, 6 still broken 2024-06-01 03:51:38 +02:00
3eaf2ae1ad [net-dns/bind] bump 2024-05-18 14:26:59 +02:00
c6fa8d4a86 [net-dns/bind-tools] bump 2024-05-18 14:26:20 +02:00
70225f405e [app-misc/solaar] in tree 2024-05-17 13:36:46 +02:00
7da2eed08e [app-misc/solaar] test bump and stuff 2024-05-16 17:12:08 +02:00
307203176a [dev-db/mongodb] fix git hash 2024-05-16 17:11:41 +02:00
98941761be [dev-db/postgresql] sync 2024-05-15 15:11:32 +02:00
f6effdf31c [dev-db/mongodb] bump, lightly build tested 2024-05-13 14:49:34 +02:00
b7bc74f68e [dev-db/postgresql] sync 2024-05-13 14:44:58 +02:00
21803c47cc [dev-db/mongodb] use github tarball as per SERVER-90264 2024-05-10 10:16:27 +02:00
afa7c21d94 [app-admin/mongo-tools] remove env vars for testing 2024-05-10 10:15:00 +02:00
2587acd24c [dev-db/postgresql] bump 2024-05-09 19:37:02 +02:00
fdf1e23e36 [dev-libs/Ice] remove in-tree stuff 2024-05-06 05:13:06 +02:00
5b039875f0 [dev-db/mongodb] add back scons as a dep so python flags are synced 2024-04-29 12:52:24 +02:00
442524fc45 [dev-db/mongodb] fix the fix for 5.0 2024-04-28 22:22:31 +02:00
e0b4b09600 [dev-db/mongodb] fix patch 2024-04-28 21:57:37 +02:00
d644135c79 [net-nds/389-ds-base] rm, in tree 2024-04-28 13:12:56 +02:00
3e741a8c5f [dev-db/mongodb] support py3k12 2024-04-28 02:12:04 +02:00
84aa05439d [net-nds/389-ds-base] bump 2024-04-17 01:59:15 +02:00
eebcd4d28b [app-crypt/certbot-dns-rfc2136] bump 2024-04-15 10:58:15 +02:00
eab7d16461 [dev-lang/php] rebase 2024-04-15 02:11:00 +02:00
6d151cad50 [sys-kernel/dracut] bump 2024-04-08 18:03:31 +02:00
c98a7cf6ae [sys-kernel/dracut] back to r1 2024-04-06 22:27:44 +02:00
8fd0f197f5 [sys-kernel/dracut] change to the use of new fork, from gentoo PR 2024-04-06 15:39:18 +02:00
bfd294583c [dev-db/timescaledb] bump 2024-03-27 16:25:18 +01:00
645e1aa275 [dev-db/mongodb] bump 2024-03-22 12:38:21 +01:00
269ce392fc [sys-kernel/dracut] sync 2024-03-19 16:01:45 +01:00
8d9df8edb5 [sys-kernel/dracut] sync 2024-03-07 11:39:42 +01:00
57dd8a01c0 [dev-db/mysql] sync with gentoo 2024-03-07 10:43:34 +01:00
54b8162128 [net-mail/automx2] bump, without tests 2024-03-03 20:49:22 +01:00
ded6e7b355 [net-dns/bind] fix src_install 2024-02-28 15:53:28 +01:00
8075f07210 [net-dns/bind*] fix manifest 2024-02-28 15:49:22 +01:00
59f111c889 [net-dns/bind] bump, remove root hints
at this point, bind releases align well enough to root hint updates to warrant the removal of the extra file
2024-02-28 15:40:05 +01:00
217fbbe8fe [net-dns/bind-tools] bump 2024-02-28 15:35:25 +01:00
87785e6981 sync layout.conf with gentoo 2024-02-25 16:12:14 +01:00
e6e3511490 [dev-db/mongodb] bump, some bugfixes, tree candidate after usersandbox touchup 2024-02-24 16:20:44 +01:00
8ea1dd7711 [sec-keys/openpgp-keys-mongodb] add keys for mongodb 2024-02-24 16:18:21 +01:00
512e0af4c7 [dev-db/mysql] added last 5.7 for short-term usage (hopefully)
test suite not run yet, but builds and works
2024-02-21 17:11:53 +01:00
96ee879edd [net-dns/bind-tools] fix static libs 2024-02-18 21:12:03 +01:00
90e0a5af34 [net-dns/bind] sync a bit from gentoo 2024-02-18 20:44:36 +01:00
0bce97407f [net-dns/bind-tools] sync a bit from gentoo 2024-02-18 20:41:06 +01:00
54afe9377f [dev-libs/Ice] add php 8.3 and ruby 3.3 2024-02-16 16:15:57 +01:00
39d0c4bb16 [dev-db/timescaledb] bump 2024-02-13 10:37:32 +01:00
78c6b9cfcb [app-crypt/certbot-dns-rfc2136] bump 2024-02-13 06:57:54 +01:00
26950b0767 [dev-db/postgresql] sync 2024-02-08 16:43:46 +01:00
7e7593fc57 [dev-db/postgresql] sync 2024-02-04 12:40:02 +01:00
46ea85fce4 [sys-kernel/dracut] sync 2024-02-04 03:33:22 +01:00
d823c2e168 [sys-kernel/dracut] sync 2024-02-03 04:56:27 +01:00
5e13366582 [dev-db/postgresql] sync 2024-02-03 04:26:35 +01:00
b326747158 [sys-auth/sssd] sync 2024-01-23 15:41:43 +01:00
647f07acc8 [sec-keys/openpgp-keys-sssd] use actual commit date of key 2024-01-23 15:30:02 +01:00
4af4ace725 [dev-lang/php] adapt to sodium change 2024-01-17 22:56:18 +01:00
5e61225cf1 [dev-db/mongodb] handle another pkgmove in ::gentoo 2024-01-17 19:15:23 +01:00
4247ecd8ae [dev-db/postgresql] sync 2024-01-17 04:53:56 +01:00
0742947528 [sys-kernel/dracut] fix EGIT_COMMIT 2024-01-16 01:13:17 +01:00
a58474841e [sys-kernel/dracut] sync 2024-01-15 23:12:26 +01:00
e463189d82 handle most package renames 2024-01-15 23:11:23 +01:00
ebe952671e [dev-db/mongodb] sync 2024-01-14 05:33:17 +01:00
a9bab0ab24 [dev-db/mongodb] bump 2024-01-12 02:05:33 +01:00
dec2483ec8 [dev-db/timescaledb] bump 2024-01-12 02:02:51 +01:00
31a70a95d0 [net-im/spectrum2] try a fix for newer protobuf 2024-01-02 17:50:38 +01:00
5806fb08e2 [net-analyzer/netdata] bump to 1.44.1, 9999 still broken 2023-12-31 21:36:10 +01:00
0cc8df06a8 [net-nds/389-ds-base] specify required rust version 2023-12-31 20:38:20 +01:00
5b3d88618c [dev-lang/php] rebase. windows-only change 2023-12-25 17:02:16 +01:00
99b0269979 [net-dns/bind-tools] bump 2023-12-24 16:24:31 +01:00
8d82e18bbd [net-dns/bind] bump 2023-12-24 16:23:08 +01:00
4410ffc5ad [net-nds/389-ds-base] bump 2023-12-24 16:04:31 +01:00
5259c2f9d1 [sys-kernel/dracut] sync, now back to EAPI 8 since CRATES can be empty 2023-12-24 16:02:21 +01:00
a14591e59e [mail-filter/amavisd-new] rm, in tree 2023-12-19 03:14:42 +01:00
6856c25916 [mail-filter/amavisd-new] add from PR 2023-12-16 23:57:18 +01:00
fb746c5923 [dev-db/mongodb] bump, need to rebase patches still 2023-12-15 17:09:56 +01:00
a4cb5f1e58 [app-admin/mongo-tools] bump 2023-12-14 17:00:22 +01:00
332d53bda1 jank jdbc-postgresql, its in tree 2023-12-08 16:51:57 +01:00
27479ea41d add some jdbc-postgresql stuff from a pr 2023-12-06 22:42:40 +01:00
22f7180b65 [dev-db/timescaledb] bump 2023-11-28 17:45:18 +01:00
6a25b04934 [dev-db/timescaledb] bump 2023-11-27 18:46:35 +01:00
c239254473 [dev-db/postgresql] sync 2023-11-11 17:22:53 +01:00
739223b5de [dev-db/postgresql] sync 2023-11-10 18:22:09 +01:00
55b012b0a3 [dev-libs/Ice] add 3.7.10 for testing 2023-11-10 13:00:19 +01:00
b7013c20fd [sys-kernel/dracut] sync with tree 2023-11-10 12:56:03 +01:00
7fef909268 [net-irc/znc] sync 2023-11-07 16:58:59 +01:00
9d21662f4f [sys-kernel/dracut] sync 2023-10-30 16:46:28 +01:00
7fa2ee1b65 [app-crypt/certbot-dns-rfc2136] bump 2023-10-08 17:05:49 +02:00
0cfde3c0cf [dev-db/postgresql] sync 2023-10-08 14:20:03 +02:00
38bc40179f [net-analyzer/netdata] sync 2023-10-05 01:34:25 +02:00
cf35e3d9f3 [dev-db/postgresql] sync 2023-10-05 01:29:23 +02:00
c7ef7152b8 [app-crypt/certbot-dns-rfc2136] bump 2023-10-05 01:19:27 +02:00
b96824b2cf [net-im/swift] drop, its in tree 2023-10-04 23:56:25 +02:00
d20b79f7af [net-im/swift] add a temp r1 for tree, drop 9999 2023-10-04 23:05:45 +02:00
edeabe67e9 [sys-auth/sssd] bump, support py3k12 2023-09-29 12:40:09 +02:00
1f7ddfdbb0 [dev-db/mongodb] bump 2023-09-27 00:17:03 +02:00
8ab5ce574b [sys-kernel/dracut] sync with tree 2023-09-27 00:07:54 +02:00
b4801f2407 [dev-db/mongodb] bump, mostly freemon removal 2023-09-10 23:33:47 +02:00
790a15d83e [dev-lang/php] add php 7.4 junk 2023-09-10 23:05:34 +02:00
52cc6d125b [dev-db/mongodb] disable freemon, breaks with boost 1.83 apparently 2023-09-07 17:25:09 +02:00
3d91b58d93 [net-misc/oidentd] drop, in tree 2023-09-07 01:28:10 +02:00
9a0117c755 [sys-auth/sssd] sync 2023-09-07 01:04:19 +02:00
1cf313876e [sys-auth/sssd] sort deps, remove dupe 2023-09-01 22:35:39 +02:00
463119a925 [app-admin/mongo-tools] bump 2023-09-01 22:33:41 +02:00
e21a5c6809 [sys-auth/sssd] more stupid fixing 2023-08-28 04:57:59 +02:00
854e1de3e1 [sys-auth/sssd] fix some stupid 2023-08-27 23:05:58 +02:00
d5551df3b2 [sys-auth/sssd] merge some changes from recent pr for further testing 2023-08-27 22:52:46 +02:00
e8259ac6b8 [net-dns/bind] bump 2023-08-22 18:01:22 +02:00
604cdc1471 [net-dns/bind-tools] bump 2023-08-22 18:00:57 +02:00
e8bd876824 [dev-db/mongodb] bump 2023-08-22 07:47:21 +02:00
3bbce25294 [net-analyzer/netdata] sync 2023-08-22 05:20:14 +02:00
9a1551004a [net-im/spectrum2] drop twitter, sync 2023-08-21 23:56:21 +02:00
b142cb651a [dev-db/postgresql] bump 2023-08-21 16:35:15 +02:00
3ce0a78760 [dev-db/timescaledb] bump 2023-08-21 16:30:14 +02:00
e5ffe7eca6 [sys-kernel/dracut] sync 2023-07-20 14:42:00 +02:00
e78bbbf248 [dev-db/timescaledb] sync 2023-07-03 13:54:38 +02:00
59d402d2e8 [sys-auth/sssd] bump 2023-06-25 19:00:41 +02:00
a298269c8e [net-analyzer/netdata] sync 2023-06-24 21:26:33 +02:00
154146e5dc [net-dns/bind-tools] bump 2023-06-24 11:26:06 +02:00
3a3b887758 [net-dns/bind] bump 2023-06-24 11:23:14 +02:00
16b105d1e6 [net-misc/oidentd] bump to 3.1.0 2023-06-22 16:58:03 +02:00
499d3a5c7c [net-analyzer/netdata] sync 2023-06-15 17:19:23 +02:00
df68f27d1c [sys-auth/sssd] bump, only lightly tested 2023-06-12 13:39:28 +02:00
ccc914a7bb [dev-libs/Ice] bump python and ruby, untested 2023-06-12 12:50:15 +02:00
bc1580781a [sys-auth/sssd] fix stupidity 2023-05-30 01:56:51 +02:00
a5114bb6a3 [sys-kernel/dracut] sync with tree 2023-05-30 00:34:57 +02:00
123087aa06 [sys-auth/sssd] sync 2023-05-30 00:10:57 +02:00
19e3768c10 [dev-db/postgresql] add from pr with improved init script 2023-05-13 14:20:09 +02:00
df53d9636f [net-dns/bind-tools] disable json-c again 2023-05-09 23:03:59 +02:00
f84cef3a7f py3k9-- 2023-05-02 18:00:00 +02:00
8e47e994ae [sys-kernel/dracut] sync 2023-05-02 17:58:53 +02:00
dedf9e0d4a [net-libs/libmnl] sync 2023-05-02 17:56:26 +02:00
871bc19cf0 [net-firewall/iptables] sync 2023-05-02 17:50:48 +02:00
4961859465 [net-dns/bind-tools] bump 2023-05-02 17:24:40 +02:00
6eceedba96 [net-dns/bind] bump 2023-05-02 17:22:57 +02:00
cf83d0fbb6 [net-analyzer/netdata] sync 2023-05-02 17:18:53 +02:00
c900f1d524 [dev-java/slf4j-*] jss still needs it, so add. 2023-05-02 17:12:50 +02:00
d7ef2cac67 [dev-db/mongodb] bump, new version soon, though 2023-05-02 17:08:10 +02:00
ac2f847bd9 [dev-db/lmdb] remove unmaintained live ebuild 2023-05-02 17:05:12 +02:00
62ae015b35 [app-crypt/certbot-dns-rfc2136] bump 2023-05-02 16:02:06 +02:00
922972b17a [net-mail/automx2] rm, now in tree 2023-05-01 20:31:12 +02:00
9fdeccf26a [net-im/spectrum2] sync 2023-04-30 22:28:42 +02:00
6894485926 [www-misc/awstats] bump 2023-04-30 22:23:02 +02:00
dc724f4303 [dev-db/timescaledb] bump 2023-04-29 18:33:10 +02:00
497b2165e5 [dev-db/timescaledb] bump 2023-04-21 12:46:03 +02:00
778d3cf61b [dev-db/mongodb] sync with tree 2023-04-21 00:47:57 +02:00
274a1ca377 [dev-db/mongodb] bump 2023-04-11 18:52:23 +02:00
e690293a31 [net-dns/bind] bump 2023-04-07 17:46:10 +02:00
50481ec04f [net-dns/bind-tools] bump 2023-04-07 17:45:24 +02:00
5abcaeee26 [net-mail/automx2] add since its last py3k10 consumer on the system 2023-04-07 17:41:15 +02:00
3160615f98 [net-irc/znc] add cctz 2023-04-05 13:55:06 +02:00
f64c6266e7 [dev-db/timescaledb] bump 2023-04-05 12:05:36 +02:00
3ef1c19c85 [dev-db/mongodb] add newer 2023-03-03 18:59:39 +01:00
6d67032b2b [app-admin/mongo-tools] add newer 2023-03-03 18:58:28 +01:00
09fbccd427 [app-crypt/certbot-dns-rfc2136] bump and modernize, from tree 2023-02-17 02:34:56 +01:00
f18522740a [dev-python/aiohttp-json-rpc] use pypi eclass 2023-02-14 02:34:39 +01:00
66c868abd0 [dev-db/timescaledb] bump, now compatible with zabbix 2023-02-07 14:19:48 +01:00
245ef97700 [net-im/swift] py3k11 2023-02-05 18:16:55 +01:00
9defca04e2 [net-im/spectrum2] sync with tree 2023-02-05 00:42:05 +01:00
2f1adb5c63 [sys-auth/sssd] add py3k11 2023-02-04 03:18:31 +01:00
cdf4b73806 [net-analyzer/netdata] fping plugin removed, sync with tree, add py3k11 2023-02-04 03:17:19 +01:00
6f1cf9f9bb [net-dns/bind-tools] bump 2023-02-04 03:09:31 +01:00
35d63f7260 [net-dns/bind] bump 2023-02-04 03:08:29 +01:00
ff8a2ebf63 remove py3.8 2023-01-18 10:41:48 +01:00
9a19ffcbdb [sys-auth/sssd] bump 2022-12-31 00:24:20 +01:00
a50691f316 [sys-kernel/dracut] bump 2022-12-31 00:21:12 +01:00
5de428735c [dev-libs/Ice] rm, in tree 2022-12-31 00:20:48 +01:00
b0b8aa9456 [app-crypt/certbot-dns-rfc2136] bump 2022-12-23 16:20:02 +01:00
4ea66e22be [net-dns/bind] bump and sync a bit with eras overlay 2022-12-23 15:22:36 +01:00
da197ee410 [net-dns/bind-tools] bump and sync a bit with eras overlay 2022-12-23 15:21:58 +01:00
d06c175837 [net-analyzer/netdata] sync with tree 2022-12-19 13:19:14 +01:00
158a86af2a [net-dns/bind-tools] disable json-c only used in named and libisc 2022-12-01 01:56:30 +01:00
921566493c [sys-auth/sssd] condense pac into samba, bind changes for overlay, style 2022-11-28 13:43:32 +01:00
c5df2b4b6e [net-dns/bind] bump from gentoo pr 2022-11-28 13:35:22 +01:00
eb8c372ed9 [dev-php/PEAR-PHP_Archive] add new package 2022-11-23 15:45:41 +01:00
77fca9c667 [dev-libs/Ice] works with PHP 8.2 2022-11-23 15:43:16 +01:00
dc1e93be0a [net-irc/znc] sync 2022-11-06 18:58:35 +01:00
ff1d428fd7 [dev-libs/Ice] add py3k11 support 2022-11-06 04:13:19 +01:00
6620a35f85 [dev-db/timescaledb] bump 2022-11-06 04:11:52 +01:00
607f5b5692 [sys-auth/sssd] bump 2022-11-06 04:09:50 +01:00
a03a78baca [sys-auth/sssd] bump 2022-10-11 16:51:49 +02:00
cc08517a36 [sys-kernel/dracut] sync with tree 2022-10-11 16:46:23 +02:00
61cf594654 [sys-kernel/dracut] restore missing option for rust 2022-10-08 15:18:17 +02:00
c34feb13e2 [sys-auth/sssd] bump 2022-09-30 16:31:40 +02:00
a4e3dd041a [dev-libs/Ice] add arm64 from tree 2022-09-19 19:15:05 +02:00
2332ec5074 [dev-db/timescaledb] bump. no 2.8 yet because zabbix doesn't support it 2022-09-10 15:19:39 +02:00
7d1fb3067d [dev-libs/Ice] bump. this is for tree now 2022-09-10 09:52:17 +02:00
509b398bd0 [net-irc/znc] sync with tree 2022-08-07 22:02:39 +02:00
fadbc1d0c7 [dev-libs/Ice] add upstream fix for IceFuture, more QA 2022-07-15 17:01:38 +02:00
b8d4439b5b [net-firewall/iptables] sync with tree 2022-07-15 16:44:57 +02:00
c7690e78d0 [net-analyzer/netdata] sync with tree 2022-07-15 16:35:00 +02:00
2f94c70fb6 [sys-auth/sssd] version bump 2022-07-11 03:07:39 +02:00
e6e3be6616 [sys-kernel/dracut] sync with tree 2022-07-06 11:23:05 +02:00
9809350047 [dev-libs/Ice] more pkgcheck junk 2022-06-27 17:46:08 +02:00
9d8d0cb23a [dev-libs/Ice] fix pkgcheck stuff, jank p3k11, needs patching 2022-06-26 20:22:58 +02:00
663e137198 [sys-kernel/dracut] bump 2022-06-23 14:21:11 +02:00
bd051caf10 [sys-auth/sssd] bump, fix patch 2022-06-22 23:55:44 +02:00
eadad31d21 [sys-kernel/dracut] sync with tree 2022-06-08 13:41:05 +02:00
93f7dd0ff8 [dev-libs/Ice] fix ruby in 3.1 ebuild, add py3k11 for testing 2022-06-04 10:50:49 +02:00
5a673bbc29 [sys-kernel/dracut] dial back to EAPI 7 2022-06-01 03:26:18 +02:00
a9bcf8c921 [sys-kernel/dracut] sync with tree 2022-05-28 11:48:17 +02:00
30568c811f [dev-db/timescaledb] bump 2022-05-26 12:22:52 +02:00
62caa771d8 [sys-auth/sssd] fix patch 2022-05-16 04:37:09 +02:00
5e86854d9b [sys-auth/sssd] bump 2022-05-16 00:23:35 +02:00
27007b4250 [sec-keys/openpgp-keys-sssd] add key for sys-auth/sssd-2.7.0 and higher 2022-05-16 00:22:59 +02:00
a876ec04b9 [sys-kernel/dracut] fix some stupid 2022-05-14 18:21:13 +02:00
9b0300083a [dev-db/timescaledb] bump 2022-05-14 18:20:11 +02:00
bb89402e9d [dev-libs/Ice] fix patch name 2022-04-26 15:52:09 +02:00
0d76176190 [sys-auth/sssd] sync with tree 2022-03-29 03:05:17 +02:00
dcf813dc58 [net-nds/389-ds-base] rm, its in tree 2022-03-19 02:49:27 +01:00
cb3f7b6d5c [sys-auth/sssd] bump with... "some" locale handling. 2022-03-15 21:35:52 +01:00
3f8369fbed [net-analyzer/netdata] tree version, but more filecaps. ugh. 2022-03-15 21:35:18 +01:00
b5fe56f50b [www-apps/gitea] remove ancient 2022-03-15 21:33:50 +01:00
a2ffffac97 [net-fs/nfs-ganesha] bump, still not really using this lol 2022-03-15 21:32:48 +01:00
4cbf9bab60 [dev-python/aiohttp-json-rpc] use PEP517 2022-03-15 21:31:57 +01:00
05b3386dea [dev-python/aiosqlite] jank, unneeded by red now 2022-03-15 21:31:19 +01:00
12b2cde06b remove stray file 2022-03-15 21:30:08 +01:00
b017aab0b9 [net-nds/389-ds-base] bump 2022-03-15 21:26:06 +01:00
039ecc01ab [dev-libs/Ice] prepare for tree, jank 3.6 2022-03-15 21:24:29 +01:00
424622be99 [sys-kernel/dracut] bump, with rusty bits 2022-03-15 21:23:04 +01:00
ee591ecf6d [dev-java/slf4j-jdk14] bump, untested 2022-03-14 16:11:54 +01:00
ce77c7e911 [dev-java/slf4j-ext] jank, its back in tree 2022-03-14 16:10:11 +01:00
d98f0bbc04 [dev-db/timescaledb] bump, remove old 2022-03-12 22:25:46 +01:00
1328bb92aa [net-im/spectrum2] sync with tree 2022-03-12 21:30:04 +01:00
675577fffd [net-im/spectrum2] sync 2021-10-27 16:45:50 +02:00
8cc208303c [sys-libs/pam_wrapper] rm, better version in tree 2021-10-27 16:45:08 +02:00
e80b2ba340 drop dependencies of pki console - its deprecated 2021-10-11 16:51:15 +02:00
95ca75b93e [dev-db/timescaledb] bump 2021-09-30 20:16:37 +02:00
422bfd9cba [sys-auth/sssd] sync with tree 2021-09-21 23:54:46 +02:00
c65741c975 [net-nds/389-ds-base] bump 2021-09-21 21:53:52 +02:00
0d47502253 [app-crypt/certbot-dns-rfc2136] bump 2021-09-16 00:30:13 +02:00
10b7969c09 sync up, clean out metadatas 2021-09-11 16:22:00 +02:00
917af7c55d [www-servers/procodile] rm, unused 2021-09-07 17:24:02 +02:00
21cee6c9d4 [dev-python/argparse-manpage] remove, in tree 2021-09-07 15:51:47 +02:00
b5212ef108 [dev-libs/Ice] fix dependencies 2021-09-03 11:27:23 +02:00
cce8c0c560 [dev-libs/Ice] revert ruby on 3.6 prepare 3.7 for tree 2021-09-02 16:17:14 +02:00
77c495d604 [dev-db/timescaledb] bump, keep old around for upgraders for a bit 2021-08-25 00:07:32 +02:00
648f44fa3f [app-crypt/certbot-dns-rfc2136] remove obsolete dep 2021-08-25 00:04:27 +02:00
ea6841e7e4 [net-irc/znc] sync with tree 2021-08-25 00:03:53 +02:00
248 changed files with 10371 additions and 3690 deletions

View File

@@ -0,0 +1,9 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit acct-group
DESCRIPTION="Grafana program group"
ACCT_GROUP_ID=200

View File

@@ -0,0 +1,12 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit acct-user
DESCRIPTION="Grafana program user"
ACCT_USER_ID=200
ACCT_USER_GROUPS=( "${PN}" )
acct-user_add_deps

View File

@@ -0,0 +1,13 @@
# Copyright 2019-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit acct-user
DESCRIPTION="Loki program user"
ACCT_USER_ID=200
ACCT_USER_GROUPS=( grafana )
acct-user_add_deps

View File

@@ -0,0 +1 @@
DIST fluentd-1.16.10.gem 885248 BLAKE2B 470e87898868f90afc8c20ed627b5b91d07b12184ca60afbf86e271c63325ebe50a28f0c3d0201ddac25af31b3121e04e848275632d1fc28e73852f36554093e SHA512 36924e3618dc7218e804cc71a6b24cf9ee953fe6ac2f8c4e1d3728fae1057de8f32dca987cd0d5ef3232960cedf33f121b07eb24354da4ef2c0f840f914c5f93

View File

@@ -0,0 +1,2 @@
# If you need to pass any extra options to fluentd, set them here.
#fluentd_opts=""

View File

@@ -0,0 +1,15 @@
#!/sbin/openrc-run
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
command=/usr/bin/fluentd
logfile=/var/log/fluentd/fluent.log
pidfile=/var/run/fluentd.pid
command_args="--no-supervisor -o ${logfile} ${fluentd_opts}"
command_background=yes
command_user=fluentd:fluentd
retry="${retry:-TERM/10/KILL/30}"
start_pre() {
fluentd -q --dry-run
}

View File

@@ -0,0 +1,11 @@
# /etc/logrotate.d/fluentd
/var/log/fluentd/*log {
su fluentd fluentd
weekly
rotate 6
compress
delaycompress
missingok
notifempty
create 664 fluentd fluentd
}

View File

@@ -0,0 +1,70 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
USE_RUBY="ruby33 ruby34"
inherit ruby-fakegem
DESCRIPTION="data collector and unified logging layer (project under CNCF)"
HOMEPAGE="https://www.fluentd.org"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
COMMON_DEPEND="acct-group/fluentd
acct-user/fluentd"
DEPEND="${COMMON_DEPEND}
test? (
dev-ruby/async
dev-ruby/test-unit-rr
dev-ruby/rr[test]
dev-ruby/timecop
)
"
RDEPEND="${COMMON_DEPEND}"
ruby_add_rdepend "
dev-ruby/bundler
>=dev-ruby/coolio-1.8.1
>=dev-ruby/http_parser_rb-0.8.0
>=dev-ruby/msgpack-1.7.5
>=dev-ruby/serverengine-2.3.2
>=dev-ruby/sigdump-0.2.5
>=dev-ruby/strptime-0.2.4
>=dev-ruby/tzinfo-2.0.6
>=dev-ruby/webrick-1.8.2
>=dev-ruby/yajl-ruby-1.4.3"
ruby_add_depend "test? ( dev-ruby/flexmock )"
all_ruby_prepare() {
sed -i \
-e '/tzinfo-data/d' \
-e '/dig_rb/d' \
"${PN}".gemspec || die "'sed failed"
# Avoid test dependency on unpackaged oj
rm -f test/test_event_time.rb || die
}
all_ruby_install() {
all_fakegem_install
keepdir /var/log/fluentd
fowners fluentd:adm /var/log/fluentd
insinto /etc/fluent
doins fluent.conf
newconfd "${FILESDIR}"/${PN}.confd ${PN}
newinitd "${FILESDIR}"/${PN}.initd ${PN}
insinto /etc/logrotate.d
newins "${FILESDIR}"/${PN}.logrotate ${PN}
}
pkg_postinst() {
if [[ -z "${REPLACING_VERSIONS}" ]]; then
elog "A default configuration file has been installed in"
elog "${EROOT}/etc/fluent/fluent.conf. You will need to edit"
elog "this file to match your configuration."
fi
}

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>jkroon@gentoo.org</email>
<name>Jaco Kroon</name>
</maintainer>
<longdescription lang="en">
Fluentd is an open source data collector which lets you unify
the data collection and consumption for a better use and
understanding of data.
</longdescription>
</pkgmetadata>

1
app-admin/loki/Manifest Normal file
View File

@@ -0,0 +1 @@
DIST loki-3.6.2.tar.gz 108357779 BLAKE2B 67a6c0e3f8ed0a038d73d2efb2026842b8eb946e17f57bc5db1fd458ed833b7e458bdda089a0a7e1c6460c030efa30f99fef0c685f9900f007cb2598ebff3b79 SHA512 71b49b2cfad7eb2c2a7fab458832d87090305ba9e974bae1d090e51f1dd4dd9eea554fd4628e5c49d777f666422b81663a37883dfbb05496afbf55d3265c4b48

View File

@@ -0,0 +1,5 @@
# The loki config file
LOKI_CONF="/etc/loki/loki-local-config.yaml"
# Add any extra options to pass to loki to this setting.
#LOKI_OPTS=""

View File

@@ -0,0 +1,11 @@
#!/sbin/openrc-run
configfile="${LOKI_CONF:-/etc/loki/loki-local-config.yaml}"
command=/usr/bin/loki
command_args="-config.file=${configfile}
${LOKI_OPTS}"
command_background=yes
command_user=loki:grafana
make_pidfile=yes
pidfile=/var/run/loki.pid

View File

@@ -0,0 +1,17 @@
[Unit]
Description=Loki
Wants=network-online.target
After=network-online.target
[Service]
User=loki
Group=grafana
Type=simple
Restart=on-failure
EnvironmentFile=/etc/conf.d/loki
Environment=LOKI_CONF=/etc/loki/loki-local-config.yaml
ExecStart=/usr/bin/loki -config.file=${LOKI_CONF} ${LOKI_OPTS}
PIDFile=/run/loki.pid
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,65 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit go-module systemd
DESCRIPTION="Like Prometheus, but for logs."
HOMEPAGE="https://grafana.com/loki"
SRC_URI="https://github.com/grafana/loki/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+server tools systemd"
RESTRICT="mirror strip"
RDEPEND="acct-group/grafana
acct-user/${PN}"
DEPEND="${RDEPEND}"
src_compile() {
BUILD_VERSION="${PV}"
BUILD_REVISION="${PV}"
BUILD_USER="${P}"
BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"`
VPREFIX="github.com/grafana/${PN}/vendor/github.com/prometheus/common/version"
EGO_LDFLAGS="-s -w -X ${VPREFIX}.Version=${BUILD_VERSION} -X ${VPREFIX}.Revision=${BUILD_REVISION} -X ${VPREFIX}.BuildUser=${BUILD_USER} -X ${VPREFIX}.BuildDate=${BUILD_DATE}"
if use server; then
einfo "Building cmd/${PN}/${PN}..."
CGO_ENABLED=0 go build -ldflags "-extldflags \"-static\" ${EGO_LDFLAGS}" -tags netgo -mod vendor -o cmd/${PN}/${PN} ./cmd/${PN} || die
fi
if use tools; then
einfo "Building cmd/logcli/logcli..."
CGO_ENABLED=0 go build -ldflags "-extldflags \"-static\" ${EGO_LDFLAGS}" -tags netgo -mod vendor -o cmd/logcli/logcli ./cmd/logcli || die
einfo "Building cmd/${PN}-canary/${PN}-canary..."
CGO_ENABLED=0 go build -ldflags "-extldflags \"-static\" ${EGO_LDFLAGS}" -tags netgo -mod vendor -o cmd/${PN}-canary/${PN}-canary ./cmd/${PN}-canary || die
fi
}
src_install() {
if use server; then
dobin "${S}/cmd/${PN}/${PN}"
newconfd "${FILESDIR}/${PN}.confd" "${PN}"
newinitd "${FILESDIR}/${PN}.initd" "${PN}"
use systemd && systemd_newunit "${FILESDIR}"/${PN}.service ${PN}.service
insinto "/etc/${PN}"
doins "${S}/cmd/${PN}/${PN}-local-config.yaml"
keepdir "/etc/${PN}"
keepdir "/var/lib/${PN}"
fowners ${PN}:grafana "/etc/${PN}"
fowners ${PN}:grafana "/var/lib/${PN}"
fi
if use tools; then
dobin "${S}/cmd/logcli/logcli"
dobin "${S}/cmd/${PN}-canary/${PN}-canary"
fi
}

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" ?>
<!DOCTYPE pkgmetadata
SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
<pkgmetadata>
<use>
<flag name="server">Build the loki server</flag>
<flag name="tools">Build the loki tools logcli and loki-canary</flag>
</use>
<upstream>
<remote-id type="github">grafana/loki</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1 @@
DIST mongo-tools-100.9.5.tar.gz 5130120 BLAKE2B 8873e1dbc9aa6a3b181551e620f1a7c646510753c7756d93bc6884256cf06011d1f0357f4e8070a61d46f7488f8b52eef34bbef35c6773ea781fe3e259a2487c SHA512 8aa6c01e6d6a73c74a7ffd405dd1159085d5896efa42b16aa5d1fa7e67e59fedac66deda42cd2136f27d9957256be28e4ff8cc2c90429450cc772af1ae5efbe1

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>ultrabug@gentoo.org</email>
<name>Alexys Jacob</name>
</maintainer>
<upstream>
<remote-id type="cpe">cpe:/a:mongodb:database_tools</remote-id>
<remote-id type="github">mongodb/mongo-tools</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,57 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="A high-performance, open source, schema-free document-oriented database"
HOMEPAGE="https://www.mongodb.com"
SRC_URI="https://github.com/mongodb/mongo-tools/archive/${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/src/${EGO_PN}"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~riscv"
IUSE="kerberos"
RDEPEND="
kerberos? ( app-crypt/mit-krb5 )
"
BDEPEND=">=dev-lang/go-1.21.10:="
# Do not complain about CFLAGS etc since go projects do not use them.
QA_FLAGS_IGNORED='.*'
EGO_PN="github.com/mongodb/mongo-tools"
src_unpack() {
mkdir -p "${S%/*}" || die
default
mv ${P} "${S}" || die
}
src_compile() {
local myconf=()
if use kerberos; then
myconf+=(gssapi)
fi
# build pie to avoid text relocations wrt #582854
local buildmode="pie"
# skip on ppc64 wrt #610984
if use ppc64; then
buildmode="default"
fi
mkdir -p bin || die
for i in bsondump mongostat mongofiles mongoexport mongoimport mongorestore mongodump mongotop; do
echo "Building $i"
go build -buildmode="${buildmode}" -o "bin/$i" \
-ldflags "-X ${EGO_PN}/common/options.VersionStr=${PV}" -x --tags "${myconf[*]}" "$i/main/$i.go" || die
done
}
src_install() {
dobin bin/*
}

View File

@@ -1 +0,0 @@
DIST certbot-1.18.0.tar.gz 1332615 BLAKE2B eb086710b943893025d6e1091470ca02de074232372f4c9fa21fa83a347fe54df988b9553c8cf6afd6e166b8c464d595171984c984008a872e16c0179bb774b2 SHA512 94b16ba0586e0f5d3036280c68f9976c25889ca48fbbe7aded41f0d9feba2300a3f0ff8fe321b39d8642bcdd874c7332cf2acb3187b5869fe415831f58a75a7b

View File

@@ -1,34 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=(python3_{8..10} )
DISTUTILS_USE_SETUPTOOLS=rdepend
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
inherit git-r3
S=${WORKDIR}/${P}/${PN}
else
SRC_URI="https://github.com/${PN%-dns-rfc2136}/${PN%-dns-rfc2136}/archive/v${PV}.tar.gz -> ${PN%-dns-rfc2136}-${PV}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
S=${WORKDIR}/${PN%-dns-rfc2136}-${PV}/${PN}
fi
inherit distutils-r1
DESCRIPTION="RFC2136 DNS plugin for certbot (Let's Encrypt Client)"
HOMEPAGE="https://github.com/certbot/certbot https://letsencrypt.org/"
LICENSE="Apache-2.0"
SLOT="0"
IUSE=""
RDEPEND="
>=app-crypt/acme-${PV}[${PYTHON_USEDEP}]
>=app-crypt/certbot-${PV}[${PYTHON_USEDEP}]
dev-python/dnspython[${PYTHON_USEDEP}]
dev-python/zope-interface[${PYTHON_USEDEP}]"
distutils_enable_tests pytest

View File

@@ -1,34 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=(python3_{8..10} )
DISTUTILS_USE_SETUPTOOLS=rdepend
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
inherit git-r3
S=${WORKDIR}/${P}/${PN}
else
SRC_URI="https://github.com/${PN%-dns-rfc2136}/${PN%-dns-rfc2136}/archive/v${PV}.tar.gz -> ${PN%-dns-rfc2136}-${PV}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
S=${WORKDIR}/${PN%-dns-rfc2136}-${PV}/${PN}
fi
inherit distutils-r1
DESCRIPTION="RFC2136 DNS plugin for certbot (Let's Encrypt Client)"
HOMEPAGE="https://github.com/certbot/certbot https://letsencrypt.org/"
LICENSE="Apache-2.0"
SLOT="0"
IUSE=""
RDEPEND="
>=app-crypt/acme-${PV}[${PYTHON_USEDEP}]
>=app-crypt/certbot-${PV}[${PYTHON_USEDEP}]
dev-python/dnspython[${PYTHON_USEDEP}]
dev-python/zope-interface[${PYTHON_USEDEP}]"
distutils_enable_tests pytest

View File

@@ -1,80 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic multilib-minimal toolchain-funcs
if [[ ${PV} = "9999" ]] ; then
EGIT_REPO_URI="https://github.com/LMDB/lmdb.git"
inherit git-r3
KEYWORDS=""
else
SRC_URI="https://github.com/LMDB/lmdb/archive/${MY_P}.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="An ultra-fast, ultra-compact key-value embedded data store"
HOMEPAGE="https://symas.com/lmdb/technical/"
LICENSE="OPENLDAP"
SLOT="0/0.9.27"
IUSE="static-libs"
DEPEND=""
RDEPEND=""
S="${WORKDIR}/${P}/libraries/liblmdb"
src_prepare() {
default
if [[ ${CHOST} == *-darwin* && ${CHOST#*-darwin} -lt 10 ]] ; then
# posix_memalign isn't available before 10.6, but on OSX
# malloc is always aligned for any addressable type
sed -i -e '/(__APPLE__)/a#define HAVE_MEMALIGN 1\n#define memalign(X,Y) malloc(X)' mdb.c || die
fi
multilib_copy_sources
}
multilib_src_configure() {
local soname="-Wl,-soname,liblmdb$(get_libname 0)"
if [[ ${CHOST} == *-darwin* ]] ; then
soname="-dynamiclib -install_name ${EPREFIX}/usr/$(get_libdir)/liblmdb$(get_libname 0)"
replace-flags -O[123456789] -O1
fi
sed -i -e "s!^CC.*!CC = $(tc-getCC)!" \
-e "s!^CFLAGS.*!CFLAGS = ${CFLAGS}!" \
-e "s!^AR.*!AR = $(tc-getAR)!" \
-e "s!^SOEXT.*!SOEXT = $(get_libname)!" \
-e "/^prefix/s!/usr/local!${EPREFIX}/usr!" \
-e "/^libdir/s!lib\$!$(get_libdir)!" \
-e "s!shared!shared ${soname}!" \
"Makefile" || die
if [[ ${CHOST} == *-solaris* ]] ; then
# fdatasync lives in -lrt on Solaris 10
[[ ${CHOST#*-solaris2.} -le 10 ]] && append-ldflags -lrt
fi
}
multilib_src_compile() {
emake LDLIBS+=" -pthread"
}
multilib_src_install() {
emake DESTDIR="${D}" install
mv "${ED}"/usr/$(get_libdir)/liblmdb$(get_libname) \
"${ED}"/usr/$(get_libdir)/liblmdb$(get_libname 0) || die
dosym liblmdb$(get_libname 0) /usr/$(get_libdir)/liblmdb$(get_libname)
insinto /usr/$(get_libdir)/pkgconfig
doins "${FILESDIR}/lmdb.pc"
sed -i -e "s!@PACKAGE_VERSION@!${PV}!" \
-e "s!@prefix@!${EPREFIX}/usr!g" \
-e "s!@libdir@!$(get_libdir)!" \
"${ED}"/usr/$(get_libdir)/pkgconfig/lmdb.pc || die
if ! use static-libs; then
rm "${ED}"/usr/$(get_libdir)/liblmdb.a || die
fi
}

View File

@@ -0,0 +1 @@
DIST mariadb-connector-c-3.3.17-src.tar.gz 1349385 BLAKE2B 874c375b5c6282bf88587ee4f72bc5af20be5d05ad1e7e0507f9a234212dca7b951e1bab0af2f609a5da97c609fa39d3a09545394887e69b2564f835542e7f0d SHA512 1d37b7a6bf4a49e80a6aef8747a824a553fce982cb0634932805ba4ba859abfbadb27e2fa03ee71b379c5b292e98ebbd5c763df3985a76e282e9ec17c0531ac8

View File

@@ -0,0 +1,21 @@
--- a/mariadb_config/libmariadb.pc.in
+++ b/mariadb_config/libmariadb.pc.in
@@ -7,14 +7,13 @@
#
prefix=@CMAKE_INSTALL_PREFIX@
-includedir=${prefix}/@INSTALL_INCLUDEDIR@/@SUFFIX_INSTALL_DIR@
-libdir=${prefix}/@INSTALL_LIBDIR@/@SUFFIX_INSTALL_DIR@
+includedir=${prefix}/include
+libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
Name: libmariadb
Version: @CPACK_PACKAGE_VERSION@
+URL: https://mariadb.com/kb/en/library/mariadb-connector-c/
Description: MariaDB Connector/C dynamic library
-Cflags: -I${includedir}
+Cflags: -I${includedir}/mariadb
Libs: -L${libdir} -lmariadb
Libs.private: @extra_dynamic_LDFLAGS@
-
-

View File

@@ -0,0 +1,136 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
if [[ ${PV} == 9999 ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/MariaDB/mariadb-connector-c.git"
else
MY_PN=${PN#mariadb-}
MY_PV=${PV/_b/-b}
SRC_URI="https://downloads.mariadb.com/Connectors/c/connector-c-${PV}/${P}-src.tar.gz"
S="${WORKDIR%/}/${PN}-${MY_PV}-src"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86"
fi
inherit cmake-multilib flag-o-matic toolchain-funcs
DESCRIPTION="C client library for MariaDB/MySQL"
HOMEPAGE="https://mariadb.org/"
LICENSE="LGPL-2.1"
SLOT="0/3"
IUSE="+curl gnutls kerberos +ssl static-libs test"
RESTRICT="!test? ( test )"
DEPEND="
app-arch/zstd:=[${MULTILIB_USEDEP}]
virtual/zlib:=[${MULTILIB_USEDEP}]
virtual/libiconv:=[${MULTILIB_USEDEP}]
curl? ( net-misc/curl[${MULTILIB_USEDEP}] )
kerberos? (
|| (
app-crypt/mit-krb5[${MULTILIB_USEDEP}]
app-crypt/heimdal[${MULTILIB_USEDEP}]
)
)
ssl? (
gnutls? ( >=net-libs/gnutls-3.3.24:=[${MULTILIB_USEDEP}] )
!gnutls? ( dev-libs/openssl:=[${MULTILIB_USEDEP}] )
)
"
BDEPEND="test? ( dev-db/mariadb[server] )"
RDEPEND="${DEPEND}"
MULTILIB_CHOST_TOOLS=( /usr/bin/mariadb_config )
MULTILIB_WRAPPED_HEADERS+=( /usr/include/mariadb/mariadb_version.h )
PATCHES=(
"${FILESDIR}"/${PN}-3.1.3-fix-pkconfig-file.patch
)
src_prepare() {
local sedargs=(
# These tests the remote_io plugin which requires network access
-e '/{"test_remote1/s:{://&:'
# These tests don't work with --skip-grant-tables
-e '/{"test_conc366/s:{://&:'
-e '/{"test_conc544/s:{://&:'
-e '/{"test_conc627/s:{://&:'
-e '/{"test_conc66/s:{://&:'
# [Warning] Aborted connection 2078 to db: 'test' user: 'root' host: '' (Got an error reading communication packets)
# Not sure about this one - might also require network access
-e '/{"test_default_auth/s:{://&:'
# Not sure about this one eighter. It should fail on connection but it
# does not. Maybe because we use domain socket?
-e '/{"test_conc26/s:{://&:'
)
sed -i "${sedargs[@]}" unittest/libmariadb/{connection,misc,ps_bugs}.c || die
cmake_src_prepare
}
src_configure() {
# mariadb cannot use ld.gold, bug #508724
tc-ld-is-gold && tc-ld-force-bfd
# bug #943757
append-cflags -std=gnu17
cmake-multilib_src_configure
}
multilib_src_configure() {
local mycmakeargs=(
-DWITH_EXTERNAL_ZLIB=ON
-DWITH_SSL:STRING=$(usex ssl $(usex gnutls GNUTLS OPENSSL) OFF)
-DWITH_CURL=$(usex curl)
-DWITH_ICONV=ON
# This variable is available only if dependency requirements are met,
# thus the related QA notice is falsely positive in this case.
-DCLIENT_PLUGIN_AUTH_GSSAPI_CLIENT:STRING=$(usex kerberos DYNAMIC OFF)
-DMARIADB_UNIX_ADDR="${EPREFIX}/var/run/mysqld/mysqld.sock"
-DINSTALL_LIBDIR="$(get_libdir)"
-DINSTALL_MANDIR=share/man
-DINSTALL_PCDIR="$(get_libdir)/pkgconfig"
-DINSTALL_PLUGINDIR="$(get_libdir)/mariadb/plugin"
-DINSTALL_BINDIR=bin
-DWITH_UNIT_TESTS=$(usex test)
)
cmake_src_configure
}
multilib_src_test() {
mkdir -vp "${T}/mysql/data" || die
mysql_install_db --no-defaults --datadir="${T}/mysql/data" || die
mysqld --no-defaults --datadir="${T}/mysql/data" --socket="${T}/mysql/mysql.sock" --skip-grant-tables --skip-networking &
local attempts=0
while ! mysqladmin ping --socket="${T}/mysql/mysql.sock" --silent ; do
# 5 minutes should be more than enough
if [[ ${attempts} -gt 300 ]] ; then
die "mysqld not found after 300 seconds, aborting"
fi
sleep 1
attempts=$((attempts + 1))
done
cd unittest/libmariadb || die
MYSQL_TEST_SOCKET="${T}/mysql/mysql.sock" MARIADB_CC_TEST=1 ctest --verbose || die
}
multilib_src_install_all() {
if ! use static-libs ; then
find "${ED}" -name "*.a" -delete || die
fi
}

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>mysql-bugs@gentoo.org</email>
<name>MySQL</name>
</maintainer>
<upstream>
<remote-id type="github">mariadb-corporation/mariadb-connector-c</remote-id>
</upstream>
</pkgmetadata>

3
dev-db/mongodb/Manifest Normal file
View File

@@ -0,0 +1,3 @@
DIST mongodb-6.0.22-patches.tar.xz 8820 BLAKE2B 973e58d0a09d8fb160beefd46b425b0f5dd7ad531f9ccec433fd201517035613c171cddaf5d3cf2883f57d4728438572062cc5c8b9166e15d8e5701efcd8b84c SHA512 fa8f18d259e829df07ec26ab570de9b3968b9b02ed195b47d7a2bfc832f2b7e74a5aaf58e54cfe6d01ea7e3d76efdad2e1efca0da4af0b0d3f50944dfd1fd4e0
DIST mongodb-6.0.26.gh.tar.gz 87528255 BLAKE2B 031b4a8f10d948ac8f22a8dded6ce42d19e930ca5ac1b5fa0b3cdd2cd7dcdaf1899dd2110bd9856a6a164c684414e3b2a807a19d74083938ffae975aa42f97be SHA512 fb1e156fc1349a45815ea1fa0eb0927361fbbc7e288ca8c02a0875c2ec6b9dbe41ba45b2831c1d68786a3f477d0602aa4ccfeb50549f2d53414964b3ea8e4193
DIST mongodb-7.0.18.gh.tar.gz 87225100 BLAKE2B 7ede32f4c6b6968ee8d797ce71457133020a3e4a039cd0db914e344e5042a0b871deb5741f86098b2e82b9ff619a511a754a06a29dcbb9527a3b7a7edf52b3ac SHA512 599767db66e95d8dd0bd0e6d51fd70129ea6df1e18a0cdaa52bc6cbe301c982684ff5aab446c50cb825573051e372d8f791aeab7df58e2a4d855e6073f2b46d5

View File

@@ -0,0 +1,21 @@
--- 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")

View File

@@ -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()

View File

@@ -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)

View File

@@ -0,0 +1,16 @@
The upstream patch for this is far too big to backport, so for now, just drop
the assert given it's somewhat harmless compared to not being able to build at all.
https://jira.mongodb.org/browse/SERVER-65664
https://bugs.gentoo.org/855128
--- a/src/mongo/db/stats/counters.h
+++ b/src/mongo/db/stats/counters.h
@@ -221,8 +221,6 @@ private:
AtomicWord<long long> requests{0};
};
CacheAligned<Together> _together{};
- static_assert(sizeof(decltype(_together)) <= stdx::hardware_constructive_interference_size,
- "cache line spill");
CacheAligned<AtomicWord<long long>> _logicalBytesOut{0};

View File

@@ -0,0 +1,71 @@
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 @@
#include "mongo/platform/basic.h"
#include <boost/filesystem.hpp>
+#include <boost/filesystem/fstream.hpp>
#include "mongo/base/string_data.h"
#include "mongo/db/auth/authorization_manager.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"
--- 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 @@
#include "mongo/db/storage/kv/kv_engine_test_harness.h"
#include <boost/filesystem.hpp>
+#include <boost/filesystem/fstream.hpp>
#include <boost/filesystem/path.hpp>
#include <memory>
--- 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 <pcrecpp.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 <fmt/format.h>
#include <fstream>
--- a/src/mongo/util/stacktrace_threads.cpp
+++ b/src/mongo/util/stacktrace_threads.cpp
@@ -36,6 +36,7 @@
#include <array>
#include <atomic>
#include <boost/filesystem.hpp>
+#include <boost/filesystem/fstream.hpp>
#include <cstdint>
#include <cstdlib>
#include <dirent.h>
--- a/src/mongo/util/processinfo_linux.cpp
+++ b/src/mongo/util/processinfo_linux.cpp
@@ -36,6 +36,7 @@
#include <iostream>
#include <malloc.h>
#include <pcrecpp.h>
+#include <fstream>
#include <sched.h>
#include <stdio.h>
#include <sys/mman.h>

View File

@@ -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:

View File

@@ -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=[

View File

@@ -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')

View File

@@ -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

View File

@@ -0,0 +1,16 @@
https://bugs.gentoo.org/932251
https://github.com/mongodb/mongo/commit/f8e4be7f6da71f978b2aa9991febb4c7ad89c903#diff-010644a9158d28e5745762753c7ce454444c9fb9ab4c684e9f2fdcff50c6f539
https://bugs.gentoo.org/932251#c3
--- a/src/mongo/db/initialize_server_global_state.cpp
+++ b/src/mongo/db/initialize_server_global_state.cpp
@@ -328,7 +328,7 @@
<< "\" should name a file, not a directory.");
}
- if (!serverGlobalParams.logAppend && boost::filesystem::is_regular(absoluteLogpath)) {
+ if (!serverGlobalParams.logAppend && boost::filesystem::is_regular_file(absoluteLogpath)) {
std::string renameTarget = absoluteLogpath + "." + terseCurrentTimeForFilename();
boost::system::error_code ec;
boost::filesystem::rename(absoluteLogpath, renameTarget, ec);

View File

@@ -0,0 +1,130 @@
https://bugs.gentoo.org/932251
https://github.com/mongodb/mongo/commit/f8e4be7f6da71f978b2aa9991febb4c7ad89c903#diff-010644a9158d28e5745762753c7ce454444c9fb9ab4c684e9f2fdcff50c6f539
https://bugs.gentoo.org/932251#c3
--- a/src/mongo/db/initialize_server_global_state.cpp
+++ b/src/mongo/db/initialize_server_global_state.cpp
@@ -34,7 +34,7 @@
#include "mongo/db/initialize_server_global_state.h"
#include "mongo/db/initialize_server_global_state_gen.h"
-#include <boost/filesystem/operations.hpp>
+#include <boost/filesystem.hpp>
#include <fmt/format.h>
#include <iostream>
#include <memory>
--- a/src/mongo/db/startup_warnings_mongod.cpp
+++ b/src/mongo/db/startup_warnings_mongod.cpp
@@ -34,6 +34,7 @@
#include "mongo/db/startup_warnings_mongod.h"
#include <boost/filesystem/operations.hpp>
+#include <boost/filesystem/exception.hpp>
#include <fstream>
#ifndef _WIN32
#include <sys/resource.h>
--- a/src/mongo/db/storage/storage_engine_lock_file_posix.cpp
+++ b/src/mongo/db/storage/storage_engine_lock_file_posix.cpp
@@ -55,7 +55,7 @@
// if called without a fully qualified path it asserts; that makes mongoperf fail.
// so make a warning. need a better solution longer term.
// massert(40389, str::stream() << "Couldn't find parent dir for file: " << file.string(),);
- if (!file.has_branch_path()) {
+ if (!file.has_parent_path()) {
LOGV2(22274,
"warning flushMyDirectory couldn't find parent dir for file: {file}",
"flushMyDirectory couldn't find parent dir for file",
@@ -64,7 +64,7 @@
}
- boost::filesystem::path dir = file.branch_path(); // parent_path in new boosts
+ boost::filesystem::path dir = file.parent_path(); // parent_path in new boosts
LOGV2_DEBUG(22275, 1, "flushing directory {dir_string}", "dir_string"_attr = dir.string());
--- a/src/mongo/db/storage/storage_engine_metadata.cpp
+++ b/src/mongo/db/storage/storage_engine_metadata.cpp
@@ -220,7 +220,7 @@
// if called without a fully qualified path it asserts; that makes mongoperf fail.
// so make a warning. need a better solution longer term.
// massert(13652, str::stream() << "Couldn't find parent dir for file: " << file.string(),);
- if (!file.has_branch_path()) {
+ if (!file.has_parent_path()) {
LOGV2(22283,
"warning flushMyDirectory couldn't find parent dir for file: {file}",
"flushMyDirectory couldn't find parent dir for file",
@@ -229,7 +229,7 @@
}
- boost::filesystem::path dir = file.branch_path(); // parent_path in new boosts
+ boost::filesystem::path dir = file.parent_path(); // parent_path in new boosts
LOGV2_DEBUG(22284, 1, "flushing directory {dir_string}", "dir_string"_attr = dir.string());
--- a/src/mongo/scripting/engine.cpp
+++ b/src/mongo/scripting/engine.cpp
@@ -35,6 +35,7 @@
#include <algorithm>
#include <boost/filesystem/operations.hpp>
+#include <boost/filesystem/directory.hpp>
#include "mongo/base/string_data.h"
#include "mongo/client/dbclient_base.h"
--- a/src/mongo/shell/shell_utils_launcher.cpp
+++ b/src/mongo/shell/shell_utils_launcher.cpp
@@ -39,6 +39,7 @@
#include <boost/iostreams/stream.hpp>
#include <boost/iostreams/stream_buffer.hpp>
#include <boost/iostreams/tee.hpp>
+#include <boost/filesystem.hpp>
#include <fcntl.h>
#include <fmt/format.h>
#include <iostream>
@@ -947,26 +948,26 @@
boost::filesystem::directory_iterator i(from);
while (i != end) {
boost::filesystem::path p = *i;
- if (p.leaf() == "metrics.interim" || p.leaf() == "metrics.interim.temp") {
+ if (p.filename() == "metrics.interim" || p.filename() == "metrics.interim.temp") {
// Ignore any errors for metrics.interim* files as these may disappear during copy
boost::system::error_code ec;
- boost::filesystem::copy_file(p, to / p.leaf(), ec);
+ boost::filesystem::copy_file(p, to / p.filename(), ec);
if (ec) {
LOGV2_INFO(22814,
"Skipping copying of file from '{from}' to "
"'{to}' due to: {error}",
"Skipping copying of file due to error"
"from"_attr = p.generic_string(),
- "to"_attr = (to / p.leaf()).generic_string(),
+ "to"_attr = (to / p.filename()).generic_string(),
"error"_attr = ec.message());
}
- } else if (p.leaf() != "mongod.lock" && p.leaf() != "WiredTiger.lock") {
+ } else if (p.filename() != "mongod.lock" && p.filename() != "WiredTiger.lock") {
if (boost::filesystem::is_directory(p)) {
- boost::filesystem::path newDir = to / p.leaf();
+ boost::filesystem::path newDir = to / p.filename();
boost::filesystem::create_directory(newDir);
copyDir(p, newDir);
} else {
- boost::filesystem::copy_file(p, to / p.leaf());
+ boost::filesystem::copy_file(p, to / p.filename());
}
}
++i;
--- a/src/mongo/shell/shell_utils_launcher.h
+++ b/src/mongo/shell/shell_utils_launcher.h
@@ -29,7 +29,7 @@
#pragma once
-#include <boost/filesystem/convenience.hpp>
+#include <boost/filesystem/path.hpp>
#include <map>
#include <sstream>
#include <string>

View File

@@ -0,0 +1,25 @@
https://phabricator.services.mozilla.com/D209108
https://github.com/mozilla/gecko-dev/commit/33cdc6655b0de44cb7a431216dcbb0d5a552aec6
clang 19 will report error if w/o this patch:
src/third_party/mozjs-60/extract/js/src/threading/ExclusiveData.h:124:33: error: reference to non-static member function must be called
diff --git a/src/third_party/mozjs-60/extract/js/src/threading/ExclusiveData.h b/src/third_party/mozjs-60/extract/js/src/threading/ExclusiveData.h
index 25b977e..379a509 100644
--- a/src/third_party/mozjs-60/extract/js/src/threading/ExclusiveData.h
+++ b/src/third_party/mozjs-60/extract/js/src/threading/ExclusiveData.h
@@ -120,13 +120,6 @@ class ExclusiveData
release();
}
- ExclusiveData(ExclusiveData&& rhs)
- : lock_(mozilla::Move(rhs.lock))
- {
- MOZ_ASSERT(&rhs != this, "self-move disallowed!");
- new (mozilla::KnownNotNull, value_.addr()) T(mozilla::Move(*rhs.value_.addr()));
- }
-
ExclusiveData& operator=(ExclusiveData&& rhs) {
this->~ExclusiveData();
new (mozilla::KnownNotNull, this) ExclusiveData(mozilla::Move(rhs));

View File

@@ -0,0 +1,27 @@
https://jira.mongodb.org/browse/SERVER-94430 Upstream respond:
> we intentionally do not ingest the environment PATH as this makes build
> reproducibility and hermiticity much harder. Instead, you should set the
> absolute paths to the tools you want to use on the command line, instead of
> relying on the PATH.
Gentoo bug https://bugs.gentoo.org/829340
In Gentoo, we have LLVM slotted and we put clang in /usr/lib/llvm/18/bin (or
whatever), not in /usr/bin, and if upstream strip PATH and construct it
themselves, they surely won't contain this location.
So we add PATH backup for scons.
diff --git a/SConstruct b/SConstruct
index 3d831c9..f07feeb 100644
--- a/SConstruct
+++ b/SConstruct
@@ -1201,7 +1201,7 @@ envDict = dict(BUILD_ROOT=buildDir,
if get_option('build-tools') == 'next':
SCons.Tool.DefaultToolpath.insert(0, os.path.abspath('site_scons/site_tools/next'))
-env = Environment(variables=env_vars, **envDict)
+env = Environment(variables=env_vars, ENV={'PATH': os.environ['PATH']}, **envDict)
del envDict
if get_option('cache-signature-mode') == 'validate':

View File

@@ -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"
#include "mongo/db/jsobj.h"

View File

@@ -0,0 +1,13 @@
https://github.com/abseil/abseil-cpp/commit/809e5de7b92950849289236a5a09e9cb4f32c7b9
diff --git a/src/third_party/abseil-cpp-master/abseil-cpp/absl/container/internal/container_memory.h b/src/third_party/abseil-cpp-master/abseil-cpp/absl/container/internal/container_memory.h
index e67529ecb6e..d777480d604 100644
--- a/src/third_party/abseil-cpp-master/abseil-cpp/absl/container/internal/container_memory.h
+++ b/src/third_party/abseil-cpp-master/abseil-cpp/absl/container/internal/container_memory.h
@@ -17,6 +17,7 @@
#include <cassert>
#include <cstddef>
+#include <cstdint>
#include <memory>
#include <new>
#include <tuple>

View File

@@ -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 {

View File

@@ -0,0 +1,49 @@
Don't automagically force lld > gold > bfd. Leave it up to the user.
In particular, avoids issues with LTO enabled (via the flag/scons option)
where using GCC as compiler, as lld can't do LTO with GCC.
https://bugs.gentoo.org/769986
--- a/SConstruct
+++ b/SConstruct
@@ -2824,40 +2824,6 @@ def doConfigure(myenv):
def AddToSHLINKFLAGSIfSupported(env, flag):
return AddFlagIfSupported(env, 'C', '.c', flag, True, SHLINKFLAGS=[flag])
- if myenv.ToolchainIs('gcc', 'clang'):
- # This tells clang/gcc to use the gold linker if it is available - we prefer the gold linker
- # because it is much faster. Don't use it if the user has already configured another linker
- # selection manually.
- if any(flag.startswith('-fuse-ld=') for flag in env['LINKFLAGS']):
- myenv.FatalError(f"Use the '--linker' option instead of modifying the LINKFLAGS directly.")
-
- linker_ld = get_option('linker')
- if linker_ld == 'auto':
- # lld has problems with separate debug info on some platforms. See:
- # - https://bugzilla.mozilla.org/show_bug.cgi?id=1485556
- # - https://bugzilla.mozilla.org/show_bug.cgi?id=1485556
- #
- # lld also apparently has problems with symbol resolution
- # in some esoteric configurations that apply for us when
- # using --link-model=dynamic mode, so disable lld there
- # too. See:
- # - https://bugs.llvm.org/show_bug.cgi?id=46676
- #
- # We should revisit all of these issues the next time we upgrade our clang minimum.
- if get_option('separate-debug') == 'off' and get_option('link-model') != 'dynamic':
- if not AddToLINKFLAGSIfSupported(myenv, '-fuse-ld=lld'):
- AddToLINKFLAGSIfSupported(myenv, '-fuse-ld=gold')
- else:
- AddToLINKFLAGSIfSupported(myenv, '-fuse-ld=gold')
- elif link_model.startswith("dynamic") and linker_ld == 'bfd':
- # BFD is not supported due to issues with it causing warnings from some of
- # the third party libraries that mongodb is linked with:
- # https://jira.mongodb.org/browse/SERVER-49465
- myenv.FatalError(f"Linker {linker_ld} is not supported with dynamic link model builds.")
- else:
- if not AddToLINKFLAGSIfSupported(myenv, f'-fuse-ld={linker_ld}'):
- myenv.FatalError(f"Linker {linker_ld} could not be configured.")
-
detectCompiler = Configure(myenv, help=False, custom_tests = {
'CheckForCXXLink': CheckForCXXLink,
})

View File

@@ -0,0 +1,81 @@
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 @@
#include "mongo/platform/basic.h"
#include <boost/filesystem.hpp>
+#include <boost/filesystem/fstream.hpp>
#include "mongo/base/string_data.h"
#include "mongo/db/auth/authorization_manager.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"
--- 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 @@
#include "mongo/db/storage/kv/kv_engine_test_harness.h"
#include <boost/filesystem.hpp>
+#include <boost/filesystem/fstream.hpp>
#include <boost/filesystem/path.hpp>
#include <memory>
--- a/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp
+++ b/src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp
@@ -48,6 +48,7 @@
#include "mongo/db/storage/wiredtiger/wiredtiger_kv_engine.h"
#include <boost/filesystem.hpp>
+#include <boost/filesystem/fstream.hpp>
#include <boost/filesystem/operations.hpp>
#include <boost/filesystem/path.hpp>
#include <boost/system/error_code.hpp>
--- 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 <pcrecpp.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 <fmt/format.h>
#include <fstream>
--- a/src/mongo/util/stacktrace_threads.cpp
+++ b/src/mongo/util/stacktrace_threads.cpp
@@ -36,6 +36,7 @@
#include <array>
#include <atomic>
#include <boost/filesystem.hpp>
+#include <boost/filesystem/fstream.hpp>
#include <cstdint>
#include <cstdlib>
#include <dirent.h>
--- a/src/mongo/util/processinfo_linux.cpp
+++ b/src/mongo/util/processinfo_linux.cpp
@@ -36,6 +36,7 @@
#include <iostream>
#include <malloc.h>
#include <pcrecpp.h>
+#include <fstream>
#include <sched.h>
#include <stdio.h>
#include <sys/mman.h>

View File

@@ -0,0 +1,15 @@
https://bugs.gentoo.org/932251
https://github.com/mongodb/mongo/commit/f8e4be7f6da71f978b2aa9991febb4c7ad89c903#diff-010644a9158d28e5745762753c7ce454444c9fb9ab4c684e9f2fdcff50c6f539
https://bugs.gentoo.org/932251#c3
--- a/src/mongo/db/initialize_server_global_state.cpp
+++ b/src/mongo/db/initialize_server_global_state.cpp
@@ -307,7 +307,7 @@ bool checkAndMoveLogFile(const std::string& absoluteLogpath) {
<< "\" should name a file, not a directory.");
}
- if (!serverGlobalParams.logAppend && boost::filesystem::is_regular(absoluteLogpath)) {
+ if (!serverGlobalParams.logAppend && boost::filesystem::is_regular_file(absoluteLogpath)) {
std::string renameTarget = absoluteLogpath + "." + terseCurrentTimeForFilename();
boost::system::error_code ec;
boost::filesystem::rename(absoluteLogpath, renameTarget, ec);

View File

@@ -0,0 +1,25 @@
From 01c202b65f136450e0bd3f516d7268322e9beafc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Valenduc?= <francoisvalenduc@gmail.com>
Date: Fri, 11 Apr 2025 18:50:10 +0200
Subject: [PATCH] replace change_extension by replace_extension
---
src/mongo/db/storage/backup_block.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/mongo/db/storage/backup_block.cpp b/src/mongo/db/storage/backup_block.cpp
index 9b8dc29f209..a8b86398665 100644
--- a/src/mongo/db/storage/backup_block.cpp
+++ b/src/mongo/db/storage/backup_block.cpp
@@ -59,7 +59,7 @@ std::string extractIdentFromPath(const boost::filesystem::path& dbpath,
// Remove the file extension and convert to generic form (i.e. replace "\" with "/"
// on windows, no-op on unix).
- return boost::filesystem::change_extension(identWithExtension, "").generic_string();
+ return boost::filesystem::path(identWithExtension).replace_extension("").generic_string();
}
} // namespace details
--
2.49.0

View File

@@ -0,0 +1,26 @@
From 2605c36cf9a5c3e49d59dcd36ee5b57ab3437922 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Valenduc?= <francoisvalenduc@gmail.com>
Date: Mon, 17 Feb 2025 21:57:45 +0100
Subject: [PATCH] add boost include
---
src/mongo/db/storage/backup_block.cpp | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/mongo/db/storage/backup_block.cpp b/src/mongo/db/storage/backup_block.cpp
index 9b8dc29f209..6328a727fbe 100644
--- a/src/mongo/db/storage/backup_block.cpp
+++ b/src/mongo/db/storage/backup_block.cpp
@@ -30,6 +30,9 @@
#include "mongo/db/storage/backup_block.h"
#include <boost/filesystem.hpp>
+#include <boost/filesystem/fstream.hpp>
+#include <boost/filesystem/operations.hpp>
+#include <boost/filesystem/path.hpp>
#include <set>
#include "mongo/base/string_data.h"
--
2.45.3

View File

@@ -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/exec/plan_stats_visitor.h"
#include "mongo/db/index/multikey_paths.h"

View File

@@ -0,0 +1,12 @@
diff --git a/src/mongo/db/repl/tenant_file_cloner.h b/src/mongo/db/repl/tenant_file_cloner.h
index def0952..0625e46 100644
--- a/src/mongo/db/repl/tenant_file_cloner.h
+++ b/src/mongo/db/repl/tenant_file_cloner.h
@@ -32,6 +32,7 @@
#include <boost/filesystem.hpp>
#include <memory>
#include <vector>
+#include <fstream>
#include "mongo/db/repl/base_cloner.h"
#include "mongo/db/repl/task_runner.h"

View File

@@ -0,0 +1,12 @@
diff --git a/src/mongo/util/ctype.h b/src/mongo/util/ctype.h
index a3880e2..78ee57e 100644
--- a/src/mongo/util/ctype.h
+++ b/src/mongo/util/ctype.h
@@ -67,6 +67,7 @@
#pragma once
#include <array>
+#include <cstdint>
namespace mongo::ctype {
namespace detail {

View File

@@ -0,0 +1,23 @@
https://phabricator.services.mozilla.com/D209108
https://github.com/mozilla/gecko-dev/commit/33cdc6655b0de44cb7a431216dcbb0d5a552aec6
clang 19 will report error if w/o this patch:
src/third_party/mozjs/extract/js/src/threading/ExclusiveData.h:113:29: error: reference to non-static member function must be called
diff --git a/src/third_party/mozjs/extract/js/src/threading/ExclusiveData.h b/src/third_party/mozjs/extract/js/src/threading/ExclusiveData.h
index c43cd1797ca..c401797fafd 100644
--- a/src/third_party/mozjs/extract/js/src/threading/ExclusiveData.h
+++ b/src/third_party/mozjs/extract/js/src/threading/ExclusiveData.h
@@ -109,11 +109,6 @@ class ExclusiveData {
explicit ExclusiveData(const MutexId& id, Args&&... args)
: lock_(id), value_(std::forward<Args>(args)...) {}
- ExclusiveData(ExclusiveData&& rhs)
- : lock_(std::move(rhs.lock)), value_(std::move(rhs.value_)) {
- MOZ_ASSERT(&rhs != this, "self-move disallowed!");
- }
-
ExclusiveData& operator=(ExclusiveData&& rhs) {
this->~ExclusiveData();
new (mozilla::KnownNotNull, this) ExclusiveData(std::move(rhs));

View File

@@ -0,0 +1,93 @@
diff --git a/SConstruct b/SConstruct
index 8367691..9061849 100644
--- a/SConstruct
+++ b/SConstruct
@@ -2441,7 +2441,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",
@@ -2497,6 +2496,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
@@ -2549,7 +2550,7 @@ if env.TargetOSIs('posix'):
)
#make scons colorgcc friendly
- for key in ('HOME', 'TERM'):
+ for key in ('HOME', 'TERM', 'PATH'):
try:
env['ENV'][key] = os.environ[key]
except KeyError:
@@ -2968,43 +2969,6 @@ def doConfigure(myenv):
myenv.AddMethod(
functools.partial(var_func, var=var, func=CheckFlag), f"Check{var}Supported")
- if myenv.ToolchainIs('gcc', 'clang'):
- # This tells clang/gcc to use the gold linker if it is available - we prefer the gold linker
- # because it is much faster. Don't use it if the user has already configured another linker
- # selection manually.
- if any(flag.startswith('-fuse-ld=') for flag in env['LINKFLAGS']):
- myenv.FatalError(f"Use the '--linker' option instead of modifying the LINKFLAGS directly.")
-
- linker_ld = get_option('linker')
- if linker_ld == 'auto':
- # lld has problems with separate debug info on some platforms. See:
- # - https://bugzilla.mozilla.org/show_bug.cgi?id=1485556
- # - https://bugzilla.mozilla.org/show_bug.cgi?id=1485556
- #
- # lld also apparently has problems with symbol resolution
- # in some esoteric configurations that apply for us when
- # using --link-model=dynamic mode, so disable lld there
- # too. See:
- # - https://bugs.llvm.org/show_bug.cgi?id=46676
- #
- # We should revisit all of these issues the next time we upgrade our clang minimum.
- if get_option('separate-debug') == 'off' and get_option('link-model') != 'dynamic':
- if not myenv.AddToLINKFLAGSIfSupported('-fuse-ld=lld'):
- myenv.AddToLINKFLAGSIfSupported('-fuse-ld=gold')
- else:
- myenv.AddToLINKFLAGSIfSupported('-fuse-ld=gold')
- elif link_model.startswith("dynamic") and linker_ld == 'bfd':
- # BFD is not supported due to issues with it causing warnings from some of
- # the third party libraries that mongodb is linked with:
- # https://jira.mongodb.org/browse/SERVER-49465
- myenv.FatalError(f"Linker {linker_ld} is not supported with dynamic link model builds.")
- else:
- if not myenv.AddToLINKFLAGSIfSupported(f'-fuse-ld={linker_ld}'):
- myenv.FatalError(f"Linker {linker_ld} could not be configured.")
-
- if has_option('gcov') and myenv.AddToCCFLAGSIfSupported('-fprofile-update=single'):
- myenv.AppendUnique(LINKFLAGS=['-fprofile-update=single'])
-
detectCompiler = Configure(myenv, help=False, custom_tests = {
'CheckForCXXLink': CheckForCXXLink,
})
@@ -4344,17 +4308,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")

View File

@@ -0,0 +1,13 @@
https://github.com/abseil/abseil-cpp/commit/809e5de7b92950849289236a5a09e9cb4f32c7b9
diff --git a/src/third_party/abseil-cpp/dist/absl/container/internal/container_memory.h b/src/third_party/abseil-cpp/dist/absl/container/internal/container_memory.h
index e67529ecb6e..d777480d604 100644
--- a/src/third_party/abseil-cpp/dist/absl/container/internal/container_memory.h
+++ b/src/third_party/abseil-cpp/dist/absl/container/internal/container_memory.h
@@ -17,6 +17,7 @@
#include <cassert>
#include <cstddef>
+#include <cstdint>
#include <memory>
#include <new>
#include <tuple>

View File

@@ -0,0 +1,149 @@
diff --git a/SConstruct b/SConstruct
index 92d557b..80ee9e8 100644
--- a/SConstruct
+++ b/SConstruct
@@ -23,7 +23,6 @@ from pkg_resources import parse_version
import SCons
import SCons.Script
-from mongo_tooling_metrics.lib.top_level_metrics import SConsToolingMetrics
from site_scons.mongo import build_profiles
# This must be first, even before EnsureSConsVersion, if
@@ -1649,13 +1648,6 @@ env.AddMethod(lambda env, name, **kwargs: add_option(name, **kwargs), 'AddOption
# The placement of this is intentional. Here we setup an atexit method to store tooling metrics.
# We should only register this function after env, env_vars and the parser have been properly initialized.
-SConsToolingMetrics.register_metrics(
- utc_starttime=datetime.utcnow(),
- artifact_dir=env.Dir('$BUILD_DIR').get_abspath(),
- env_vars=env_vars,
- env=env,
- parser=_parser,
-)
if get_option('build-metrics'):
env['BUILD_METRICS_ARTIFACTS_DIR'] = '$BUILD_ROOT/$VARIANT_DIR'
@@ -3026,7 +3018,6 @@ if env.TargetOSIs('posix'):
env.Append(
CCFLAGS=[
"-fasynchronous-unwind-tables",
- "-g2" if not env.TargetOSIs('emscripten') else "-g",
"-Wall",
"-Wsign-compare",
"-Wno-unknown-pragmas",
@@ -3093,6 +3084,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
@@ -3143,7 +3136,7 @@ if env.TargetOSIs('posix'):
], )
#make scons colorgcc friendly
- for key in ('HOME', 'TERM'):
+ for key in ('HOME', 'TERM', 'PATH'):
try:
env['ENV'][key] = os.environ[key]
except KeyError:
@@ -3543,33 +3536,6 @@ def doConfigure(myenv):
myenv.AddMethod(
functools.partial(var_func, var=var, func=CheckFlag), f"Check{var}Supported")
- if myenv.ToolchainIs('gcc', 'clang'):
- # This tells clang/gcc to use the gold linker if it is available - we prefer the gold linker
- # because it is much faster. Don't use it if the user has already configured another linker
- # selection manually.
- if any(flag.startswith('-fuse-ld=') for flag in env['LINKFLAGS']):
- myenv.FatalError(
- f"Use the '--linker' option instead of modifying the LINKFLAGS directly.")
-
- linker_ld = get_option('linker')
- if linker_ld == 'auto':
- if not env.TargetOSIs('darwin', 'macOS'):
- if not myenv.AddToLINKFLAGSIfSupported('-fuse-ld=lld'):
- myenv.FatalError(
- f"The recommended linker 'lld' is not supported with the current compiler configuration, you can try the 'gold' linker with '--linker=gold'."
- )
- elif link_model.startswith("dynamic") and linker_ld == 'bfd':
- # BFD is not supported due to issues with it causing warnings from some of
- # the third party libraries that mongodb is linked with:
- # https://jira.mongodb.org/browse/SERVER-49465
- myenv.FatalError(f"Linker {linker_ld} is not supported with dynamic link model builds.")
- else:
- if not myenv.AddToLINKFLAGSIfSupported(f'-fuse-ld={linker_ld}'):
- myenv.FatalError(f"Linker {linker_ld} could not be configured.")
-
- if has_option('gcov') and myenv.AddToCCFLAGSIfSupported('-fprofile-update=single'):
- myenv.AppendUnique(LINKFLAGS=['-fprofile-update=single'])
-
detectCompiler = Configure(
myenv,
help=False,
@@ -4621,43 +4587,6 @@ def doConfigure(myenv):
if optBuild == "off" and myenv.ToolchainIs('clang') and env.TargetOSIs('darwin'):
myenv.AddToLINKFLAGSIfSupported("-Wl,-no_deduplicate")
- # Apply any link time optimization settings as selected by the 'lto' option.
- if has_option('lto'):
- if myenv.ToolchainIs('msvc'):
- # Note that this is actually more aggressive than LTO, it is whole program
- # optimization due to /GL. However, this is historically what we have done for
- # windows, so we are keeping it.
- #
- # /GL implies /LTCG, so no need to say it in CCFLAGS, but we do need /LTCG on the
- # link flags.
- myenv.Append(CCFLAGS=['/GL'])
- myenv.Append(LINKFLAGS=['/LTCG'])
- myenv.Append(ARFLAGS=['/LTCG'])
- elif myenv.ToolchainIs('gcc', 'clang'):
- # For GCC and clang, the flag is -flto, and we need to pass it both on the compile
- # and link lines.
- if not myenv.AddToCCFLAGSIfSupported('-flto') or \
- not myenv.AddToLINKFLAGSIfSupported('-flto'):
- myenv.ConfError("Link time optimization requested, "
- "but selected compiler does not honor -flto")
-
- if myenv.TargetOSIs('darwin'):
- myenv.AddToLINKFLAGSIfSupported('-Wl,-object_path_lto,${TARGET}.lto')
- else:
- # According to intel benchmarks -fno-plt increases perf
- # See PM-2215
- if linker_ld != "gold":
- myenv.ConfError("lto compilation currently only works with the --linker=gold")
- if link_model != "object":
- myenv.ConfError(
- "lto compilation currently only works with the --link-model=object")
- if not myenv.AddToCCFLAGSIfSupported('-fno-plt') or \
- not myenv.AddToLINKFLAGSIfSupported('-fno-plt'):
- myenv.ConfError("-fno-plt is not supported by the compiler")
-
- else:
- myenv.ConfError("Don't know how to enable --lto on current toolchain")
-
if get_option('runtime-hardening') == "on" and optBuild != "off":
# Older glibc doesn't work well with _FORTIFY_SOURCE=2. Selecting 2.11 as the minimum was an
# emperical decision, as that is the oldest non-broken glibc we seem to require. It is possible
@@ -5120,17 +5049,13 @@ def doConfigure(myenv):
"BOOST_LOG_NO_SHORTHAND_NAMES",
"BOOST_LOG_USE_NATIVE_SYSLOG",
"BOOST_LOG_WITHOUT_THREAD_ATTR",
+ "BOOST_LOG_DYN_LINK",
"BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS",
"BOOST_SYSTEM_NO_DEPRECATED",
"BOOST_THREAD_USES_DATETIME",
("BOOST_THREAD_VERSION", "5"),
])
- 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")

View File

@@ -0,0 +1,320 @@
diff -u -r a/src/mongo/client/sdam/sdam_json_test_runner.cpp b/src/mongo/client/sdam/sdam_json_test_runner.cpp
--- a/src/mongo/client/sdam/sdam_json_test_runner.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/client/sdam/sdam_json_test_runner.cpp 2024-09-08 13:38:28.557633361 +0800
@@ -33,6 +33,7 @@
#include <boost/algorithm/string.hpp>
#include <boost/filesystem.hpp>
+#include <boost/filesystem/directory.hpp>
#include <boost/filesystem/operations.hpp>
#include <boost/format.hpp>
#include <boost/optional/optional.hpp>
diff -u -r a/src/mongo/client/sdam/server_selection_json_test_runner.cpp b/src/mongo/client/sdam/server_selection_json_test_runner.cpp
--- a/src/mongo/client/sdam/server_selection_json_test_runner.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/client/sdam/server_selection_json_test_runner.cpp 2024-09-08 13:38:28.557633361 +0800
@@ -33,6 +33,7 @@
#include <boost/algorithm/string.hpp>
#include <boost/filesystem.hpp>
+#include <boost/filesystem/directory.hpp>
#include <boost/filesystem/operations.hpp>
#include <boost/format.hpp>
diff -u -r a/src/mongo/db/ftdc/file_manager.cpp b/src/mongo/db/ftdc/file_manager.cpp
--- a/src/mongo/db/ftdc/file_manager.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/db/ftdc/file_manager.cpp 2024-09-08 13:38:28.560966720 +0800
@@ -33,6 +33,7 @@
#include "mongo/db/ftdc/file_manager.h"
#include <boost/filesystem.hpp>
+#include <boost/filesystem/directory.hpp>
#include <memory>
#include <string>
diff -u -r a/src/mongo/db/ftdc/ftdc_test.cpp b/src/mongo/db/ftdc/ftdc_test.cpp
--- a/src/mongo/db/ftdc/ftdc_test.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/db/ftdc/ftdc_test.cpp 2024-09-08 13:38:28.560966720 +0800
@@ -32,6 +32,7 @@
#include "mongo/db/ftdc/ftdc_test.h"
#include <boost/filesystem.hpp>
+#include <boost/filesystem/directory.hpp>
#include <memory>
#include "mongo/base/data_type_validated.h"
diff -u -r a/src/mongo/db/initialize_server_global_state.cpp b/src/mongo/db/initialize_server_global_state.cpp
--- a/src/mongo/db/initialize_server_global_state.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/db/initialize_server_global_state.cpp 2024-09-08 13:44:23.743647036 +0800
@@ -33,6 +33,7 @@
#include "mongo/db/initialize_server_global_state.h"
#include "mongo/db/initialize_server_global_state_gen.h"
+#include <boost/filesystem/exception.hpp>
#include <boost/filesystem/operations.hpp>
#include <fmt/format.h>
#include <iostream>
@@ -310,7 +311,7 @@
<< "\" should name a file, not a directory.");
}
- if (!serverGlobalParams.logAppend && boost::filesystem::is_regular(absoluteLogpath)) {
+ if (!serverGlobalParams.logAppend && boost::filesystem::is_regular_file(absoluteLogpath)) {
std::string renameTarget = absoluteLogpath + "." + terseCurrentTimeForFilename();
boost::system::error_code ec;
boost::filesystem::rename(absoluteLogpath, renameTarget, ec);
diff -u -r a/src/mongo/db/sorter/sorter_test.cpp b/src/mongo/db/sorter/sorter_test.cpp
--- a/src/mongo/db/sorter/sorter_test.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/db/sorter/sorter_test.cpp 2024-09-08 13:38:28.564300078 +0800
@@ -32,6 +32,7 @@
#include "mongo/platform/basic.h"
#include <boost/filesystem.hpp>
+#include <boost/filesystem/directory.hpp>
#include <fstream>
#include <memory>
diff -u -r a/src/mongo/db/startup_recovery.cpp b/src/mongo/db/startup_recovery.cpp
--- a/src/mongo/db/startup_recovery.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/db/startup_recovery.cpp 2024-09-08 13:38:28.567633437 +0800
@@ -29,6 +29,8 @@
#include "mongo/db/startup_recovery.h"
+#include <boost/filesystem/directory.hpp>
+
#include "mongo/db/catalog/collection_write_path.h"
#include "mongo/db/catalog/create_collection.h"
#include "mongo/db/catalog/database_holder.h"
diff -u -r a/src/mongo/db/startup_warnings_mongod.cpp b/src/mongo/db/startup_warnings_mongod.cpp
--- a/src/mongo/db/startup_warnings_mongod.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/db/startup_warnings_mongod.cpp 2024-09-08 13:40:57.852092056 +0800
@@ -32,6 +32,7 @@
#include "mongo/db/startup_warnings_mongod.h"
+#include <boost/filesystem/exception.hpp>
#include <boost/filesystem/operations.hpp>
#include <fstream>
#ifndef _WIN32
diff -u -r a/src/mongo/db/storage/storage_engine_lock_file_posix.cpp b/src/mongo/db/storage/storage_engine_lock_file_posix.cpp
--- a/src/mongo/db/storage/storage_engine_lock_file_posix.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/db/storage/storage_engine_lock_file_posix.cpp 2024-09-08 13:45:35.370855295 +0800
@@ -57,7 +57,7 @@
// if called without a fully qualified path it asserts; that makes mongoperf fail.
// so make a warning. need a better solution longer term.
// massert(40389, str::stream() << "Couldn't find parent dir for file: " << file.string(),);
- if (!file.has_branch_path()) {
+ if (!file.has_parent_path()) {
LOGV2(22274,
"warning flushMyDirectory couldn't find parent dir for file: {file}",
"flushMyDirectory couldn't find parent dir for file",
@@ -66,7 +66,7 @@
}
- boost::filesystem::path dir = file.branch_path(); // parent_path in new boosts
+ boost::filesystem::path dir = file.parent_path(); // parent_path in new boosts
LOGV2_DEBUG(22275, 1, "flushing directory {dir_string}", "dir_string"_attr = dir.string());
diff -u -r a/src/mongo/db/storage/storage_engine_lock_file_test.cpp b/src/mongo/db/storage/storage_engine_lock_file_test.cpp
--- a/src/mongo/db/storage/storage_engine_lock_file_test.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/db/storage/storage_engine_lock_file_test.cpp 2024-09-08 13:38:28.570966795 +0800
@@ -30,6 +30,7 @@
#include "mongo/platform/basic.h"
#include <boost/filesystem.hpp>
+#include <boost/filesystem/directory.hpp>
#include <fstream>
#include <ostream>
diff -u -r a/src/mongo/db/storage/storage_engine_metadata.cpp b/src/mongo/db/storage/storage_engine_metadata.cpp
--- a/src/mongo/db/storage/storage_engine_metadata.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/db/storage/storage_engine_metadata.cpp 2024-09-08 13:46:14.344483426 +0800
@@ -222,7 +222,7 @@
// if called without a fully qualified path it asserts; that makes mongoperf fail.
// so make a warning. need a better solution longer term.
// massert(13652, str::stream() << "Couldn't find parent dir for file: " << file.string(),);
- if (!file.has_branch_path()) {
+ if (!file.has_parent_path()) {
LOGV2(22283,
"warning flushMyDirectory couldn't find parent dir for file: {file}",
"flushMyDirectory couldn't find parent dir for file",
@@ -231,7 +231,7 @@
}
- boost::filesystem::path dir = file.branch_path(); // parent_path in new boosts
+ boost::filesystem::path dir = file.parent_path(); // parent_path in new boosts
LOGV2_DEBUG(22284, 1, "flushing directory {dir_string}", "dir_string"_attr = dir.string());
diff -u -r a/src/mongo/db/storage/wiredtiger/wiredtiger_c_api_test.cpp b/src/mongo/db/storage/wiredtiger/wiredtiger_c_api_test.cpp
--- a/src/mongo/db/storage/wiredtiger/wiredtiger_c_api_test.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/db/storage/wiredtiger/wiredtiger_c_api_test.cpp 2024-09-08 13:38:28.570966795 +0800
@@ -28,6 +28,7 @@
*/
#include <boost/filesystem.hpp>
+#include <boost/filesystem/directory.hpp>
#include <boost/filesystem/operations.hpp>
#include <boost/filesystem/path.hpp>
#include <boost/system/error_code.hpp>
diff -u -r a/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp b/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp
--- a/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp 2024-09-08 13:38:28.574300153 +0800
@@ -31,6 +31,7 @@
#include "mongo/db/storage/wiredtiger/wiredtiger_util.h"
#include <boost/filesystem.hpp>
+#include <boost/filesystem/directory.hpp>
#include <boost/filesystem/fstream.hpp>
#include "mongo/base/simple_string_data_comparator.h"
diff -u -r a/src/mongo/dbtests/framework_options.cpp b/src/mongo/dbtests/framework_options.cpp
--- a/src/mongo/dbtests/framework_options.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/dbtests/framework_options.cpp 2024-09-08 13:41:53.502512039 +0800
@@ -33,6 +33,8 @@
#include "mongo/dbtests/framework_options.h"
+#include <boost/filesystem/directory.hpp>
+#include <boost/filesystem/exception.hpp>
#include <boost/filesystem/operations.hpp>
#include <iostream>
diff -u -r a/src/mongo/scripting/engine.cpp b/src/mongo/scripting/engine.cpp
--- a/src/mongo/scripting/engine.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/scripting/engine.cpp 2024-09-08 13:38:28.577633512 +0800
@@ -33,6 +33,7 @@
#include "mongo/scripting/engine.h"
#include <algorithm>
+#include <boost/filesystem/directory.hpp>
#include <boost/filesystem/operations.hpp>
#include "mongo/base/string_data.h"
diff -u -r a/src/mongo/scripting/mozjs/module_loader.cpp b/src/mongo/scripting/mozjs/module_loader.cpp
--- a/src/mongo/scripting/mozjs/module_loader.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/scripting/mozjs/module_loader.cpp 2024-09-08 13:38:28.577633512 +0800
@@ -28,6 +28,7 @@
*/
#include <boost/filesystem.hpp>
+#include <boost/filesystem/directory.hpp>
#include "mongo/logv2/log.h"
#include "mongo/scripting/mozjs/implscope.h"
diff -u -r a/src/mongo/shell/shell_utils_extended.cpp b/src/mongo/shell/shell_utils_extended.cpp
--- a/src/mongo/shell/shell_utils_extended.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/shell/shell_utils_extended.cpp 2024-09-08 13:42:27.456101736 +0800
@@ -36,6 +36,8 @@
#endif
#include <boost/filesystem.hpp>
+#include <boost/filesystem/directory.hpp>
+#include <boost/filesystem/exception.hpp>
#include <boost/filesystem/fstream.hpp>
#include <fmt/format.h>
#include <fstream>
diff -u -r a/src/mongo/shell/shell_utils_launcher.cpp b/src/mongo/shell/shell_utils_launcher.cpp
--- a/src/mongo/shell/shell_utils_launcher.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/shell/shell_utils_launcher.cpp 2024-09-08 13:47:56.188587429 +0800
@@ -31,6 +31,8 @@
#include <algorithm>
#include <array>
+#include <boost/filesystem/directory.hpp>
+#include <boost/filesystem/exception.hpp>
#include <boost/iostreams/device/file_descriptor.hpp>
#include <boost/iostreams/stream.hpp>
#include <boost/iostreams/stream_buffer.hpp>
@@ -316,26 +318,26 @@
boost::filesystem::directory_iterator i(from);
while (i != end) {
boost::filesystem::path p = *i;
- if (p.leaf() == "metrics.interim" || p.leaf() == "metrics.interim.temp") {
+ if (p.filename() == "metrics.interim" || p.filename() == "metrics.interim.temp") {
// Ignore any errors for metrics.interim* files as these may disappear during copy
boost::system::error_code ec;
- boost::filesystem::copy_file(p, to / p.leaf(), ec);
+ boost::filesystem::copy_file(p, to / p.filename(), ec);
if (ec) {
LOGV2_INFO(22814,
"Skipping copying of file from '{from}' to "
"'{to}' due to: {error}",
"Skipping copying of file due to error"
"from"_attr = p.generic_string(),
- "to"_attr = (to / p.leaf()).generic_string(),
+ "to"_attr = (to / p.filename()).generic_string(),
"error"_attr = ec.message());
}
- } else if (p.leaf() != "mongod.lock" && p.leaf() != "WiredTiger.lock") {
+ } else if (p.filename() != "mongod.lock" && p.filename() != "WiredTiger.lock") {
if (boost::filesystem::is_directory(p)) {
- boost::filesystem::path newDir = to / p.leaf();
+ boost::filesystem::path newDir = to / p.filename();
boost::filesystem::create_directory(newDir);
copyDir(p, newDir);
} else {
- boost::filesystem::copy_file(p, to / p.leaf());
+ boost::filesystem::copy_file(p, to / p.filename());
}
}
++i;
diff -u -r a/src/mongo/shell/shell_utils_launcher.h b/src/mongo/shell/shell_utils_launcher.h
--- a/src/mongo/shell/shell_utils_launcher.h 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/shell/shell_utils_launcher.h 2024-09-08 13:43:55.856769586 +0800
@@ -29,7 +29,6 @@
#pragma once
-#include <boost/filesystem/convenience.hpp>
#include <map>
#include <sstream>
#include <string>
diff -u -r a/src/mongo/unittest/golden_test_base.cpp b/src/mongo/unittest/golden_test_base.cpp
--- a/src/mongo/unittest/golden_test_base.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/unittest/golden_test_base.cpp 2024-09-08 13:48:19.232095193 +0800
@@ -95,7 +95,7 @@
fs::path outputRoot;
if (opts.outputRootPattern) {
fs::path pattern(*opts.outputRootPattern);
- outputRoot = pattern.parent_path() / fs::unique_path(pattern.leaf());
+ outputRoot = pattern.parent_path() / fs::unique_path(pattern.filename());
} else {
outputRoot = fs::temp_directory_path() / fs::unique_path("out-%%%%-%%%%-%%%%-%%%%");
}
diff -u -r a/src/mongo/util/processinfo_linux.cpp b/src/mongo/util/processinfo_linux.cpp
--- a/src/mongo/util/processinfo_linux.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/util/processinfo_linux.cpp 2024-09-08 13:43:30.446577565 +0800
@@ -53,6 +53,7 @@
#endif
#include <boost/filesystem.hpp>
+#include <boost/filesystem/exception.hpp>
#include <boost/none.hpp>
#include <boost/optional.hpp>
#include <fmt/format.h>
diff -u -r a/src/mongo/util/procparser.cpp b/src/mongo/util/procparser.cpp
--- a/src/mongo/util/procparser.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/util/procparser.cpp 2024-09-08 13:38:28.584300228 +0800
@@ -37,6 +37,7 @@
#include <boost/algorithm/string/finder.hpp>
#include <boost/algorithm/string/split.hpp>
#include <boost/filesystem.hpp>
+#include <boost/filesystem/directory.hpp>
#include <fcntl.h>
#include <string>
#include <sys/stat.h>
diff -u -r a/src/mongo/util/stacktrace_threads.cpp b/src/mongo/util/stacktrace_threads.cpp
--- a/src/mongo/util/stacktrace_threads.cpp 2024-08-15 04:38:09.000000000 +0800
+++ b/src/mongo/util/stacktrace_threads.cpp 2024-09-08 13:38:28.584300228 +0800
@@ -35,6 +35,7 @@
#include <array>
#include <atomic>
#include <boost/filesystem.hpp>
+#include <boost/filesystem/directory.hpp>
#include <boost/filesystem/fstream.hpp>
#include <csignal>
#include <cstdint>

View File

@@ -0,0 +1,12 @@
diff -u -r a/src/mongo/util/pcre.h b/src/mongo/util/pcre.h
--- a/src/mongo/util/pcre.h 2025-03-02 16:46:18.443355487 -0500
+++ b/src/mongo/util/pcre.h 2025-03-02 16:46:59.651708274 -0500
@@ -155,7 +155,7 @@
X(ERROR_ALPHA_ASSERTION_UNKNOWN) \
X(ERROR_SCRIPT_RUN_NOT_AVAILABLE) \
X(ERROR_TOO_MANY_CAPTURES) \
- X(ERROR_CONDITION_ATOMIC_ASSERTION_EXPECTED) \
+ /*X(ERROR_CONDITION_ATOMIC_ASSERTION_EXPECTED)*/ \
X(ERROR_BACKSLASH_K_IN_LOOKAROUND) \
X(ERROR_NOMATCH) \
X(ERROR_PARTIAL) \

View File

@@ -0,0 +1,34 @@
# !! IMPORTANT !!
#
# This file uses the YAML format as described in the documentation:
# http://docs.mongodb.org/manual/reference/configuration-options/
storage:
dbPath: "/var/lib/mongodb"
#engine: wiredTiger
systemLog:
destination: file
path: "/var/log/mongodb/mongodb.log"
quiet: true
logAppend: true
net:
port: 27017
bindIp: 127.0.0.1
#ssl:
# mode: disabled
#security:
#keyFile:
#clusterAuthMode:
#replication:
#replSetName:
# Specifies one of the MongoDB parameters described here:
# http://docs.mongodb.org/manual/reference/parameters/
#
# You can specify multiple setParameter fields such as:
# setParameter: {enableTestCommands: 1}
#setParameter:

View File

@@ -0,0 +1,36 @@
# !! IMPORTANT !!
#
# This file uses the YAML format as described in the documentation:
# http://docs.mongodb.org/manual/reference/configuration-options/
storage:
dbPath: "/var/lib/mongodb"
#engine: wiredTiger
systemLog:
destination: file
path: "/var/log/mongodb/mongodb.log"
quiet: true
logAppend: true
net:
port: 27017
bindIp: 127.0.0.1
unixDomainSocket:
pathPrefix: "/run/mongodb"
#ssl:
# mode: disabled
#security:
#keyFile:
#clusterAuthMode:
#replication:
#replSetName:
# Specifies one of the MongoDB parameters described here:
# http://docs.mongodb.org/manual/reference/parameters/
#
# You can specify multiple setParameter fields such as:
# setParameter: {enableTestCommands: 1}
#setParameter:

View File

@@ -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)

View File

@@ -0,0 +1,19 @@
#!/sbin/openrc-run
# Copyright 1999-2019 Gentoo Authors
# 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}"
retry="SIGTERM/30"
depend() {
use net
}

View File

@@ -0,0 +1,13 @@
# Default log rotation / compression keeps 1 year of logs.
/var/log/mongodb/*.log {
daily
rotate 365
dateext
copytruncate
delaycompress
compress
notifempty
extension gz
sharedscripts
missingok
}

View File

@@ -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

View File

@@ -0,0 +1,2 @@
d /var/log/mongodb 0750 mongodb mongodb -
d /run/mongodb 0750 mongodb mongodb -

View File

@@ -0,0 +1,30 @@
# !! IMPORTANT !!
#
# This file uses the YAML format as described in the documentation:
# http://docs.mongodb.org/manual/reference/configuration-options/
systemLog:
destination: file
path: "/var/log/mongodb/mongos.log"
quiet: true
logAppend: true
net:
port: 27017
bindIp: 127.0.0.1
ssl:
mode: disabled
#security:
#keyFile:
#clusterAuthMode:
#sharding:
#configDB:
# Specifies one of the MongoDB parameters described here:
# http://docs.mongodb.org/manual/reference/parameters/
#
# You can specify multiple setParameter fields such as:
# setParameter: {enableTestCommands: 1}
#setParameter:

View File

@@ -0,0 +1,32 @@
# !! IMPORTANT !!
#
# This file uses the YAML format as described in the documentation:
# http://docs.mongodb.org/manual/reference/configuration-options/
systemLog:
destination: file
path: "/var/log/mongodb/mongos.log"
quiet: true
logAppend: true
net:
port: 27017
bindIp: 127.0.0.1
unixDomainSocket:
pathPrefix: "/run/mongodb"
ssl:
mode: disabled
#security:
#keyFile:
#clusterAuthMode:
#sharding:
#configDB:
# Specifies one of the MongoDB parameters described here:
# http://docs.mongodb.org/manual/reference/parameters/
#
# You can specify multiple setParameter fields such as:
# setParameter: {enableTestCommands: 1}
#setParameter:

View File

@@ -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)

View File

@@ -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
}

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>ultrabug@gentoo.org</email>
<name>Alexys Jacob</name>
</maintainer>
<longdescription lang="en">
MongoDB (from "humongous") is a scalable, high-performance, open source,
schema-free, document-oriented database. Written in C++, MongoDB features:
MongoDB bridges the gap between key-value stores (which are fast and highly
scalable) and traditional RDBMS systems (which provide structured schemas
and powerful queries).
</longdescription>
<use>
<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="cpe">cpe:/a:mongodb:mongodb</remote-id>
<remote-id type="github">mongodb/mongo</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,214 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{11..13} )
SCONS_MIN_VERSION="3.3.1"
CHECKREQS_DISK_BUILD="2400M"
CHECKREQS_DISK_USR="512M"
CHECKREQS_MEMORY="1024M"
inherit check-reqs eapi9-ver 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"
SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-6.0.22-patches.tar.xz"
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:=
app-arch/zstd:=
>=dev-cpp/yaml-cpp-0.6.2:=
dev-libs/boost:=[nls]
>=dev-libs/libpcre-8.42[cxx]
dev-libs/snowball-stemmer:=
net-misc/curl
>=virtual/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/pymongo[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
')
"
PDEPEND="
mongosh? ( app-admin/mongosh-bin )
tools? ( >=app-admin/mongo-tools-100 )
"
PATCHES=(
"${WORKDIR}/mongodb-6.0.22-patches/mongodb-4.4.29-no-enterprise.patch"
"${WORKDIR}/mongodb-6.0.22-patches/${PN}-5.0.2-no-compass.patch"
"${WORKDIR}/mongodb-6.0.22-patches/${PN}-5.0.2-skip-reqs-check.patch"
"${WORKDIR}/mongodb-6.0.22-patches/${PN}-4.4.10-boost-1.81.patch"
"${WORKDIR}/mongodb-6.0.22-patches/mongodb-6.0.0-boost-1.79.patch"
"${WORKDIR}/mongodb-6.0.22-patches/mongodb-6.0.0-gcc12.patch"
"${WORKDIR}/mongodb-6.0.22-patches/mongodb-6.0.7-gcc-13.patch"
"${WORKDIR}/mongodb-6.0.22-patches/mongodb-6.0.21-boost-1.85.patch"
"${WORKDIR}/mongodb-6.0.22-patches/mongodb-6.0.2-sconstruct-changes.patch"
"${FILESDIR}/mongodb-6.0.21-mozjs-remove-unused-constructor.patch"
"${FILESDIR}/mongodb-5.0.30-gcc-15.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/pymongo[${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 $(ver_cut 2) 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/v$(ver_cut 2)/administration/production-notes/"
fi
local oldver=$(($(ver_cut 1) - 1))
if [[ -n ${REPLACING_VERSIONS} ]]; then
if ver_replacing -lt ${oldver}.0; then
ewarn "To upgrade from a version earlier than the ${oldver}.0-series, you must"
ewarn "successively upgrade major releases until you have upgraded"
ewarn "to ${oldver}.0-series. Then upgrade to $(ver_cut 2) series."
else
ewarn "Be sure to set featureCompatibilityVersion to ${oldver}.0 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() {
# bug #954813
filter-lto
# https://github.com/mongodb/mongo/blob/v6.0/docs/building.md
# --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="0c4ec4b6005f75582ce208fc800f09f561b6c2e8"
--disable-warnings-as-errors
--force-jobs # Reapply #906897, fix #935274
--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-devcore || die
}
src_install() {
dobin build/install/bin/{mongo,mongod,mongos}
doman debian/mongo*.{1,5}
dodoc README.md 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"
}

View File

@@ -0,0 +1,212 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
SCONS_MIN_VERSION="3.3.1"
CHECKREQS_DISK_BUILD="2400M"
CHECKREQS_DISK_USR="512M"
CHECKREQS_MEMORY="1024M"
inherit check-reqs eapi9-ver flag-o-matic multiprocessing optfeature pax-utils python-any-r1 \
scons-utils systemd tmpfiles 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 ssl ${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:=
app-arch/zstd:=
>=dev-cpp/yaml-cpp-0.6.2:=
dev-libs/boost:=[nls]
>=dev-libs/libpcre2-10.40:=
dev-libs/snowball-stemmer:=
net-misc/curl
>=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/pymongo[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
dev-python/regex[${PYTHON_USEDEP}]
dev-python/typing-extensions[${PYTHON_USEDEP}]
')
"
PATCHES=(
"${FILESDIR}/${PN}-5.0.2-no-compass.patch"
"${FILESDIR}/${PN}-5.0.2-skip-reqs-check.patch"
"${FILESDIR}/${PN}-7.0.15-sconstruct.patch"
"${FILESDIR}/${PN}-4.4.29-no-enterprise.patch"
"${FILESDIR}/${PN}-7.0.15-system-boost.patch"
"${FILESDIR}/${PN}-7.0.15-gcc-15.patch"
"${FILESDIR}/${PN}-5.0.26-scons.patch"
"${FILESDIR}/${PN}-6.0.21-mozjs-remove-unused-constructor.patch"
"${FILESDIR}/${PN}-6.0.21-boost-filesystem-1.85.patch"
"${FILESDIR}/${PN}-6.0.21-boost-filesystem-1.85-2.patch"
"${FILESDIR}/${PN}-7.0.18-system-pcre.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/pymongo[${PYTHON_USEDEP}]" &&
python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]" &&
python_has_version -b "dev-python/regex[${PYTHON_USEDEP}]" &&
python_has_version -b "dev-python/typing-extensions[${PYTHON_USEDEP}]"
}
pkg_pretend() {
# Bug 809692 + 890294
if use amd64 && ! use cpu_flags_x86_avx; then
ewarn "MongoDB $(ver_cut 2) 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/v$(ver_cut 2)/administration/production-notes/"
fi
local oldver=$(($(ver_cut 1) - 1))
if [[ -n ${REPLACING_VERSIONS} ]]; then
if ver_replacing -lt ${oldver}.0; then
ewarn "To upgrade from a version earlier than the ${oldver}.0-series, you must"
ewarn "successively upgrade major releases until you have upgraded"
ewarn "to ${oldver}.0-series. Then upgrade to $(ver_cut 1).0 series."
else
ewarn "Be sure to set featureCompatibilityVersion to ${oldver}.0 before upgrading."
fi
fi
}
src_prepare() {
default
# remove bundled libs
rm -r src/third_party/{boost,pcre2,snappy-*,yaml-cpp,zlib} || die
# remove compass
rm -r src/mongo/installer/compass || die
}
src_configure() {
# --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="1624e181d0dac03edb34ef25b9b58a6d79969825"
--disable-warnings-as-errors
--force-jobs # Reapply #906897, fix #935274
--jobs="$(makeopts_jobs)"
--use-system-boost
--use-system-pcre2
--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-devcore || die
}
src_install() {
dobin build/install/bin/{mongo,mongod,mongos}
doman debian/mongo*.{1,5}
dodoc README.md 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"
newtmpfiles "${FILESDIR}"/mongodb.tmpfiles mongodb.conf
insinto /etc/logrotate.d/
newins "${FILESDIR}/${PN}.logrotate" ${PN}
# see bug #526114
pax-mark emr "${ED}"/usr/bin/{mongo,mongod,mongos}
}
pkg_postinst() {
tmpfiles_process mongodb.conf
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"
optfeature "MongoDB Shell" app-admin/mongosh-bin
optfeature "MongoDB tools (mongoimport, mongodump...)" app-admin/mongo-tools
}

View File

@@ -0,0 +1,2 @@
DIST postgresql-17.7.tar.bz2 21646334 BLAKE2B 245f866c7375566ca772171b89eb2277a17175b599973e740ce599605292a5847e68b857f83b208a24d0ab6938740faf00ab26758d72c7e119131745f8ab63cb SHA512 99042ce4a5932ded4bc01d30ab59de9b8626de3e3805822cacbdd6b6c5337f1576b30a2a1041cd5a4d366d8cc404268bbf362f6e5b033f0779ca50d10bc7c272
DIST postgresql-18.1.tar.bz2 22423920 BLAKE2B 5e3cc11ab2940f2c1f971b3ac4c6c4850cfb446da4322ca389e1fcdb4d5f9369c5618ca8d57687fea15512d004cf596fd701811f3ad807742a66ded8264d41c8 SHA512 bac8a9bfb12c0c70b5870d92c6f322edbfd559e9ac939e841f16d8271b5c2bc4fb2628e053b407aed71b4032e9f4cba55f1e0a8dc6a3bd4933c2b701fe69ec08

View File

@@ -0,0 +1,146 @@
--- a/contrib/Makefile
+++ b/contrib/Makefile
@@ -5,57 +5,9 @@
include $(top_builddir)/src/Makefile.global
SUBDIRS = \
- amcheck \
- auth_delay \
- auto_explain \
- basic_archive \
- basebackup_to_shell \
- bloom \
- btree_gin \
- btree_gist \
- citext \
- cube \
- dblink \
- dict_int \
- dict_xsyn \
- earthdistance \
- file_fdw \
- fuzzystrmatch \
- hstore \
- intagg \
- intarray \
- isn \
- lo \
- ltree \
oid2name \
- pageinspect \
- passwordcheck \
- pg_buffercache \
- pg_freespacemap \
- pg_prewarm \
- pg_stat_statements \
- pg_surgery \
- pg_trgm \
- pgrowlocks \
- pgstattuple \
- pg_visibility \
- pg_walinspect \
- postgres_fdw \
- seg \
- spi \
- tablefunc \
- tcn \
- test_decoding \
- tsm_system_rows \
- tsm_system_time \
- unaccent \
vacuumlo
-ifeq ($(with_ssl),openssl)
-SUBDIRS += pgcrypto sslinfo
-else
-ALWAYS_SUBDIRS += pgcrypto sslinfo
-endif
ifneq ($(with_uuid),no)
SUBDIRS += uuid-ossp
--- a/src/backend/Makefile
+++ b/src/backend/Makefile
@@ -56,7 +56,7 @@
##########################################################################
-all: submake-libpgport submake-catalog-headers submake-utils-headers postgres $(POSTGRES_IMP)
+all: generated-headers
ifneq ($(PORTNAME), cygwin)
ifneq ($(PORTNAME), win32)
@@ -194,23 +194,7 @@
##########################################################################
-install: all installdirs install-bin
-ifeq ($(PORTNAME), cygwin)
-ifeq ($(MAKE_DLL), true)
- $(INSTALL_DATA) libpostgres.a '$(DESTDIR)$(libdir)/libpostgres.a'
-endif
-endif
-ifeq ($(PORTNAME), win32)
-ifeq ($(MAKE_DLL), true)
- $(INSTALL_DATA) libpostgres.a '$(DESTDIR)$(libdir)/libpostgres.a'
-endif
-endif
- $(MAKE) -C catalog install-data
- $(MAKE) -C tsearch install-data
- $(MAKE) -C utils install-data
- $(INSTALL_DATA) $(srcdir)/libpq/pg_hba.conf.sample '$(DESTDIR)$(datadir)/pg_hba.conf.sample'
- $(INSTALL_DATA) $(srcdir)/libpq/pg_ident.conf.sample '$(DESTDIR)$(datadir)/pg_ident.conf.sample'
- $(INSTALL_DATA) $(srcdir)/utils/misc/postgresql.conf.sample '$(DESTDIR)$(datadir)/postgresql.conf.sample'
+install:
ifeq ($(with_llvm), yes)
install-bin: install-postgres-bitcode
--- a/src/bin/Makefile
+++ b/src/bin/Makefile
@@ -14,24 +14,8 @@
include $(top_builddir)/src/Makefile.global
SUBDIRS = \
- initdb \
- pg_amcheck \
- pg_archivecleanup \
- pg_basebackup \
- pg_checksums \
- pg_combinebackup \
pg_config \
- pg_controldata \
- pg_ctl \
pg_dump \
- pg_resetwal \
- pg_rewind \
- pg_test_fsync \
- pg_test_timing \
- pg_upgrade \
- pg_verifybackup \
- pg_waldump \
- pg_walsummary \
pgbench \
psql \
scripts
--- a/src/Makefile
+++ b/src/Makefile
@@ -17,19 +17,11 @@
port \
timezone \
backend \
- backend/utils/mb/conversion_procs \
- backend/snowball \
include \
interfaces \
- backend/replication/libpqwalreceiver \
- backend/replication/pgoutput \
fe_utils \
bin \
- pl \
- makefiles \
- test/regress \
- test/isolation \
- test/perl
+ makefiles
ifeq ($(with_llvm), yes)
SUBDIRS += backend/jit/llvm

View File

@@ -0,0 +1,148 @@
--- a/contrib/Makefile
+++ b/contrib/Makefile
@@ -5,59 +5,9 @@
include $(top_builddir)/src/Makefile.global
SUBDIRS = \
- amcheck \
- auth_delay \
- auto_explain \
- basic_archive \
- basebackup_to_shell \
- bloom \
- btree_gin \
- btree_gist \
- citext \
- cube \
- dblink \
- dict_int \
- dict_xsyn \
- earthdistance \
- file_fdw \
- fuzzystrmatch \
- hstore \
- intagg \
- intarray \
- isn \
- lo \
- ltree \
oid2name \
- pageinspect \
- passwordcheck \
- pg_buffercache \
- pg_freespacemap \
- pg_logicalinspect \
- pg_overexplain \
- pg_prewarm \
- pg_stat_statements \
- pg_surgery \
- pg_trgm \
- pgrowlocks \
- pgstattuple \
- pg_visibility \
- pg_walinspect \
- postgres_fdw \
- seg \
- spi \
- tablefunc \
- tcn \
- test_decoding \
- tsm_system_rows \
- tsm_system_time \
- unaccent \
vacuumlo
-ifeq ($(with_ssl),openssl)
-SUBDIRS += pgcrypto sslinfo
-else
-ALWAYS_SUBDIRS += pgcrypto sslinfo
-endif
ifneq ($(with_uuid),no)
SUBDIRS += uuid-ossp
--- a/src/backend/Makefile
+++ b/src/backend/Makefile
@@ -56,7 +56,7 @@
##########################################################################
-all: submake-libpgport submake-catalog-headers submake-utils-headers postgres $(POSTGRES_IMP)
+all: generated-headers
ifneq ($(PORTNAME), cygwin)
ifneq ($(PORTNAME), win32)
@@ -194,23 +194,7 @@
##########################################################################
-install: all installdirs install-bin
-ifeq ($(PORTNAME), cygwin)
-ifeq ($(MAKE_DLL), true)
- $(INSTALL_DATA) libpostgres.a '$(DESTDIR)$(libdir)/libpostgres.a'
-endif
-endif
-ifeq ($(PORTNAME), win32)
-ifeq ($(MAKE_DLL), true)
- $(INSTALL_DATA) libpostgres.a '$(DESTDIR)$(libdir)/libpostgres.a'
-endif
-endif
- $(MAKE) -C catalog install-data
- $(MAKE) -C tsearch install-data
- $(MAKE) -C utils install-data
- $(INSTALL_DATA) $(srcdir)/libpq/pg_hba.conf.sample '$(DESTDIR)$(datadir)/pg_hba.conf.sample'
- $(INSTALL_DATA) $(srcdir)/libpq/pg_ident.conf.sample '$(DESTDIR)$(datadir)/pg_ident.conf.sample'
- $(INSTALL_DATA) $(srcdir)/utils/misc/postgresql.conf.sample '$(DESTDIR)$(datadir)/postgresql.conf.sample'
+install:
ifeq ($(with_llvm), yes)
install-bin: install-postgres-bitcode
--- a/src/bin/Makefile
+++ b/src/bin/Makefile
@@ -14,24 +14,8 @@
include $(top_builddir)/src/Makefile.global
SUBDIRS = \
- initdb \
- pg_amcheck \
- pg_archivecleanup \
- pg_basebackup \
- pg_checksums \
- pg_combinebackup \
pg_config \
- pg_controldata \
- pg_ctl \
pg_dump \
- pg_resetwal \
- pg_rewind \
- pg_test_fsync \
- pg_test_timing \
- pg_upgrade \
- pg_verifybackup \
- pg_waldump \
- pg_walsummary \
pgbench \
psql \
scripts
--- a/src/Makefile
+++ b/src/Makefile
@@ -17,19 +17,11 @@
port \
timezone \
backend \
- backend/utils/mb/conversion_procs \
- backend/snowball \
include \
interfaces \
- backend/replication/libpqwalreceiver \
- backend/replication/pgoutput \
fe_utils \
bin \
- pl \
- makefiles \
- test/regress \
- test/isolation \
- test/perl
+ makefiles
ifeq ($(with_llvm), yes)
SUBDIRS += backend/jit/llvm

View File

@@ -0,0 +1,35 @@
#!/bin/sh
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
eerror() {
echo "$@" >&2
}
# Check that DATA_DIR has been set
if [ -z ${DATA_DIR} ] ; then
eerror "DATA_DIR not set"
exit 1
fi
# Check that DATA_DIR exists
if [ ! -d ${DATA_DIR} ] ; then
eerror "Directory not found: ${DATA_DIR}"
eerror "HINT: Ensure that DATA_DIR points to the right path."
eerror "HINT: Or perhaps you need to create the database cluster:"
eerror " emerge --config dev-db/postgresql:@SLOT@"
exit 1
fi
# Check for the existence of PostgreSQL's config files, and set the
# proper mode and ownership.
# Only three files should be checked as potentially other files
# may be in PGDATA that should not be touched.
for file in postgresql pg_hba pg_ident ; do
file="${PGDATA%/}/${file}.conf"
if [ ! -f ${file} ] ; then
eerror "${file} not found"
eerror "HINT: mv ${DATA_DIR%/}/*.conf ${PGDATA}"
exit 1
fi
done

View File

@@ -0,0 +1,65 @@
# Comma-separated list of directories that contain a unix
# socket. Created and controlled by the related initscript. The
# directories created will be owned root:postgres with mode 1775.
#
# /run/postgresql is the default directory.
PG_SOCKET_DIRECTORIES="/run/postgresql"
# Which port and socket to bind PostgreSQL
PGPORT="5432"
# How long to wait for server to start in seconds
START_TIMEOUT=10
# NICE_QUIT ignores new connections and wait for clients to disconnect from
# server before shutting down. NICE_TIMEOUT in seconds determines how long to
# wait for this to succeed.
NICE_TIMEOUT=60
# Forcefully disconnect clients from server and shut down. This is performed
# after NICE_QUIT. Terminated client connections have their open transactions
# rolled back.
# Set RUDE_QUIT to "NO" to disable. RUDE_TIMEOUT in seconds.
RUDE_QUIT="YES"
RUDE_TIMEOUT=30
# If the server still fails to shutdown, you can force it to quit by setting
# this to YES and a recover-run will execute on the next startup.
# Set FORCE_QUIT to "YES" to enable. FORCE_TIMEOUT in seconds.
FORCE_QUIT="NO"
FORCE_TIMEOUT=2
# Extra options to run postmaster with, e.g.:
# -N is the maximal number of client connections
# -B is the number of shared buffers and has to be at least 2x the value for -N
# Please read the man-page to postmaster for more options. Many of these
# options can be set directly in the configuration file.
#PGOPTS="-N 512 -B 1024"
# Pass extra environment variables. If you have to export environment variables
# for the database process, this can be done here.
# Don't forget to escape quotes.
#PG_EXTRA_ENV="PGPASSFILE=\"/path/to/.pgpass\""
##############################################################################
#
# The following values should not be arbitrarily changed.
#
# `emerge --config dev-db/postgresql:@SLOT@' uses these values to
# determine where to create the data directory, where to place the
# configuration files, and any additional options to pass to initdb.
#
# The initscript also uses these variables to inform PostgreSQL where to find
# its data directory and configuration files.
#
##############################################################################
# Location of configuration files
PGDATA="/etc/postgresql-@SLOT@/"
# Where the data directory is located/to be created
DATA_DIR="/var/lib/postgresql/@SLOT@/data"
# Additional options to pass to initdb.
# See `man initdb' for available options.
PG_INITDB_OPTS="--encoding=UTF8"

View File

@@ -0,0 +1,204 @@
#!/sbin/openrc-run
# Copyright 1999-2023 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
extra_started_commands="reload promote"
PG_CTL="/usr/@LIBDIR@/postgresql-@SLOT@/bin/pg_ctl"
PG_CONTROLDATA="/usr/@LIBDIR@/postgresql-@SLOT@/bin/pg_controldata"
description="PostgreSQL @SLOT@ -- the world's most advanced open source database --
${RC_SERVICE} is a wrapper around pg_ctl with additional administrative checks
and convenience"
# pid is read by fscanf(3) with the first argument which should be integer,
# so this multiple line pidfile can be used.
PIDFILE="${DATA_DIR%/}/postmaster.pid"
get_config() {
[ -f "${PGDATA%/}/postgresql.conf" ] || return 1
eval echo $(sed -e 's:#.*::' "${PGDATA%/}/postgresql.conf" \
| awk '$1 == "'$1'" { print ($2 == "=" ? $3 : $2) }')
}
depend() {
use net
provide postgresql
if [ "$(get_config log_destination)" = "syslog" ] ; then
use logger
fi
}
configured_port=${PGPORT}
config_port() {
local port=$(get_config port)
[ -z ${port} ] || configured_port=${port}
}
checkconfig() {
# Check that DATA_DIR has been set
if [ -z "${DATA_DIR}" ] ; then
eerror "DATA_DIR not set"
eerror "HINT: Perhaps you need to update /etc/conf.d/postgresql-@SLOT@"
return 1
fi
# Check that DATA_DIR exists
if [ ! -d "${DATA_DIR}" ] ; then
eerror "Directory not found: ${DATA_DIR}"
eerror "HINT: Ensure that DATA_DIR points to the right path."
eerror "HINT: Or perhaps you need to create the database cluster:"
eerror " emerge --config dev-db/postgresql:@SLOT@"
return 1
fi
# Check for the existence of PostgreSQL's config files, and set the
# proper mode and ownership.
# Only three files should be checked as potentially other files
# may be in PGDATA that should not be touched.
local file
for file in postgresql pg_hba pg_ident ; do
file="${PGDATA%/}/${file}.conf"
if [ -f "${file}" ] ; then
checkpath -f -m 0600 -o postgres:postgres "${file}"
else
eerror "${file} not found"
eerror "HINT: mv ${DATA_DIR%/}/*.conf ${PGDATA}"
return 1
fi
done
# Set the proper permission for the socket paths and create it if
# it doesn't exist.
set -f
local IFS=',' s
for s in ${PG_SOCKET_DIRECTORIES}; do
checkpath -d -m 1775 -o root:postgres "${s}"
if [ -e "${s%/}/.s.PGSQL.${configured_port}" ] ; then
eerror "Socket conflict."
eerror "A server is already listening on:"
eerror " ${s%/}/.s.PGSQL.${configured_port}"
eerror "HINT: Change PGPORT to listen on a different socket."
return 1
fi
done
set +f
}
start() {
config_port
checkconfig || return 1
ebegin "Starting PostgreSQL @SLOT@"
rm -f "${DATA_DIR%/}/postmaster.pid"
export PGPORT=${configured_port}
eval "${PG_EXTRA_ENV:+export} ${PG_EXTRA_ENV}"
start-stop-daemon --start --user postgres:postgres \
--pidfile "${PIDFILE}" \
--exec "${PG_CTL}" -- \
start \
-s -w -t ${START_TIMEOUT} -l "${DATA_DIR%/}/postmaster.log" \
-D "${PGDATA}" \
-o "-c data_directory=\"${DATA_DIR}\" \
-c unix_socket_directories=\"${PG_SOCKET_DIRECTORIES}\" \
${PGOPTS}"
local retval=$?
if [ ${retval} -ne 0 ] ; then
eerror "Check the log for a possible explanation of the above error."
eerror "The log may be located at:"
eerror " ${DATA_DIR%/}/postmaster.log"
eerror "Or wherever you configured PostgreSQL @SLOT@ to log."
fi
eend ${retval}
}
stop() {
: "${NICE_TIMEOUT:=5}"
: "${RUDE_TIMEOUT:=5}"
: "${FORCE_TIMEOUT:=5}"
# The SIGTERM is the default signal for s-s-d, and corresponds to the
# default stop mode 'smart' of postgres.
local retry="SIGTERM/${NICE_TIMEOUT}"
local seconds=${NICE_TIMEOUT}
if yesno RUDE_QUIT; then
# retry fast stop mode after NICE_TIMEOUT
retry="${retry}/SIGINT/${RUDE_TIMEOUT}"
seconds=$(( ${seconds} + ${RUDE_TIMEOUT} ))
fi
if yesno FORCE_QUIT; then
# retry immediate stop mode after RUDE_TIMEOUT
retry="${retry}/SIGQUIT/${FORCE_TIMEOUT}"
seconds=$(( ${seconds} + ${FORCE_TIMEOUT} ))
fi
ebegin "Stopping PostgreSQL @SLOT@ (this can take up to ${seconds} seconds)"
start-stop-daemon --stop --retry ${retry} --pidfile ${PIDFILE}
local retval=$?
if [ ${retval} -eq 0 ] ; then
# clean up remaining socket files for the case which postgres has crashed before stopping
config_port
local IFS=',' s
for s in ${PG_SOCKET_DIRECTORIES}; do
if ls -1 "${s%/}/.s.PGSQL.${configured_port}"* >/dev/null 2>&1; then
ewarn "cleaning up remaining socket files in '$s'"
rm -vf "${s%/}/.s.PGSQL.${configured_port}"*
fi
done
fi
eend ${retval}
}
status() {
default_status
local retval=$?
local postopts_file="${DATA_DIR%/}/postmaster.opts"
if [ $retval -eq 0 -a -r "${postopts_file}" ] ; then
einfo "opts: $(cat ${postopts_file})"
fi
}
description_reload="Simply sends the postgres process a SIGHUP signal, causing
it to reread its configuration files (postgresql.conf, pg_hba.conf,
etc.). This allows changing of configuration-file options that do not
require a complete restart to take effect."
reload() {
ebegin "Reloading PostgreSQL @SLOT@ configuration"
start-stop-daemon \
--signal SIGHUP \
--user postgres:postgres \
--pidfile "${PIDFILE}"
eend $?
}
description_promote="If the server is in standby, it is commanded to exit
recovery and begin read-write operations."
promote() {
ebegin "Promoting PostgreSQL @SLOT@"
local retval=1
if "${PG_CONTROLDATA}" -D "${DATA_DIR}" 2>/dev/null \
| grep 'in archive recovery' >/dev/null 2>&1; then
local promotefile="${DATA_DIR%/}/promote"
checkpath -q -f -m 644 -o postgres:postgres "${promotefile}" && \
start-stop-daemon \
--signal SIGUSR1 \
--user postgres:postgres \
--pidfile "${PIDFILE}"
retval=$?
if [ ${retval} -ne 0 ] ; then
rm -f "${promotefile}"
fi
else
eerror "server is not in standby mode"
fi
eend ${retval}
}

View File

@@ -0,0 +1,52 @@
# It's not recommended to modify this file in-place, because it will be
# overwritten during package upgrades. If you want to customize, the
# best way is to create file
# "/etc/systemd/system/postgresql-@SLOT@.service.d/*.conf"
# containing your changes
# For example, if you want to change the server's port number to 5433,
# create a file named
# "/etc/systemd/system/postgresql-@SLOT@.service.d/port.conf"
# containing:
# [Service]
# Environment=PGPORT=5433
# This will override the setting appearing below.
[Unit]
Description=PostgreSQL database server
After=network.target
[Service]
Type=notify
User=postgres
Group=postgres
# Port number for server to listen on
Environment=PGPORT=5432
# Location of configuration files
Environment=PGDATA=/etc/postgresql-@SLOT@
# Where the data directory is located
Environment=DATA_DIR=/var/lib/postgresql/@SLOT@/data
# Where to send early-startup messages from the server (before the logging
# options of postgresql.conf take effect)
# This is normally controlled by the global default set by systemd
# StandardOutput=syslog
ExecStartPre=/usr/bin/postgresql-@SLOT@-check-db-dir
ExecStart=/usr/@LIBDIR@/postgresql-@SLOT@/bin/postgres -p ${PGPORT} -D ${DATA_DIR}
ExecReload=/bin/kill -HUP $MAINPID
KillMode=mixed
KillSignal=SIGINT
# Give a reasonable amount of time for the server to start up/shut down
TimeoutSec=300
# Disable OOM kill on the postmaster
OOMScoreAdjust=-1000
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1 @@
d /run/postgresql 1775 root postgres -

View File

@@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>pgsql-bugs@gentoo.org</email>
<name>PostgreSQL and Related Package Development</name>
</maintainer>
<use>
<flag name="llvm">
Add support for llvm JIT engine
</flag>
<flag name="numa">
Add support for NUMA
</flag>
<flag name="oauth">
Enable OAuth2 authentication support
</flag>
<flag name="server">
Disable to build and install the clients and libraries
only.
</flag>
<flag name="uring">
Build with support for <pkg>sys-libs/liburing</pkg> AIO backend
</flag>
<flag name="uuid">
Enable server side UUID generation (via
<pkg>dev-libs/ossp-uuid</pkg>).
</flag>
</use>
<upstream>
<remote-id type="github">postgres/postgres</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,481 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{11..14} )
LLVM_COMPAT=( {15..21} )
LLVM_OPTIONAL=1
inherit dot-a flag-o-matic linux-info llvm-r1 pam python-single-r1 systemd tmpfiles
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
SLOT=$(ver_cut 1)
MY_PV=${PV/_/}
S="${WORKDIR}/${PN}-${MY_PV}"
SRC_URI="https://ftp.postgresql.org/pub/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
LICENSE="POSTGRESQL GPL-2"
DESCRIPTION="PostgreSQL RDBMS"
HOMEPAGE="https://www.postgresql.org/"
IUSE="debug doc +icu kerberos ldap llvm +lz4 nls pam perl python
+readline selinux +server systemd ssl static-libs tcl uuid xml
zlib +zstd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
CDEPEND="
>=app-eselect/eselect-postgresql-2.0
acct-group/postgres
acct-user/postgres
sys-apps/less
virtual/libintl
icu? ( dev-libs/icu:= )
kerberos? ( app-crypt/mit-krb5 )
ldap? ( net-nds/openldap:= )
llvm? ( $(llvm_gen_dep '
llvm-core/clang:${LLVM_SLOT}
llvm-core/llvm:${LLVM_SLOT}
') )
lz4? ( app-arch/lz4 )
pam? ( sys-libs/pam )
perl? ( >=dev-lang/perl-5.8:= )
python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:0= )
server? ( systemd? ( sys-apps/systemd ) )
ssl? ( >=dev-libs/openssl-0.9.6-r1:0= )
tcl? ( >=dev-lang/tcl-8:0= )
xml? ( dev-libs/libxml2:= dev-libs/libxslt )
zlib? ( virtual/zlib:= )
zstd? ( app-arch/zstd )
"
# uuid flags -- depend on sys-apps/util-linux for Linux libcs, or if no
# supported libc in use depend on dev-libs/ossp-uuid. For BSD systems,
# the libc includes UUID functions.
UTIL_LINUX_LIBC=( elibc_{glibc,musl} )
nest_usedep() {
local front back
while [[ ${#} -gt 1 ]]; do
front+="${1}? ( "
back+=" )"
shift
done
echo "${front}${1}${back}"
}
CDEPEND+="
uuid? (
${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
$(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} dev-libs/ossp-uuid)
)"
DEPEND="${CDEPEND}
sys-devel/bison
app-alternatives/lex
nls? ( sys-devel/gettext )
xml? ( virtual/pkgconfig )
"
RDEPEND="${CDEPEND}
selinux? ( sec-policy/selinux-postgresql )
"
# Openjade, docbook, XML, and XSLT are needed to generate manpages and
# any documentation that may be elected.
BDEPEND="
app-text/openjade
app-text/docbook-dsssl-stylesheets
app-text/docbook-sgml-dtd:4.5
app-text/docbook-xml-dtd:4.5
app-text/docbook-xsl-stylesheets
dev-libs/libxml2
dev-libs/libxslt
"
pkg_setup() {
use llvm && llvm-r1_pkg_setup
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
use python && python-single-r1_pkg_setup
}
src_prepare() {
# Set proper run directory
sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \
-i src/include/pg_config_manual.h || die
# Rely on $PATH being in the proper order so that the correct
# install program is used for modules utilizing PGXS in both
# hardened and non-hardened environments. (Bug #528786)
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
use server || eapply "${FILESDIR}/${PN}-17.0-no-server.patch"
if use pam ; then
sed "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
-i src/backend/libpq/auth.c || \
die 'PGSQL_PAM_SERVICE rename failed.'
fi
default
eapply_user
}
src_configure() {
use static-libs && lto-guarantee-fat
# Fails to build with C23, fallback to the old default in < GCC 15
# for now: https://marc.info/?l=pgsql-bugs&m=173185132906874&w=2
append-cflags -std=gnu17
case ${CHOST} in
*-darwin*|*-solaris*)
use nls && append-libs intl
;;
esac
export LDFLAGS_SL="${LDFLAGS}"
export LDFLAGS_EX="${LDFLAGS}"
local PO="${EPREFIX}"
local i uuid_config=""
if use uuid; then
for i in ${UTIL_LINUX_LIBC[@]}; do
use ${i} && uuid_config="--with-uuid=e2fs"
done
[[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
fi
local myconf="\
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
$(use_enable debug) \
$(use_with icu) \
$(use_with kerberos gssapi) \
$(use_with ldap) \
$(use_with llvm) \
$(use_with lz4) \
$(use_with pam) \
$(use_with perl) \
$(use_with python) \
$(use_with readline) \
$(use_with ssl openssl) \
$(usex server "$(use_with systemd)" '--without-systemd') \
$(use_with tcl) \
${uuid_config} \
$(use_with xml libxml) \
$(use_with xml libxslt) \
$(use_with zlib) \
$(use_with zstd) \
$(use_enable nls)"
if use alpha; then
myconf+=" --disable-spinlocks"
else
# Should be the default but just in case
myconf+=" --enable-spinlocks"
fi
econf ${myconf}
}
src_compile() {
emake
emake -C contrib
emake -C doc
}
src_install() {
emake DESTDIR="${D}" install
emake DESTDIR="${D}" install -C contrib
dodoc HISTORY
# man pages are already built, but if we have the target make them,
# they'll be generated from source before being installed so we
# manually install man pages.
# We use ${SLOT} instead of doman for postgresql.eselect
insinto /usr/share/postgresql-${SLOT}/man/
doins -r doc/src/sgml/man{1,3,7}
if ! use server; then
# Remove man pages for non-existent binaries
serverman=(
initdb
pg_{archivecleanup,controldata,ctl,resetwal,rewind,standby}
pg_{test_{fsync,timing},upgrade,waldump}
post{gres,master}
)
for m in ${serverman[@]} ; do
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1"
done
fi
docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
# Create slot specific man pages
local bn f mansec slotted_name
for mansec in 1 3 7 ; do
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir"
pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed"
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
bn=$(basename "${f}")
slotted_name=${bn%.${mansec}}${SLOT}.${mansec}
case ${bn} in
TABLE.7|WITH.7)
echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name}
;;
*)
echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
;;
esac
done
popd > /dev/null
done
insinto /etc/postgresql-${SLOT}
newins src/bin/psql/psqlrc.sample psqlrc
# Don't delete libpg{port,common}.a (Bug #571046). They're always
# needed by extensions utilizing PGXS.
use static-libs || \
find "${ED}" -name '*.a' ! -name libpgport.a ! -name libpgcommon.a \
-delete
strip-lto-bytecode "${ED}"
# Make slot specific links to programs
local f bn
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-mindepth 1 -maxdepth 1)
do
bn=$(basename "${f}")
dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
"/usr/bin/${bn}${SLOT/.}"
done
if use doc ; then
docinto html
dodoc doc/src/sgml/html/*
fi
if use server; then
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
"${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
"${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT}
if use systemd; then
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
"${FILESDIR}/${PN}.service-9.6-r1" | \
systemd_newunit - ${PN}-${SLOT}.service
newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
fi
use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
if use prefix ; then
keepdir /run/postgresql
fperms 1775 /run/postgresql
fi
fi
}
pkg_postinst() {
use server && use systemd && tmpfiles_process ${PN}-${SLOT}.conf
postgresql-config update
elog "If you need a global psqlrc-file, you can place it in:"
elog " ${EROOT}/etc/postgresql-${SLOT}/"
if use server ; then
elog
elog "Gentoo specific documentation:"
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
elog
elog "Official documentation:"
elog "https://www.postgresql.org/docs/${SLOT}/static/index.html"
elog
elog "The default location of the Unix-domain socket is:"
elog " ${EROOT}/run/postgresql/"
elog
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
elog "so that it contains your preferred locale in:"
elog " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
elog
elog "Then, execute the following command to setup the initial database"
elog "environment:"
elog " emerge --config =${CATEGORY}/${PF}"
if [[ -n ${REPLACING_VERSIONS} ]] ; then
ewarn "If your system is using 'pg_stat_statements' and you are running a"
ewarn "version of PostgreSQL ${SLOT}, we advise that you execute"
ewarn "the following command after upgrading:"
ewarn
ewarn "ALTER EXTENSION pg_stat_statements UPDATE;"
fi
fi
}
pkg_prerm() {
if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
sleep 10
eend 0
fi
}
pkg_postrm() {
postgresql-config update
}
pkg_config() {
use server || die "USE flag 'server' not enabled. Nothing to configure."
[[ -f "${EROOT}/etc/conf.d/postgresql-${SLOT}" ]] \
&& source "${EROOT}/etc/conf.d/postgresql-${SLOT}"
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT}/etc/postgresql-${SLOT}/"
[[ -z "${DATA_DIR}" ]] \
&& DATA_DIR="${EROOT}/var/lib/postgresql/${SLOT}/data"
# environment.bz2 may not contain the same locale as the current system
# locale. Unset and source from the current system locale.
if [ -f "${EROOT}/etc/env.d/02locale" ]; then
unset LANG
unset LC_CTYPE
unset LC_NUMERIC
unset LC_TIME
unset LC_COLLATE
unset LC_MONETARY
unset LC_MESSAGES
unset LC_ALL
source "${EROOT}/etc/env.d/02locale"
[ -n "${LANG}" ] && export LANG
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
[ -n "${LC_TIME}" ] && export LC_TIME
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
[ -n "${LC_ALL}" ] && export LC_ALL
fi
einfo "You can modify the paths and options passed to initdb by editing:"
einfo " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
einfo
einfo "Information on options that can be passed to initdb are found at:"
einfo " https://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
einfo " https://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
einfo
einfo "PG_INITDB_OPTS is currently set to:"
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
einfo " (none)"
else
einfo " ${PG_INITDB_OPTS}"
fi
einfo
einfo "Configuration files will be installed to:"
einfo " ${PGDATA}"
einfo
einfo "The database cluster will be created in:"
einfo " ${DATA_DIR}"
einfo
ebegin "Continuing initialization in 5 seconds (Control-C to cancel)"
sleep 5
eend 0
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
eerror "The given directory, '${DATA_DIR}', is not empty."
eerror "Modify DATA_DIR to point to an empty directory."
die "${DATA_DIR} is not empty."
fi
einfo "Creating the data directory ..."
if [[ ${EUID} == 0 ]] ; then
mkdir -p "$(dirname ${DATA_DIR%/})" || die "Couldn't parent dirs"
mkdir -m 0700 "${DATA_DIR%/}" || die "Couldn't make DATA_DIR"
chown -h postgres:postgres "${DATA_DIR%/}" || die "Couldn't chown"
fi
einfo "Initializing the database ..."
if [[ ${EUID} == 0 ]] ; then
su - postgres -c "${EROOT}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
else
"${EROOT}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
fi
if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
fi
# unix_socket_directory has no effect in postgresql.conf as it's
# overridden in the initscript
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
einfo "The autovacuum function, which was in contrib, has been moved to the main"
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
einfo "by default. You can disable it in the cluster's:"
einfo " ${PGDATA%/}/postgresql.conf"
einfo
if ! use systemd; then
einfo "The PostgreSQL server, by default, will log events to:"
einfo " ${DATA_DIR%/}/postmaster.log"
einfo
fi
if use prefix ; then
einfo "The location of the configuration files have moved to:"
einfo " ${PGDATA}"
einfo "To start the server:"
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
einfo "To stop:"
einfo " pg_ctl stop -D ${DATA_DIR}"
einfo
einfo "Or move the configuration files back:"
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
elif use systemd; then
einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
einfo "instead of 'pg_ctl'."
else
einfo "You should use the '${EROOT}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
einfo "instead of 'pg_ctl'."
fi
}
src_test() {
if use server && [[ ${UID} -ne 0 ]] ; then
# Some ICU tests fail if LC_CTYPE and LC_COLLATE aren't the same. We set
# LC_CTYPE to be equal to LC_COLLATE since LC_COLLATE is set by Portage.
local old_ctype=${LC_CTYPE}
export LC_CTYPE=${LC_COLLATE}
emake check
export LC_CTYPE=${old_ctype}
einfo "If you think other tests besides the regression tests are necessary, please"
einfo "submit a bug including a patch for this ebuild to enable them."
else
use server || \
ewarn 'Tests cannot be run without the "server" use flag enabled.'
[[ ${UID} -eq 0 ]] || \
ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
ewarn 'Skipping.'
fi
}

View File

@@ -0,0 +1,480 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{11..14} )
LLVM_COMPAT=( {15..21} )
LLVM_OPTIONAL=1
inherit dot-a flag-o-matic linux-info llvm-r1 pam python-single-r1 systemd tmpfiles
DESCRIPTION="PostgreSQL RDBMS"
HOMEPAGE="https://www.postgresql.org/"
MY_PV=${PV/_/}
SRC_URI="https://ftp.postgresql.org/pub/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
S="${WORKDIR}/${PN}-${MY_PV}"
LICENSE="POSTGRESQL GPL-2"
SLOT=$(ver_cut 1)
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="debug doc +icu kerberos ldap llvm +lz4 +numa nls oauth pam perl python
+readline selinux +server systemd ssl static-libs tcl uuid +uring
xml zlib +zstd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
CDEPEND="
>=app-eselect/eselect-postgresql-2.0
acct-group/postgres
acct-user/postgres
sys-apps/less
virtual/libintl
icu? ( dev-libs/icu:= )
kerberos? ( app-crypt/mit-krb5 )
ldap? ( net-nds/openldap:= )
llvm? ( $(llvm_gen_dep '
llvm-core/clang:${LLVM_SLOT}
llvm-core/llvm:${LLVM_SLOT}
') )
lz4? ( app-arch/lz4 )
numa? ( sys-process/numactl )
oauth? ( net-misc/curl[adns] )
pam? ( sys-libs/pam )
perl? ( >=dev-lang/perl-5.8:= )
python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:0= )
server? ( systemd? ( sys-apps/systemd ) )
ssl? ( >=dev-libs/openssl-0.9.6-r1:0= )
tcl? ( >=dev-lang/tcl-8:0= )
uring? ( sys-libs/liburing )
xml? ( dev-libs/libxml2:= dev-libs/libxslt )
zlib? ( virtual/zlib:= )
zstd? ( app-arch/zstd )
"
# uuid flags -- depend on sys-apps/util-linux for Linux libcs, or if no
# supported libc in use depend on dev-libs/ossp-uuid. For BSD systems,
# the libc includes UUID functions.
UTIL_LINUX_LIBC=( elibc_{glibc,musl} )
nest_usedep() {
local front back
while [[ ${#} -gt 1 ]]; do
front+="${1}? ( "
back+=" )"
shift
done
echo "${front}${1}${back}"
}
CDEPEND+="
uuid? (
${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
$(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} dev-libs/ossp-uuid)
)"
DEPEND="${CDEPEND}
sys-devel/bison
app-alternatives/lex
nls? ( sys-devel/gettext )
xml? ( virtual/pkgconfig )
"
RDEPEND="${CDEPEND}
selinux? ( sec-policy/selinux-postgresql )
"
# Openjade, docbook, XML, and XSLT are needed to generate manpages and
# any documentation that may be elected.
BDEPEND="
app-text/openjade
app-text/docbook-dsssl-stylesheets
app-text/docbook-sgml-dtd:4.5
app-text/docbook-xml-dtd:4.5
app-text/docbook-xsl-stylesheets
dev-libs/libxml2
dev-libs/libxslt
"
pkg_setup() {
use llvm && llvm-r1_pkg_setup
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
use python && python-single-r1_pkg_setup
}
src_prepare() {
# Set proper run directory
sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \
-i src/include/pg_config_manual.h || die
# Rely on $PATH being in the proper order so that the correct
# install program is used for modules utilizing PGXS in both
# hardened and non-hardened environments. (Bug #528786)
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
use server || eapply "${FILESDIR}/${PN}-18.0-no-server.patch"
if use pam ; then
sed "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
-i src/backend/libpq/auth.c || \
die 'PGSQL_PAM_SERVICE rename failed.'
fi
default
eapply_user
}
src_configure() {
lto-guarantee-fat
# Fails to build with C23, fallback to the old default in < GCC 15
# for now: https://marc.info/?l=pgsql-bugs&m=173185132906874&w=2
append-cflags -std=gnu17
case ${CHOST} in
*-darwin*|*-solaris*)
use nls && append-libs intl
;;
esac
export LDFLAGS_SL="${LDFLAGS}"
export LDFLAGS_EX="${LDFLAGS}"
local PO="${EPREFIX}"
local i uuid_config=""
if use uuid; then
for i in ${UTIL_LINUX_LIBC[@]}; do
use ${i} && uuid_config="--with-uuid=e2fs"
done
[[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
fi
local myconf="\
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
$(use_enable debug) \
$(use_with icu) \
$(use_with kerberos gssapi) \
$(use_with ldap) \
$(use_with llvm) \
$(use_with lz4) \
$(use_with numa libnuma) \
$(use_with oauth libcurl) \
$(use_with pam) \
$(use_with perl) \
$(use_with python) \
$(use_with readline) \
$(use_with ssl openssl) \
$(usex server "$(use_with systemd)" '--without-systemd') \
$(use_with tcl) \
$(use_with uring liburing) \
${uuid_config} \
$(use_with xml libxml) \
$(use_with xml libxslt) \
$(use_with zlib) \
$(use_with zstd) \
$(use_enable nls)"
econf ${myconf}
}
src_compile() {
emake
emake -C contrib
emake -C doc
}
src_install() {
emake DESTDIR="${D}" install
emake DESTDIR="${D}" install -C contrib
dodoc HISTORY
# man pages are already built, but if we have the target make them,
# they'll be generated from source before being installed so we
# manually install man pages.
# We use ${SLOT} instead of doman for postgresql.eselect
insinto /usr/share/postgresql-${SLOT}/man/
doins -r doc/src/sgml/man{1,3,7}
if ! use server; then
# Remove man pages for non-existent binaries
serverman=(
initdb
pg_{archivecleanup,controldata,ctl,resetwal,rewind,standby}
pg_{test_{fsync,timing},upgrade,waldump}
post{gres,master}
)
for m in ${serverman[@]} ; do
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1"
done
fi
docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
# Create slot specific man pages
local bn f mansec slotted_name
for mansec in 1 3 7 ; do
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir"
pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed"
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
bn=$(basename "${f}")
slotted_name=${bn%.${mansec}}${SLOT}.${mansec}
case ${bn} in
TABLE.7|WITH.7)
echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name}
;;
*)
echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
;;
esac
done
popd > /dev/null
done
insinto /etc/postgresql-${SLOT}
newins src/bin/psql/psqlrc.sample psqlrc
# Don't delete libpg{port,common}.a (Bug #571046). They're always
# needed by extensions utilizing PGXS.
use static-libs || \
find "${ED}" -name '*.a' ! -name libpgport.a ! -name libpgcommon.a \
-delete
strip-lto-bytecode "${ED}"
# Make slot specific links to programs
local f bn
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-mindepth 1 -maxdepth 1)
do
bn=$(basename "${f}")
dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
"/usr/bin/${bn}${SLOT/.}"
done
if use doc ; then
docinto html
dodoc doc/src/sgml/html/*
fi
if use server; then
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
"${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
"${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT}
if use systemd; then
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
"${FILESDIR}/${PN}.service-9.6-r1" | \
systemd_newunit - ${PN}-${SLOT}.service
newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
fi
use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
if use prefix ; then
keepdir /run/postgresql
fperms 1775 /run/postgresql
fi
fi
}
pkg_postinst() {
use server && use systemd && tmpfiles_process ${PN}-${SLOT}.conf
postgresql-config update
elog "If you need a global psqlrc-file, you can place it in:"
elog " ${EROOT}/etc/postgresql-${SLOT}/"
if use server ; then
elog
elog "Gentoo specific documentation:"
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
elog
elog "Official documentation:"
elog "https://www.postgresql.org/docs/${SLOT}/static/index.html"
elog
elog "The default location of the Unix-domain socket is:"
elog " ${EROOT}/run/postgresql/"
elog
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
elog "so that it contains your preferred locale in:"
elog " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
elog
elog "Then, execute the following command to setup the initial database"
elog "environment:"
elog " emerge --config =${CATEGORY}/${PF}"
if [[ -n ${REPLACING_VERSIONS} ]] ; then
ewarn "If your system is using 'pg_stat_statements' and you are running a"
ewarn "version of PostgreSQL ${SLOT}, we advise that you execute"
ewarn "the following command after upgrading:"
ewarn
ewarn "ALTER EXTENSION pg_stat_statements UPDATE;"
fi
fi
}
pkg_prerm() {
if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
sleep 10
eend 0
fi
}
pkg_postrm() {
postgresql-config update
}
pkg_config() {
use server || die "USE flag 'server' not enabled. Nothing to configure."
[[ -f "${EROOT}/etc/conf.d/postgresql-${SLOT}" ]] \
&& source "${EROOT}/etc/conf.d/postgresql-${SLOT}"
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT}/etc/postgresql-${SLOT}/"
[[ -z "${DATA_DIR}" ]] \
&& DATA_DIR="${EROOT}/var/lib/postgresql/${SLOT}/data"
# environment.bz2 may not contain the same locale as the current system
# locale. Unset and source from the current system locale.
if [ -f "${EROOT}/etc/env.d/02locale" ]; then
unset LANG
unset LC_CTYPE
unset LC_NUMERIC
unset LC_TIME
unset LC_COLLATE
unset LC_MONETARY
unset LC_MESSAGES
unset LC_ALL
source "${EROOT}/etc/env.d/02locale"
[ -n "${LANG}" ] && export LANG
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
[ -n "${LC_TIME}" ] && export LC_TIME
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
[ -n "${LC_ALL}" ] && export LC_ALL
fi
einfo "You can modify the paths and options passed to initdb by editing:"
einfo " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
einfo
einfo "Information on options that can be passed to initdb are found at:"
einfo " https://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
einfo " https://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
einfo
einfo "PG_INITDB_OPTS is currently set to:"
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
einfo " (none)"
else
einfo " ${PG_INITDB_OPTS}"
fi
einfo
einfo "Configuration files will be installed to:"
einfo " ${PGDATA}"
einfo
einfo "The database cluster will be created in:"
einfo " ${DATA_DIR}"
einfo
ebegin "Continuing initialization in 5 seconds (Control-C to cancel)"
sleep 5
eend 0
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
eerror "The given directory, '${DATA_DIR}', is not empty."
eerror "Modify DATA_DIR to point to an empty directory."
die "${DATA_DIR} is not empty."
fi
einfo "Creating the data directory ..."
if [[ ${EUID} == 0 ]] ; then
mkdir -p "$(dirname ${DATA_DIR%/})" || die "Couldn't parent dirs"
mkdir -m 0700 "${DATA_DIR%/}" || die "Couldn't make DATA_DIR"
chown -h postgres:postgres "${DATA_DIR%/}" || die "Couldn't chown"
fi
einfo "Initializing the database ..."
if [[ ${EUID} == 0 ]] ; then
su - postgres -c "${EROOT}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
else
"${EROOT}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
fi
if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
fi
# unix_socket_directory has no effect in postgresql.conf as it's
# overridden in the initscript
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
einfo "The autovacuum function, which was in contrib, has been moved to the main"
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
einfo "by default. You can disable it in the cluster's:"
einfo " ${PGDATA%/}/postgresql.conf"
einfo
if ! use systemd; then
einfo "The PostgreSQL server, by default, will log events to:"
einfo " ${DATA_DIR%/}/postmaster.log"
einfo
fi
if use prefix ; then
einfo "The location of the configuration files have moved to:"
einfo " ${PGDATA}"
einfo "To start the server:"
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
einfo "To stop:"
einfo " pg_ctl stop -D ${DATA_DIR}"
einfo
einfo "Or move the configuration files back:"
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
elif use systemd; then
einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
einfo "instead of 'pg_ctl'."
else
einfo "You should use the '${EROOT}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
einfo "instead of 'pg_ctl'."
fi
}
src_test() {
if use server && [[ ${UID} -ne 0 ]] ; then
# Some ICU tests fail if LC_CTYPE and LC_COLLATE aren't the same. We set
# LC_CTYPE to be equal to LC_COLLATE since LC_COLLATE is set by Portage.
local old_ctype=${LC_CTYPE}
export LC_CTYPE=${LC_COLLATE}
emake check
export LC_CTYPE=${old_ctype}
einfo "If you think other tests besides the regression tests are necessary, please"
einfo "submit a bug including a patch for this ebuild to enable them."
else
use server || \
ewarn 'Tests cannot be run without the "server" use flag enabled.'
[[ ${UID} -eq 0 ]] || \
ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
ewarn 'Skipping.'
fi
}

View File

@@ -1 +1,3 @@
DIST timescaledb-2.3.1.tar.lzma 1256454 BLAKE2B 43ec4a5a5f802f2e096bfa126765b4e9b3f5b80bb08cae80f5a005767f4063c844b2b17a20de5cc494a9d9d19d2f8ff62af450cde2efbbb386e6c5ab0031dbaf SHA512 68c5af6265979d418559db3454adb75c83862bedba20f5a7014599374da659902d7c57a3f016e17c1e56a4907ab85b7bac7bfc97246ae895e01c48a4df1d3627 DIST timescaledb-2.21.4.tar.gz 7913696 BLAKE2B cf2af165d4d76812cd27ee38565328c772bb83d90a923a7c29ae1ad02b40bdb9b467a3fe180a43074d52d94827d73289b7be6a77f2ef34278d8d5f10d6402484 SHA512 3741f068739482f5d3b76732401cd989b8081ecc9fd93034e8c33f34576dd10497bedd6688ab35f693c914c0b4bacb73c7430ab355a9f68be32239e31c575261
DIST timescaledb-2.22.1.tar.gz 8149506 BLAKE2B 2881795480f181126db5547dfcff2e34acf6d5e74ad4e1b72e9f5830e0b3fa54ffc9655ffed207d15b12ee6ad3155e164a3322257cf04f0235ff1eda31e89356 SHA512 5cd2938d2d04b7e1daa27ee46fddc09b9342022f536841ead1560ce4c6264dc0e83a737d87ed4cb903008c2c96a65273da25861a49c7f0c7a0a2685bbaec07ee
DIST timescaledb-2.23.1.tar.gz 8276671 BLAKE2B bc94d9e4b459c7c6903cd58b532d5e7242095b2f9fe0a3a824b26580d65e23b7f67b5eacf2516fc30101cb27a9f08ad4a909ffef0e90cc56a20e7adf8cb7996e SHA512 120efa5b859cd27f0f671261335372f7ebda30c1a7e66be9f7ebb0aa86c13b3acda45fa25c7e0744ffb54f9f225db2e7c4959db54f42df3c21b399219542b46b

View File

@@ -0,0 +1,70 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
POSTGRES_COMPAT=( {15..17} )
POSTGRES_USEDEP="ssl"
inherit postgres-multi cmake
DESCRIPTION="Open-source time-series SQL database"
HOMEPAGE="https://www.timescale.com/"
SRC_URI="https://github.com/timescale/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0
tsl? ( timescale )"
SLOT=0
KEYWORDS="~amd64"
IUSE="+tsl"
RESTRICT="test"
DEPEND="${POSTGRES_DEP}"
RDEPEND="${DEPEND}"
timescale_src_prepare() {
local CMAKE_USE_DIR=$BUILD_DIR
cmake_src_prepare
}
src_prepare() {
postgres-multi_src_prepare
postgres-multi_foreach timescale_src_prepare
}
timescale_configure() {
local CMAKE_USE_DIR=$BUILD_DIR
local mycmakeargs=(
-DAPACHE_ONLY=$(usex tsl OFF ON)
-DWARNINGS_AS_ERRORS=OFF
-DSEND_TELEMETRY_DEFAULT=OFF
-DREGRESS_CHECKS=OFF
-DPG_CONFIG=${PG_CONFIG}
)
cmake_src_configure
}
src_configure() {
postgres-multi_foreach timescale_configure
}
timescale_src_compile() {
local CMAKE_USE_DIR=$BUILD_DIR
cmake_src_compile
}
src_compile() {
postgres-multi_foreach timescale_src_compile
}
timescale_src_install() {
local CMAKE_USE_DIR=$BUILD_DIR
cmake_src_install
}
src_install() {
postgres-multi_foreach timescale_src_install
find "${ED}" -name '*.a' -delete
}

View File

@@ -0,0 +1,70 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
POSTGRES_COMPAT=( {15..17} )
POSTGRES_USEDEP="ssl"
inherit postgres-multi cmake
DESCRIPTION="Open-source time-series SQL database"
HOMEPAGE="https://www.timescale.com/"
SRC_URI="https://github.com/timescale/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0
tsl? ( timescale )"
SLOT=0
KEYWORDS="~amd64"
IUSE="+tsl"
RESTRICT="test"
DEPEND="${POSTGRES_DEP}"
RDEPEND="${DEPEND}"
timescale_src_prepare() {
local CMAKE_USE_DIR=$BUILD_DIR
cmake_src_prepare
}
src_prepare() {
postgres-multi_src_prepare
postgres-multi_foreach timescale_src_prepare
}
timescale_configure() {
local CMAKE_USE_DIR=$BUILD_DIR
local mycmakeargs=(
-DAPACHE_ONLY=$(usex tsl OFF ON)
-DWARNINGS_AS_ERRORS=OFF
-DSEND_TELEMETRY_DEFAULT=OFF
-DREGRESS_CHECKS=OFF
-DPG_CONFIG=${PG_CONFIG}
)
cmake_src_configure
}
src_configure() {
postgres-multi_foreach timescale_configure
}
timescale_src_compile() {
local CMAKE_USE_DIR=$BUILD_DIR
cmake_src_compile
}
src_compile() {
postgres-multi_foreach timescale_src_compile
}
timescale_src_install() {
local CMAKE_USE_DIR=$BUILD_DIR
cmake_src_install
}
src_install() {
postgres-multi_foreach timescale_src_install
find "${ED}" -name '*.a' -delete
}

View File

@@ -0,0 +1,70 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
POSTGRES_COMPAT=( {15..18} )
POSTGRES_USEDEP="ssl"
inherit postgres-multi cmake
DESCRIPTION="Open-source time-series SQL database"
HOMEPAGE="https://www.timescale.com/"
SRC_URI="https://github.com/timescale/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0
tsl? ( timescale )"
SLOT=0
KEYWORDS="~amd64"
IUSE="+tsl"
RESTRICT="test"
DEPEND="${POSTGRES_DEP}"
RDEPEND="${DEPEND}"
timescale_src_prepare() {
local CMAKE_USE_DIR=$BUILD_DIR
cmake_src_prepare
}
src_prepare() {
postgres-multi_src_prepare
postgres-multi_foreach timescale_src_prepare
}
timescale_configure() {
local CMAKE_USE_DIR=$BUILD_DIR
local mycmakeargs=(
-DAPACHE_ONLY=$(usex tsl OFF ON)
-DWARNINGS_AS_ERRORS=OFF
-DSEND_TELEMETRY_DEFAULT=OFF
-DREGRESS_CHECKS=OFF
-DPG_CONFIG=${PG_CONFIG}
)
cmake_src_configure
}
src_configure() {
postgres-multi_foreach timescale_configure
}
timescale_src_compile() {
local CMAKE_USE_DIR=$BUILD_DIR
cmake_src_compile
}
src_compile() {
postgres-multi_foreach timescale_src_compile
}
timescale_src_install() {
local CMAKE_USE_DIR=$BUILD_DIR
cmake_src_install
}
src_install() {
postgres-multi_foreach timescale_src_install
find "${ED}" -name '*.a' -delete
}

View File

@@ -1,57 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
POSTGRES_COMPAT=( {11..13} )
POSTGRES_USEDEP="server,ssl?"
inherit cmake postgres-multi
DESCRIPTION="A time-series database optimized for fast ingest and complex queries"
HOMEPAGE="https://www.timescale.com/"
SRC_URI="https://github.com/timescale/${PN}/releases/download/${PV}/${P}.tar.lzma"
LICENSE="Apache-2.0
tsl? ( timescale )"
SLOT="0"
IUSE="ssl +tsl"
KEYWORDS="~amd64 ~x86"
DEPEND="${POSTGRES_DEP}
ssl? ( dev-libs/openssl )
"
RDEPEND="${DEPEND}"
S="${WORKDIR}/${PN}"
CMAKE_BUILD_TYPE=RelWithDebInfo
src_prepare() {
postgres-multi_foreach cmake_src_prepare
}
src_configure() {
pg_src_configure () {
local mycmakeargs=(
-DUSE_OPENSSL=$(usex ssl ON OFF)
-DAPACHE_ONLY=$(usex tsl OFF ON)
-DWARNINGS_AS_ERRORS=OFF
-DSEND_TELEMETRY_DEFAULT=OFF
-DREGRESS_CHECKS=OFF
-DPG_CONFIG=${PG_CONFIG}
)
cmake_src_configure
}
postgres-multi_foreach pg_src_configure
}
src_compile() {
postgres-multi_foreach cmake_src_compile
}
src_install() {
postgres-multi_foreach cmake_src_install
find "${ED}" -name '*.a' -delete
}

2
dev-go/wire/Manifest Normal file
View File

@@ -0,0 +1,2 @@
DIST wire-0.7.0-vendor.tar.xz 250152 BLAKE2B 48387d7f9b14d8d91486c0017feb2b31bceb9b49b93253363e100ced0c6d7d47db8029a4b3f0c69c4f05bda6cf57d246a485465979bc6f53b89bcc0a27de20ee SHA512 650441cf60e7f3c9f15dcd1187357162bb01eedb1db26659f16123ea47258d2660ab2557bd7b4973447758984eab4281ac9665e8baa4c6bde93d601297d288b3
DIST wire-0.7.0.tar.gz 87605 BLAKE2B ef2a714a772660fbd2631ef68e70df6d4f121b118118103a532f428fc6da1fc9431b3a82494c653f00b44069f982e36210e5457e6d0e48b5bbdb3c583cb399fa SHA512 edad580d3b4e63db2c397774bc18ea8eb82be0e6dfeec279d79086596862333934d6c7fd1d1ed1dc7e3aebd3514a8b4068f11badf340fead39f495a92ce29324

View File

@@ -0,0 +1,34 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit go-module
DESCRIPTION="Wire: Automated Initialization in Go"
HOMEPAGE="https://github.com/google/${PN}"
# creating vendor bundle:
# >> git clone https://github.com/google/wire -b v<version> /tmp/wire
# >> cd /tmp/wire && version=`git describe --tags | sed -E "s/v([0-9.]+)/\1/g"`
# >> go mod vendor && mkdir wire-${version} && mv vendor wire-${version}/vendor
# >> tar -caf wire-${version}-vendor.tar.xz wire-${version}/vendor
SRC_URI="
https://github.com/google/${PN}/archive/v${PV/_rc/-rc.}.tar.gz -> ${P}.tar.gz
https://people.znc.in/~dessa/gentoo-dessa/distfiles/${CATEGORY}/${PN}/${PN}-${PV}-vendor.tar.xz
"
KEYWORDS="~amd64"
LICENSE="Apache-2.0"
SLOT="0"
DEPEND="dev-lang/go"
src_compile() {
ego build -o wire ./cmd/wire/main.go
}
src_install() {
dobin wire
dodoc {README,CONTRIBUTING}.md
}

View File

@@ -1 +0,0 @@
DIST idm-console-framework-1.2.0.tar.gz 950635 BLAKE2B f34e60981e958252dff07b5b4cd14b1f48ca22e3b212dcc5fce28c6d45ae7bcc910cf899ab8618d714ada3b0d17dee5a9e6227da9f570ed87734d4ea2df60957 SHA512 99c7937e085c014e83335821c24c8dfb3969f4a3b772b7c95156a4c064f25bdc6d54855657167ab6fe651ed939ff70ae6057e8055ba607302dddf40f65b03567

View File

@@ -1,50 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
JAVA_PKG_IUSE="doc examples source"
inherit java-pkg-2 java-ant-2
DESCRIPTION="A Java Management Console framework used for remote server management"
HOMEPAGE="https://directory.fedoraproject.org/"
SRC_URI="https://github.com/dogtagpki/idm-console-framework/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-2.1"
SLOT="1.1"
KEYWORDS="~amd64 ~x86"
IUSE=""
COMMON_DEPEND="dev-java/jss:4
dev-java/ldapsdk:4.2"
RDEPEND=">=virtual/jre-1.8
${COMMON_DEPEND}"
DEPEND=">=virtual/jdk-1.8
${COMMON_DEPEND}"
src_prepare() {
java-pkg_jar-from ldapsdk-4.1 ldapjdk.jar
java-pkg_jar-from jss-3.4 xpclass.jar jss4.jar
}
src_compile() {
eant -Dbuilt.dir="${S}"/build \
-Dldapjdk.local.location="${S}" \
-Djss.local.location="${S}" ${antflags}
use doc && eant -Dbuilt.dir="${S}"/build \
-Dldapjdk.local.location="${S}" \
-Djss.local.location="${S}" ${antflags} javadoc
}
src_install() {
java-pkg_newjar "${S}"/build/release/jars/idm-console-mcc-${PV}.jar idm-console-mcc.jar
java-pkg_newjar "${S}"/build/release/jars/idm-console-mcc-${PV}_en.jar idm-console-mcc_en.jar
java-pkg_newjar "${S}"/build/release/jars/idm-console-nmclf-${PV}.jar idm-console-nmclf.jar
java-pkg_newjar "${S}"/build/release/jars/idm-console-nmclf-${PV}_en.jar idm-console-nmclf_en.jar
java-pkg_newjar "${S}"/build/release/jars/idm-console-base-${PV}.jar idm-console-base.jar
use doc && java-pkg_dojavadoc build/doc
use examples && java-pkg_doexamples examples
use source && java-pkg_dosrc src/com
}

View File

@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>wes@sol1.com.au</email>
<name>Wes</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<longdescription>
A Java Management Console framework used for remote server management.
</longdescription>
</pkgmetadata>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata> <pkgmetadata>
<maintainer type="project"> <maintainer type="project">
<email>java@gentoo.org</email> <email>java@gentoo.org</email>

View File

@@ -1 +0,0 @@
DIST ldapsdk-4.22.0.tar.gz 2964492 BLAKE2B 69b74df500a96747d6677e4381a473d739498d2cb28bb2f71892a864d8d4dbfe8275d59bddcf2d0510acb92014c9614477bb2ac2b513258644f5acb2744b4fb2 SHA512 5f8d2a2c0042f281e054cfd3dc1604a5038a77b175268b415cd708031940064b62ec41043bc49d25fdd860aaaaa2a2de95a0c92c409951bfac21770c2d4ff1be

View File

@@ -1,71 +0,0 @@
diff --git a/java-sdk/build.xml b/java-sdk/build.xml
index e310c73..9557c7b 100644
--- a/build.xml
+++ b/build.xml
@@ -68,8 +68,7 @@
<!-- the following is to setup the correct info for sun jsse which
is jdk dependent -->
- <property name="ssllibs14" value="${basedir}/ldapjdk/lib/jss4.jar"/>
- <property name="ssllibs13" value="${basedir}/ldapjdk/lib/jaas.jar:${basedir}/ldapjdk/lib/jnet.jar:${basedir}/ldapjdk/lib/jsse.jar:${basedir}/ldapjdk/lib/jss4.jar"/>
+ <property name="ssllibs14" value="${jss.lib}"/>
<!-- we do not use the users existing classpath and instead build our own
comment the following line out if this is not desired -->
@@ -187,14 +186,20 @@
<javac srcdir="${basedir}/ldapjdk/com" destdir="${jdk.dist}"
excludes="cvs/**"
classpath="${jsselibs}:${slf4j.lib}"
+ source="1.8"
+ target="1.8"
/>
<javac srcdir="${basedir}/ldapjdk/netscape" destdir="${jdk.dist}"
excludes="cvs/**"
classpath="${jsselibs}:${slf4j.lib}"
+ source="1.8"
+ target="1.8"
/>
<javac srcdir="${basedir}/tools" destdir="${jdk.dist}"
excludes="cvs/**"
classpath="${jsselibs}:${slf4j.lib}"
+ source="1.8"
+ target="1.8"
/>
</target>
@@ -202,6 +207,8 @@
<javac srcdir="${basedir}/ldapfilter" destdir="${filter.dist}"
excludes="cvs/**"
classpath="${jdk.dist}:${jsselibs}:${slf4j.lib}"
+ source="1.8"
+ target="1.8"
/>
</target>
@@ -210,6 +217,8 @@
<javac srcdir="${basedir}/ldapbeans" destdir="${jdk.dist}"
excludes="cvs/**"
classpath="${jsselibs}:${slf4j.lib}"
+ source="1.8"
+ target="1.8"
/>
</target>
@@ -218,6 +227,8 @@
<javac srcdir="${basedir}/ldapsp" destdir="${jndi.dist}"
excludes="cvs/**"
classpath="${jsselibs}:${basedir}/ldapsp/lib/jndi.jar:${slf4j.lib}"
+ source="1.8"
+ target="1.8"
/>
</target>
@@ -232,7 +243,7 @@
author="true"
version="true"
use="true"
- classpath="${basedir}/ldapjdk:${jss.lib}:${basedir}/ldapjdk/lib/jss32_stub.jar:${basedir}/ldapbeans:${slf4j.lib}"
+ classpath="${basedir}/ldapjdk:${jss.lib}:${basedir}/ldapbeans:${slf4j.lib}"
additionalparam="-Xdoclint:none">
</javadoc>

View File

@@ -1,52 +0,0 @@
# Copyright 1999-2020 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=7
JAVA_PKG_IUSE="doc source"
inherit java-pkg-2 java-ant-2
DESCRIPTION="Netscape Directory SDK for Java"
HOMEPAGE="http://www.mozilla.org/directory/javasdk.html"
SRC_URI="https://github.com/dogtagpki/ldap-sdk/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MPL-1.1"
SLOT="4.22"
KEYWORDS="~amd64 ~x86"
IUSE="doc"
RDEPEND=">=virtual/jre-1.8
dev-java/slf4j-api
>=dev-java/jss-4.6.0"
DEPEND=">=virtual/jdk-1.8
${RDEPEND}"
S=${WORKDIR}/ldap-sdk-${PV}/java-sdk
src_prepare() {
eapply "${FILESDIR}"/ldapsdk-gentoo.patch
echo "jss.lib=$(java-pkg_getjars jss-4.7)" >> "${S}"/build.properties || die
echo "slf4j.lib=$(java-pkg_getjars slf4j-api)" >> "${S}"/build.properties || die
cd "${S}"/ldapjdk/lib || die
rm -f *.jar || die
java-pkg_jar-from jss-4.7
cd "${S}"/ldapsp/lib || die
rm *.jar || die
default
}
src_compile() {
eant dist-jdk dist-filter dist-beans dist-jndi $(use_doc build-docs)
}
src_install() {
java-pkg_dojar dist/packages/*.jar
use doc && java-pkg_dojavadoc dist/doc/ldapsp
use source && \
java-pkg_dosrc {ldapsp,ldapjdk}/com {ldapjdk,ldapbeans,ldapfilter}/netscape
}

View File

@@ -1,14 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
<longdescription>
The Mozilla Directory (LDAP) SDK Project
</longdescription>
</pkgmetadata>

View File

@@ -0,0 +1 @@
DIST slf4j-1.7.36.tar.gz 2276203 BLAKE2B 930de76047c694b4e566ba743ee90a2efb062358b03209137f686c4bf4ead122aa84c18b79615e5a67f1a890abdc1b8f70f62b7803f7b8e45c766ff8254836d4 SHA512 1384c771aa04d9d351854cf8ddeef66ee9f43df53890a05413c48c14cf1cb78a457bb4b2a6e2f064f1c1ab68b2eaa1d326fc03bb6b7c145915660a2c873692d0

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
<upstream>
<doc>http://www.slf4j.org/docs.html</doc>
<bugs-to>http://www.slf4j.org/bug-reporting.html</bugs-to>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,62 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Skeleton command:
# java-ebuilder --generate-ebuild --workdir . --pom pom.xml --download-uri https://github.com/qos-ch/slf4j/archive/v_1.7.36.tar.gz --slot 0 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild slf4j-api-1.7.36.ebuild
EAPI=8
JAVA_PKG_IUSE="doc source test"
MAVEN_ID="org.slf4j:slf4j-api:1.7.36"
JAVA_TESTING_FRAMEWORKS="junit-4"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="The slf4j API"
HOMEPAGE="https://www.slf4j.org"
SRC_URI="https://github.com/qos-ch/slf4j/archive/v_${PV}.tar.gz -> slf4j-${PV}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 arm64 ppc64 x86"
DEPEND="
>=virtual/jdk-1.8:*
"
RDEPEND="
>=virtual/jre-1.8:*
"
BDEPEND="app-arch/zip"
DOCS=( LICENSE.txt ../README.md )
S="${WORKDIR}/slf4j-v_${PV}/${PN}"
JAVA_SRC_DIR="src/main/java"
JAVA_RESOURCE_DIRS="src/main/resources"
JAVA_TEST_GENTOO_CLASSPATH="junit-4"
JAVA_TEST_SRC_DIR="src/test/java"
JAVA_TEST_EXCLUDES=(
# java.lang.InstantiationException - not run by upstream anyway
"org.slf4j.helpers.MultithreadedInitializationTest"
)
src_prepare() {
default
java-pkg_clean
}
src_compile() {
java-pkg-simple_src_compile
# remove org/slf4j/impl/ from the jar file
zip -d ${PN}.jar org/slf4j/impl/\* || die "Failed to remove impl files"
}
src_install() {
default # https://bugs.gentoo.org/789582
java-pkg-simple_src_install
}

Some files were not shown because too many files have changed in this diff Show More