Compare commits
478 Commits
cb3f7b6d5c
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| cf509a9900 | |||
| 05847b18f1 | |||
| b46bc97782 | |||
| 3a93d52e7d | |||
| 66adfd38a0 | |||
| bb3c564868 | |||
| 22bf68fce3 | |||
| 089b435d52 | |||
| f77997a8b1 | |||
| 5379c9f4de | |||
| 03f74ef951 | |||
| 7f63b7011b | |||
| 948e8fda45 | |||
| 958a8c9827 | |||
| af9e666648 | |||
| 0c53874a63 | |||
| 229c6fcb3e | |||
| 25fda6cdfc | |||
| 1dd3f5cfe6 | |||
| 9ec4dfe05a | |||
| 714d0b092a | |||
| e57bdae767 | |||
| 7a9993f852 | |||
| 1d89bc4211 | |||
| 728ab5ef13 | |||
| cac773ad0e | |||
| 5a0ccc7e1f | |||
| 7573325668 | |||
| d0414b7994 | |||
| 33bba7b3f3 | |||
| 0bf538d486 | |||
| 0a3601bf16 | |||
| 1c025ed03a | |||
| ff1202d171 | |||
| a500af9cdb | |||
| 6a89c517c8 | |||
| 61ed3aba26 | |||
| ad3c054e69 | |||
| 89340f1a0c | |||
| f0b1a20bc8 | |||
| a63c42cdfd | |||
| d6fb6280c5 | |||
| eac0d0dbf0 | |||
| 1cf7d7802b | |||
| cdb3eed64d | |||
| e601519a5a | |||
| 067b432856 | |||
| 9fd084c297 | |||
| a78fc71ad4 | |||
| 5711c93437 | |||
| e5d8211833 | |||
| c7d8423e53 | |||
| 92e546c2c6 | |||
| d0aefdd1fd | |||
| 12537a2eaa | |||
| 63c65e6742 | |||
| c49304f6c9 | |||
| 63371b48e7 | |||
| bfe8b3d417 | |||
| 000a1fab68 | |||
| d372b06a5a | |||
| 726789c4f0 | |||
| f24eb89380 | |||
| 940383d3c5 | |||
| 6867dbd1cf | |||
| a1e14eb551 | |||
| d0bd08afd7 | |||
| f966ebb261 | |||
| dddfde2022 | |||
| 52ddf32299 | |||
| d0a971040c | |||
| efa6126076 | |||
| 82c12b2341 | |||
| d0ad97eec8 | |||
| 9ab68b1bf2 | |||
| 3aa2ae6c1b | |||
| 9fb465cae4 | |||
| d1f41316a2 | |||
| 1dfc0f2167 | |||
| 2f37b70508 | |||
| dadb838313 | |||
| 02ae36bb47 | |||
| 3e52eb10d5 | |||
| 4ab380a405 | |||
| 7c5d982f3f | |||
| 9bcea35893 | |||
| 087c4ca311 | |||
| c415f64f65 | |||
| 75a62f600f | |||
| 7e1ba411dd | |||
| 3d67332018 | |||
| a795443578 | |||
| 0a66a5635e | |||
| 0657a0ff49 | |||
| f56ed735a0 | |||
| 6d0548c028 | |||
| cb97dd4739 | |||
| 1db773241a | |||
| 2c704daf1d | |||
| 9487fe22d8 | |||
| 4075801cb5 | |||
| 8046ba7502 | |||
| 283cbf65ea | |||
| a55b727590 | |||
| e676a16bc4 | |||
| 1add46f0c1 | |||
| d18b34dfb3 | |||
| 329fe1fe90 | |||
| 864d9a3f8a | |||
| ef6ad0040c | |||
| 5da9f07c05 | |||
| 4444949d58 | |||
| 96772d9b66 | |||
| b571427429 | |||
| abbda3f701 | |||
| 1a7a3a7ecf | |||
| ebc7d420e7 | |||
| fb7d45bc3d | |||
| aeb6fbe34e | |||
| dada1fc5ce | |||
| f3067850e8 | |||
| 966a7f96fa | |||
| 2ee933af85 | |||
| 595982e4cb | |||
| 47e7b1da90 | |||
| 7b9e4397ed | |||
| 4e258a1599 | |||
| 00aac76d11 | |||
| 2948003cdc | |||
| 159d61f161 | |||
| 6a90c9af59 | |||
| ad22304a63 | |||
| 5541c03700 | |||
| 34c3105b84 | |||
| 9e2efadd1c | |||
| c2a41f091e | |||
| d524664c38 | |||
| 1da9e36a1a | |||
| b7aa1f2e70 | |||
| 2d3920dd89 | |||
| 403c700a49 | |||
| de1117886a | |||
| a5bf0a0402 | |||
| cdfcfe78b2 | |||
| e622843475 | |||
| e1c96a1978 | |||
| fbcb1d3bb8 | |||
| 662a41cd01 | |||
| 626ca68358 | |||
| 9d7bf9b364 | |||
| 0ecbee4bbd | |||
| c58055499b | |||
| 88722430ed | |||
| f776862fd2 | |||
| 92504c1c00 | |||
| 0fb7b3f09d | |||
| f83e376a53 | |||
| 6f8c769dfa | |||
| a9f98e0c9a | |||
| d311f6a293 | |||
| ef4ecb830f | |||
| 78c2cbd195 | |||
| e3687455e4 | |||
| a16f047b30 | |||
| e5d5ad4d94 | |||
| 0512a7e3a3 | |||
| 040134f5b2 | |||
| b360af06a9 | |||
| 62b49ec482 | |||
| 6f3e41662d | |||
| e631839318 | |||
| 5d71012c2d | |||
| 602417250d | |||
| 8993dd075b | |||
| 88bd423204 | |||
| 5cc053875f | |||
| 04642ca6f6 | |||
| 9a851e23bd | |||
| 6d4b7f8bba | |||
| ade75f86ff | |||
| 23324988ac | |||
| 057b5afc26 | |||
| f4f071f890 | |||
| 6d44a3eddf | |||
| 441892bc3d | |||
| e026074dac | |||
| 5892ffabe3 | |||
| 9267591109 | |||
| adbb4ea444 | |||
| ea5de217c0 | |||
| de14b751c6 | |||
| d620cf6b4f | |||
| a6a924e808 | |||
| 3f2036bf6d | |||
| eed5e0f7b3 | |||
| c47ac8d562 | |||
| 0d79d4ba69 | |||
| e85a4f35de | |||
| 0dd32babce | |||
| 6452dd8efb | |||
| 1afe3e5d08 | |||
| 95e4663968 | |||
| 5f3651dab4 | |||
| ee33e935c7 | |||
| 3ec35b706e | |||
| 897da73489 | |||
| 14426d85bb | |||
| 50976c650d | |||
| 3be784dbc2 | |||
| 813324109f | |||
| 4c9b82680e | |||
| 3887b81bd7 | |||
| 3201c0b3f4 | |||
| bf6335f804 | |||
| 0f058465d3 | |||
| 5ec920778a | |||
| a78b0b860c | |||
| 0e95b91953 | |||
| d7904ebfdb | |||
| 0ece479d4b | |||
| 456262ff7b | |||
| 478bfcff2d | |||
| b42212354f | |||
| 58d7ed5be4 | |||
| f3e586d3b6 | |||
| 12edae6bef | |||
| d286bd20ad | |||
| 20b46776f1 | |||
| 196defa264 | |||
| 148a4f8dd7 | |||
| be3cf70d1a | |||
| 1f7ff865cd | |||
| fc8c98c39a | |||
| eda630e4b2 | |||
| c75c4b914c | |||
| 9941b08cb5 | |||
| 83f727445f | |||
| 22063264f4 | |||
| fb4fcdca2b | |||
| cdb55721c8 | |||
| cec770b120 | |||
| 59b3658281 | |||
| 8660a0ae86 | |||
| a3be220c85 | |||
| 1d2885fbf9 | |||
| 66fd904640 | |||
| 9cf87dd318 | |||
| 45aadb32ea | |||
| 31fdcd5f79 | |||
| 85a2e481e3 | |||
| 44a9d02f87 | |||
| a5027e1c9e | |||
| eb35f025aa | |||
| e658d61f13 | |||
| 3e9c691316 | |||
| 68b96b1f2e | |||
| 4b78c7ceb6 | |||
| 360d56fbce | |||
| c7ee2425ee | |||
| 0ec3552ce2 | |||
| 994b448b18 | |||
| b3177c95f3 | |||
| 5e911f8366 | |||
| 582220d3ad | |||
| 171d8a9b7b | |||
| 8fe813c80f | |||
| 203e31cda5 | |||
| 3bc4b1708f | |||
| 360db7b1ab | |||
| 94ebf5ce48 | |||
| e800a863bf | |||
| 4368c5f7d0 | |||
| 6b974d959a | |||
| 515cc1e59d | |||
| 3eaf2ae1ad | |||
| c6fa8d4a86 | |||
| 70225f405e | |||
| 7da2eed08e | |||
| 307203176a | |||
| 98941761be | |||
| f6effdf31c | |||
| b7bc74f68e | |||
| 21803c47cc | |||
| afa7c21d94 | |||
| 2587acd24c | |||
| fdf1e23e36 | |||
| 5b039875f0 | |||
| 442524fc45 | |||
| e0b4b09600 | |||
| d644135c79 | |||
| 3e741a8c5f | |||
| 84aa05439d | |||
| eebcd4d28b | |||
| eab7d16461 | |||
| 6d151cad50 | |||
| c98a7cf6ae | |||
| 8fd0f197f5 | |||
| bfd294583c | |||
| 645e1aa275 | |||
| 269ce392fc | |||
| 8d9df8edb5 | |||
| 57dd8a01c0 | |||
| 54b8162128 | |||
| ded6e7b355 | |||
| 8075f07210 | |||
| 59f111c889 | |||
| 217fbbe8fe | |||
| 87785e6981 | |||
| e6e3511490 | |||
| 8ea1dd7711 | |||
| 512e0af4c7 | |||
| 96ee879edd | |||
| 90e0a5af34 | |||
| 0bce97407f | |||
| 54afe9377f | |||
| 39d0c4bb16 | |||
| 78c6b9cfcb | |||
| 26950b0767 | |||
| 7e7593fc57 | |||
| 46ea85fce4 | |||
| d823c2e168 | |||
| 5e13366582 | |||
| b326747158 | |||
| 647f07acc8 | |||
| 4af4ace725 | |||
| 5e61225cf1 | |||
| 4247ecd8ae | |||
| 0742947528 | |||
| a58474841e | |||
| e463189d82 | |||
| ebe952671e | |||
| a9bab0ab24 | |||
| dec2483ec8 | |||
| 31a70a95d0 | |||
| 5806fb08e2 | |||
| 0cc8df06a8 | |||
| 5b3d88618c | |||
| 99b0269979 | |||
| 8d82e18bbd | |||
| 4410ffc5ad | |||
| 5259c2f9d1 | |||
| a14591e59e | |||
| 6856c25916 | |||
| fb746c5923 | |||
| a4cb5f1e58 | |||
| 332d53bda1 | |||
| 27479ea41d | |||
| 22f7180b65 | |||
| 6a25b04934 | |||
| c239254473 | |||
| 739223b5de | |||
| 55b012b0a3 | |||
| b7013c20fd | |||
| 7fef909268 | |||
| 9d21662f4f | |||
| 7fa2ee1b65 | |||
| 0cfde3c0cf | |||
| 38bc40179f | |||
| cf35e3d9f3 | |||
| c7ef7152b8 | |||
| b96824b2cf | |||
| d20b79f7af | |||
| edeabe67e9 | |||
| 1f7ddfdbb0 | |||
| 8ab5ce574b | |||
| b4801f2407 | |||
| 790a15d83e | |||
| 52cc6d125b | |||
| 3d91b58d93 | |||
| 9a0117c755 | |||
| 1cf313876e | |||
| 463119a925 | |||
| e21a5c6809 | |||
| 854e1de3e1 | |||
| d5551df3b2 | |||
| e8259ac6b8 | |||
| 604cdc1471 | |||
| e8bd876824 | |||
| 3bbce25294 | |||
| 9a1551004a | |||
| b142cb651a | |||
| 3ce0a78760 | |||
| e5ffe7eca6 | |||
| e78bbbf248 | |||
| 59d402d2e8 | |||
| a298269c8e | |||
| 154146e5dc | |||
| 3a3b887758 | |||
| 16b105d1e6 | |||
| 499d3a5c7c | |||
| df68f27d1c | |||
| ccc914a7bb | |||
| bc1580781a | |||
| a5114bb6a3 | |||
| 123087aa06 | |||
| 19e3768c10 | |||
| df53d9636f | |||
| f84cef3a7f | |||
| 8e47e994ae | |||
| dedf9e0d4a | |||
| 871bc19cf0 | |||
| 4961859465 | |||
| 6eceedba96 | |||
| cf83d0fbb6 | |||
| c900f1d524 | |||
| d7ef2cac67 | |||
| ac2f847bd9 | |||
| 62ae015b35 | |||
| 922972b17a | |||
| 9fdeccf26a | |||
| 6894485926 | |||
| dc724f4303 | |||
| 497b2165e5 | |||
| 778d3cf61b | |||
| 274a1ca377 | |||
| e690293a31 | |||
| 50481ec04f | |||
| 5abcaeee26 | |||
| 3160615f98 | |||
| f64c6266e7 | |||
| 3ef1c19c85 | |||
| 6d67032b2b | |||
| 09fbccd427 | |||
| f18522740a | |||
| 66c868abd0 | |||
| 245ef97700 | |||
| 9defca04e2 | |||
| 2f1adb5c63 | |||
| cdf4b73806 | |||
| 6f1cf9f9bb | |||
| 35d63f7260 | |||
| ff8a2ebf63 | |||
| 9a19ffcbdb | |||
| a50691f316 | |||
| 5de428735c | |||
| b0b8aa9456 | |||
| 4ea66e22be | |||
| da197ee410 | |||
| d06c175837 | |||
| 158a86af2a | |||
| 921566493c | |||
| c5df2b4b6e | |||
| eb8c372ed9 | |||
| 77fca9c667 | |||
| dc1e93be0a | |||
| ff1d428fd7 | |||
| 6620a35f85 | |||
| 607f5b5692 | |||
| a03a78baca | |||
| cc08517a36 | |||
| 61cf594654 | |||
| c34feb13e2 | |||
| a4e3dd041a | |||
| 2332ec5074 | |||
| 7d1fb3067d | |||
| 509b398bd0 | |||
| fadbc1d0c7 | |||
| b8d4439b5b | |||
| c7690e78d0 | |||
| 2f94c70fb6 | |||
| e6e3be6616 | |||
| 9809350047 | |||
| 9d8d0cb23a | |||
| 663e137198 | |||
| bd051caf10 | |||
| eadad31d21 | |||
| 93f7dd0ff8 | |||
| 5a673bbc29 | |||
| a9bcf8c921 | |||
| 30568c811f | |||
| 62caa771d8 | |||
| 5e86854d9b | |||
| 27007b4250 | |||
| a876ec04b9 | |||
| 9b0300083a | |||
| bb89402e9d | |||
| 0d76176190 | |||
| dcf813dc58 |
9
acct-group/grafana/grafana-0.ebuild
Normal file
9
acct-group/grafana/grafana-0.ebuild
Normal 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
|
||||
8
acct-group/minio/minio-0-r2.ebuild
Normal file
8
acct-group/minio/minio-0-r2.ebuild
Normal file
@@ -0,0 +1,8 @@
|
||||
# Copyright 2021-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit acct-group
|
||||
|
||||
ACCT_GROUP_ID=309
|
||||
12
acct-user/grafana/grafana-0.ebuild
Normal file
12
acct-user/grafana/grafana-0.ebuild
Normal 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
|
||||
13
acct-user/minio/minio-0-r2.ebuild
Normal file
13
acct-user/minio/minio-0-r2.ebuild
Normal 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="A user for minio"
|
||||
ACCT_USER_ID=309
|
||||
ACCT_USER_HOME=/var/lib/minio
|
||||
ACCT_USER_GROUPS=( minio )
|
||||
|
||||
acct-user_add_deps
|
||||
1
app-admin/mongo-tools/Manifest
Normal file
1
app-admin/mongo-tools/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST mongo-tools-100.9.5.tar.gz 5130120 BLAKE2B 8873e1dbc9aa6a3b181551e620f1a7c646510753c7756d93bc6884256cf06011d1f0357f4e8070a61d46f7488f8b52eef34bbef35c6773ea781fe3e259a2487c SHA512 8aa6c01e6d6a73c74a7ffd405dd1159085d5896efa42b16aa5d1fa7e67e59fedac66deda42cd2136f27d9957256be28e4ff8cc2c90429450cc772af1ae5efbe1
|
||||
12
app-admin/mongo-tools/metadata.xml
Normal file
12
app-admin/mongo-tools/metadata.xml
Normal 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>
|
||||
57
app-admin/mongo-tools/mongo-tools-100.9.5.ebuild
Normal file
57
app-admin/mongo-tools/mongo-tools-100.9.5.ebuild
Normal 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/*
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
DIST certbot-1.19.0.tar.gz 1338653 BLAKE2B b6ed909da2aed9853cf3dc6b936c513f33a127548ee30ac45a32a682141c5e4e79401ea328b7caf4e28d1d85aa2a9831e93deaa26c93216708a33be465dc8387 SHA512 2c1beb8c06299b9003fafd970cd3e977db85c4e84f1bf710166b7a99035b5c43a2a222d8d51513ac595255dd8eda02a1fb834c01ce68921927715c880052536e
|
||||
@@ -1,33 +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}]"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
@@ -1,33 +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}]"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
@@ -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
|
||||
}
|
||||
3
dev-db/mongodb/Manifest
Normal file
3
dev-db/mongodb/Manifest
Normal file
@@ -0,0 +1,3 @@
|
||||
DIST mongodb-6.0.22-patches.tar.xz 8820 BLAKE2B 973e58d0a09d8fb160beefd46b425b0f5dd7ad531f9ccec433fd201517035613c171cddaf5d3cf2883f57d4728438572062cc5c8b9166e15d8e5701efcd8b84c SHA512 fa8f18d259e829df07ec26ab570de9b3968b9b02ed195b47d7a2bfc832f2b7e74a5aaf58e54cfe6d01ea7e3d76efdad2e1efca0da4af0b0d3f50944dfd1fd4e0
|
||||
DIST mongodb-6.0.25.gh.tar.gz 87527607 BLAKE2B 0ddec1d8b6a9ba78a44fa8f14a3777dfec6ef35d873d0ea488f917762fde6c94f433f048c2da93fd95cfdf449302d23060673e255e94b3d98b69b0e4f4ef6a13 SHA512 3e86e313e84b3a2b57e9688e0a114043492d68ca9c5bbddb588fef87362e1d5e712ea6f478ba2142e86bfc68227e99832c2274cdee320a1bc964782eb1065ff0
|
||||
DIST mongodb-7.0.18.gh.tar.gz 87225100 BLAKE2B 7ede32f4c6b6968ee8d797ce71457133020a3e4a039cd0db914e344e5042a0b871deb5741f86098b2e82b9ff619a511a754a06a29dcbb9527a3b7a7edf52b3ac SHA512 599767db66e95d8dd0bd0e6d51fd70129ea6df1e18a0cdaa52bc6cbe301c982684ff5aab446c50cb825573051e372d8f791aeab7df58e2a4d855e6073f2b46d5
|
||||
21
dev-db/mongodb/files/mongodb-4.4.1-boost.patch
Normal file
21
dev-db/mongodb/files/mongodb-4.4.1-boost.patch
Normal 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")
|
||||
317
dev-db/mongodb/files/mongodb-4.4.10-boost-1.81.patch
Normal file
317
dev-db/mongodb/files/mongodb-4.4.10-boost-1.81.patch
Normal 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()
|
||||
24
dev-db/mongodb/files/mongodb-4.4.29-no-enterprise.patch
Normal file
24
dev-db/mongodb/files/mongodb-4.4.29-no-enterprise.patch
Normal 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)
|
||||
16
dev-db/mongodb/files/mongodb-5.0.16-arm64-assert.patch
Normal file
16
dev-db/mongodb/files/mongodb-5.0.16-arm64-assert.patch
Normal 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};
|
||||
|
||||
71
dev-db/mongodb/files/mongodb-5.0.2-boost-1.79.patch
Normal file
71
dev-db/mongodb/files/mongodb-5.0.2-boost-1.79.patch
Normal 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>
|
||||
32
dev-db/mongodb/files/mongodb-5.0.2-fix-scons.patch
Normal file
32
dev-db/mongodb/files/mongodb-5.0.2-fix-scons.patch
Normal 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:
|
||||
12
dev-db/mongodb/files/mongodb-5.0.2-no-compass.patch
Normal file
12
dev-db/mongodb/files/mongodb-5.0.2-no-compass.patch
Normal 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=[
|
||||
13
dev-db/mongodb/files/mongodb-5.0.2-skip-no-exceptions.patch
Normal file
13
dev-db/mongodb/files/mongodb-5.0.2-skip-no-exceptions.patch
Normal 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')
|
||||
24
dev-db/mongodb/files/mongodb-5.0.2-skip-reqs-check.patch
Normal file
24
dev-db/mongodb/files/mongodb-5.0.2-skip-reqs-check.patch
Normal 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
|
||||
16
dev-db/mongodb/files/mongodb-5.0.26-boost-1.85-extra.patch
Normal file
16
dev-db/mongodb/files/mongodb-5.0.26-boost-1.85-extra.patch
Normal 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);
|
||||
|
||||
130
dev-db/mongodb/files/mongodb-5.0.26-boost-1.85.patch
Normal file
130
dev-db/mongodb/files/mongodb-5.0.26-boost-1.85.patch
Normal 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>
|
||||
|
||||
@@ -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));
|
||||
27
dev-db/mongodb/files/mongodb-5.0.26-scons.patch
Normal file
27
dev-db/mongodb/files/mongodb-5.0.26-scons.patch
Normal 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':
|
||||
12
dev-db/mongodb/files/mongodb-5.0.30-gcc-11.patch
Normal file
12
dev-db/mongodb/files/mongodb-5.0.30-gcc-11.patch
Normal 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"
|
||||
13
dev-db/mongodb/files/mongodb-5.0.30-gcc-15.patch
Normal file
13
dev-db/mongodb/files/mongodb-5.0.30-gcc-15.patch
Normal 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>
|
||||
11
dev-db/mongodb/files/mongodb-5.0.5-boost-1.81-extra.patch
Normal file
11
dev-db/mongodb/files/mongodb-5.0.5-boost-1.81-extra.patch
Normal 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 {
|
||||
49
dev-db/mongodb/files/mongodb-5.0.5-no-force-lld.patch
Normal file
49
dev-db/mongodb/files/mongodb-5.0.5-no-force-lld.patch
Normal 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,
|
||||
})
|
||||
81
dev-db/mongodb/files/mongodb-6.0.21-boost-1.79.patch
Normal file
81
dev-db/mongodb/files/mongodb-6.0.21-boost-1.79.patch
Normal 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>
|
||||
15
dev-db/mongodb/files/mongodb-6.0.21-boost-1.85.patch
Normal file
15
dev-db/mongodb/files/mongodb-6.0.21-boost-1.85.patch
Normal 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);
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
12
dev-db/mongodb/files/mongodb-6.0.21-gcc-11.patch
Normal file
12
dev-db/mongodb/files/mongodb-6.0.21-gcc-11.patch
Normal 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"
|
||||
12
dev-db/mongodb/files/mongodb-6.0.21-gcc-12.patch
Normal file
12
dev-db/mongodb/files/mongodb-6.0.21-gcc-12.patch
Normal 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"
|
||||
12
dev-db/mongodb/files/mongodb-6.0.21-gcc-13.patch
Normal file
12
dev-db/mongodb/files/mongodb-6.0.21-gcc-13.patch
Normal 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 {
|
||||
@@ -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));
|
||||
93
dev-db/mongodb/files/mongodb-6.0.21-sconstruct-changes.patch
Normal file
93
dev-db/mongodb/files/mongodb-6.0.21-sconstruct-changes.patch
Normal 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")
|
||||
13
dev-db/mongodb/files/mongodb-7.0.15-gcc-15.patch
Normal file
13
dev-db/mongodb/files/mongodb-7.0.15-gcc-15.patch
Normal 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>
|
||||
149
dev-db/mongodb/files/mongodb-7.0.15-sconstruct.patch
Normal file
149
dev-db/mongodb/files/mongodb-7.0.15-sconstruct.patch
Normal 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")
|
||||
320
dev-db/mongodb/files/mongodb-7.0.15-system-boost.patch
Normal file
320
dev-db/mongodb/files/mongodb-7.0.15-system-boost.patch
Normal 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>
|
||||
12
dev-db/mongodb/files/mongodb-7.0.18-system-pcre.patch
Normal file
12
dev-db/mongodb/files/mongodb-7.0.18-system-pcre.patch
Normal 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) \
|
||||
34
dev-db/mongodb/files/mongodb.conf-r3
Normal file
34
dev-db/mongodb/files/mongodb.conf-r3
Normal 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:
|
||||
36
dev-db/mongodb/files/mongodb.conf-r4
Normal file
36
dev-db/mongodb/files/mongodb.conf-r4
Normal 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:
|
||||
11
dev-db/mongodb/files/mongodb.confd-r3
Normal file
11
dev-db/mongodb/files/mongodb.confd-r3
Normal 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)
|
||||
19
dev-db/mongodb/files/mongodb.initd-r3
Normal file
19
dev-db/mongodb/files/mongodb.initd-r3
Normal 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
|
||||
}
|
||||
13
dev-db/mongodb/files/mongodb.logrotate
Normal file
13
dev-db/mongodb/files/mongodb.logrotate
Normal 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
|
||||
}
|
||||
12
dev-db/mongodb/files/mongodb.service-r1
Normal file
12
dev-db/mongodb/files/mongodb.service-r1
Normal 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
|
||||
2
dev-db/mongodb/files/mongodb.tmpfiles
Normal file
2
dev-db/mongodb/files/mongodb.tmpfiles
Normal file
@@ -0,0 +1,2 @@
|
||||
d /var/log/mongodb 0750 mongodb mongodb -
|
||||
d /run/mongodb 0750 mongodb mongodb -
|
||||
30
dev-db/mongodb/files/mongos.conf-r2
Normal file
30
dev-db/mongodb/files/mongos.conf-r2
Normal 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:
|
||||
32
dev-db/mongodb/files/mongos.conf-r3
Normal file
32
dev-db/mongodb/files/mongos.conf-r3
Normal 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:
|
||||
11
dev-db/mongodb/files/mongos.confd-r3
Normal file
11
dev-db/mongodb/files/mongos.confd-r3
Normal 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)
|
||||
18
dev-db/mongodb/files/mongos.initd-r3
Normal file
18
dev-db/mongodb/files/mongos.initd-r3
Normal 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
|
||||
}
|
||||
24
dev-db/mongodb/metadata.xml
Normal file
24
dev-db/mongodb/metadata.xml
Normal 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>
|
||||
211
dev-db/mongodb/mongodb-6.0.25.ebuild
Normal file
211
dev-db/mongodb/mongodb-6.0.25.ebuild
Normal file
@@ -0,0 +1,211 @@
|
||||
# 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
|
||||
>=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}]
|
||||
')
|
||||
"
|
||||
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() {
|
||||
# https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
|
||||
# --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="be2ab84df04dd10fcecc8efd8f4e0c5e7640dec8"
|
||||
|
||||
--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"
|
||||
}
|
||||
212
dev-db/mongodb/mongodb-7.0.18.ebuild
Normal file
212
dev-db/mongodb/mongodb-7.0.18.ebuild
Normal 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
|
||||
}
|
||||
1
dev-db/postgresql/Manifest
Normal file
1
dev-db/postgresql/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST postgresql-17.6.tar.bz2 21623975 BLAKE2B 9287eab85e17a65333d970bf7d4d254e25295615b4787072ff2a6c705cb66b7775dbe3a0c6b6fa3e2ab37c3278d204ccfdd3e587226d4c1d6363868569149216 SHA512 d377ed208b3fd1bf9611f148f4286e8c655374218cc3b12cd766917063001750f7dede140065874b7c8bdc2f2b3ecaf15c18cc6cd341929b2c3a574a7797a67e
|
||||
146
dev-db/postgresql/files/postgresql-17.0-no-server.patch
Normal file
146
dev-db/postgresql/files/postgresql-17.0-no-server.patch
Normal 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
|
||||
36
dev-db/postgresql/files/postgresql-17.6-llvm21.patch
Normal file
36
dev-db/postgresql/files/postgresql-17.6-llvm21.patch
Normal file
@@ -0,0 +1,36 @@
|
||||
From 282d0bdee6192f1a859ee34672ae73abf49794dc Mon Sep 17 00:00:00 2001
|
||||
From: Peter Eisentraut <peter@eisentraut.org>
|
||||
Date: Mon, 15 Sep 2025 08:13:21 +0200
|
||||
Subject: [PATCH 1/1] jit: fix build with LLVM-21
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=utf8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
LLVM-21 renamed llvm::GlobalValue::getGUID() to
|
||||
getGUIDAssumingExternalLinkage(), so add a version guard.
|
||||
|
||||
Author: Holger Hoffstätte <holger@applied-asynchrony.com>
|
||||
Discussion: https://www.postgresql.org/message-id/flat/d25e6e4a-d1b4-84d3-2f8a-6c45b975f53d%40applied-asynchrony.com
|
||||
---
|
||||
src/backend/jit/llvm/llvmjit_inline.cpp | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/src/backend/jit/llvm/llvmjit_inline.cpp b/src/backend/jit/llvm/llvmjit_inline.cpp
|
||||
index 2764c3bbe2f..51b32cd9f94 100644
|
||||
--- a/src/backend/jit/llvm/llvmjit_inline.cpp
|
||||
+++ b/src/backend/jit/llvm/llvmjit_inline.cpp
|
||||
@@ -238,7 +238,11 @@ llvm_build_inline_plan(LLVMContextRef lc, llvm::Module *mod)
|
||||
|
||||
llvm_split_symbol_name(symbolName.data(), &cmodname, &cfuncname);
|
||||
|
||||
+#if LLVM_VERSION_MAJOR >= 21
|
||||
+ funcGUID = llvm::GlobalValue::getGUIDAssumingExternalLinkage(cfuncname);
|
||||
+#else
|
||||
funcGUID = llvm::GlobalValue::getGUID(cfuncname);
|
||||
+#endif
|
||||
|
||||
/* already processed */
|
||||
if (inlineState.processed)
|
||||
--
|
||||
2.39.5
|
||||
|
||||
35
dev-db/postgresql/files/postgresql-check-db-dir
Normal file
35
dev-db/postgresql/files/postgresql-check-db-dir
Normal 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
|
||||
65
dev-db/postgresql/files/postgresql.confd-9.3
Normal file
65
dev-db/postgresql/files/postgresql.confd-9.3
Normal 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"
|
||||
204
dev-db/postgresql/files/postgresql.init-9.3-r1
Normal file
204
dev-db/postgresql/files/postgresql.init-9.3-r1
Normal 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}
|
||||
}
|
||||
52
dev-db/postgresql/files/postgresql.service-9.6-r1
Normal file
52
dev-db/postgresql/files/postgresql.service-9.6-r1
Normal 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
|
||||
1
dev-db/postgresql/files/postgresql.tmpfiles
Normal file
1
dev-db/postgresql/files/postgresql.tmpfiles
Normal file
@@ -0,0 +1 @@
|
||||
d /run/postgresql 1775 root postgres -
|
||||
24
dev-db/postgresql/metadata.xml
Normal file
24
dev-db/postgresql/metadata.xml
Normal 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="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="server">
|
||||
Disable to build and install the clients and libraries
|
||||
only.
|
||||
</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>
|
||||
483
dev-db/postgresql/postgresql-17.6-r2.ebuild
Normal file
483
dev-db/postgresql/postgresql-17.6-r2.ebuild
Normal file
@@ -0,0 +1,483 @@
|
||||
# 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? ( sys-libs/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
|
||||
"
|
||||
|
||||
PATCHES=( "${FILESDIR}"/postgresql-17.6-llvm21.patch )
|
||||
|
||||
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
|
||||
}
|
||||
@@ -1 +1,2 @@
|
||||
DIST timescaledb-2.6.0.tar.gz 2863860 BLAKE2B 14b7bbfcfe1ca874ef24a7d31f3855f78cde0be57022251e1b1eb141819e19af45a2269123583a2d97c08c778aed38d9662cd4a6ff9c44281a605b8c0faed1ec SHA512 b076a44e3b30e99986dba710079cdc1a38b59a9d65ecd9f78fa16f3b762f253d7a9236a34a4d7e7beb29c1051113ea8877973e07ed3116012c9d2175a77e2edc
|
||||
DIST timescaledb-2.19.3.tar.gz 8010948 BLAKE2B f1bf6b376c281b35f154f47d00c1e7777cf7cfe9bece09097ac28d0d14b90f23c589f2cd8e5377fda1a65ef066530c8d958d0456d320304da26d013c318e12bd SHA512 44310ddced2899b6a60989fc5e96aa4c999898e5ec59a29ea1bc4c82e6ae9339fa11fd6e20805a2d09a351c1c6fe1429593367f73a91229043c02ba6648468e7
|
||||
DIST timescaledb-2.20.3.tar.gz 7802166 BLAKE2B 5dcc9c121d2dee7bf81f92ed38c8a32c23fa2ea814aa52d6253fba921e13e5937836a39a018c6decf1941b5362e7849336ab6cdb32385b5a44ac324895da613d SHA512 657dd5d5f6583b03a8daccbe9c4432d810614c65700a881ac5e30e0a75d4f07083d1085c71682552fe46e4bb211439b37bbf2b267d41d1ed60744d83776a42b6
|
||||
|
||||
70
dev-db/timescaledb/timescaledb-2.19.3.ebuild
Normal file
70
dev-db/timescaledb/timescaledb-2.19.3.ebuild
Normal file
@@ -0,0 +1,70 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
POSTGRES_COMPAT=( {14..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
|
||||
}
|
||||
70
dev-db/timescaledb/timescaledb-2.20.3.ebuild
Normal file
70
dev-db/timescaledb/timescaledb-2.20.3.ebuild
Normal file
@@ -0,0 +1,70 @@
|
||||
# Copyright 1999-2024 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
|
||||
}
|
||||
@@ -1,54 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
POSTGRES_COMPAT=( {12..14} )
|
||||
POSTGRES_USEDEP="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}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0
|
||||
tsl? ( timescale )"
|
||||
SLOT="0"
|
||||
IUSE="+tsl"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
RESTRICT="test"
|
||||
|
||||
DEPEND="${POSTGRES_DEP}"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
CMAKE_BUILD_TYPE=RelWithDebInfo
|
||||
|
||||
src_prepare() {
|
||||
postgres-multi_foreach cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
pg_src_configure () {
|
||||
local mycmakeargs=(
|
||||
-DAPACHE_ONLY=$(usex tsl OFF ON)
|
||||
-DUSE_OPENSSL=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
2
dev-go/wire/Manifest
Normal 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
|
||||
38
dev-go/wire/wire-0.7.0.ebuild
Normal file
38
dev-go/wire/wire-0.7.0.ebuild
Normal file
@@ -0,0 +1,38 @@
|
||||
# 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() {
|
||||
# GO111MODULE=on GOCACHE="${T}"/go-cache go build -mod=vendor -o ./bin/${PN} ./cmd/wire/main.go
|
||||
#}
|
||||
|
||||
src_compile() {
|
||||
ego build -mod=vendor -o wire ./cmd/wire/main.go
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin wire
|
||||
dodoc {README,CONTRIBUTING}.md
|
||||
}
|
||||
1
dev-java/slf4j-api/Manifest
Normal file
1
dev-java/slf4j-api/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST slf4j-1.7.36.tar.gz 2276203 BLAKE2B 930de76047c694b4e566ba743ee90a2efb062358b03209137f686c4bf4ead122aa84c18b79615e5a67f1a890abdc1b8f70f62b7803f7b8e45c766ff8254836d4 SHA512 1384c771aa04d9d351854cf8ddeef66ee9f43df53890a05413c48c14cf1cb78a457bb4b2a6e2f064f1c1ab68b2eaa1d326fc03bb6b7c145915660a2c873692d0
|
||||
12
dev-java/slf4j-api/metadata.xml
Normal file
12
dev-java/slf4j-api/metadata.xml
Normal 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>
|
||||
62
dev-java/slf4j-api/slf4j-api-1.7.36.ebuild
Normal file
62
dev-java/slf4j-api/slf4j-api-1.7.36.ebuild
Normal 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
|
||||
}
|
||||
1
dev-java/slf4j-ext/Manifest
Normal file
1
dev-java/slf4j-ext/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST slf4j-1.7.36.tar.gz 2276203 BLAKE2B 930de76047c694b4e566ba743ee90a2efb062358b03209137f686c4bf4ead122aa84c18b79615e5a67f1a890abdc1b8f70f62b7803f7b8e45c766ff8254836d4 SHA512 1384c771aa04d9d351854cf8ddeef66ee9f43df53890a05413c48c14cf1cb78a457bb4b2a6e2f064f1c1ab68b2eaa1d326fc03bb6b7c145915660a2c873692d0
|
||||
8
dev-java/slf4j-ext/metadata.xml
Normal file
8
dev-java/slf4j-ext/metadata.xml
Normal file
@@ -0,0 +1,8 @@
|
||||
<?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>
|
||||
</pkgmetadata>
|
||||
74
dev-java/slf4j-ext/slf4j-ext-1.7.36.ebuild
Normal file
74
dev-java/slf4j-ext/slf4j-ext-1.7.36.ebuild
Normal file
@@ -0,0 +1,74 @@
|
||||
# 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 ~arm64 ~ppc64 ~x86" --ebuild slf4j-ext-1.7.36.ebuild
|
||||
|
||||
EAPI=8
|
||||
|
||||
JAVA_PKG_IUSE="doc source"
|
||||
MAVEN_ID="org.slf4j:slf4j-ext:1.7.36"
|
||||
# JAVA_TESTING_FRAMEWORKS="junit-4"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
DESCRIPTION="Extensions to 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"
|
||||
|
||||
# Common dependencies
|
||||
# POM: pom.xml
|
||||
# ch.qos.cal10n:cal10n-api:0.8.1 -> >=dev-java/cal10n-0.8.1:0
|
||||
# commons-lang:commons-lang:2.4 -> >=dev-java/commons-lang-2.6:2.1
|
||||
# javassist:javassist:3.4.GA -> >=dev-java/javassist-3.18.2:3
|
||||
# org.slf4j:slf4j-api:1.7.36 -> >=dev-java/slf4j-api-1.7.36:0
|
||||
|
||||
CP_DEPEND="
|
||||
dev-java/cal10n:0
|
||||
dev-java/commons-lang:2.1
|
||||
dev-java/javassist:3
|
||||
~dev-java/slf4j-api-${PV}:0
|
||||
"
|
||||
|
||||
# Compile dependencies
|
||||
# POM: pom.xml
|
||||
# test? junit:junit:4.13 -> >=dev-java/junit-4.13.2:4
|
||||
# test? org.slf4j:slf4j-reload4j:1.7.36 -> !!!artifactId-not-found!!!
|
||||
|
||||
# slf4j-reload4j has further dependencies which are not available in ::gentoo.
|
||||
|
||||
DEPEND="
|
||||
>=virtual/jdk-1.8:*
|
||||
${CP_DEPEND}
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
>=virtual/jre-1.8:*
|
||||
${CP_DEPEND}"
|
||||
|
||||
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,!!!artifactId-not-found!!!"
|
||||
# JAVA_TEST_SRC_DIR="src/test/java"
|
||||
# JAVA_TEST_RESOURCE_DIRS=(
|
||||
# "src/test/resources"
|
||||
# )
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
java-pkg_clean
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default # https://bugs.gentoo.org/789582
|
||||
java-pkg-simple_src_install
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# Skeleton command:
|
||||
@@ -17,7 +17,7 @@ HOMEPAGE="http://www.slf4j.org"
|
||||
SRC_URI="https://github.com/qos-ch/slf4j/archive/refs/tags/v_${PV}.tar.gz -> ${P}-sources.tar.gz"
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
|
||||
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
|
||||
|
||||
# Common dependencies
|
||||
# POM: pom.xml
|
||||
|
||||
1
dev-java/slf4j-nop/Manifest
Normal file
1
dev-java/slf4j-nop/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST slf4j-1.7.36.tar.gz 2276203 BLAKE2B 930de76047c694b4e566ba743ee90a2efb062358b03209137f686c4bf4ead122aa84c18b79615e5a67f1a890abdc1b8f70f62b7803f7b8e45c766ff8254836d4 SHA512 1384c771aa04d9d351854cf8ddeef66ee9f43df53890a05413c48c14cf1cb78a457bb4b2a6e2f064f1c1ab68b2eaa1d326fc03bb6b7c145915660a2c873692d0
|
||||
8
dev-java/slf4j-nop/metadata.xml
Normal file
8
dev-java/slf4j-nop/metadata.xml
Normal file
@@ -0,0 +1,8 @@
|
||||
<?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>
|
||||
</pkgmetadata>
|
||||
58
dev-java/slf4j-nop/slf4j-nop-1.7.36.ebuild
Normal file
58
dev-java/slf4j-nop/slf4j-nop-1.7.36.ebuild
Normal file
@@ -0,0 +1,58 @@
|
||||
# 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 ~arm64 ~ppc64 ~x86" --ebuild slf4j-nop-1.7.36.ebuild
|
||||
|
||||
EAPI=8
|
||||
|
||||
JAVA_PKG_IUSE="doc source test"
|
||||
MAVEN_ID="org.slf4j:slf4j-nop:1.7.36"
|
||||
JAVA_TESTING_FRAMEWORKS="junit-4"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
DESCRIPTION="SLF4J NOP Binding"
|
||||
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"
|
||||
|
||||
# Common dependencies
|
||||
# POM: pom.xml
|
||||
# org.slf4j:slf4j-api:1.7.36 -> >=dev-java/slf4j-api-1.7.36:0
|
||||
|
||||
CP_DEPEND="
|
||||
~dev-java/slf4j-api-${PV}:0
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
>=virtual/jdk-1.8:*
|
||||
${CP_DEPEND}
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
>=virtual/jre-1.8:*
|
||||
${CP_DEPEND}"
|
||||
|
||||
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"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
java-pkg_clean
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default # https://bugs.gentoo.org/789582
|
||||
java-pkg-simple_src_install
|
||||
}
|
||||
1
dev-java/slf4j-simple/Manifest
Normal file
1
dev-java/slf4j-simple/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST slf4j-1.7.36.tar.gz 2276203 BLAKE2B 930de76047c694b4e566ba743ee90a2efb062358b03209137f686c4bf4ead122aa84c18b79615e5a67f1a890abdc1b8f70f62b7803f7b8e45c766ff8254836d4 SHA512 1384c771aa04d9d351854cf8ddeef66ee9f43df53890a05413c48c14cf1cb78a457bb4b2a6e2f064f1c1ab68b2eaa1d326fc03bb6b7c145915660a2c873692d0
|
||||
12
dev-java/slf4j-simple/metadata.xml
Normal file
12
dev-java/slf4j-simple/metadata.xml
Normal 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>
|
||||
77
dev-java/slf4j-simple/slf4j-simple-1.7.36.ebuild
Normal file
77
dev-java/slf4j-simple/slf4j-simple-1.7.36.ebuild
Normal file
@@ -0,0 +1,77 @@
|
||||
# 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-simple-1.7.36.ebuild
|
||||
|
||||
EAPI=8
|
||||
|
||||
JAVA_PKG_IUSE="doc source test"
|
||||
MAVEN_ID="org.slf4j:slf4j-simple:1.7.36"
|
||||
JAVA_TESTING_FRAMEWORKS="junit-4"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
DESCRIPTION="SLF4J Simple binding"
|
||||
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"
|
||||
|
||||
# Common dependencies
|
||||
# POM: pom.xml
|
||||
# org.slf4j:slf4j-api:1.7.36 -> >=dev-java/slf4j-api-1.7.36:0
|
||||
|
||||
CP_DEPEND="
|
||||
~dev-java/slf4j-api-${PV}:0
|
||||
"
|
||||
|
||||
# Compile dependencies
|
||||
# POM: pom.xml
|
||||
# test? junit:junit:4.13 -> >=dev-java/junit-4.13.2:4
|
||||
# test? org.slf4j:slf4j-api:1.7.36 -> >=dev-java/slf4j-api-1.7.36:0
|
||||
|
||||
DEPEND="
|
||||
>=virtual/jdk-1.8:*
|
||||
${CP_DEPEND}
|
||||
test? (
|
||||
~dev-java/slf4j-api-${PV}:0
|
||||
)
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
>=virtual/jre-1.8:*
|
||||
${CP_DEPEND}"
|
||||
|
||||
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,slf4j-api"
|
||||
JAVA_TEST_SRC_DIR="src/test/java"
|
||||
JAVA_TEST_RESOURCE_DIRS="src/test/resources"
|
||||
|
||||
JAVA_TEST_EXCLUDES=(
|
||||
# java.lang.InstantiationException
|
||||
"org.slf4j.helpers.MultithreadedInitializationTest"
|
||||
|
||||
# java.lang.AssertionError: 1284 < 1263+16
|
||||
"org.slf4j.helpers.SimpleLoggerMultithreadedInitializationTest"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
java-pkg_clean
|
||||
cp {../slf4j-api/,}src/test/java/org/slf4j/helpers/MultithreadedInitializationTest.java || die
|
||||
cp {../slf4j-api/,}src/test/java/org/slf4j/LoggerAccessingThread.java || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default # https://bugs.gentoo.org/789582
|
||||
java-pkg-simple_src_install
|
||||
}
|
||||
1
dev-lang/php/Manifest
Normal file
1
dev-lang/php/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST php-7.4.33-patches-2.tar.xz 21128 BLAKE2B 65d5dee974c2c3ea223dc00591674ee4b596bf082ed9554392f96de00c10606f2408f4053bfe769cdeb7a08bb816cb7a0ae19c30ae878d6c5e50c3d411e76b34 SHA512 e7d990490ace3f69ff7e41e7e1ccb940b39dda43e888d1b59b7217893cabd91117d00ae5e8f95e4a4e1fa147457f302248d9ac19398eab85099f39599f8d9fd3
|
||||
2
dev-lang/php/files/20php5-envd
Normal file
2
dev-lang/php/files/20php5-envd
Normal file
@@ -0,0 +1,2 @@
|
||||
MANPATH="/usr/lib/php5/man/"
|
||||
CONFIG_PROTECT_MASK="/etc/php/cli-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/apache2-php5/ext-active/ /etc/php/fpm-php5/ext-active/ /etc/php/phpdbg-php5/ext-active/"
|
||||
13
dev-lang/php/files/php-fpm_at-simple.service
Normal file
13
dev-lang/php/files/php-fpm_at-simple.service
Normal file
@@ -0,0 +1,13 @@
|
||||
[Unit]
|
||||
Description=The PHP FastCGI Process Manager
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
PIDFile=/run/php-fpm/php-fpm-%I.pid
|
||||
ExecStart=/usr/libexec/php-fpm-launcher php%I -y /etc/php/fpm-php%I/php-fpm.conf --nodaemonize
|
||||
ExecReload=/bin/kill -USR2 $MAINPID
|
||||
PrivateTmp=true
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
13
dev-lang/php/files/php-fpm_at.service
Normal file
13
dev-lang/php/files/php-fpm_at.service
Normal file
@@ -0,0 +1,13 @@
|
||||
[Unit]
|
||||
Description=The PHP FastCGI Process Manager
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=notify
|
||||
PIDFile=/run/php-fpm/php-fpm-%I.pid
|
||||
ExecStart=/usr/libexec/php-fpm-launcher php%I -y /etc/php/fpm-php%I/php-fpm.conf --nodaemonize
|
||||
ExecReload=/bin/kill -USR2 $MAINPID
|
||||
PrivateTmp=true
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
135
dev-lang/php/metadata.xml
Normal file
135
dev-lang/php/metadata.xml
Normal file
@@ -0,0 +1,135 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>php-bugs@gentoo.org</email>
|
||||
<name>PHP</name>
|
||||
</maintainer>
|
||||
<maintainer type="person">
|
||||
<email>mjo@gentoo.org</email>
|
||||
<name>Michael Orlitzky</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="apparmor">
|
||||
Support FPM application confinement through
|
||||
<pkg>sys-libs/libapparmor</pkg>
|
||||
</flag>
|
||||
<flag name="argon2">
|
||||
Enable password hashing algorithm from <pkg>app-crypt/argon2</pkg>
|
||||
</flag>
|
||||
<flag name="avif">
|
||||
Enable AVIF support in bundled libgd
|
||||
</flag>
|
||||
<flag name="bcmath">
|
||||
Enable the BCMath Arbitrary Precision Mathematics extension
|
||||
</flag>
|
||||
<flag name="cli">
|
||||
Enable the Command-Line Interface (CLI) SAPI
|
||||
</flag>
|
||||
<flag name="coverage">
|
||||
Include gcov symbols for test coverage and lcov reports. Only
|
||||
useful for extension developers, and requires GCC.
|
||||
</flag>
|
||||
<flag name="ctype">
|
||||
Enable the Character type checking (ctype) extension
|
||||
</flag>
|
||||
<flag name="embed">
|
||||
Enable embed SAPI
|
||||
</flag>
|
||||
<flag name="enchant">
|
||||
Enable the Enchant spelling library extension using
|
||||
<pkg>app-text/enchant</pkg>
|
||||
</flag>
|
||||
<flag name="ffi">
|
||||
Enable the Foreign Function Interface (FFI) extension using
|
||||
<pkg>dev-libs/libffi</pkg>
|
||||
</flag>
|
||||
<flag name="fileinfo">
|
||||
Enable the File Information extension
|
||||
</flag>
|
||||
<flag name="filter">
|
||||
Enable the Data Filtering extension
|
||||
</flag>
|
||||
<flag name="flatfile">
|
||||
Add dbm support for flat files
|
||||
</flag>
|
||||
<flag name="fpm">
|
||||
Enable the FastCGI Process Manager SAPI
|
||||
</flag>
|
||||
<flag name="gd">
|
||||
Enable the Image Processing and GD extension (requires
|
||||
<pkg>media-libs/libjpeg-turbo</pkg> and
|
||||
<pkg>media-libs/libpng</pkg>)
|
||||
</flag>
|
||||
<flag name="inifile">
|
||||
Add dbm support for .ini files
|
||||
</flag>
|
||||
<flag name="jit">
|
||||
Enable PCRE JIT support
|
||||
</flag>
|
||||
<flag name="json">
|
||||
Enable the JavaScript Object Notation extension
|
||||
</flag>
|
||||
<flag name="ldap-sasl">
|
||||
Add SASL support for the PHP LDAP extension using
|
||||
<pkg>dev-libs/cyrus-sasl</pkg>
|
||||
</flag>
|
||||
<flag name="lmdb">
|
||||
Enable support for <pkg>dev-db/lmdb</pkg> db backend
|
||||
</flag>
|
||||
<flag name="intl">
|
||||
Enables the intl extension for extended internalization support
|
||||
</flag>
|
||||
<flag name="opcache">
|
||||
Enables built-in opcode cache, replacing pecl-apc et al.
|
||||
</flag>
|
||||
<flag name="pcntl">
|
||||
Enable the Process Control extension
|
||||
</flag>
|
||||
<flag name="pdo">
|
||||
Enable the PHP Data Objects extension
|
||||
</flag>
|
||||
<flag name="phar">
|
||||
Enables the phar extension to provide phar archive support
|
||||
</flag>
|
||||
<flag name="phpdbg">
|
||||
Enable the PHP Debug Command Line SAPI (like gdb for php)
|
||||
</flag>
|
||||
<flag name="session-mm">
|
||||
Include <pkg>dev-libs/mm</pkg> support for session storage
|
||||
</flag>
|
||||
<flag name="sharedmem">
|
||||
Enable the shmop extension
|
||||
</flag>
|
||||
<flag name="simplexml">
|
||||
Enable the SimpleXML extension
|
||||
</flag>
|
||||
<flag name="sodium">
|
||||
Enable support for crypto through <pkg>dev-libs/libsodium</pkg>
|
||||
</flag>
|
||||
<flag name="sysvipc">
|
||||
Enable the PHP System-V semaphore, shared memory and IPC extension
|
||||
</flag>
|
||||
<flag name="tokenizer">
|
||||
Add support for the PHP file parser
|
||||
</flag>
|
||||
<flag name="tokyocabinet">
|
||||
Enable support for <pkg>dev-db/tokyocabinet</pkg> db backend
|
||||
</flag>
|
||||
<flag name="xmlreader">
|
||||
Enable the XMLReader extension
|
||||
</flag>
|
||||
<flag name="xmlwriter">
|
||||
Enable the XMLWriter extension
|
||||
</flag>
|
||||
<flag name="xslt">
|
||||
Build the XSL extension
|
||||
</flag>
|
||||
<flag name="webp">
|
||||
Enable webp support for GD in php-7.x
|
||||
</flag>
|
||||
</use>
|
||||
<upstream>
|
||||
<remote-id type="github">php/php-src</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
761
dev-lang/php/php-7.4.33_p20251011.ebuild
Normal file
761
dev-lang/php/php-7.4.33_p20251011.ebuild
Normal file
@@ -0,0 +1,761 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit flag-o-matic git-r3 systemd autotools multilib
|
||||
|
||||
# Extra fixes
|
||||
## https://github.com/zboszor/meta-parallel-php/tree/main/recipes-php/php/php74
|
||||
|
||||
PHP_MV="$(ver_cut 1)"
|
||||
PHP_PATCH="php-$(ver_cut 1-3)-patches-2.tar.xz"
|
||||
|
||||
DESCRIPTION="The PHP language runtime engine"
|
||||
HOMEPAGE="https://www.php.net/"
|
||||
SRC_URI="https://raw.githubusercontent.com/inode64/inode64-overlay/main/dist/${PHP_PATCH}"
|
||||
EGIT_REPO_URI="https://github.com/shivammathur/php-src-backports"
|
||||
# Alternative
|
||||
#EGIT_REPO_URI="https://github.com/remicollet/php-src-security"
|
||||
EGIT_BRANCH="PHP-7.4-security-backports"
|
||||
EGIT_COMMIT="e5b417c927f43ba9c4b237a672de1ec60d6f77ca"
|
||||
|
||||
LICENSE="PHP-3.01
|
||||
BSD
|
||||
Zend-2.0
|
||||
bcmath? ( LGPL-2.1+ )
|
||||
fpm? ( BSD-2 )
|
||||
gd? ( gd )
|
||||
unicode? ( BSD-2 LGPL-2.1 )"
|
||||
SLOT="$(ver_cut 1-2)"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
|
||||
|
||||
# We can build the following SAPIs in the given order
|
||||
SAPIS="embed cli cgi fpm apache2 phpdbg"
|
||||
|
||||
# SAPIs and SAPI-specific USE flags (cli SAPI is default on):
|
||||
IUSE="${IUSE}
|
||||
${SAPIS/cli/+cli}
|
||||
"
|
||||
|
||||
IUSE="${IUSE} acl argon2 bcmath berkdb bzip2 calendar cdb cjk
|
||||
+ctype curl debug
|
||||
enchant exif ffi +fileinfo +filter firebird
|
||||
+flatfile ftp gd gdbm gmp +iconv imap inifile
|
||||
intl iodbc ipv6 +jit +json kerberos ldap ldap-sasl libedit lmdb
|
||||
mhash mssql mysql mysqli nls
|
||||
oci8-instant-client odbc +opcache pcntl pdo +phar +posix postgres qdbm
|
||||
readline selinux +session session-mm sharedmem
|
||||
+simplexml snmp soap sockets sodium spell sqlite ssl
|
||||
sysvipc systemd test tidy +tokenizer tokyocabinet truetype unicode webp
|
||||
+xml xmlreader xmlwriter xmlrpc xpm xslt zip zlib"
|
||||
|
||||
# Without USE=readline or libedit, the interactive "php -a" CLI will hang.
|
||||
# The Oracle instant client provides its own incompatible ldap library.
|
||||
REQUIRED_USE="
|
||||
|| ( cli cgi fpm apache2 embed phpdbg )
|
||||
cli? ( ^^ ( readline libedit ) )
|
||||
!cli? ( ?? ( readline libedit ) )
|
||||
truetype? ( gd zlib )
|
||||
webp? ( gd zlib )
|
||||
cjk? ( gd zlib )
|
||||
exif? ( gd zlib )
|
||||
xpm? ( gd zlib )
|
||||
gd? ( zlib )
|
||||
simplexml? ( xml )
|
||||
soap? ( xml )
|
||||
xmlrpc? ( xml iconv )
|
||||
xmlreader? ( xml )
|
||||
xmlwriter? ( xml )
|
||||
xslt? ( xml )
|
||||
ldap-sasl? ( ldap )
|
||||
oci8-instant-client? ( !ldap )
|
||||
qdbm? ( !gdbm )
|
||||
session-mm? ( session )
|
||||
mysql? ( || ( mysqli pdo ) )
|
||||
firebird? ( pdo )
|
||||
mssql? ( pdo )
|
||||
"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# The supported (that is, autodetected) versions of BDB are listed in
|
||||
# the ./configure script. Other versions *work*, but we need to stick to
|
||||
# the ones that can be detected to avoid a repeat of bug #564824.
|
||||
COMMON_DEPEND="
|
||||
>=app-eselect/eselect-php-0.9.1[apache2?,fpm?]
|
||||
>=dev-libs/libpcre2-10.30[jit?,unicode]
|
||||
virtual/libcrypt:=
|
||||
fpm? ( acl? ( sys-apps/acl ) )
|
||||
apache2? ( www-servers/apache[apache2_modules_unixd(+)] )
|
||||
argon2? ( app-crypt/argon2:= )
|
||||
berkdb? ( || ( sys-libs/db:5.3 sys-libs/db:4.8 ) )
|
||||
bzip2? ( app-arch/bzip2:0= )
|
||||
cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
|
||||
curl? ( >=net-misc/curl-7.10.5 )
|
||||
enchant? ( app-text/enchant:0 )
|
||||
ffi? ( >=dev-libs/libffi-3.0.11:= )
|
||||
firebird? ( dev-db/firebird )
|
||||
gd? ( media-libs/libjpeg-turbo:0= media-libs/libpng:0= )
|
||||
gdbm? ( >=sys-libs/gdbm-1.8.0:0= )
|
||||
gmp? ( dev-libs/gmp:0= )
|
||||
iconv? ( virtual/libiconv )
|
||||
imap? ( net-libs/c-client[kerberos=,ssl=] )
|
||||
intl? ( dev-libs/icu:= )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( >=net-nds/openldap-1.2.11:= )
|
||||
ldap-sasl? ( dev-libs/cyrus-sasl )
|
||||
libedit? ( dev-libs/libedit )
|
||||
lmdb? ( dev-db/lmdb:= )
|
||||
mssql? ( dev-db/freetds[mssql] )
|
||||
nls? ( sys-devel/gettext )
|
||||
oci8-instant-client? ( dev-db/oracle-instantclient[sdk] )
|
||||
odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) )
|
||||
postgres? ( dev-db/postgresql:* )
|
||||
qdbm? ( dev-db/qdbm )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
session-mm? ( dev-libs/mm )
|
||||
snmp? ( >=net-analyzer/net-snmp-5.2 )
|
||||
sodium? ( dev-libs/libsodium )
|
||||
spell? ( >=app-text/aspell-0.50 )
|
||||
sqlite? ( >=dev-db/sqlite-3.7.6.3 )
|
||||
ssl? ( dev-libs/openssl:= )
|
||||
tidy? ( app-text/htmltidy )
|
||||
tokyocabinet? ( dev-db/tokyocabinet )
|
||||
truetype? ( =media-libs/freetype-2* )
|
||||
unicode? ( dev-libs/oniguruma:= )
|
||||
webp? ( media-libs/libwebp:0= )
|
||||
xml? ( >=dev-libs/libxml2-2.7.6:= )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
xslt? ( dev-libs/libxslt )
|
||||
zip? ( >=dev-libs/libzip-1.2.0:= )
|
||||
zlib? ( >=sys-libs/zlib-1.2.0.4:0= )
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
virtual/mta
|
||||
fpm? (
|
||||
selinux? ( sec-policy/selinux-phpfpm )
|
||||
systemd? ( sys-apps/systemd ) )"
|
||||
|
||||
# Bison isn't actually needed when building from a release tarball
|
||||
# However, the configure script will warn if it's absent or if you
|
||||
# have an incompatible version installed. See bug 593278.
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
app-arch/xz-utils
|
||||
>=sys-devel/bison-3.0.1"
|
||||
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
php_install_ini() {
|
||||
local phpsapi="${1}"
|
||||
|
||||
# work out where we are installing the ini file
|
||||
php_set_ini_dir "${phpsapi}"
|
||||
|
||||
# Always install the production INI file, bug 611214.
|
||||
local phpinisrc="php.ini-production-${phpsapi}"
|
||||
cp php.ini-production "${phpinisrc}" || die
|
||||
|
||||
# default to /tmp for save_path, bug #282768
|
||||
sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die
|
||||
|
||||
# Set the extension dir
|
||||
sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \
|
||||
-i "${phpinisrc}" || die
|
||||
|
||||
# Set the include path to point to where we want to find PEAR packages
|
||||
sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die
|
||||
|
||||
insinto "${PHP_INI_DIR#${EPREFIX}}"
|
||||
newins "${phpinisrc}" php.ini
|
||||
|
||||
elog "Installing php.ini for ${phpsapi} into ${PHP_INI_DIR#${EPREFIX}}"
|
||||
elog
|
||||
|
||||
dodir "${PHP_EXT_INI_DIR#${EPREFIX}}"
|
||||
dodir "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}"
|
||||
|
||||
if use opcache; then
|
||||
elog "Adding opcache to $PHP_EXT_INI_DIR"
|
||||
echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \
|
||||
"${D}/${PHP_EXT_INI_DIR}"/opcache.ini
|
||||
dosym "../ext/opcache.ini" \
|
||||
"${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini"
|
||||
fi
|
||||
|
||||
# SAPI-specific handling
|
||||
if [[ "${sapi}" == "fpm" ]] ; then
|
||||
einfo "Installing FPM config files php-fpm.conf and www.conf"
|
||||
insinto "${PHP_INI_DIR#${EPREFIX}}"
|
||||
doins sapi/fpm/php-fpm.conf
|
||||
insinto "${PHP_INI_DIR#${EPREFIX}}/fpm.d"
|
||||
doins sapi/fpm/www.conf
|
||||
fi
|
||||
|
||||
dodoc php.ini-{development,production}
|
||||
}
|
||||
|
||||
php_set_ini_dir() {
|
||||
PHP_INI_DIR="${EPREFIX}/etc/php/${1}-php${SLOT}"
|
||||
PHP_EXT_INI_DIR="${PHP_INI_DIR}/ext"
|
||||
PHP_EXT_INI_DIR_ACTIVE="${PHP_INI_DIR}/ext-active"
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
git-r3_src_unpack
|
||||
unpack "${PHP_PATCH}"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
local patchdir="${WORKDIR}/patches"
|
||||
|
||||
eapply "${patchdir}/"
|
||||
|
||||
# In php-7.x, the FPM pool configuration files have been split off
|
||||
# of the main config. By default the pool config files go in
|
||||
# e.g. /etc/php-fpm.d, which isn't slotted. So here we move the
|
||||
# include directory to a subdirectory "fpm.d" of $PHP_INI_DIR. Later
|
||||
# we'll install the pool configuration file "www.conf" there.
|
||||
php_set_ini_dir fpm
|
||||
sed -i "s~^include=.*$~include=${PHP_INI_DIR}/fpm.d/*.conf~" \
|
||||
sapi/fpm/php-fpm.conf.in \
|
||||
|| die 'failed to move the include directory in php-fpm.conf'
|
||||
|
||||
# Emulate buildconf to support cross-compilation
|
||||
rm -fr aclocal.m4 autom4te.cache config.cache \
|
||||
configure main/php_config.h.in || die
|
||||
|
||||
eautoconf --force
|
||||
eautoheader
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
filter-lto # bug 855644
|
||||
|
||||
addpredict /usr/share/snmp/mibs/.index #nowarn
|
||||
addpredict /var/lib/net-snmp/mib_indexes #nowarn
|
||||
|
||||
PHP_DESTDIR="${EPREFIX}/usr/$(get_libdir)/php${SLOT}"
|
||||
|
||||
# The php-fpm config file wants localstatedir to be ${EPREFIX}/var
|
||||
# and not the Gentoo default ${EPREFIX}/var/lib. See bug 572002.
|
||||
local our_conf=(
|
||||
--prefix="${PHP_DESTDIR}"
|
||||
--mandir="${PHP_DESTDIR}/man"
|
||||
--infodir="${PHP_DESTDIR}/info"
|
||||
--libdir="${PHP_DESTDIR}/lib"
|
||||
--with-libdir="$(get_libdir)"
|
||||
--localstatedir="${EPREFIX}/var"
|
||||
--without-pear
|
||||
--without-valgrind
|
||||
)
|
||||
|
||||
# remove obsolete gcov support
|
||||
our_conf+=(
|
||||
--disable-gcov
|
||||
)
|
||||
|
||||
our_conf+=(
|
||||
$(use_with argon2 password-argon2 "${EPREFIX}/usr")
|
||||
$(use_enable bcmath)
|
||||
$(use_with bzip2 bz2 "${EPREFIX}/usr")
|
||||
$(use_enable calendar)
|
||||
$(use_enable ctype)
|
||||
$(use_with curl)
|
||||
$(use_enable xml dom)
|
||||
$(use_with enchant)
|
||||
$(use_enable exif)
|
||||
$(use_with ffi)
|
||||
$(use_enable fileinfo)
|
||||
$(use_enable filter)
|
||||
$(use_enable ftp)
|
||||
$(use_with nls gettext "${EPREFIX}/usr")
|
||||
$(use_with gmp gmp "${EPREFIX}/usr")
|
||||
$(use_with mhash mhash "${EPREFIX}/usr")
|
||||
$(use_with iconv iconv \
|
||||
$(use elibc_glibc || use elibc_musl || echo "${EPREFIX}/usr"))
|
||||
$(use_enable intl)
|
||||
$(use_enable ipv6)
|
||||
$(use_enable json)
|
||||
$(use_with kerberos)
|
||||
$(use_with xml libxml)
|
||||
$(use_enable unicode mbstring)
|
||||
$(use_with ssl openssl)
|
||||
$(use_enable pcntl)
|
||||
$(use_enable phar)
|
||||
$(use_enable pdo)
|
||||
$(use_enable opcache)
|
||||
$(use_with postgres pgsql "${EPREFIX}/usr")
|
||||
$(use_enable posix)
|
||||
$(use_with spell pspell "${EPREFIX}/usr")
|
||||
$(use_enable simplexml)
|
||||
$(use_enable sharedmem shmop)
|
||||
$(use_with snmp snmp "${EPREFIX}/usr")
|
||||
$(use_enable soap)
|
||||
$(use_enable sockets)
|
||||
$(use_with sodium)
|
||||
$(use_with sqlite sqlite3)
|
||||
$(use_enable sysvipc sysvmsg)
|
||||
$(use_enable sysvipc sysvsem)
|
||||
$(use_enable sysvipc sysvshm)
|
||||
$(use_with tidy tidy "${EPREFIX}/usr")
|
||||
$(use_enable tokenizer)
|
||||
$(use_enable xml)
|
||||
$(use_enable xmlreader)
|
||||
$(use_enable xmlwriter)
|
||||
$(use_with xmlrpc)
|
||||
$(use_with xslt xsl)
|
||||
$(use_with zip)
|
||||
$(use_with zlib zlib "${EPREFIX}/usr")
|
||||
$(use_enable debug)
|
||||
)
|
||||
|
||||
# DBA support
|
||||
if use cdb || use berkdb || use flatfile || use gdbm || use inifile \
|
||||
|| use qdbm || use lmdb || use tokyocabinet ; then
|
||||
our_conf+=( "--enable-dba" )
|
||||
fi
|
||||
|
||||
# DBA drivers support
|
||||
our_conf+=(
|
||||
$(use_with cdb)
|
||||
$(use_with berkdb db4 "${EPREFIX}/usr")
|
||||
$(use_enable flatfile)
|
||||
$(use_with gdbm gdbm "${EPREFIX}/usr")
|
||||
$(use_enable inifile)
|
||||
$(use_with qdbm qdbm "${EPREFIX}/usr")
|
||||
$(use_with tokyocabinet tcadb "${EPREFIX}/usr")
|
||||
$(use_with lmdb lmdb "${EPREFIX}/usr")
|
||||
)
|
||||
|
||||
# Support for the GD graphics library
|
||||
our_conf+=(
|
||||
$(use_with truetype freetype)
|
||||
$(use_enable cjk gd-jis-conv)
|
||||
$(use_with gd jpeg)
|
||||
$(use_with xpm)
|
||||
$(use_with webp)
|
||||
)
|
||||
# enable gd last, so configure can pick up the previous settings
|
||||
our_conf+=( $(use_enable gd) )
|
||||
|
||||
# IMAP support
|
||||
if use imap ; then
|
||||
our_conf+=(
|
||||
$(use_with imap imap "${EPREFIX}/usr")
|
||||
$(use_with ssl imap-ssl "${EPREFIX}/usr")
|
||||
)
|
||||
fi
|
||||
|
||||
# LDAP support
|
||||
if use ldap ; then
|
||||
our_conf+=(
|
||||
$(use_with ldap ldap "${EPREFIX}/usr")
|
||||
$(use_with ldap-sasl)
|
||||
)
|
||||
fi
|
||||
|
||||
# MySQL support
|
||||
local mysqllib="mysqlnd"
|
||||
local mysqlilib="mysqlnd"
|
||||
|
||||
our_conf+=( $(use_with mysqli mysqli "${mysqlilib}") )
|
||||
|
||||
local mysqlsock="${EPREFIX}/var/run/mysqld/mysqld.sock"
|
||||
if use mysql || use mysqli ; then
|
||||
our_conf+=( $(use_with mysql mysql-sock "${mysqlsock}") )
|
||||
fi
|
||||
|
||||
# ODBC support
|
||||
if use odbc && use iodbc ; then
|
||||
our_conf+=(
|
||||
--without-unixODBC
|
||||
--with-iodbc
|
||||
$(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr")
|
||||
)
|
||||
elif use odbc ; then
|
||||
our_conf+=(
|
||||
--with-unixODBC="${EPREFIX}/usr"
|
||||
--without-iodbc
|
||||
$(use_with pdo pdo-odbc "unixODBC,${EPREFIX}/usr")
|
||||
)
|
||||
else
|
||||
our_conf+=(
|
||||
--without-unixODBC
|
||||
--without-iodbc
|
||||
--without-pdo-odbc
|
||||
)
|
||||
fi
|
||||
|
||||
# Oracle support
|
||||
our_conf+=( $(use_with oci8-instant-client oci8) )
|
||||
|
||||
# PDO support
|
||||
if use pdo ; then
|
||||
our_conf+=(
|
||||
$(use_with mssql pdo-dblib "${EPREFIX}/usr")
|
||||
$(use_with mysql pdo-mysql "${mysqllib}")
|
||||
$(use_with postgres pdo-pgsql)
|
||||
$(use_with sqlite pdo-sqlite)
|
||||
$(use_with firebird pdo-firebird "${EPREFIX}/usr")
|
||||
$(use_with oci8-instant-client pdo-oci)
|
||||
)
|
||||
fi
|
||||
|
||||
# readline/libedit support
|
||||
our_conf+=(
|
||||
$(use_with readline readline "${EPREFIX}/usr")
|
||||
$(use_with libedit)
|
||||
)
|
||||
|
||||
# Session support
|
||||
if use session ; then
|
||||
our_conf+=( $(use_with session-mm mm "${EPREFIX}/usr") )
|
||||
else
|
||||
our_conf+=( $(use_enable session) )
|
||||
fi
|
||||
|
||||
# Use pic for shared modules such as apache2's mod_php
|
||||
our_conf+=( --with-pic )
|
||||
|
||||
# we use the system copy of pcre
|
||||
# --with-external-pcre affects ext/pcre
|
||||
our_conf+=(
|
||||
--with-external-pcre
|
||||
$(use_with jit pcre-jit)
|
||||
)
|
||||
|
||||
# Catch CFLAGS problems
|
||||
# Fixes bug #14067.
|
||||
# Changed order to run it in reverse for bug #32022 and #12021.
|
||||
replace-cpu-flags "k6*" "i586"
|
||||
|
||||
# Cache the ./configure test results between SAPIs.
|
||||
our_conf+=( --cache-file="${T}/config.cache" )
|
||||
|
||||
# Support user-passed configuration parameters
|
||||
our_conf+=( ${EXTRA_ECONF:-} )
|
||||
|
||||
# Support the Apache2 extras, they must be set globally for all
|
||||
# SAPIs to work correctly, especially for external PHP extensions
|
||||
|
||||
local one_sapi
|
||||
local sapi
|
||||
mkdir -p "${WORKDIR}/sapis-build" || die
|
||||
for one_sapi in $SAPIS ; do
|
||||
use "${one_sapi}" || continue
|
||||
php_set_ini_dir "${one_sapi}"
|
||||
|
||||
# The BUILD_DIR variable is used to determine where to output
|
||||
# the files that autotools creates. This was all originally
|
||||
# based on the autotools-utils eclass.
|
||||
BUILD_DIR="${WORKDIR}/sapis-build/${one_sapi}"
|
||||
cp -a "${S}" "${BUILD_DIR}" || die
|
||||
cd "${BUILD_DIR}" || die
|
||||
|
||||
local sapi_conf=(
|
||||
--with-config-file-path="${PHP_INI_DIR}"
|
||||
--with-config-file-scan-dir="${PHP_EXT_INI_DIR_ACTIVE}"
|
||||
)
|
||||
|
||||
for sapi in $SAPIS ; do
|
||||
case "$sapi" in
|
||||
cli|cgi|embed|fpm|phpdbg)
|
||||
if [[ "${one_sapi}" == "${sapi}" ]] ; then
|
||||
sapi_conf+=( "--enable-${sapi}" )
|
||||
if [[ "fpm" == "${sapi}" ]] ; then
|
||||
sapi_conf+=(
|
||||
$(use_with acl fpm-acl)
|
||||
$(use_with systemd fpm-systemd)
|
||||
)
|
||||
fi
|
||||
else
|
||||
sapi_conf+=( "--disable-${sapi}" )
|
||||
fi
|
||||
;;
|
||||
|
||||
apache2)
|
||||
if [[ "${one_sapi}" == "${sapi}" ]] ; then
|
||||
sapi_conf+=( --with-apxs2="${EPREFIX}/usr/bin/apxs" )
|
||||
else
|
||||
sapi_conf+=( --without-apxs2 )
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# Construct the $myeconfargs array by concatenating $our_conf
|
||||
# (the common args) and $sapi_conf (the SAPI-specific args).
|
||||
local myeconfargs=( "${our_conf[@]}" )
|
||||
myeconfargs+=( "${sapi_conf[@]}" )
|
||||
|
||||
pushd "${BUILD_DIR}" > /dev/null || die
|
||||
econf "${myeconfargs[@]}"
|
||||
popd > /dev/null || die
|
||||
done
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# snmp seems to run during src_compile, too (bug #324739)
|
||||
addpredict /usr/share/snmp/mibs/.index #nowarn
|
||||
addpredict /var/lib/net-snmp/mib_indexes #nowarn
|
||||
|
||||
local sapi
|
||||
for sapi in ${SAPIS} ; do
|
||||
if use "${sapi}"; then
|
||||
cd "${WORKDIR}/sapis-build/$sapi" || \
|
||||
die "Failed to change dir to ${WORKDIR}/sapis-build/$1"
|
||||
emake
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# see bug #324739 for what happens when we don't have that
|
||||
addpredict /usr/share/snmp/mibs/.index #nowarn
|
||||
|
||||
# grab the first SAPI that got built and install common files from there
|
||||
local first_sapi="", sapi=""
|
||||
for sapi in $SAPIS ; do
|
||||
if use $sapi ; then
|
||||
first_sapi=$sapi
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
# Makefile forgets to create this before trying to write to it...
|
||||
dodir "${PHP_DESTDIR#${EPREFIX}}/bin"
|
||||
|
||||
# Install php environment (without any sapis)
|
||||
cd "${WORKDIR}/sapis-build/$first_sapi" || die
|
||||
emake INSTALL_ROOT="${D}" \
|
||||
install-build install-headers install-programs
|
||||
|
||||
local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)"
|
||||
|
||||
# Create the directory where we'll put version-specific php scripts
|
||||
keepdir "/usr/share/php${PHP_MV}"
|
||||
|
||||
local file=""
|
||||
local sapi_list=""
|
||||
|
||||
for sapi in ${SAPIS}; do
|
||||
if use "${sapi}" ; then
|
||||
einfo "Installing SAPI: ${sapi}"
|
||||
cd "${WORKDIR}/sapis-build/${sapi}" || die
|
||||
|
||||
if [[ "${sapi}" == "apache2" ]] ; then
|
||||
# We're specifically not using emake install-sapi as libtool
|
||||
# may cause unnecessary relink failures (see bug #351266)
|
||||
insinto "${PHP_DESTDIR#${EPREFIX}}/apache2/"
|
||||
newins ".libs/libphp${PHP_MV}$(get_libname)" \
|
||||
"libphp${PHP_MV}$(get_libname)"
|
||||
keepdir "/usr/$(get_libdir)/apache2/modules"
|
||||
else
|
||||
# needed each time, php_install_ini would reset it
|
||||
local dest="${PHP_DESTDIR#${EPREFIX}}"
|
||||
into "${dest}"
|
||||
case "$sapi" in
|
||||
cli)
|
||||
source="sapi/cli/php"
|
||||
# Install the "phar" archive utility.
|
||||
if use phar ; then
|
||||
emake INSTALL_ROOT="${D}" install-pharcmd
|
||||
dosym "..${dest#/usr}/bin/phar" "/usr/bin/phar${SLOT}"
|
||||
fi
|
||||
;;
|
||||
cgi)
|
||||
source="sapi/cgi/php-cgi"
|
||||
;;
|
||||
fpm)
|
||||
source="sapi/fpm/php-fpm"
|
||||
;;
|
||||
embed)
|
||||
source="libs/libphp${PHP_MV}$(get_libname)"
|
||||
;;
|
||||
phpdbg)
|
||||
source="sapi/phpdbg/phpdbg"
|
||||
;;
|
||||
*)
|
||||
die "unhandled sapi in src_install"
|
||||
;;
|
||||
esac
|
||||
|
||||
if [[ "${source}" == *"$(get_libname)" ]]; then
|
||||
dolib.so "${source}"
|
||||
else
|
||||
dobin "${source}"
|
||||
local name="$(basename ${source})"
|
||||
dosym "..${dest#/usr}/bin/${name}" "/usr/bin/${name}${SLOT}"
|
||||
fi
|
||||
fi
|
||||
|
||||
php_install_ini "${sapi}"
|
||||
|
||||
# construct correct SAPI string for php-config
|
||||
# thanks to ferringb for the bash voodoo
|
||||
if [[ "${sapi}" == "apache2" ]]; then
|
||||
sapi_list="${sapi_list:+${sapi_list} }apache2handler"
|
||||
else
|
||||
sapi_list="${sapi_list:+${sapi_list} }${sapi}"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
# Installing opcache module
|
||||
if use opcache ; then
|
||||
into "${PHP_DESTDIR#${EPREFIX}}"
|
||||
dolib.so "modules/opcache$(get_libname)"
|
||||
fi
|
||||
|
||||
# Install env.d files
|
||||
newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}"
|
||||
sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
|
||||
sed -e "s|php5|php${SLOT}|g" -i "${ED}/etc/env.d/20php${SLOT}" || die
|
||||
|
||||
# set php-config variable correctly (bug #278439)
|
||||
sed -e "s:^\(php_sapis=\)\".*\"$:\1\"${sapi_list}\":" -i \
|
||||
"${ED}/usr/$(get_libdir)/php${SLOT}/bin/php-config" || die
|
||||
|
||||
if use fpm ; then
|
||||
if use systemd; then
|
||||
systemd_newunit "${FILESDIR}/php-fpm_at.service" \
|
||||
"php-fpm@${SLOT}.service"
|
||||
else
|
||||
systemd_newunit "${FILESDIR}/php-fpm_at-simple.service" \
|
||||
"php-fpm@${SLOT}.service"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
|
||||
PHP_BIN="${WORKDIR}/sapis-build/cli/sapi/cli/php"
|
||||
if [[ ! -x "${PHP_BIN}" ]] ; then
|
||||
ewarn "Test phase requires USE=cli, skipping"
|
||||
return
|
||||
else
|
||||
export TEST_PHP_EXECUTABLE="${PHP_BIN}"
|
||||
fi
|
||||
|
||||
if [[ -x "${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi" ]] ; then
|
||||
export TEST_PHP_CGI_EXECUTABLE="${WORKDIR}/sapis-build/cgi/sapi/cgi/php-cgi"
|
||||
fi
|
||||
|
||||
if [[ -x "${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" ]] ; then
|
||||
export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg"
|
||||
fi
|
||||
|
||||
REPORT_EXIT_STATUS=1 "${TEST_PHP_EXECUTABLE}" -n -d \
|
||||
"session.save_path=${T}" \
|
||||
"${WORKDIR}/sapis-build/cli/run-tests.php" -n -q -d \
|
||||
"session.save_path=${T}"
|
||||
|
||||
for name in ${EXPECTED_TEST_FAILURES}; do
|
||||
mv "${name}.out" "${name}.out.orig" 2>/dev/null || die
|
||||
done
|
||||
|
||||
local failed="$(find -name '*.out')"
|
||||
if [[ ${failed} != "" ]] ; then
|
||||
ewarn "The following test cases failed unexpectedly:"
|
||||
for name in ${failed}; do
|
||||
ewarn " ${name/.out/}"
|
||||
done
|
||||
else
|
||||
einfo "No unexpected test failures, all fine"
|
||||
fi
|
||||
|
||||
if [[ ${PHP_SHOW_UNEXPECTED_TEST_PASS} == "1" ]] ; then
|
||||
local passed=""
|
||||
for name in ${EXPECTED_TEST_FAILURES}; do
|
||||
[[ -f "${name}.diff" ]] && continue
|
||||
passed="${passed} ${name}"
|
||||
done
|
||||
if [[ ${passed} != "" ]] ; then
|
||||
einfo "The following test cases passed unexpectedly:"
|
||||
for name in ${passed}; do
|
||||
ewarn " ${passed}"
|
||||
done
|
||||
else
|
||||
einfo "None of the known-to-fail tests passed, all fine"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Output some general info to the user
|
||||
if use apache2 ; then
|
||||
elog
|
||||
elog "To enable PHP in apache, you will need to add \"-D PHP\" to"
|
||||
elog "your apache2 command. OpenRC users can append that string to"
|
||||
elog "APACHE2_OPTS in /etc/conf.d/apache2."
|
||||
elog
|
||||
elog "The apache module configuration file 70_mod_php.conf is"
|
||||
elog "provided (and maintained) by eselect-php."
|
||||
elog
|
||||
fi
|
||||
|
||||
# Create the symlinks for php
|
||||
local m
|
||||
for m in ${SAPIS}; do
|
||||
[[ ${m} == 'embed' ]] && continue;
|
||||
if use $m ; then
|
||||
local ci=$(eselect php show $m)
|
||||
if [[ -z $ci ]]; then
|
||||
eselect php set $m php${SLOT} || die
|
||||
einfo "Switched ${m} to use php:${SLOT}"
|
||||
einfo
|
||||
elif [[ $ci != "php${SLOT}" ]] ; then
|
||||
elog "To switch $m to use php:${SLOT}, run"
|
||||
elog " eselect php set $m php${SLOT}"
|
||||
elog
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
# Remove dead symlinks for SAPIs that were just disabled. For
|
||||
# example, if the user has the cgi SAPI enabled, then he has an
|
||||
# eselect-php symlink for it. If he later reinstalls PHP with
|
||||
# USE="-cgi", that symlink will break. This call to eselect is
|
||||
# supposed to remove that dead link per bug 572436.
|
||||
eselect php cleanup || die
|
||||
|
||||
if ! has "php${SLOT/./-}" ${PHP_TARGETS}; then
|
||||
elog "To build extensions for this version of PHP, you will need to"
|
||||
elog "add php${SLOT/./-} to your PHP_TARGETS USE_EXPAND variable."
|
||||
elog
|
||||
fi
|
||||
|
||||
# Warn about the removal of PHP_INI_VERSION if the user has it set.
|
||||
if [[ -n "${PHP_INI_VERSION}" ]]; then
|
||||
ewarn 'The PHP_INI_VERSION variable has been phased out. You may'
|
||||
ewarn 'remove it from your configuration at your convenience. See'
|
||||
ewarn
|
||||
ewarn ' https://bugs.gentoo.org/611214'
|
||||
ewarn
|
||||
ewarn 'for more information.'
|
||||
fi
|
||||
|
||||
elog "For details on how version slotting works, please see"
|
||||
elog "the wiki:"
|
||||
elog
|
||||
elog " https://wiki.gentoo.org/wiki/PHP"
|
||||
elog
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# This serves two purposes. First, if we have just removed the last
|
||||
# installed version of PHP, then this will remove any dead symlinks
|
||||
# belonging to eselect-php. Second, if a user upgrades slots from
|
||||
# (say) 5.6 to 7.0 and depcleans the old slot, then this will update
|
||||
# his existing symlinks to point to the new 7.0 installation. The
|
||||
# latter is bug 432962.
|
||||
#
|
||||
# Note: the eselect-php package may not be installed at this point,
|
||||
# so we can't die() if this command fails.
|
||||
eselect php cleanup
|
||||
}
|
||||
@@ -1,12 +1,12 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8,9,10} )
|
||||
PYTHON_COMPAT=( python3_{11..14} )
|
||||
|
||||
RUBY_OPTIONAL="yes"
|
||||
USE_RUBY="ruby30"
|
||||
USE_RUBY="ruby33"
|
||||
|
||||
PHP_EXT_NAME="IcePHP"
|
||||
PHP_EXT_INI="yes"
|
||||
@@ -14,7 +14,7 @@ PHP_EXT_ZENDEXT="no"
|
||||
|
||||
PHP_EXT_OPTIONAL_USE=php
|
||||
|
||||
USE_PHP="php8-0 php8-1"
|
||||
USE_PHP="php8-2 php8-3 php8-4"
|
||||
|
||||
inherit php-ext-source-r3 python-r1 ruby-ng toolchain-funcs
|
||||
|
||||
@@ -24,7 +24,7 @@ SRC_URI="https://github.com/zeroc-ice/ice/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
doc? ( https://download.zeroc.com/Ice/$(ver_cut 1-2)/${PN}-3.7.1.pdf )"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/37"
|
||||
KEYWORDS="~amd64 ~arm ~x86"
|
||||
KEYWORDS="amd64 ~arm ~arm64 x86"
|
||||
IUSE="debug doc examples php python ruby test"
|
||||
RESTRICT="test"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
@@ -37,7 +37,7 @@ RDEPEND=">=app-arch/bzip2-1.0.5
|
||||
dev-libs/openssl:0=
|
||||
virtual/libcrypt:=
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
ruby? ( $(ruby_implementation_depend ruby30) )"
|
||||
ruby? ( $(ruby_implementation_depend ruby33) )"
|
||||
DEPEND="${RDEPEND}
|
||||
test? (
|
||||
${PYTHON_DEPS}
|
||||
@@ -51,7 +51,8 @@ S="${WORKDIR}/${P,}"
|
||||
PHP_EXT_S="${S}/php"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-fix-musl-build.patch"
|
||||
"${FILESDIR}/${PN}-3.7.8-fix-musl-build.patch"
|
||||
"${FILESDIR}/${PN}-3.7.8-python3.13.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
@@ -86,12 +87,8 @@ src_prepare() {
|
||||
|
||||
src_configure() {
|
||||
MAKE_RULES=(
|
||||
"prefix=\"${ED}/usr\""
|
||||
"install_docdir=\"${ED}/usr/share/doc/${PF}\""
|
||||
"install_configdir=\"${ED}/usr/share/${P}/config\""
|
||||
"install_mandir=\"${ED}/usr/share/man/man1\""
|
||||
"CONFIGS=shared cpp11-shared"
|
||||
"embedded_runpath_prefix=\"${EPREFIX}/usr\""
|
||||
"new_dtags=yes"
|
||||
"OPTIMIZE=$(usex !debug)"
|
||||
"V=1"
|
||||
)
|
||||
@@ -102,22 +99,22 @@ src_configure() {
|
||||
fi
|
||||
|
||||
if use ruby; then
|
||||
SITERUBY="$(ruby30 -r rbconfig -e 'print RbConfig::CONFIG["sitelibdir"]')"
|
||||
SITERUBYARCH="$(ruby30 -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')"
|
||||
SITERUBY="$(ruby33 -r rbconfig -e 'print RbConfig::CONFIG["sitelibdir"]')"
|
||||
SITERUBYARCH="$(ruby33 -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')"
|
||||
MAKE_RULES_RUBY=(
|
||||
"install_rubydir=\"${ED}/${SITERUBY}\""
|
||||
"install_rubylibdir=\"${ED}/${SITERUBYARCH}\""
|
||||
"install_rubydir=\"${EPREFIX}/${SITERUBY}\""
|
||||
"install_rubylibdir=\"${EPREFIX}/${SITERUBYARCH}\""
|
||||
)
|
||||
|
||||
# make it use ruby30 only
|
||||
# make it use ruby33 only
|
||||
sed -i \
|
||||
-e 's|RUBY ?= ruby|\030|' \
|
||||
-e 's|RUBY ?= ruby|\033|' \
|
||||
ruby/config/Make.rules || die
|
||||
sed -i \
|
||||
-e 's|env ruby|\030|' \
|
||||
-e 's|env ruby|\033|' \
|
||||
ruby/config/s2rb.rb || die
|
||||
sed -i \
|
||||
-e 's|env ruby|\030|' \
|
||||
-e 's|env ruby|\033|' \
|
||||
ruby/scripts/slice2rb || die
|
||||
fi
|
||||
|
||||
@@ -171,8 +168,8 @@ src_test() {
|
||||
PYTHONPATH="${BUILD_DIR}"/python emake -C "${BUILD_DIR}" \
|
||||
"${MAKE_RULES[@]}" \
|
||||
PYTHON="${EPYTHON}" \
|
||||
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
|
||||
install_libdir="\"${D}/$(python_get_sitedir)\"" test
|
||||
install_pythondir="\"$(python_get_sitedir)\"" \
|
||||
install_libdir="\"$(python_get_sitedir)\"" test
|
||||
}
|
||||
local S="${S}/python"
|
||||
python_foreach_impl testing
|
||||
@@ -188,10 +185,17 @@ src_install() {
|
||||
use doc && DOCS+=( "${DISTDIR}/${PN}-3.7.1.pdf" )
|
||||
einstalldocs
|
||||
|
||||
MAKE_RULES_INSTALL=(
|
||||
"prefix=\"${ED}/usr\""
|
||||
"install_docdir=\"${ED}/usr/share/doc/${PF}\""
|
||||
"install_configdir=\"${ED}/usr/share/${P}/config\""
|
||||
"install_mandir=\"${ED}/usr/share/man/man1\""
|
||||
)
|
||||
|
||||
insinto /usr/share/${P}
|
||||
doins -r slice
|
||||
|
||||
emake -C cpp "${MAKE_RULES[@]}" install
|
||||
emake -C cpp "${MAKE_RULES[@]}" "${MAKE_RULES_INSTALL[@]}" install
|
||||
|
||||
if use examples; then
|
||||
docinto examples-cpp
|
||||
@@ -234,6 +238,7 @@ src_install() {
|
||||
|
||||
emake -C "${BUILD_DIR}" \
|
||||
"${MAKE_RULES[@]}" \
|
||||
"${MAKE_RULES_INSTALL[@]}" \
|
||||
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
|
||||
install_libdir="\"${D}/$(python_get_sitedir)\"" \
|
||||
install
|
||||
@@ -244,7 +249,11 @@ src_install() {
|
||||
fi
|
||||
|
||||
if use ruby; then
|
||||
MAKE_RULES_RUBY=(
|
||||
"install_rubydir=\"${ED}/${SITERUBY}\""
|
||||
"install_rubylibdir=\"${ED}/${SITERUBYARCH}\""
|
||||
)
|
||||
dodir "${SITERUBY}"
|
||||
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}" install
|
||||
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_INSTALL[@]}" "${MAKE_RULES_RUBY[@]}" install
|
||||
fi
|
||||
}
|
||||
@@ -1,250 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8,9,10} )
|
||||
|
||||
RUBY_OPTIONAL="yes"
|
||||
USE_RUBY="ruby30"
|
||||
|
||||
PHP_EXT_NAME="IcePHP"
|
||||
PHP_EXT_INI="yes"
|
||||
PHP_EXT_ZENDEXT="no"
|
||||
|
||||
PHP_EXT_OPTIONAL_USE=php
|
||||
|
||||
USE_PHP="php8-0 php8-1"
|
||||
|
||||
inherit php-ext-source-r3 python-r1 ruby-ng toolchain-funcs
|
||||
|
||||
DESCRIPTION="ICE middleware C++ library and generator tools"
|
||||
HOMEPAGE="https://zeroc.com/products/ice"
|
||||
SRC_URI="https://github.com/zeroc-ice/ice/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
doc? ( https://download.zeroc.com/Ice/$(ver_cut 1-2)/${PN}-3.7.1.pdf )"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/37"
|
||||
KEYWORDS="~amd64 ~arm ~x86"
|
||||
IUSE="debug doc examples php python ruby test"
|
||||
RESTRICT="test"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
RDEPEND=">=app-arch/bzip2-1.0.5
|
||||
>=dev-libs/expat-2.0.1
|
||||
dev-libs/libedit
|
||||
dev-cpp/libmcpp
|
||||
dev-db/lmdb:=
|
||||
dev-libs/openssl:0=
|
||||
virtual/libcrypt:=
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
ruby? ( $(ruby_implementation_depend ruby31) )"
|
||||
DEPEND="${RDEPEND}
|
||||
test? (
|
||||
${PYTHON_DEPS}
|
||||
dev-python/passlib[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
# Maintainer notes:
|
||||
# TODO: java bindings
|
||||
|
||||
S="${WORKDIR}/${P,}"
|
||||
PHP_EXT_S="${S}/php"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-fix-musl-build.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
# prevent ruby-ng.eclass from messing with pkg_setup
|
||||
return
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
# prevent ruby-ng.eclass from messing with src_unpack
|
||||
default
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
sed -i \
|
||||
-e 's|-Werror ||g' \
|
||||
config/Make.rules.Linux || die
|
||||
|
||||
# fix for x86 IceBox test
|
||||
sed -i \
|
||||
-e 's|"32"|""|' \
|
||||
scripts/IceBoxUtil.py || die
|
||||
|
||||
if use !test; then
|
||||
# Disable building tests
|
||||
sed -i \
|
||||
-e 's|include \$(top_srcdir)/config/Make.tests.rules||' \
|
||||
config/Make.rules || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
MAKE_RULES=(
|
||||
"prefix=\"${ED}/usr\""
|
||||
"install_docdir=\"${ED}/usr/share/doc/${PF}\""
|
||||
"install_configdir=\"${ED}/usr/share/${P}/config\""
|
||||
"install_mandir=\"${ED}/usr/share/man/man1\""
|
||||
"embedded_runpath_prefix=\"${EPREFIX}/usr\""
|
||||
"new_dtags=yes"
|
||||
"OPTIMIZE=$(usex !debug)"
|
||||
"V=1"
|
||||
)
|
||||
|
||||
if use python; then
|
||||
local S="${S}/python"
|
||||
python_copy_sources
|
||||
fi
|
||||
|
||||
if use ruby; then
|
||||
SITERUBY="$(ruby31 -r rbconfig -e 'print RbConfig::CONFIG["sitelibdir"]')"
|
||||
SITERUBYARCH="$(ruby31 -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')"
|
||||
MAKE_RULES_RUBY=(
|
||||
"install_rubydir=\"${ED}/${SITERUBY}\""
|
||||
"install_rubylibdir=\"${ED}/${SITERUBYARCH}\""
|
||||
)
|
||||
|
||||
# make it use ruby31 only
|
||||
sed -i \
|
||||
-e 's|RUBY ?= ruby|\031|' \
|
||||
ruby/config/Make.rules || die
|
||||
sed -i \
|
||||
-e 's|env ruby|\031|' \
|
||||
ruby/config/s2rb.rb || die
|
||||
sed -i \
|
||||
-e 's|env ruby|\031|' \
|
||||
ruby/scripts/slice2rb || die
|
||||
fi
|
||||
|
||||
use test && python_setup
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Do not remove this export or build will break!
|
||||
tc-export CXX
|
||||
|
||||
emake -C cpp "${MAKE_RULES[@]}"
|
||||
|
||||
if use php; then
|
||||
local i
|
||||
for i in $(php_get_slots); do
|
||||
mkdir -p "${WORKDIR}/${i}" || die
|
||||
cp -r "${PHP_EXT_S}" "${WORKDIR}/${i}/" || die "Failed to copy source ${PHP_EXT_S} to PHP target directory"
|
||||
|
||||
pushd "${WORKDIR}/${i}" >/dev/null || die
|
||||
ln -s "${S}/cpp" || die
|
||||
ln -s "${S}/config" || die
|
||||
ln -s "${S}/slice" || die
|
||||
ln -s "${S}/Makefile" || die
|
||||
|
||||
emake -C php "${MAKE_RULES[@]}" "PHP_CONFIG=\"${EPREFIX}/usr/$(get_libdir)/${i}/bin/php-config\""
|
||||
popd >/dev/null || die
|
||||
done
|
||||
fi
|
||||
|
||||
if use python; then
|
||||
building() {
|
||||
emake -C "${BUILD_DIR}" "${MAKE_RULES[@]}" PYTHON="${EPYTHON}"
|
||||
}
|
||||
local S="${S}/python"
|
||||
python_foreach_impl building
|
||||
fi
|
||||
|
||||
if use ruby; then
|
||||
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}"
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
local -x LD_LIBRARY_PATH="${S}/cpp/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
|
||||
emake -C cpp "${MAKE_RULES[@]}" test
|
||||
|
||||
# php tests require the extension loaded and are therefore skipped
|
||||
|
||||
if use python; then
|
||||
testing() {
|
||||
PYTHONPATH="${BUILD_DIR}"/python emake -C "${BUILD_DIR}" \
|
||||
"${MAKE_RULES[@]}" \
|
||||
PYTHON="${EPYTHON}" \
|
||||
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
|
||||
install_libdir="\"${D}/$(python_get_sitedir)\"" test
|
||||
}
|
||||
local S="${S}/python"
|
||||
python_foreach_impl testing
|
||||
fi
|
||||
|
||||
if use ruby; then
|
||||
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}" test
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local DOCS=( CHANGELOG*.md README.md )
|
||||
use doc && DOCS+=( "${DISTDIR}/${PN}-3.7.1.pdf" )
|
||||
einstalldocs
|
||||
|
||||
insinto /usr/share/${P}
|
||||
doins -r slice
|
||||
|
||||
emake -C cpp "${MAKE_RULES[@]}" install
|
||||
|
||||
if use examples; then
|
||||
docinto examples-cpp
|
||||
dodoc cpp/config/*.cfg
|
||||
docompress -x /usr/share/doc/${PF}/examples-cpp
|
||||
fi
|
||||
|
||||
if use php; then
|
||||
insinto "/usr/share/php/${PN}"
|
||||
|
||||
local i
|
||||
while IFS="" read -d $'\0' -r i; do
|
||||
doins "${i}"
|
||||
done < <(find "${S}/php/lib/" -name '*.php' -print0)
|
||||
|
||||
pushd "${ED}/usr/share/${P}/slice" >/dev/null || die
|
||||
|
||||
local -x LD_LIBRARY_PATH="${ED}/usr/$(get_libdir):${LD_LIBRARY_PATH}"
|
||||
for i in *; do
|
||||
mkdir -p "${ED}/usr/share/php/${i}" || die
|
||||
"${ED}"/usr/bin/slice2php \
|
||||
-I"${ED}/usr/share/${P}/slice/" --all \
|
||||
--output-dir "${ED}/usr/share/php/${i}" \
|
||||
--ice "${ED}/usr/share/${P}/slice/${i}"/*
|
||||
done
|
||||
|
||||
for i in $(php_get_slots); do
|
||||
php_init_slot_env "${i}"
|
||||
insinto "${EXT_DIR}"
|
||||
newins "php/lib/ice.so" "${PHP_EXT_NAME}.so"
|
||||
done
|
||||
php-ext-source-r3_createinifiles
|
||||
|
||||
popd >/dev/null || die
|
||||
fi
|
||||
|
||||
if use python; then
|
||||
installation() {
|
||||
mkdir -p "${D}/$(python_get_sitedir)" || die
|
||||
|
||||
emake -C "${BUILD_DIR}" \
|
||||
"${MAKE_RULES[@]}" \
|
||||
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
|
||||
install_libdir="\"${D}/$(python_get_sitedir)\"" \
|
||||
install
|
||||
python_optimize
|
||||
}
|
||||
local S="${S}/python"
|
||||
python_foreach_impl installation
|
||||
fi
|
||||
|
||||
if use ruby; then
|
||||
dodir "${SITERUBY}"
|
||||
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}" install
|
||||
fi
|
||||
}
|
||||
@@ -1,250 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8,9,10} )
|
||||
|
||||
RUBY_OPTIONAL="yes"
|
||||
USE_RUBY="ruby27"
|
||||
|
||||
PHP_EXT_NAME="IcePHP"
|
||||
PHP_EXT_INI="yes"
|
||||
PHP_EXT_ZENDEXT="no"
|
||||
|
||||
PHP_EXT_OPTIONAL_USE=php
|
||||
|
||||
USE_PHP="php8-0 php8-1"
|
||||
|
||||
inherit php-ext-source-r3 python-r1 ruby-ng toolchain-funcs
|
||||
|
||||
DESCRIPTION="ICE middleware C++ library and generator tools"
|
||||
HOMEPAGE="https://zeroc.com/products/ice"
|
||||
SRC_URI="https://github.com/zeroc-ice/ice/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
doc? ( https://download.zeroc.com/Ice/$(ver_cut 1-2)/${PN}-3.7.1.pdf )"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/37"
|
||||
KEYWORDS="~amd64 ~arm ~x86"
|
||||
IUSE="debug doc examples php python ruby test"
|
||||
RESTRICT="test"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
RDEPEND=">=app-arch/bzip2-1.0.5
|
||||
>=dev-libs/expat-2.0.1
|
||||
dev-libs/libedit
|
||||
dev-cpp/libmcpp
|
||||
dev-db/lmdb:=
|
||||
dev-libs/openssl:0=
|
||||
virtual/libcrypt:=
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
ruby? ( $(ruby_implementation_depend ruby27) )"
|
||||
DEPEND="${RDEPEND}
|
||||
test? (
|
||||
${PYTHON_DEPS}
|
||||
dev-python/passlib[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
# Maintainer notes:
|
||||
# TODO: java bindings
|
||||
|
||||
S="${WORKDIR}/${P,}"
|
||||
PHP_EXT_S="${S}/php"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-fix-musl-build.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
# prevent ruby-ng.eclass from messing with pkg_setup
|
||||
return
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
# prevent ruby-ng.eclass from messing with src_unpack
|
||||
default
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
sed -i \
|
||||
-e 's|-Werror ||g' \
|
||||
config/Make.rules.Linux || die
|
||||
|
||||
# fix for x86 IceBox test
|
||||
sed -i \
|
||||
-e 's|"32"|""|' \
|
||||
scripts/IceBoxUtil.py || die
|
||||
|
||||
if use !test; then
|
||||
# Disable building tests
|
||||
sed -i \
|
||||
-e 's|include \$(top_srcdir)/config/Make.tests.rules||' \
|
||||
config/Make.rules || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
MAKE_RULES=(
|
||||
"prefix=\"${ED}/usr\""
|
||||
"install_docdir=\"${ED}/usr/share/doc/${PF}\""
|
||||
"install_configdir=\"${ED}/usr/share/${P}/config\""
|
||||
"install_mandir=\"${ED}/usr/share/man/man1\""
|
||||
"embedded_runpath_prefix=\"${EPREFIX}/usr\""
|
||||
"new_dtags=yes"
|
||||
"OPTIMIZE=$(usex !debug)"
|
||||
"V=1"
|
||||
)
|
||||
|
||||
if use python; then
|
||||
local S="${S}/python"
|
||||
python_copy_sources
|
||||
fi
|
||||
|
||||
if use ruby; then
|
||||
SITERUBY="$(ruby27 -r rbconfig -e 'print RbConfig::CONFIG["sitelibdir"]')"
|
||||
SITERUBYARCH="$(ruby27 -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')"
|
||||
MAKE_RULES_RUBY=(
|
||||
"install_rubydir=\"${ED}/${SITERUBY}\""
|
||||
"install_rubylibdir=\"${ED}/${SITERUBYARCH}\""
|
||||
)
|
||||
|
||||
# make it use ruby27 only
|
||||
sed -i \
|
||||
-e 's|RUBY ?= ruby|\027|' \
|
||||
ruby/config/Make.rules || die
|
||||
sed -i \
|
||||
-e 's|env ruby|\027|' \
|
||||
ruby/config/s2rb.rb || die
|
||||
sed -i \
|
||||
-e 's|env ruby|\027|' \
|
||||
ruby/scripts/slice2rb || die
|
||||
fi
|
||||
|
||||
use test && python_setup
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Do not remove this export or build will break!
|
||||
tc-export CXX
|
||||
|
||||
emake -C cpp "${MAKE_RULES[@]}"
|
||||
|
||||
if use php; then
|
||||
local i
|
||||
for i in $(php_get_slots); do
|
||||
mkdir -p "${WORKDIR}/${i}" || die
|
||||
cp -r "${PHP_EXT_S}" "${WORKDIR}/${i}/" || die "Failed to copy source ${PHP_EXT_S} to PHP target directory"
|
||||
|
||||
pushd "${WORKDIR}/${i}" >/dev/null || die
|
||||
ln -s "${S}/cpp" || die
|
||||
ln -s "${S}/config" || die
|
||||
ln -s "${S}/slice" || die
|
||||
ln -s "${S}/Makefile" || die
|
||||
|
||||
emake -C php "${MAKE_RULES[@]}" "PHP_CONFIG=\"${EPREFIX}/usr/$(get_libdir)/${i}/bin/php-config\""
|
||||
popd >/dev/null || die
|
||||
done
|
||||
fi
|
||||
|
||||
if use python; then
|
||||
building() {
|
||||
emake -C "${BUILD_DIR}" "${MAKE_RULES[@]}" PYTHON="${EPYTHON}"
|
||||
}
|
||||
local S="${S}/python"
|
||||
python_foreach_impl building
|
||||
fi
|
||||
|
||||
if use ruby; then
|
||||
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}"
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
local -x LD_LIBRARY_PATH="${S}/cpp/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
|
||||
emake -C cpp "${MAKE_RULES[@]}" test
|
||||
|
||||
# php tests require the extension loaded and are therefore skipped
|
||||
|
||||
if use python; then
|
||||
testing() {
|
||||
PYTHONPATH="${BUILD_DIR}"/python emake -C "${BUILD_DIR}" \
|
||||
"${MAKE_RULES[@]}" \
|
||||
PYTHON="${EPYTHON}" \
|
||||
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
|
||||
install_libdir="\"${D}/$(python_get_sitedir)\"" test
|
||||
}
|
||||
local S="${S}/python"
|
||||
python_foreach_impl testing
|
||||
fi
|
||||
|
||||
if use ruby; then
|
||||
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}" test
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local DOCS=( CHANGELOG*.md README.md )
|
||||
use doc && DOCS+=( "${DISTDIR}/${PN}-3.7.1.pdf" )
|
||||
einstalldocs
|
||||
|
||||
insinto /usr/share/${P}
|
||||
doins -r slice
|
||||
|
||||
emake -C cpp "${MAKE_RULES[@]}" install
|
||||
|
||||
if use examples; then
|
||||
docinto examples-cpp
|
||||
dodoc cpp/config/*.cfg
|
||||
docompress -x /usr/share/doc/${PF}/examples-cpp
|
||||
fi
|
||||
|
||||
if use php; then
|
||||
insinto "/usr/share/php/${PN}"
|
||||
|
||||
local i
|
||||
while IFS="" read -d $'\0' -r i; do
|
||||
doins "${i}"
|
||||
done < <(find "${S}/php/lib/" -name '*.php' -print0)
|
||||
|
||||
pushd "${ED}/usr/share/${P}/slice" >/dev/null || die
|
||||
|
||||
local -x LD_LIBRARY_PATH="${ED}/usr/$(get_libdir):${LD_LIBRARY_PATH}"
|
||||
for i in *; do
|
||||
mkdir -p "${ED}/usr/share/php/${i}" || die
|
||||
"${ED}"/usr/bin/slice2php \
|
||||
-I"${ED}/usr/share/${P}/slice/" --all \
|
||||
--output-dir "${ED}/usr/share/php/${i}" \
|
||||
--ice "${ED}/usr/share/${P}/slice/${i}"/*
|
||||
done
|
||||
|
||||
for i in $(php_get_slots); do
|
||||
php_init_slot_env "${i}"
|
||||
insinto "${EXT_DIR}"
|
||||
newins "php/lib/ice.so" "${PHP_EXT_NAME}.so"
|
||||
done
|
||||
php-ext-source-r3_createinifiles
|
||||
|
||||
popd >/dev/null || die
|
||||
fi
|
||||
|
||||
if use python; then
|
||||
installation() {
|
||||
mkdir -p "${D}/$(python_get_sitedir)" || die
|
||||
|
||||
emake -C "${BUILD_DIR}" \
|
||||
"${MAKE_RULES[@]}" \
|
||||
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
|
||||
install_libdir="\"${D}/$(python_get_sitedir)\"" \
|
||||
install
|
||||
python_optimize
|
||||
}
|
||||
local S="${S}/python"
|
||||
python_foreach_impl installation
|
||||
fi
|
||||
|
||||
if use ruby; then
|
||||
dodir "${SITERUBY}"
|
||||
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}" install
|
||||
fi
|
||||
}
|
||||
@@ -1,12 +1,12 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8,9,10} )
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
RUBY_OPTIONAL="yes"
|
||||
USE_RUBY="ruby31"
|
||||
USE_RUBY="ruby32"
|
||||
|
||||
PHP_EXT_NAME="IcePHP"
|
||||
PHP_EXT_INI="yes"
|
||||
@@ -14,7 +14,7 @@ PHP_EXT_ZENDEXT="no"
|
||||
|
||||
PHP_EXT_OPTIONAL_USE=php
|
||||
|
||||
USE_PHP="php8-0 php8-1"
|
||||
USE_PHP="php8-1 php8-2 php8-3"
|
||||
|
||||
EGIT_REPO_URI="https://github.com/zeroc-ice/ice.git"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}"
|
||||
@@ -39,7 +39,7 @@ RDEPEND=">=app-arch/bzip2-1.0.5
|
||||
dev-libs/openssl:0=
|
||||
virtual/libcrypt:=
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
ruby? ( $(ruby_implementation_depend ruby31) )"
|
||||
ruby? ( $(ruby_implementation_depend ruby32) )"
|
||||
DEPEND="${RDEPEND}
|
||||
test? (
|
||||
${PYTHON_DEPS}
|
||||
@@ -53,7 +53,7 @@ S="${WORKDIR}/${PN}"
|
||||
PHP_EXT_S="${S}/php"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-3.7.7-fix-musl-build.patch"
|
||||
"${FILESDIR}/${PN}-3.7.8-fix-musl-build.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
@@ -88,12 +88,7 @@ src_prepare() {
|
||||
|
||||
src_configure() {
|
||||
MAKE_RULES=(
|
||||
"prefix=\"${ED}/usr\""
|
||||
"install_docdir=\"${ED}/usr/share/doc/${PF}\""
|
||||
"install_configdir=\"${ED}/usr/share/${P}/config\""
|
||||
"install_mandir=\"${ED}/usr/share/man/man1\""
|
||||
"embedded_runpath_prefix=\"${EPREFIX}/usr\""
|
||||
"new_dtags=yes"
|
||||
"OPTIMIZE=$(usex !debug)"
|
||||
"V=1"
|
||||
)
|
||||
@@ -104,22 +99,22 @@ src_configure() {
|
||||
fi
|
||||
|
||||
if use ruby; then
|
||||
SITERUBY="$(ruby31 -r rbconfig -e 'print RbConfig::CONFIG["sitelibdir"]')"
|
||||
SITERUBYARCH="$(ruby31 -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')"
|
||||
SITERUBY="$(ruby32 -r rbconfig -e 'print RbConfig::CONFIG["sitelibdir"]')"
|
||||
SITERUBYARCH="$(ruby32 -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')"
|
||||
MAKE_RULES_RUBY=(
|
||||
"install_rubydir=\"${ED}/${SITERUBY}\""
|
||||
"install_rubylibdir=\"${ED}/${SITERUBYARCH}\""
|
||||
"install_rubydir=\"${EPREFIX}/${SITERUBY}\""
|
||||
"install_rubylibdir=\"${EPREFIX}/${SITERUBYARCH}\""
|
||||
)
|
||||
|
||||
# make it use ruby31 only
|
||||
# make it use ruby32 only
|
||||
sed -i \
|
||||
-e 's|RUBY ?= ruby|\031|' \
|
||||
-e 's|RUBY ?= ruby|\032|' \
|
||||
ruby/config/Make.rules || die
|
||||
sed -i \
|
||||
-e 's|env ruby|\031|' \
|
||||
-e 's|env ruby|\032|' \
|
||||
ruby/config/s2rb.rb || die
|
||||
sed -i \
|
||||
-e 's|env ruby|\031|' \
|
||||
-e 's|env ruby|\032|' \
|
||||
ruby/scripts/slice2rb || die
|
||||
fi
|
||||
|
||||
@@ -173,8 +168,8 @@ src_test() {
|
||||
PYTHONPATH="${BUILD_DIR}"/python emake -C "${BUILD_DIR}" \
|
||||
"${MAKE_RULES[@]}" \
|
||||
PYTHON="${EPYTHON}" \
|
||||
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
|
||||
install_libdir="\"${D}/$(python_get_sitedir)\"" test
|
||||
install_pythondir="\"$(python_get_sitedir)\"" \
|
||||
install_libdir="\"$(python_get_sitedir)\"" test
|
||||
}
|
||||
local S="${S}/python"
|
||||
python_foreach_impl testing
|
||||
@@ -189,10 +184,17 @@ src_install() {
|
||||
local DOCS=( CHANGELOG*.md README.md )
|
||||
einstalldocs
|
||||
|
||||
MAKE_RULES_INSTALL=(
|
||||
"prefix=\"${ED}/usr\""
|
||||
"install_docdir=\"${ED}/usr/share/doc/${PF}\""
|
||||
"install_configdir=\"${ED}/usr/share/${P}/config\""
|
||||
"install_mandir=\"${ED}/usr/share/man/man1\""
|
||||
)
|
||||
|
||||
insinto /usr/share/${P}
|
||||
doins -r slice
|
||||
|
||||
emake -C cpp "${MAKE_RULES[@]}" install
|
||||
emake -C cpp "${MAKE_RULES[@]}" "${MAKE_RULES_INSTALL[@]}" install
|
||||
|
||||
if use examples; then
|
||||
docinto examples-cpp
|
||||
@@ -235,6 +237,7 @@ src_install() {
|
||||
|
||||
emake -C "${BUILD_DIR}" \
|
||||
"${MAKE_RULES[@]}" \
|
||||
"${MAKE_RULES_INSTALL[@]}" \
|
||||
install_pythondir="\"${D}/$(python_get_sitedir)\"" \
|
||||
install_libdir="\"${D}/$(python_get_sitedir)\"" \
|
||||
install
|
||||
@@ -245,7 +248,11 @@ src_install() {
|
||||
fi
|
||||
|
||||
if use ruby; then
|
||||
MAKE_RULES_RUBY=(
|
||||
"install_rubydir=\"${ED}/${SITERUBY}\""
|
||||
"install_rubylibdir=\"${ED}/${SITERUBYARCH}\""
|
||||
)
|
||||
dodir "${SITERUBY}"
|
||||
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_RUBY[@]}" install
|
||||
emake -C ruby "${MAKE_RULES[@]}" "${MAKE_RULES_INSTALL[@]}" "${MAKE_RULES_RUBY[@]}" install
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
DIST Ice-3.7.1.pdf 9351739 BLAKE2B 527f2c37aea19aedbfc580efd93ce4fae2eb7264342bb485822593e2da6fb75a61eea2b1a46187898af07f138d10bf9a213d0b2a0685c18cd1d4c624709a935b SHA512 199b59f14b87b2896ba970bf5aa32f6fd858cbd3fed18eac93acafe4e296db1361ca2d2000ed49f3390ed66c1d4ff8c1fcd3f14ab8197d7804c87fce422c8486
|
||||
DIST Ice-3.7.7.tar.gz 10848321 BLAKE2B 51c695e9c9d75293122e3bc914662c264b4c354efe085697e3d5a8b1c89abedc1d34a809b1767a0f6f64f22c086a19d71bdd9622e7bca7d0184b5b53f0a7fd1a SHA512 73c3a2bb14c9e145383e4026206edd3e03b29c60a33af628611bfdab71d69a3aed108ce4e6cbfd67eb852560110e3495b4bd238c8cdf0de9d1f8e2f1088513ee
|
||||
@@ -1,3 +1,5 @@
|
||||
https://github.com/void-linux/void-packages/blob/master/srcpkgs/Ice/patches/fix-musl.patch
|
||||
|
||||
--- a/cpp/src/IceUtil/UtilException.cpp
|
||||
+++ b/cpp/src/IceUtil/UtilException.cpp
|
||||
@@ -43,7 +43,7 @@
|
||||
96
dev-libs/Ice/files/Ice-3.7.8-python3.13.patch
Normal file
96
dev-libs/Ice/files/Ice-3.7.8-python3.13.patch
Normal file
@@ -0,0 +1,96 @@
|
||||
Description: Python 3.13 build fixes
|
||||
Author: Jose <jose@zeroc.com>
|
||||
Origin: backport
|
||||
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1092441
|
||||
Applied-Upstream: https://github.com/zeroc-ice/ice/commit/019976e2db4899a5ac30f497aa45b51335b024ec
|
||||
Reviewed-by: Simon Quigley <tsimonq2@debian.org>
|
||||
Last-Update: 2025-02-24
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
--- a/python/modules/IcePy/Types.cpp
|
||||
+++ b/python/modules/IcePy/Types.cpp
|
||||
@@ -455,14 +455,7 @@ IcePy::StreamUtil::setSlicedDataMember(P
|
||||
assert(_sliceInfoType);
|
||||
}
|
||||
|
||||
- IcePy::PyObjectHandle args = PyTuple_New(0);
|
||||
- if(!args.get())
|
||||
- {
|
||||
- assert(PyErr_Occurred());
|
||||
- throw AbortMarshaling();
|
||||
- }
|
||||
-
|
||||
- PyObjectHandle sd = PyEval_CallObject(_slicedDataType, args.get());
|
||||
+ PyObjectHandle sd{PyObject_CallObject(_slicedDataType, nullptr)};
|
||||
if(!sd.get())
|
||||
{
|
||||
assert(PyErr_Occurred());
|
||||
@@ -488,7 +481,7 @@ IcePy::StreamUtil::setSlicedDataMember(P
|
||||
int i = 0;
|
||||
for(vector<Ice::SliceInfoPtr>::const_iterator p = slicedData->slices.begin(); p != slicedData->slices.end(); ++p)
|
||||
{
|
||||
- PyObjectHandle slice = PyEval_CallObject(_sliceInfoType, args.get());
|
||||
+ PyObjectHandle slice{PyObject_CallObject(_sliceInfoType, nullptr)};
|
||||
if(!slice.get())
|
||||
{
|
||||
assert(PyErr_Occurred());
|
||||
@@ -1669,18 +1662,17 @@ IcePy::SequenceInfo::marshal(PyObject* p
|
||||
Py_ssize_t sz = 0;
|
||||
if(p != Py_None)
|
||||
{
|
||||
- const void* buf = 0;
|
||||
- if(PyObject_AsReadBuffer(p, &buf, &sz) == 0)
|
||||
+ Py_buffer pybuf;
|
||||
+ if (pi && PyObject_GetBuffer(p, &pybuf, PyBUF_SIMPLE | PyBUF_FORMAT) == 0)
|
||||
{
|
||||
- if(pi->kind == PrimitiveInfo::KindString)
|
||||
- {
|
||||
- PyErr_Format(PyExc_ValueError, STRCAST("expected sequence value"));
|
||||
- throw AbortMarshaling();
|
||||
- }
|
||||
+ // Strings are handled as variable length types above.
|
||||
+ assert(pi->kind != PrimitiveInfo::KindString);
|
||||
+ sz = pybuf.len;
|
||||
+ PyBuffer_Release(&pybuf);
|
||||
}
|
||||
else
|
||||
{
|
||||
- PyErr_Clear(); // PyObject_AsReadBuffer sets an exception on failure.
|
||||
+ PyErr_Clear(); // PyObject_GetBuffer sets an exception on failure.
|
||||
|
||||
PyObjectHandle fs;
|
||||
if(pi)
|
||||
@@ -1906,7 +1898,7 @@ IcePy::SequenceInfo::marshalPrimitiveSeq
|
||||
if(pi->kind != PrimitiveInfo::KindString)
|
||||
{
|
||||
//
|
||||
- // With Python 3 and greater we marshal sequences of pritive types using the new
|
||||
+ // With Python 3 and greater we marshal sequences of primitive types using the new
|
||||
// buffer protocol when possible, for older versions we use the old buffer protocol.
|
||||
//
|
||||
#if PY_VERSION_HEX >= 0x03000000
|
||||
@@ -2030,7 +2022,7 @@ IcePy::SequenceInfo::marshalPrimitiveSeq
|
||||
}
|
||||
else
|
||||
{
|
||||
- PyErr_Clear(); // PyObject_GetBuffer/PyObject_AsReadBuffer sets an exception on failure.
|
||||
+ PyErr_Clear(); // PyObject_GetBuffer sets an exception on failure.
|
||||
}
|
||||
}
|
||||
|
||||
--- a/python/modules/IcePy/Util.cpp
|
||||
+++ b/python/modules/IcePy/Util.cpp
|
||||
@@ -729,12 +729,7 @@ PyObject*
|
||||
IcePy::createExceptionInstance(PyObject* type)
|
||||
{
|
||||
assert(PyExceptionClass_Check(type));
|
||||
- IcePy::PyObjectHandle args = PyTuple_New(0);
|
||||
- if(!args.get())
|
||||
- {
|
||||
- return 0;
|
||||
- }
|
||||
- return PyEval_CallObject(type, args.get());
|
||||
+ return PyObject_CallObject(type, nullptr);
|
||||
}
|
||||
|
||||
static void
|
||||
3
dev-libs/libbson/Manifest
Normal file
3
dev-libs/libbson/Manifest
Normal file
@@ -0,0 +1,3 @@
|
||||
DIST libbson-1.30.6-docs.tar.xz 40372 BLAKE2B d1e04239bb2ff123b72060fb51892b5354908f7d452789f8bed269ca3d9f417758b6a2c7f993b631fe08162cbc679c34551f53ccb767e0d180fc5f46926e3029 SHA512 00fd68b4549f1fb20ee4828e42fbcf620374615bff9c445af66f0417b7c49ef00451b73e1c712e23bcdc84414d41cf9a55e68c0f9c983290d2a7ed91cb283f0a
|
||||
DIST mongo-c-driver-1.30.6.tar.gz 7450898 BLAKE2B 242b41fed6b6155a35cb8dc696bc3d246795aa6df77c1eb2eb58c16fb603e4bcdf01cbdb382f68c4ede6d29186cdbfebab3fc2262b2acd9994f5f936ffc30e34 SHA512 3351fd784dcaffd5454776e8ebceae444634b525aee63ff1dc45a9f3a0ab5d0716b990bb0a0960553f76e64ac99b18a1f88bec6225f5c000aee48688b9d6d318
|
||||
DIST mongo-c-driver-1.30.6.tar.gz.asc 833 BLAKE2B 2be5cf50f50191a74213ae7400793a1b4142f34b4ef589eff90db4a00b66514142fe510e941b50a304590cdec256f6020ff1f8220c25fd6aa63444e24dd817c0 SHA512 93c82ba89d4d6741fbe3a92dc36c6fbca16c6d43e2d874261ab38736cba4d74dc6d20808aae9afe8e112a04a65ae27f301d45c9ab9d585f258e7f7fea219f1a1
|
||||
178
dev-libs/libbson/files/libbson-1.30.6-cmake4.patch
Normal file
178
dev-libs/libbson/files/libbson-1.30.6-cmake4.patch
Normal file
@@ -0,0 +1,178 @@
|
||||
https://jira.mongodb.org/browse/CDRIVER-6059
|
||||
https://github.com/mongodb/mongo-c-driver/pull/2066
|
||||
https://github.com/mongodb/mongo-c-driver/commit/e8ea70127f7bbbb4bcdb450026f059d8459b98db
|
||||
|
||||
Removed non cmake changes
|
||||
|
||||
From e8ea70127f7bbbb4bcdb450026f059d8459b98db Mon Sep 17 00:00:00 2001
|
||||
From: Ezra Chung <88335979+eramongodb@users.noreply.github.com>
|
||||
Date: Tue, 22 Jul 2025 15:47:09 -0500
|
||||
Subject: [PATCH] CDRIVER-6059 Set CMake max policy version to 4.0 (#2066)
|
||||
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-cmake_minimum_required (VERSION 3.15)
|
||||
+cmake_minimum_required (VERSION 3.15...4.0)
|
||||
|
||||
list (INSERT CMAKE_MODULE_PATH 0 "${CMAKE_CURRENT_LIST_DIR}/build/cmake")
|
||||
# Defines BUILD_VERSION, which we use throughout:
|
||||
@@ -402,11 +402,6 @@ set (CMAKE_INSTALL_RPATH_USE_LINK_PATH ON)
|
||||
# Install libs with names like @rpath/libmongoc-1.0.0.dylib, not bare names.
|
||||
set (CMAKE_MACOSX_RPATH ON)
|
||||
|
||||
-# https://cmake.org/cmake/help/v3.11/policy/CMP0042.html
|
||||
-# Enable a CMake 3.0+ policy that sets CMAKE_MACOSX_RPATH by default, and
|
||||
-# silence a CMake 3.11 warning that the old behavior is deprecated.
|
||||
-cmake_policy (SET CMP0042 NEW)
|
||||
-
|
||||
# By default, ensure conformance with a minimum C standard.
|
||||
# Required extensions to the language (i.e. POSIX) are (re)enabled further below.
|
||||
if (NOT DEFINED CMAKE_C_STANDARD)
|
||||
--- a/build/cmake/GenerateUninstaller.cmake
|
||||
+++ b/build/cmake/GenerateUninstaller.cmake
|
||||
@@ -1,5 +1,3 @@
|
||||
-cmake_policy(VERSION 3.15)
|
||||
-
|
||||
if(NOT CMAKE_SCRIPT_MODE_FILE)
|
||||
# We are being included from within a project, so we should generate the install rules
|
||||
# The script name is "uninstall" by default:
|
||||
--- a/src/libbson/CMakeLists.txt
|
||||
+++ b/src/libbson/CMakeLists.txt
|
||||
@@ -11,7 +11,7 @@
|
||||
# 888
|
||||
# 888
|
||||
|
||||
-cmake_minimum_required (VERSION 3.15)
|
||||
+cmake_minimum_required (VERSION 3.15...4.0)
|
||||
|
||||
project (libbson
|
||||
LANGUAGES C
|
||||
--- a/src/libbson/examples/cmake-deprecated/find_package/CMakeLists.txt
|
||||
+++ b/src/libbson/examples/cmake-deprecated/find_package/CMakeLists.txt
|
||||
@@ -15,7 +15,7 @@
|
||||
# Demonstrates how to use the CMake 'find_package' mechanism to locate
|
||||
# and build against libbson.
|
||||
|
||||
-cmake_minimum_required (VERSION 2.8)
|
||||
+cmake_minimum_required (VERSION 3.15)
|
||||
|
||||
project (hello_bson LANGUAGES C)
|
||||
|
||||
--- a/src/libbson/examples/cmake-deprecated/find_package_static/CMakeLists.txt
|
||||
+++ b/src/libbson/examples/cmake-deprecated/find_package_static/CMakeLists.txt
|
||||
@@ -15,7 +15,7 @@
|
||||
# Demonstrates how to use the CMake 'find_package' mechanism to locate
|
||||
# and build against libbson.
|
||||
|
||||
-cmake_minimum_required (VERSION 2.8)
|
||||
+cmake_minimum_required (VERSION 3.15)
|
||||
|
||||
project (hello_bson LANGUAGES C)
|
||||
|
||||
--- a/src/libbson/examples/cmake/find_package/CMakeLists.txt
|
||||
+++ b/src/libbson/examples/cmake/find_package/CMakeLists.txt
|
||||
@@ -15,7 +15,7 @@
|
||||
# Demonstrates how to use the CMake 'find_package' mechanism to locate
|
||||
# and build against libbson.
|
||||
|
||||
-cmake_minimum_required (VERSION 3.0)
|
||||
+cmake_minimum_required (VERSION 3.15...4.0)
|
||||
|
||||
project (hello_bson LANGUAGES C)
|
||||
|
||||
--- a/src/libbson/examples/cmake/find_package_static/CMakeLists.txt
|
||||
+++ b/src/libbson/examples/cmake/find_package_static/CMakeLists.txt
|
||||
@@ -15,7 +15,7 @@
|
||||
# Demonstrates how to use the CMake 'find_package' mechanism to locate
|
||||
# and build against libbson.
|
||||
|
||||
-cmake_minimum_required (VERSION 2.8)
|
||||
+cmake_minimum_required (VERSION 3.15...4.0)
|
||||
|
||||
project (hello_bson LANGUAGES C)
|
||||
|
||||
--- a/src/libmongoc/CMakeLists.txt
|
||||
+++ b/src/libmongoc/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-cmake_minimum_required (VERSION 3.15)
|
||||
+cmake_minimum_required (VERSION 3.15...4.0)
|
||||
|
||||
project (libmongoc
|
||||
LANGUAGES C
|
||||
--- a/src/libmongoc/examples/cmake-deprecated/find_package/CMakeLists.txt
|
||||
+++ b/src/libmongoc/examples/cmake-deprecated/find_package/CMakeLists.txt
|
||||
@@ -15,7 +15,7 @@
|
||||
# Demonstrates how to use the CMake 'find_package' mechanism to locate
|
||||
# and build against libmongoc.
|
||||
|
||||
-cmake_minimum_required (VERSION 2.8)
|
||||
+cmake_minimum_required (VERSION 3.15)
|
||||
|
||||
project (hello_mongoc LANGUAGES C)
|
||||
|
||||
--- a/src/libmongoc/examples/cmake-deprecated/find_package_static/CMakeLists.txt
|
||||
+++ b/src/libmongoc/examples/cmake-deprecated/find_package_static/CMakeLists.txt
|
||||
@@ -15,7 +15,7 @@
|
||||
# Demonstrates how to use the CMake 'find_package' mechanism to locate
|
||||
# and build against libmongoc.
|
||||
|
||||
-cmake_minimum_required (VERSION 2.8)
|
||||
+cmake_minimum_required (VERSION 3.15)
|
||||
|
||||
project (hello_mongoc LANGUAGES C)
|
||||
|
||||
--- a/src/libmongoc/examples/cmake/find_package/CMakeLists.txt
|
||||
+++ b/src/libmongoc/examples/cmake/find_package/CMakeLists.txt
|
||||
@@ -15,7 +15,7 @@
|
||||
# Demonstrates how to use the CMake 'find_package' mechanism to locate
|
||||
# and build against libmongoc.
|
||||
|
||||
-cmake_minimum_required (VERSION 3.0)
|
||||
+cmake_minimum_required (VERSION 3.15...4.0)
|
||||
|
||||
project (hello_mongoc LANGUAGES C)
|
||||
|
||||
--- a/src/libmongoc/examples/cmake/find_package_static/CMakeLists.txt
|
||||
+++ b/src/libmongoc/examples/cmake/find_package_static/CMakeLists.txt
|
||||
@@ -15,7 +15,7 @@
|
||||
# Demonstrates how to use the CMake 'find_package' mechanism to locate
|
||||
# and build against libmongoc.
|
||||
|
||||
-cmake_minimum_required (VERSION 3.0)
|
||||
+cmake_minimum_required (VERSION 3.15...4.0)
|
||||
|
||||
project (hello_mongoc LANGUAGES C)
|
||||
|
||||
--- a/src/libmongoc/examples/cmake/vcpkg/CMakeLists.txt
|
||||
+++ b/src/libmongoc/examples/cmake/vcpkg/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-cmake_minimum_required(VERSION 3.15)
|
||||
+cmake_minimum_required (VERSION 3.15...4.0)
|
||||
project(vcpkg-example-project)
|
||||
|
||||
find_package(mongoc CONFIG REQUIRED)
|
||||
--- a/src/libmongoc/tests/cmake-import/CMakeLists.txt
|
||||
+++ b/src/libmongoc/tests/cmake-import/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-cmake_minimum_required(VERSION 3.15)
|
||||
+cmake_minimum_required (VERSION 3.15...4.0)
|
||||
project(ImportTestProject)
|
||||
|
||||
include(CTest)
|
||||
--- a/src/zlib-1.3.1/CMakeLists.txt
|
||||
+++ b/src/zlib-1.3.1/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-cmake_minimum_required(VERSION 2.4.4...3.15.0)
|
||||
+cmake_minimum_required(VERSION 3.15.0)
|
||||
set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS ON)
|
||||
|
||||
project(zlib C)
|
||||
--- a/src/kms-message/CMakeLists.txt
|
||||
+++ b/src/kms-message/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-cmake_minimum_required (VERSION 3.5)
|
||||
+cmake_minimum_required (VERSION 3.15...4.0)
|
||||
project (kms_message
|
||||
VERSION 0.0.1
|
||||
LANGUAGES C
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user