summaryrefslogtreecommitdiff
path: root/dev-db
diff options
context:
space:
mode:
Diffstat (limited to 'dev-db')
-rw-r--r--dev-db/Manifest.gzbin16592 -> 16615 bytes
-rw-r--r--dev-db/citus/Manifest2
-rw-r--r--dev-db/citus/citus-12.1.3.ebuild35
-rw-r--r--dev-db/etcd/Manifest2
-rw-r--r--dev-db/etcd/etcd-3.5.12.ebuild2
-rw-r--r--dev-db/litecli/Manifest2
-rw-r--r--dev-db/litecli/litecli-1.10.1.ebuild34
-rw-r--r--dev-db/lmdb/Manifest2
-rw-r--r--dev-db/lmdb/lmdb-0.9.32.ebuild66
-rw-r--r--dev-db/mongodb/Manifest7
-rw-r--r--dev-db/mongodb/files/mongodb-4.4.29-no-enterprise.patch24
-rw-r--r--dev-db/mongodb/metadata.xml3
-rw-r--r--dev-db/mongodb/mongodb-4.4.29.ebuild188
-rw-r--r--dev-db/mongodb/mongodb-5.0.26.ebuild206
-rw-r--r--dev-db/pgpool2/Manifest4
-rw-r--r--dev-db/pgpool2/pgpool2-4.3.2.ebuild91
-rw-r--r--dev-db/pgpool2/pgpool2-4.3.7.ebuild91
-rw-r--r--dev-db/postgresql/Manifest32
-rw-r--r--dev-db/postgresql/postgresql-12.17.ebuild452
-rw-r--r--dev-db/postgresql/postgresql-12.19-r2.ebuild (renamed from dev-db/postgresql/postgresql-12.18.ebuild)24
-rw-r--r--dev-db/postgresql/postgresql-13.13.ebuild464
-rw-r--r--dev-db/postgresql/postgresql-13.15-r2.ebuild (renamed from dev-db/postgresql/postgresql-13.14.ebuild)24
-rw-r--r--dev-db/postgresql/postgresql-14.10.ebuild464
-rw-r--r--dev-db/postgresql/postgresql-14.12-r2.ebuild (renamed from dev-db/postgresql/postgresql-14.11.ebuild)24
-rw-r--r--dev-db/postgresql/postgresql-15.5.ebuild466
-rw-r--r--dev-db/postgresql/postgresql-15.7-r2.ebuild (renamed from dev-db/postgresql/postgresql-15.6.ebuild)24
-rw-r--r--dev-db/postgresql/postgresql-16.1.ebuild467
-rw-r--r--dev-db/postgresql/postgresql-16.3-r2.ebuild (renamed from dev-db/postgresql/postgresql-16.2.ebuild)24
-rw-r--r--dev-db/postgresql/postgresql-9999.ebuild314
-rw-r--r--dev-db/pspg/Manifest4
-rw-r--r--dev-db/pspg/metadata.xml3
-rw-r--r--dev-db/pspg/pspg-5.8.5.ebuild33
-rw-r--r--dev-db/psqlodbc/Manifest2
-rw-r--r--dev-db/psqlodbc/psqlodbc-16.00.0000.ebuild37
-rw-r--r--dev-db/qdbm/Manifest5
-rw-r--r--dev-db/qdbm/files/qdbm-ruby.patch81
-rw-r--r--dev-db/qdbm/metadata.xml7
-rw-r--r--dev-db/qdbm/qdbm-1.8.78-r5.ebuild (renamed from dev-db/qdbm/qdbm-1.8.78-r4.ebuild)16
-rw-r--r--dev-db/redis/Manifest2
-rw-r--r--dev-db/redis/redis-7.2.5.ebuild197
-rw-r--r--dev-db/sqliteman/Manifest2
-rw-r--r--dev-db/sqliteman/metadata.xml5
-rw-r--r--dev-db/timescaledb/Manifest2
-rw-r--r--dev-db/timescaledb/timescaledb-2.15.0.ebuild67
-rw-r--r--dev-db/tinycdb/Manifest4
-rw-r--r--dev-db/tinycdb/tinycdb-0.78.ebuild52
-rw-r--r--dev-db/tinycdb/tinycdb-0.81.ebuild2
47 files changed, 1241 insertions, 2818 deletions
diff --git a/dev-db/Manifest.gz b/dev-db/Manifest.gz
index 6f2e83fb2eaa..888253fc93f7 100644
--- a/dev-db/Manifest.gz
+++ b/dev-db/Manifest.gz
Binary files differ
diff --git a/dev-db/citus/Manifest b/dev-db/citus/Manifest
index 9556d53dc6e0..94b3c6e81730 100644
--- a/dev-db/citus/Manifest
+++ b/dev-db/citus/Manifest
@@ -1,7 +1,9 @@
DIST citus-11.3.1.tar.gz 6623462 BLAKE2B ef07fb1e6cf0dd3f49600c3befcb300d47244393dd3bbe01450a8cb7bdb40adf1b7c6d7cf473ac80c466fc5dd4d6e0f5a62d1a587804d74011dda65731431028 SHA512 481d74cdf0e8de86b918fc73ed72f988f42679a827a39e7d89e2d0ebb0447d629dbaf323099dc97e886ea3012539200831f580bfe0cf3a12ef1f3a7bfe3fab42
DIST citus-12.0.1.tar.gz 6740395 BLAKE2B ca004f8026d94c1ed70c9c7450726287aff415c13b80b93d25a19fbae9a79cbbeaec51521fc7922d5574c75bddb9537d42d656121ca586f4512afe773be5bf76 SHA512 db9b882c63ef6ab848a85d547390d4fc61b97056485dcc8fa51c289a302b78d0de959e29c27a91c494fd3e20491f6a96e96436d8766d02b2770f0e375b94564e
DIST citus-12.1.2.tar.gz 6897486 BLAKE2B 6cbd65cf0cefc5bbe4abcedbeaece8c9a123a05d0d6b812d95cea69153843fd187ff67ce0e99e19758f43569b7e38379294c3c1551f7751ffcb5a6d025800f1a SHA512 00ca6d7053c91671c894bb2afec25ba2a38aae50b6f363a1e63e08e4f3016e43739c9a48b20d93afecb5cc0f2d886fd12318dd8f54f67c052baca2d421882828
+DIST citus-12.1.3.tar.gz 6905546 BLAKE2B 6ece3bb20dfdad3d9413a17dc4b9177ae3cb8829e692b37bd226c60cbb1fa1e827e9de6f833d31c65835ab040593e0cc5fe4b6b0c8b0314306313cd88533e622 SHA512 2bcd5fa83e4fa56b90a3a3873229d3c5a294a0483d031d04ebd9602132883dc54485ca0907b867cd545f9b131a5f8cdeecb2e7e500b46d87f01aa5d5a34ff16f
EBUILD citus-11.3.1.ebuild 646 BLAKE2B cd2b1dfd00a6148d27d37f65bf6725593230dcf713715d6354d75b9e3961254353805b6b80e3a9f5169fa3aba3fcd250b03bb3ed406aac043c1271b3493889c0 SHA512 3ca4c5eaef0154bf549e1e947232c2321a2efddf665c44bc9a371d1249f9ff06c6860feb48a2fe86a9d95b5167d8a3e4fa877881b12d7a6743443279cc5d053d
EBUILD citus-12.0.1.ebuild 643 BLAKE2B fabb20b71f11963083d1115cbaff6b88197c7d487c651d8e5aca46f7cfb50302dc14c9eeac2c5b8daefb91ddde962b25072c4e1f3f34c40a5a9aaef37373d003 SHA512 fa3557d3530df46a7554b928623ef364dd070ed15fec2213b1f891c3f9e5a6fc2233c438537399990b0b4ff764e4073595f888f988e2d5189f639788b65b1ee6
EBUILD citus-12.1.2.ebuild 646 BLAKE2B 5a20928b3faee266d218080cc378f7cc557e2478ce14f8a1a201ab7e1beb6ee12be2bec6bdd954c828978bc7fe2dbd9663a57edf9155f2211c46a133b562b253 SHA512 521d896a4fd9e49b839a94e82eb0afb57dffd9cfef41333d537a56528506e5a0dbb85c7fa5e23adc47938f090eecce04c93238a32a71c77297145a7912a2e7a5
+EBUILD citus-12.1.3.ebuild 646 BLAKE2B 5a20928b3faee266d218080cc378f7cc557e2478ce14f8a1a201ab7e1beb6ee12be2bec6bdd954c828978bc7fe2dbd9663a57edf9155f2211c46a133b562b253 SHA512 521d896a4fd9e49b839a94e82eb0afb57dffd9cfef41333d537a56528506e5a0dbb85c7fa5e23adc47938f090eecce04c93238a32a71c77297145a7912a2e7a5
MISC metadata.xml 361 BLAKE2B 4661dce471924e095b993bcb2cd32627e08535138f7c2b65b7471342a27cddeda67733d87e50924bf9702594299b158318ac11c59f2d75f2df94880852e4d69e SHA512 3337957bcc132440bb973175a4974800601de71f3effa8dab48edf2847ecd91da8c4790f8a094505c11375700fd0241b9b3f8727a99c54b06de1c30a6e6cf8af
diff --git a/dev-db/citus/citus-12.1.3.ebuild b/dev-db/citus/citus-12.1.3.ebuild
new file mode 100644
index 000000000000..6f1052ed0c2d
--- /dev/null
+++ b/dev-db/citus/citus-12.1.3.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+POSTGRES_COMPAT=( 14 15 16 )
+
+inherit postgres-multi
+
+DESCRIPTION="Open-source postgresql extension for clustering/multi-node setups"
+HOMEPAGE="https://www.citusdata.com/"
+
+MY_PV="${PV/beta0/beta}"
+SRC_URI="https://github.com/citusdata/citus/archive/refs/tags/v${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+IUSE=""
+LICENSE="POSTGRESQL AGPL-3"
+
+KEYWORDS="~amd64"
+
+SLOT=0
+
+RESTRICT="test"
+
+DEPEND="${POSTGRES_DEP}
+ app-arch/lz4
+ app-arch/zstd
+ "
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ postgres-multi_foreach econf
+}
diff --git a/dev-db/etcd/Manifest b/dev-db/etcd/Manifest
index 364c28ebef87..b98ce426a4a6 100644
--- a/dev-db/etcd/Manifest
+++ b/dev-db/etcd/Manifest
@@ -14,6 +14,6 @@ DIST etcd-3.5.13-deps.tar.xz 5004004 BLAKE2B effc3c3fb8e6fff789f96030e485fb887b0
DIST etcd-3.5.13.tar.gz 4089792 BLAKE2B be7a46af3978108b7e25adabe736ac111a01ab7fcb8e142b75c0c87aa33905d42d10b721ebc982e834110388669d028e6a612c9745e2f5c93210dd05ffccba7d SHA512 dc85d80079b61e96eb06eb573d41d8972060392e49140a2414c283ea9edfef7b01d5554e50c7ab37c6ad079b373ae12a1b84dbcc533addc1d4d30a2a5abf7b7b
EBUILD etcd-3.4.26.ebuild 2043 BLAKE2B e97ddd6c5a5b08280249748ba46ed169bceb12c3f1db5009275cd54d9fca65878cfc29aa6f8247162326e1b6b582511684703a6dbdce9106974a7e656e87144d SHA512 f00e48beec1d548bf5303e629ea7aea5e1a88da78f894f72b0815ac8df7d684f31da874337a013fb21b70e404478eba07f872ba5ac4034c191b70ac402547523
EBUILD etcd-3.4.31.ebuild 2044 BLAKE2B 6e527a0a48a368426300a7b24f73651e56074260684ead38996a418e2cc51490a0ee5621cafc767bf426c385d44bf9be9cff3b296d75849c9d0c8d2fd2f9db2c SHA512 ad5b18908d458864acbaf9e4ac570b5dda321bec9f989549d25aaec3682e0819b086f015f12fd10ae69e4895466152610d74c0cd062cb37e9b99051e7ce1d429
-EBUILD etcd-3.5.12.ebuild 2096 BLAKE2B bb57169405e88223504a9239214c7a734d7dc7ed636497b2182eec0437c7d88ecf0b303434d4ad2393296a06276377afc328b37e63e9f24e862fd3cd7dd66bba SHA512 d6062044f38bd380d74a52c921962c1902addb8c5a30a93c7fe08fd7a236d85b1b56ad0d2e5682bad255f3dd89cc45b5c5e2cca8ba6b94faf0ec2595a52700bf
+EBUILD etcd-3.5.12.ebuild 2095 BLAKE2B c476ec700d5a1b1642dd364924302e63fe01d4cb52a7bb5f21e9e92f6e1545660c75d5a8f6f5e427b77d2594d6ee8ec4559c05104f7757ce515ff7b0bb441de0 SHA512 4575ff154dfcd068dcd39aa82c460f50fcbee8a8f51857d2b20b6ee46c18f9cefa0327eff770e28d91b00b11539e71fdd9ba8eeefd1278fc1b68c51bdd15e16d
EBUILD etcd-3.5.13.ebuild 2108 BLAKE2B 3ea78bf883260ffb5666188676bd26cbe1dbd48276d991ccdce24ac87ff321eb7759b66e400f68fb37cb3b286ca9a3b8da0b4767c335e32d7ec41466704b1466 SHA512 4e898666dc76d4d3611977f0162cd36f2332b716b3fa3d2938797e4fff511a13232168e32c6944151b7137306258c46eeef8b52ec7ea8d68aaff09b0bf53f652
MISC metadata.xml 421 BLAKE2B 5498a48643720f59f55d3b37d21fa80a4d8c984e7dc0e9beaccdb4f08d53819025e5849e481a7ce14fc519de15fdbed622f3c3912335cf81a678c522ba367b32 SHA512 ed8b5d3b552fdc284301ed63b941c2ce87cc808718dc15191597932d6543606907a175c929416f51193c63e12d79fef7993d0f91d9d0f70aacf75447c3744b73
diff --git a/dev-db/etcd/etcd-3.5.12.ebuild b/dev-db/etcd/etcd-3.5.12.ebuild
index 926be7cb76f3..e61a29b82bd5 100644
--- a/dev-db/etcd/etcd-3.5.12.ebuild
+++ b/dev-db/etcd/etcd-3.5.12.ebuild
@@ -12,7 +12,7 @@ SRC_URI+=" https://dev.gentoo.org/~zmedico/dist/${P}-deps.tar.xz"
LICENSE="Apache-2.0 BSD BSD-2 MIT"
SLOT="0"
-KEYWORDS="~amd64 ~loong ~riscv"
+KEYWORDS="amd64 ~loong ~riscv"
IUSE="doc +server"
COMMON_DEPEND="server? (
diff --git a/dev-db/litecli/Manifest b/dev-db/litecli/Manifest
index 9f1cf1f4b73c..b08d0a928ac5 100644
--- a/dev-db/litecli/Manifest
+++ b/dev-db/litecli/Manifest
@@ -1,3 +1,5 @@
DIST litecli-1.10.0.tar.gz 887727 BLAKE2B 141a13760ce24530a72d2a1fb1c896378f1f35a9354b8a6b553792607337b2ea861481f995f1ff016ac4fca1c7bde1aada4c193acd388fdf03095900b137c303 SHA512 aa497fe050f4e1135f2c63f4c0cbab736400158c546a0391f3eca956b38132349ad2eb46505beb52651f74bc5ff1a2ba9b0254e7a6a86d79e461fdd0508fb412
+DIST litecli-1.10.1.tar.gz 887832 BLAKE2B 304feead856a148726f729abd46d91fb2d0bbf7d99e05d437814c0e254f7e957f132317194e01e4dd62ddcdd2dda15c1fcba71c3086f286dd6aeb4aefe419f64 SHA512 f53c04a101f8abe52e81450309b6eab766742b0d26900608024ac8112efdc959787ea3c5997e9647529f65a17544ee31cc70f14b503a9ad3566d545568d822dd
EBUILD litecli-1.10.0.ebuild 923 BLAKE2B 6ea19fa379f0207fa9da6f7110622222ddf72412051fdd442f59ee2740a8fbc4b2b37639fd818e0c720b2118a49198c3570122ab2018c63e7776669845f58962 SHA512 986c30eb64d1087722c8f00a0b2ec4225282bf0a043fdaa0b1d46d4a737f040553c5603f0cf12071e54b211cabc4403e880e1ba63d74f2ab0360a7720c467071
+EBUILD litecli-1.10.1.ebuild 925 BLAKE2B 8038de58200a5ec39c06520a11f38e4b68c8ba8334f2f61a67152fb75947a759c09e61f72e5fe33818bb89229f63ce83b16d5227888071650e9f15318f92d87f SHA512 0ce11e591ec4a7bdf69075e5c23b7bfada17b77ff368afdc23548139ea07ae831b44e1d398174cf446356334e109bc26a01dc0011980764d0a1ed980e4a674c9
MISC metadata.xml 513 BLAKE2B 5dd598b28d70f0eea45122b3bc54386581426f5e93266e39cd56c89118bb30193d8a4839868dc9efead7aff2087aaf480b06548a069eddc057ca36e3b74b30c8 SHA512 59e097ac5c0d9ea37cb6e87fc59a142bec6576c041a184a69f01f029b2355dfbd989ab3177db7473cf9637b82e988ac42677942126c5da9cfd7a06532dc3bfe3
diff --git a/dev-db/litecli/litecli-1.10.1.ebuild b/dev-db/litecli/litecli-1.10.1.ebuild
new file mode 100644
index 000000000000..ae7764cb1ede
--- /dev/null
+++ b/dev-db/litecli/litecli-1.10.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_REQ_USE="sqlite"
+inherit distutils-r1
+
+DESCRIPTION="CLI for SQLite with auto-completion and syntax highlighting"
+HOMEPAGE="https://litecli.com/ https://github.com/dbcli/litecli"
+SRC_URI="https://github.com/dbcli/litecli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/click-4.1[${PYTHON_USEDEP}]
+ >=dev-python/cli-helpers-2.2.1[${PYTHON_USEDEP}]
+ >=dev-python/configobj-5.0.5[${PYTHON_USEDEP}]
+ >=dev-python/prompt-toolkit-3.0.3[${PYTHON_USEDEP}]
+ <dev-python/prompt-toolkit-4.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pygments-1.5[${PYTHON_USEDEP}]
+ dev-python/sqlparse[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-db/lmdb/Manifest b/dev-db/lmdb/Manifest
index 051a950b76e2..09098b9d6e6c 100644
--- a/dev-db/lmdb/Manifest
+++ b/dev-db/lmdb/Manifest
@@ -1,4 +1,6 @@
AUX lmdb.pc 295 BLAKE2B 29c1cc5a70eb3d7f5c9dc4b1646644045514929428f164894ece93a4fabf33ca464e1f116c8a803b499aabf28b6dec372b50c46a2fa4fc1eb65105208759f4ba SHA512 d0749849a0ca0593fbff0b4f8db7143177c588e342978bdb8331238761379f5d5bf686190e39506ff6b0abf6f9d668c96480da685c56d7ed44e7756f92f4e057
DIST openldap-LMDB_0.9.31.tar.gz 145086 BLAKE2B 8df437c27cb9d40b71a8e9f516c503676dade2342c9d618dcfff6081bf0034f67d1216a6a25a364e7dacd588acb2e254b98486efade12307fa3ad7977be5ed54 SHA512 318aa89b7e39f98f636dba01620f866ddc255d81a2d4def8a9d9fdd80878608db1ac7b60bde58e954aba802d94df42786a9cd00d0c7e11646f09fd5d64821ac4
+DIST openldap-LMDB_0.9.32.tar.gz 149188 BLAKE2B 8c15585a10644b791e54d3344c91ad1d86da0af06b02361685ec365309c8188dfd253d7a10f8708cd7f22363f99cc71aaaa170cc3349183f06d0765216cc19ef SHA512 3b8d45085f7a679e27f4b1d8b0a62531d4897d27c2a17f424462da07bd88f6c8fe8d64f866203c9e301b353dff1036fc48d9801917e97cfe7d3fd28f2d918d7a
EBUILD lmdb-0.9.31.ebuild 2187 BLAKE2B 84623ed256611df1d59e200a9add524d68ee47ff733c5ca63422b84370d9b20d2a6df0b7803b4fd236a89a2cc88edf186993948b5f756370a25f470ae4828cdd SHA512 ffe23c19323ffbf6af7299bb05cc235667bb3ad8f7b60cf34903861ee33de61439b358763521ff17fda221bc18e0235e143135786cdd964fe113cd2b1b2b81f6
+EBUILD lmdb-0.9.32.ebuild 2194 BLAKE2B f590620663547ce9530df998d47603d50f4f838c799cc104eafc3eaadc538bdfe1da3e43ab678667fb9be4ed7437824b7682f4835e0e1cc3e1f2f377bdb81a74 SHA512 0aba186fa81e86de7e07c88709a75e8db6df17535bfb38abf03cb09365572044c8613b689ac939fd83be8d164a60a3393472ac9033d22682aec13a39c1c644d4
MISC metadata.xml 433 BLAKE2B cf3186fe7876aa15283c1d2154469b7f8451e99b3a36637e67820703a576fa1297ac7804ef7df660aaa63a44b1c18a3d2298dac12159a3b3268526e10d7bdaf9 SHA512 f526eb14df23a1b9e92bec0b643e8dc993ad489e8776641aa330d1db878dcf4fb1b7dbb8b62e0c88a4ea484a393e5b396902abb2d035b8a311555e1e69fe387a
diff --git a/dev-db/lmdb/lmdb-0.9.32.ebuild b/dev-db/lmdb/lmdb-0.9.32.ebuild
new file mode 100644
index 000000000000..192658950b08
--- /dev/null
+++ b/dev-db/lmdb/lmdb-0.9.32.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit flag-o-matic multilib multilib-minimal toolchain-funcs
+
+MY_P="${PN^^}_${PV}"
+
+DESCRIPTION="An ultra-fast, ultra-compact key-value embedded data store"
+HOMEPAGE="https://symas.com/lmdb/technical/"
+SRC_URI="https://git.openldap.org/openldap/openldap/-/archive/${MY_P}/openldap-${MY_P}.tar.gz"
+S="${WORKDIR}/openldap-${MY_P}/libraries/liblmdb"
+
+LICENSE="OPENLDAP"
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="static-libs"
+
+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
+}
+
+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
+}
diff --git a/dev-db/mongodb/Manifest b/dev-db/mongodb/Manifest
index fe4e41548d1b..341458f9abaa 100644
--- a/dev-db/mongodb/Manifest
+++ b/dev-db/mongodb/Manifest
@@ -4,6 +4,7 @@ AUX mongodb-4.4.1-gcc11.patch 250 BLAKE2B b92bcd6acee092f9da84005a0abc7c6b4ff124
AUX mongodb-4.4.10-boost-1.79.patch 2071 BLAKE2B b00dfba23f2928793ace34abf26989b6bebe00a6484f36eab114b8612bf509123161925f0ccad04bdafd05c3c30ffb2cdea18303c8473dd3e62e422b73a92c53 SHA512 6bad4c75d8da261ce1e36a3648f0758cd9564eefeacbc2ce7c48ccf68e1f069058daaa9d1a6aa60925330ca50d3a712fda4ffaf2d90a0c6af428993283039a83
AUX mongodb-4.4.10-boost-1.81.patch 13467 BLAKE2B 970163a8084893190ca52e31577b2900d90ee6238ed496cefcdcd51590c6bcb4ae2e620d012ba101c022954d2d5ebd03b13eb2e7f26e8ce68c772d62470adbdc SHA512 62f4802a26398ffb17ac289d9e9de4044b753ece694785d3462f406391abdcfd16ff281959b4e4fb6751cc9247da7a4c55e8fa48eb90fd681eed724fedcb03e9
AUX mongodb-4.4.10-no-force-lld.patch 1401 BLAKE2B da5798d94f01a821a0d008fab71c90fe6055faca1020259ea3d385ec3a2af28f8b90bdb9daf2bb43e60028ea47ba733a649831584a53596c2e908c0db0a0f755 SHA512 07cdd61e92cf61be0646900c55dab753009d1cc18151c429dd7fdfd22f0b8836a0d51fc184f4459530397893f8863c5d12594ceea6d1fd2e90f98aba832d651a
+AUX mongodb-4.4.29-no-enterprise.patch 969 BLAKE2B b6c607ed7054c74c1c1e29da53292be41bfb690a770fddf9239d9752dec5a87def42488f05295ec505c2cc5f0418358fa51658b9318604c53ae6a3a75d903f8c SHA512 6e84db876022c21c1fcff8c9f88d4ff7375ebb8b37ab0dd445d1697484a1344098bfbffd82b3da7f2f8c2f926c4f403f2ffce9d67ef46b894f3a9f0b981aba10
AUX mongodb-4.4.8-gcc-13.patch 748 BLAKE2B d198b79704812aff95642a485c4a028d76c74d5a6b2d6cdd45bdb7b13d1795d72b4089cdf72840c5aa860095590bde8ab40543cc29ad7e31cbbfcb53f3936bd2 SHA512 c3c2560f858dcd3bbb4604f7d74a5a3efde885995e658ff521cce165be7cd8dea2975931df39a54b70acdc02a7fb480ad39e271875010a633a57af4ebd9ff095
AUX mongodb-4.4.8-no-compass.patch 1598 BLAKE2B af1944476041b3e5ea317f52adfced103f5b103484a4de4bb2a2d07ffcbc8b18a975f543e042c3563f1d46978496482ce7de653de8e4b943ef6ecf6e501d9f52 SHA512 0b8f5d085831180dec72ff81a37b4d537e550c8ea80d970b4af1ea6bc66b60ba957ff6506d2e21b9e5bc77b9812251dda33fae8a7c0cac4086141b5fb8ff4190
AUX mongodb-5.0.16-arm64-assert.patch 636 BLAKE2B 443b16404e8a13c7d1ce1a77b72960a40b8a366bae321af9047c1070142f2461a0fd5e813d2a4b3fcbe3b390e5f28f15bc7396ec13d48753a1cdf1cf3043c4b6 SHA512 24851bee5d93783df6f8a605b7d85d78d591bb2361aca4dbecef901c368a92f96661a9c860c98142224a94aa9dca90c6baa2feb58cfab58adc23e2e8b69ba91c
@@ -22,8 +23,12 @@ AUX mongodb.service-r1 239 BLAKE2B 4e2da934120da54034e2dd030cdd349e7fa9a22293f3d
AUX mongos.conf-r2 648 BLAKE2B 420bebfafc1ef4af4b90580077a803fe30f37d63eca6509e7381ca5fcf4e5bc31e136dfc72b653b4d942fdeda058f9fcecc3dcbec9c61e2c82ac3324b9fc0f44 SHA512 5aa8ced8d83572358e008c0df45dbe72a2e9c0003c9f49514d6b91bf9b75d4fb48b189ffe00d14e5675679943a05215a9873c5c9bde9ab1be4ed4813e75714e3
AUX mongos.confd-r3 470 BLAKE2B 9cf6f201d337430901d957a5a0811ff11ac2e81814aac2120c5018e6ec4c38b5ca22d19caea593834416c63609c69a8294227fb6b30200b41dfb29799cc5c1b4 SHA512 952fb9cf5d3eeea2006b101e23142e408c98d66d1f4f868f6ea5a4df6a6331ddcbcbdfb24f4b031c1a8c42652141a3684073b96dfc0b3fbd21dc6b5bcf0e36cb
AUX mongos.initd-r3 422 BLAKE2B 90872d0d8cdc5e33e3eebee848f58a2db0511d48b496ba9318117b74ad9265ead53a21b7d1790729a62d61839099bee315ace8ff3646c01e096a943c2251bf88 SHA512 bf5897614d59c6b4e72529b126408a62ea37d9e9368e5ff69c8fcf2bad3ec09065cff09467f82117a892c51090018706d2f38c03cb9a974a61a49bd9efa0f144
+DIST mongodb-4.4.29.gh.tar.gz 51651007 BLAKE2B 9e9bd08ce87659fcf788964ec1bff80baef5bb9c2f5bd4968588511d289b9baf9fc68812f72ee89f90fb557dcc8d2ecbb3f607ca8e31c2212ec9633c0b99da37 SHA512 3c32a918c8b5587b04ee9263788c250a9bbd64f34ed2c19939e78607456215697966e596c2cfd160604b629188e4bdf3fff071db268bb3c25de3077a7c2ef335
+DIST mongodb-5.0.26.gh.tar.gz 57252091 BLAKE2B a4663a4dbac90118b56646816b178680a6bd99be6abb582fdfdb662c8ddf14eb9db18ed97260a37b2d04bf11715e6cfaa34bb12c4f4b08426e3afa90908f0b3c SHA512 efd56649006bb61070a2f255e8d843e4ddab33562ec9454afe55848dcc3ce8ee90431f70c9362b14e52c4a49a162ea3075a869a6fd71f63efdd5f4358703fea4
DIST mongodb-src-r4.4.20.tar.gz 50883098 BLAKE2B 3ef2fddc4d926e372033449a14b0a71c606b6f8a9bb6767ff32c8da5a9287bf2972fae9dd83eab3ad934b1341c3edeed7708afd46f9a096819e9eca48aca40f5 SHA512 70b264b6a6f3ec16c8b0750d47026928f6250cb7a1a64d980c400ffbcc3af1b9c6301fe098d209fb8461cba4534b7c2edffdcdeb0548e627da107cc23d9a6b9c
DIST mongodb-src-r5.0.16.tar.gz 56217257 BLAKE2B d78704c0cff4f8c1da20fdc5e083634c6dbe539136de58410ae6b86c9c5cd8044926425545ae07a7011a5febec5abb6f67773b8e539a4ac16daa1ad0ffc6a070 SHA512 d5fccd6cd3ee3f70457bd96a8eff66ca9872df37e196f1baf26993b6c080297d77504020e5554eaf3a2e92bb2730a467226b4bef47ab7fdc4de247d91c0143eb
EBUILD mongodb-4.4.20.ebuild 5166 BLAKE2B 2cbbe01c324473eb74834b474fc13ee1e38a8e2ed3a1f471afc99d596434db41fd2697e36e87c0077da418f7a36c320221b192063e549f75c2366b1c4db0f4f8 SHA512 e3c9b4383892226232e70ee600f6b2d87c79967e04f290598657dc8618df3bd774601df6e6897d80c6d49ebc5b183cd443d82068da4eb1ede094c522292a0a7a
+EBUILD mongodb-4.4.29.ebuild 5390 BLAKE2B 37c15937cd50a12631c0008adbe5d7f1c45ee2d3d7694b7dd482cbcaa8472f2448cbd3901367be4d210cc90e65f794ece12525125b97ecea60fbf756200178b2 SHA512 fbef97744213d897824d24a55f41a69e8dd50df87525be4ef382b6614d9987ab3c3733a3a897df5ece1bfaaa6eacd94aaaef3f5c15fb174f4a0d678a4e67aca2
EBUILD mongodb-5.0.16-r1.ebuild 5580 BLAKE2B 5b03069e397d7c557dce111edf565e27a5609b0d634818825e73e2fec5939909d1abefc3b24e0e4b88757c2c9d9af6fbaafa3029f5ad91a96ed4b64bd5c1ccae SHA512 be046025e299a3b3de9592babaacbaca575fa1b67bc046b17a792dece61f6c3bfaa7aed92211f467004fb902c877ae045f7a6fa8bbc563f1281352982a9f2c6e
-MISC metadata.xml 853 BLAKE2B fef5b12bf1ac004fe59de6ab55cb537d1b287b28ce4eaaee88d555c17784bf7b95273e25e917c7c75a511e24515d12eeb255108e07ef549db4e225a03adfbfc0 SHA512 fc7f8225e517043b6c5e0ceb77191204c4c66b1454e889837572c04aaaf5a973f89efed26f07493f448e69eefb90cca90a3f84e0acac134454f17bdc97959997
+EBUILD mongodb-5.0.26.ebuild 5910 BLAKE2B eaaf5af00ac6c39590fcbafd526a4018d02a1f64ae06a3d4c531747e4500265e694c4e71378d9b88a1c1acf85ec2da4b0dfbf5ef67a486f12ed465556fedba2c SHA512 d36085a282627196a9f380a7bf111bb1800841e1bd2c194646dbefaab48df0452b432ef6c158b425c8d10930250120653db704a8eec2e1ce462072988a0ecdfe
+MISC metadata.xml 931 BLAKE2B 7ac7f9f4c2f048262d980577ef99c4a4200b805ea32976309bc68abaa7d0afc6818d1a24351b4850a7855f6f3e73bd0fd8241326c8a81484815342ba85c2e3ea SHA512 86fc063b5759fe7af2dd288897b8bff77e0d64a934abee3a68c0e0fb4454d67f0ced71e092257004885e375f2f17fd50577bacff802882d2dedff8306cfdf3d2
diff --git a/dev-db/mongodb/files/mongodb-4.4.29-no-enterprise.patch b/dev-db/mongodb/files/mongodb-4.4.29-no-enterprise.patch
new file mode 100644
index 000000000000..bbcbe34fe6f3
--- /dev/null
+++ b/dev-db/mongodb/files/mongodb-4.4.29-no-enterprise.patch
@@ -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)
diff --git a/dev-db/mongodb/metadata.xml b/dev-db/mongodb/metadata.xml
index f8c3c65fba50..1f55f5a2d2d2 100644
--- a/dev-db/mongodb/metadata.xml
+++ b/dev-db/mongodb/metadata.xml
@@ -17,4 +17,7 @@
<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="github">mongodb/mongo</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-db/mongodb/mongodb-4.4.29.ebuild b/dev-db/mongodb/mongodb-4.4.29.ebuild
new file mode 100644
index 000000000000..830acd956f53
--- /dev/null
+++ b/dev-db/mongodb/mongodb-4.4.29.ebuild
@@ -0,0 +1,188 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+SCONS_MIN_VERSION="3.3.1"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs 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"
+S="${WORKDIR}/${MY_P}"
+LICENSE="Apache-2.0 SSPL-1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 -riscv"
+IUSE="debug kerberos ssl test +tools"
+RESTRICT="!test? ( test )"
+
+RDEPEND="acct-group/mongodb
+ acct-user/mongodb
+ >=app-arch/snappy-1.1.3:=
+ >=dev-cpp/yaml-cpp-0.6.2:=
+ dev-libs/boost:=[nls]
+ >=dev-libs/libpcre-8.42[cxx]
+ app-arch/zstd:=
+ dev-libs/snowball-stemmer:=
+ net-misc/curl
+ >=sys-libs/zlib-1.2.11:=
+ 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 '
+ test? ( dev-python/pymongo[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] )
+ >=dev-build/scons-3.1.1[${PYTHON_USEDEP}]
+ dev-python/cheetah3[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ ')
+"
+PDEPEND="tools? ( >=app-admin/mongo-tools-100 )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.4.1-fix-scons.patch"
+ "${FILESDIR}/${PN}-4.4.8-no-compass.patch"
+ "${FILESDIR}/${PN}-4.4.1-boost.patch"
+ "${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+ "${FILESDIR}/${PN}-4.4.10-boost-1.79.patch"
+ "${FILESDIR}/${PN}-4.4.10-no-force-lld.patch"
+ "${FILESDIR}/${PN}-4.4.10-boost-1.81.patch"
+ "${FILESDIR}/${P}-no-enterprise.patch"
+)
+
+python_check_deps() {
+ if use test; then
+ python_has_version "dev-python/pymongo[${PYTHON_USEDEP}]" || return 1
+ python_has_version "dev-python/requests[${PYTHON_USEDEP}]" || return 1
+ fi
+ 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/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+ if [[ -n ${REPLACING_VERSIONS} ]]; then
+ if ver_test "$REPLACING_VERSIONS" -lt 4.2; then
+ ewarn "To upgrade from a version earlier than the 4.2-series, you must"
+ ewarn "successively upgrade major releases until you have upgraded"
+ ewarn "to 4.2-series. Then upgrade to 4.4 series."
+ else
+ ewarn "Be sure to set featureCompatibilityVersion to 4.2 before upgrading."
+ fi
+ fi
+}
+
+src_prepare() {
+ default
+
+ # remove bundled libs
+ rm -r src/third_party/{boost-*,pcre-*,scons-*,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="f4dda329a99811c707eb06d05ad023599f9be263"
+
+ --disable-warnings-as-errors
+ --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 debug && scons_opts+=( --dbg=on )
+ use kerberos && scons_opts+=( --use-sasl-client )
+ use ssl && scons_opts+=( --ssl )
+
+ # Needed to avoid forcing FORTIFY_SOURCE
+ # Gentoo's toolchain applies these anyway
+ scons_opts+=( --runtime-hardening=off )
+
+ # 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" escons "${scons_opts[@]}" --nostrip install-core
+}
+
+# FEATURES="test -usersandbox" emerge dev-db/mongodb
+src_test() {
+ ewarn "Tests may hang with FEATURES=usersandbox"
+ "${EPYTHON}" ./buildscripts/resmoke.py run --dbpathPrefix=test --suites core --jobs=$(makeopts_jobs) || die "Tests failed with ${EPYTHON}"
+}
+
+src_install() {
+ dobin build/install/bin/{mongo,mongod,mongos}
+
+ doman debian/mongo*.1
+ dodoc README 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"
+}
diff --git a/dev-db/mongodb/mongodb-5.0.26.ebuild b/dev-db/mongodb/mongodb-5.0.26.ebuild
new file mode 100644
index 000000000000..a31c0680250e
--- /dev/null
+++ b/dev-db/mongodb/mongodb-5.0.26.ebuild
@@ -0,0 +1,206 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+SCONS_MIN_VERSION="3.3.1"
+CHECKREQS_DISK_BUILD="2400M"
+CHECKREQS_DISK_USR="512M"
+CHECKREQS_MEMORY="1024M"
+
+inherit check-reqs 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"
+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:=
+ >=dev-cpp/yaml-cpp-0.6.2:=
+ dev-libs/boost:=[nls]
+ >=dev-libs/libpcre-8.42[cxx]
+ app-arch/zstd:=
+ dev-libs/snowball-stemmer:=
+ >=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/pyyaml[${PYTHON_USEDEP}]
+ ')
+"
+PDEPEND="
+ mongosh? ( app-admin/mongosh-bin )
+ tools? ( >=app-admin/mongo-tools-100 )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.4.1-boost.patch"
+ "${FILESDIR}/${PN}-4.4.1-gcc11.patch"
+ "${FILESDIR}/${PN}-5.0.2-fix-scons.patch"
+ "${FILESDIR}/${PN}-5.0.2-no-compass.patch"
+ "${FILESDIR}/${PN}-5.0.2-skip-no-exceptions.patch"
+ "${FILESDIR}/${PN}-5.0.2-skip-reqs-check.patch"
+ "${FILESDIR}/${PN}-5.0.2-boost-1.79.patch"
+ "${FILESDIR}/${PN}-5.0.5-no-force-lld.patch"
+ "${FILESDIR}/${PN}-4.4.10-boost-1.81.patch"
+ "${FILESDIR}/${PN}-5.0.5-boost-1.81-extra.patch"
+ "${FILESDIR}/${PN}-5.0.16-arm64-assert.patch"
+ "${FILESDIR}/${PN}-4.4.29-no-enterprise.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/pyyaml[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+ # Bug 809692 + 890294
+ if use amd64 && ! use cpu_flags_x86_avx; then
+ ewarn "MongoDB 5.0 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/v5.0/administration/production-notes/"
+ fi
+
+ if [[ -n ${REPLACING_VERSIONS} ]]; then
+ if ver_test "$REPLACING_VERSIONS" -lt 4.4; then
+ ewarn "To upgrade from a version earlier than the 4.4-series, you must"
+ ewarn "successively upgrade major releases until you have upgraded"
+ ewarn "to 4.4-series. Then upgrade to 5.0 series."
+ else
+ ewarn "Be sure to set featureCompatibilityVersion to 4.4 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="0b4f1ea980b5380a66425a90b414106a191365f4"
+
+ --disable-warnings-as-errors
+ --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-core || die
+}
+
+src_install() {
+ dobin build/install/bin/{mongo,mongod,mongos}
+
+ doman debian/mongo*.1
+ dodoc README 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"
+}
diff --git a/dev-db/pgpool2/Manifest b/dev-db/pgpool2/Manifest
index f153dbabebc0..f185dd8ba10e 100644
--- a/dev-db/pgpool2/Manifest
+++ b/dev-db/pgpool2/Manifest
@@ -6,13 +6,9 @@ AUX pgpool-9999-run_paths.patch 3772 BLAKE2B 37f98d76a06ac74ad1af4a917d795ee85e1
AUX pgpool-configure-pam.patch 1077 BLAKE2B 4dad8c20faf2ecb1c65e95b87d394d1c17c363d0337e830ea25efb88b1cb07d1a19fc1169ed9fbf69807347eba59296c276b33e0f786d32300e6c518b7a8c4ea SHA512 7c3b3f02977c7d9b1dbf7fb8905cca3a405ab856b8884bb9016dccb70650ed074af76ee81ee6cf2c1d4c366283af07ddb5c473960d81f7528d9d7afe762f9d4e
AUX pgpool2.confd 649 BLAKE2B 1c520c4fa954c7411c1b700c03bf4e39196c599eb239cf86412fcf491759ca6f46b1264e7647a8d278ac45da3e20702f6f077dfbcccf83cb3f45575dd3571308 SHA512 5f9a4fa1e68161049ad767d64c764fbf70e84a4239e58119455a45a7e45d86ea2d19b617147cf891053e0dad4420c84704d67015334c7d41bad05b260d70e910
AUX pgpool2.initd 2162 BLAKE2B b04f6b952507b8e4815c7b27f09b59ffe64f6262719c5490377fdbc5f8490cdead18fdbeb0ce8379d9cbd4bbb1aa21221d61853ff49a456a5ef6a8d78f3f5129 SHA512 05dd358d20bae60cfdefd7116b1111288b5a2be6d68a9dc40eaf6ba641524d422f2faac79bd3c629cee4f8b1ca601a9b6e303d4228e538d742ea407b6190ee53
-DIST pgpool-II-4.3.2.tar.gz 5846769 BLAKE2B 82cfe7095ad303ac3a910c533d6e57edb4e3d5b28a9a9bffb2df473dd3087ec329d3a77f9490d9bb738d5d1a443020d96d0e9a1b1d6adecc04cce5d1caa04e7d SHA512 771426257eddb5c48504c80a2c8cccf44a18f7ea50df55654b7e9e017bda561a73a3e1f0db79785785ff6893d6df26f73b55310d0184ef3301838d12290d3d4c
-DIST pgpool-II-4.3.7.tar.gz 4901679 BLAKE2B 40c280a9d399246da77661a856d64691c213361193ba6af46a70c03c9193021a9f44dd9bfdfc7335c269675d04e9469d033ce55757799a7009d35d1493c50d6e SHA512 dd84b94a60fb1e75de2c14f83b3637491a4673b15dc7c23dbb8e26e69d32f617a85159f7c276a88a62d741b7758d84e94949ea6aa8f505be0960d8fffdaa10b6
DIST pgpool-II-4.3.8.tar.gz 4939785 BLAKE2B fbccfa89311c85394d48c9ff25ce68baea15a80bb87efdf9c7d06280f0a532b8bf656f7ad144b9f813293bf6bd43a7d0cead78fff422eef55598ee2a7cd6380e SHA512 93f623900f24454a1913dcf29be508a47ae3c5f7fd360d3546f48b88b93dcc66886de01a5d9b0f53fb955d1eeded1e5329c3ca1fbca4c3f16aabea79e869d9a3
DIST pgpool-II-4.4.4.tar.gz 4973024 BLAKE2B 2fa41442bc9bf677a17d98388f9977b97fb609cdd6f1494d9f4de2356b04de5a3725478381d67cc04a01f3ff964bd3dfe159d9c41c13980e477a5f0c4c198413 SHA512 fb80df3df2894e7f2cf820a2b32e04ef6447a8137341db65c3a141679ea0fcbae7d5824c1904cb19aae7b05ef9fe641ac294dbc58cdbc6231444f0c4e508e7dc
DIST pgpool-II-4.4.5.tar.gz 4992570 BLAKE2B 638812144e8ac58e56e0b9dbe6aadfa90140c05ed46da1d795d0e22515dacd3a126afa6082881ca84c031693a205c895ea69d01fc7a14f870344bae9b454c57f SHA512 cd2fb2f715aed70d67522ab1852fa7df059d5379f9d4860be82a3d32d78701c5bce75e3e1304eda6a67670475aa367a2631cce517a4d2e4eb6b07c1e74901dd9
-EBUILD pgpool2-4.3.2.ebuild 2317 BLAKE2B 7a7d9f27eb872253a87b5af29efc8d14eb6fa6cb34730e7c70b54a8c887d08167b11732bfd95f850fbab707c39b0659100b3b211d5655719dd09988fbfc68858 SHA512 b6d8d0dc77f30fc94404e7b3a5af2339a16a564999a8666815c5553e922cca0988bf214cacd61c465cef4c43b885450064492252ddd9b371b15370c19c58d9f0
-EBUILD pgpool2-4.3.7.ebuild 2317 BLAKE2B 7a7d9f27eb872253a87b5af29efc8d14eb6fa6cb34730e7c70b54a8c887d08167b11732bfd95f850fbab707c39b0659100b3b211d5655719dd09988fbfc68858 SHA512 b6d8d0dc77f30fc94404e7b3a5af2339a16a564999a8666815c5553e922cca0988bf214cacd61c465cef4c43b885450064492252ddd9b371b15370c19c58d9f0
EBUILD pgpool2-4.3.8.ebuild 2456 BLAKE2B 7ac3722e1336c3b8447732fa2495b919fc91f56012aafc96bd19ca2ab2beea30b942f03341df33831c68c02b97673b0fa974a2930fca5bc8b787224ca7534d0a SHA512 6edb966973bc72d7284b6f15474758b16755da8b65befa094f79b51150d8be1dcf22d9e951abc1efdb1bd0cc9b58f9d11d751485479defe719deca463704e1fc
EBUILD pgpool2-4.4.4.ebuild 2454 BLAKE2B a59c283e26abaaf4444c57cc9055465ecc5c4233dbabf8a072f47432e5d14f2d21f17068c09968584f01f70d29bfe95d490bd04dab487778c04cb473230b25da SHA512 4355cb8dde83e810a46cbb8859bfbb841bea03382e14cf7760eda76ec969d24ccedd35db6cea0d90107997369ca3f58cbdef78e66d12eda79beaef65685331a4
EBUILD pgpool2-4.4.5.ebuild 2454 BLAKE2B a59c283e26abaaf4444c57cc9055465ecc5c4233dbabf8a072f47432e5d14f2d21f17068c09968584f01f70d29bfe95d490bd04dab487778c04cb473230b25da SHA512 4355cb8dde83e810a46cbb8859bfbb841bea03382e14cf7760eda76ec969d24ccedd35db6cea0d90107997369ca3f58cbdef78e66d12eda79beaef65685331a4
diff --git a/dev-db/pgpool2/pgpool2-4.3.2.ebuild b/dev-db/pgpool2/pgpool2-4.3.2.ebuild
deleted file mode 100644
index d46c7c75826a..000000000000
--- a/dev-db/pgpool2/pgpool2-4.3.2.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-POSTGRES_COMPAT=( 9.6 {10..15} )
-
-inherit autotools postgres-multi
-
-MY_P="${PN/2/-II}-${PV}"
-
-DESCRIPTION="Connection pool server for PostgreSQL"
-HOMEPAGE="https://www.pgpool.net/"
-SRC_URI="https://www.pgpool.net/download.php?f=${MY_P}.tar.gz -> ${MY_P}.tar.gz"
-LICENSE="BSD"
-SLOT="0"
-
-KEYWORDS="amd64 x86"
-
-IUSE="doc memcached pam ssl static-libs"
-
-RDEPEND="
- ${POSTGRES_DEP}
- acct-user/pgpool
- net-libs/libnsl:0=
- virtual/libcrypt:=
- memcached? ( dev-libs/libmemcached )
- pam? ( sys-auth/pambase )
- ssl? ( dev-libs/openssl:0= )
-"
-DEPEND="${RDEPEND}
- sys-devel/bison
- virtual/pkgconfig
-"
-
-S=${WORKDIR}/${MY_P}
-
-src_prepare() {
- eapply \
- "${FILESDIR}/pgpool-4.2.0-configure-memcached.patch" \
- "${FILESDIR}/pgpool-configure-pam.patch" \
- "${FILESDIR}/pgpool-4.2.0-configure-pthread.patch" \
- "${FILESDIR}/pgpool-4.3.1-run_paths.patch"
-
- eautoreconf
-
- postgres-multi_src_prepare
-}
-
-src_configure() {
- postgres-multi_foreach econf \
- --disable-rpath \
- --sysconfdir="${EPREFIX}/etc/${PN}" \
- --with-pgsql-includedir='/usr/include/postgresql-@PG_SLOT@' \
- --with-pgsql-libdir="/usr/$(get_libdir)/postgresql-@PG_SLOT@/$(get_libdir)" \
- $(use_enable static-libs static) \
- $(use_with memcached) \
- $(use_with pam) \
- $(use_with ssl openssl)
-}
-
-src_compile() {
- # Even though we're only going to do an install for the best slot
- # available, the extension bits in src/sql need some things outside
- # of that directory built, too.
- postgres-multi_foreach emake
- postgres-multi_foreach emake -C src/sql
-}
-
-src_install() {
- # We only need the best stuff installed
- postgres-multi_forbest emake DESTDIR="${D}" install
-
- # Except for the extension and .so files that each PostgreSQL slot needs
- postgres-multi_foreach emake DESTDIR="${D}" -C src/sql install
-
- newinitd "${FILESDIR}/${PN}.initd" ${PN}
- newconfd "${FILESDIR}/${PN}.confd" ${PN}
-
- # Documentation!
- dodoc NEWS TODO
- doman doc/src/sgml/man{1,8}/*
- use doc && dodoc -r doc/src/sgml/html
-
- # mv some files that get installed to /usr/share/pgpool-II so that
- # they all wind up in the same place
- mv "${ED}/usr/share/${PN/2/-II}" "${ED}/usr/share/${PN}" || die
-
- # One more thing: Evil la files!
- find "${ED}" -name '*.la' -exec rm -f {} +
-}
diff --git a/dev-db/pgpool2/pgpool2-4.3.7.ebuild b/dev-db/pgpool2/pgpool2-4.3.7.ebuild
deleted file mode 100644
index d46c7c75826a..000000000000
--- a/dev-db/pgpool2/pgpool2-4.3.7.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-POSTGRES_COMPAT=( 9.6 {10..15} )
-
-inherit autotools postgres-multi
-
-MY_P="${PN/2/-II}-${PV}"
-
-DESCRIPTION="Connection pool server for PostgreSQL"
-HOMEPAGE="https://www.pgpool.net/"
-SRC_URI="https://www.pgpool.net/download.php?f=${MY_P}.tar.gz -> ${MY_P}.tar.gz"
-LICENSE="BSD"
-SLOT="0"
-
-KEYWORDS="amd64 x86"
-
-IUSE="doc memcached pam ssl static-libs"
-
-RDEPEND="
- ${POSTGRES_DEP}
- acct-user/pgpool
- net-libs/libnsl:0=
- virtual/libcrypt:=
- memcached? ( dev-libs/libmemcached )
- pam? ( sys-auth/pambase )
- ssl? ( dev-libs/openssl:0= )
-"
-DEPEND="${RDEPEND}
- sys-devel/bison
- virtual/pkgconfig
-"
-
-S=${WORKDIR}/${MY_P}
-
-src_prepare() {
- eapply \
- "${FILESDIR}/pgpool-4.2.0-configure-memcached.patch" \
- "${FILESDIR}/pgpool-configure-pam.patch" \
- "${FILESDIR}/pgpool-4.2.0-configure-pthread.patch" \
- "${FILESDIR}/pgpool-4.3.1-run_paths.patch"
-
- eautoreconf
-
- postgres-multi_src_prepare
-}
-
-src_configure() {
- postgres-multi_foreach econf \
- --disable-rpath \
- --sysconfdir="${EPREFIX}/etc/${PN}" \
- --with-pgsql-includedir='/usr/include/postgresql-@PG_SLOT@' \
- --with-pgsql-libdir="/usr/$(get_libdir)/postgresql-@PG_SLOT@/$(get_libdir)" \
- $(use_enable static-libs static) \
- $(use_with memcached) \
- $(use_with pam) \
- $(use_with ssl openssl)
-}
-
-src_compile() {
- # Even though we're only going to do an install for the best slot
- # available, the extension bits in src/sql need some things outside
- # of that directory built, too.
- postgres-multi_foreach emake
- postgres-multi_foreach emake -C src/sql
-}
-
-src_install() {
- # We only need the best stuff installed
- postgres-multi_forbest emake DESTDIR="${D}" install
-
- # Except for the extension and .so files that each PostgreSQL slot needs
- postgres-multi_foreach emake DESTDIR="${D}" -C src/sql install
-
- newinitd "${FILESDIR}/${PN}.initd" ${PN}
- newconfd "${FILESDIR}/${PN}.confd" ${PN}
-
- # Documentation!
- dodoc NEWS TODO
- doman doc/src/sgml/man{1,8}/*
- use doc && dodoc -r doc/src/sgml/html
-
- # mv some files that get installed to /usr/share/pgpool-II so that
- # they all wind up in the same place
- mv "${ED}/usr/share/${PN/2/-II}" "${ED}/usr/share/${PN}" || die
-
- # One more thing: Evil la files!
- find "${ED}" -name '*.la' -exec rm -f {} +
-}
diff --git a/dev-db/postgresql/Manifest b/dev-db/postgresql/Manifest
index c7e8cbb464e0..f15bd92fef14 100644
--- a/dev-db/postgresql/Manifest
+++ b/dev-db/postgresql/Manifest
@@ -8,25 +8,15 @@ AUX postgresql.confd-9.3 2477 BLAKE2B 0d42eedb99c951c8c60ed02abb5d4526bc288e8dd5
AUX postgresql.init-9.3-r1 4999 BLAKE2B f2bc23a51b6d9643bbc14320aaa9c41b7eb1df86f8b760b9146739b14060178a415fe49b77a47b6bc5522759759fa0aefa9f0050b340534a64c2f22f89c7825d SHA512 a0f003c7d00b9749b8b25fce8ac728869e0c8f5a3c87e699b62806207413d5abba8db1e9d35e801316fbfb0ee070eb3b6a099b7991065c21cdb27ca7dc164bed
AUX postgresql.service-9.6-r1 1477 BLAKE2B 2a652d5b2892f3a52f484fcc0b4f4dad09cf4b46c3739c3f805072040a26128cb2ad9a25d4a7c9f109a95696d739538d379af6bac53c656f5c41af45b6110de5 SHA512 9e2b04923f6ebec1424c0f276c58a6a0c4933f2de5e2a9776169227729afd06ce5284461be8b6ed70e5aaff2a68b9f96c6893d867d35761c9977f9847ccfe93d
AUX postgresql.tmpfiles 39 BLAKE2B 25a5725af53c8e4e4009887e998172dd863ce218a5438351194548c4fc8ea15308dfba3602d5a922cf49b46015198268a4a4528119d8a74dcef4cc4c1767c052 SHA512 498060f2a597cf374f4fb31deaa2d6c5b00edef68efc0e71b82bfc20b717ae12518ba18fcb455a0c518ebba1a0868f38321470616151d02fa79b889a66dcb9f8
-DIST postgresql-12.17.tar.bz2 21181616 BLAKE2B dda4b06d8d36d3257e1eea251ccbdf38f1ce63ca811045b7b8d156d2b54614304b83b30ad3b1ead4e7ad74fa9f42acc8934f648902e17a4f7c89a117dc8e3c03 SHA512 8bf67475db4ec5baf058ca976ea3e416df39cd9d15131be3fa3c161edbfa93f74251d33b29d23b3084c95bbb73fb6606f4615e528129674047a75a86e7417373
-DIST postgresql-12.18.tar.bz2 21208935 BLAKE2B cadb1d168185d0f73752af2a58f34bde79db51716ffbc4e974efa759ac5ebd3b340a17acc965a1fd30899321c5aef597b93f947277a35c1159bc9ff7ac4b4254 SHA512 723105a2b280ed9116615fa5fe29034a8588e474ed622de2c439f95e5b621b8865224e02553b71cba8d0288b1ee9fea077b20bd77fe2c858cd988b417efa56c0
-DIST postgresql-13.13.tar.bz2 21563452 BLAKE2B ee4b2d022c1b3003dc9c4da96e5900878a2fc70b3033470d0fb972131e063a047895e86d5d1e36297885f2821f0ef3af966cabe32941efba4bd11bdd0557e44f SHA512 d7b1076cdc406ac83440c75d18e6dc6db9af709615344978ba0135b45a127082b1d3c6ad6d8cd6259d67ddf38cfcee37dd78dcfbf8e4a710b724c67cf36170a7
-DIST postgresql-13.14.tar.bz2 21584146 BLAKE2B 67b1c85cac910f445a393060646e901e03eccf9c00d3b4d41b12acc9d94254697c46060f09a4c6ed57ec33b202c18916b03f8b322c3be0f195e0315e7a874933 SHA512 25d545de69d6ac16b044e09939678af97b6574c71d47d98f95f0ef9ad11ff65e864e503ddff119d73fbb3c61e648e31219982d60da7fc2382ba10e0bfc370aa5
-DIST postgresql-14.10.tar.bz2 22298652 BLAKE2B 0c87c02b0b279d29e4a05711312bf89a655359a687c24d1cbb76cd4f6ed7666d31113a18a9976773c36853f00c1ca332af396372524467bb19c2a3bfcddea995 SHA512 f546e62eb158efdeecf091271ee60945604ca7f3683f0b259ee18eb682431158e282bf4f81d8df304c956919788f8077e72aa47c467d32d6aef1ccfe470862a5
-DIST postgresql-14.11.tar.bz2 22354758 BLAKE2B f2ee6246c0e2c236e693e29ae2a581e818be51162a9a93f38aa1520b886557f9628111ad1e25221baa3b0bcb1d2861e2527082cb15dc6ef1493351b4cc13196a SHA512 67289cd638ed7b13e845263d5a34394347f33735d9e2fafd6aa3562989a3a9455ea547d1b5079138648f33b093e77841654188fc74a49c0d6d458a42cfb57ffe
-DIST postgresql-15.5.tar.bz2 23091780 BLAKE2B e3731b973242d4de8b4b78e00842df52e006f08510efc0ff02bf7b8b479e17aa9e1c8116644d9a82f23d4334f527f1a82a1c2eec7f7c199a2fdf500b46740264 SHA512 9ed9d160b3cef99954ccd47a970c107b7e3b0196a7d848f740bf3c52a1c626f6f457814c97f37b9f0467bb07734e19806a15bd9cf3c39445e1d89e75b37064cc
-DIST postgresql-15.6.tar.bz2 23093967 BLAKE2B 8245fd0e0f2b90d504e57021bb0069d0850f5ff409dab2a583581a5b77a39e81a08c6d4c87db15f14f5e1943c1c21451160205ea27e56808a3a4a0f166090c2a SHA512 d9f158d844ec21bc5a7eccad9193dfe026d3df46a011980412ad7d150b3894c01754be0053bed530976047d7eff657204ac321138ba8da6eac8fb7b93b9520ad
-DIST postgresql-16.1.tar.bz2 24605482 BLAKE2B f59859af644134cf0fc9289c0e0d93fe0f877794a1cc8881280d0439605a6e312866a0114d453af8e269e26173fa3742073fe5485901b7cb0af925a5c3506aad SHA512 69f4635e5841452599f13b47df41ce2425ab34b4e4582fd2c635bc78d561fa36c5b03eccb4ae6569872dc74775be1b5a62dee20c9a4f12a43339250128352918
-DIST postgresql-16.2.tar.bz2 24711703 BLAKE2B b863d7b7a1721df237c33a45aed788be9397a432a445f2267619496f1c0210196ff0904c44dbf07ea11f814921c643a6b9182b8a4c992f13578c4fe00868d491 SHA512 3194941cc3f1ec86b6cf4f08c6422d268d99890441f8fc9ab87b6a7fd16c990fa230b544308644cbef54e6960c4984e3703752e40930bdc0537b7bfda3ab7ccf
-EBUILD postgresql-12.17.ebuild 13341 BLAKE2B f8339227e1c5f24ee9172d09588a2a8c2578dfeeb80bde2fb2fcbc4cfb072eb4259b4579451378443801060deba85cd7021aac6cfe20a6b794fb4d8fbb6c4c11 SHA512 b4854b55b0965a51401c258df7de95919a341eed04f16a0e6573e2d8e77596c0cb4cbffbb85e8a54cf9237e21a652ff5ae40e581b9980b9d0bd8c1841d25f854
-EBUILD postgresql-12.18.ebuild 13318 BLAKE2B 7b8fb07a6262a3e288fa53b82e10f1c6eaafa915a3e49850c6fafc33db945bd9bb6bb41a6bd04d2a5bee085ce5150de57853175afbf176f71adfcbdc0fe7fd00 SHA512 c666ec01ecd7df6a8e516a1b920f4257a94c07ccaf585dd9176aff86cd4de8434ad1ad3774d5a0dda3f1c572498c719607aea11cf60b5ecb0150f7dc6d171b94
-EBUILD postgresql-13.13.ebuild 13775 BLAKE2B edf73142c90579158b69e50c6f277a2113abb59e9c481161cffdc07e764a566f30b361f79e0ab0c2aead965da11c188035609a97c305a647b2696501eed8ee2a SHA512 9e6053905ea0326cdd954c71a8f9606323212d717bbae51e6277979a39d65a46a9c1ed8c17b586bfb8de0826db3e6fe15f66c2c3301bdb5211bd60381e98f358
-EBUILD postgresql-13.14.ebuild 13752 BLAKE2B 11e62fb7273b8b16e0ad2e984ccb2a2c0c8d823dfa431d79267a57cc534a45cb45ae0a7369c1e5d18782d4741204fff601d29117ea5f3663931fe097d7b84d15 SHA512 8525928ee03fc8d2427f8688ad001d7687389427a3d74c2b9252b78ee10a4e784b61666a29e8424236315d2dc888a09cfc1f8dbe8a4600b18f71ef70714d1cec
-EBUILD postgresql-14.10.ebuild 13767 BLAKE2B db65b542ae1962773255ab0bc2ac671c513b0b73eb89954546605de6317c9d5868f25cb8c1e9a75e140f3b3d4ee7f475ce9e8e727ff0cefe207ea77006640805 SHA512 bbb696c51c04c05a17af9e6cd1c7a73b8b26191a273e59f51c8b189b03b37fdd0380cd936fd166b22e3c7aba3d9ff7482698362059b8f55ad1425a0d06b7d77b
-EBUILD postgresql-14.11.ebuild 13745 BLAKE2B 03c1fefa221818aa9cad38fb176fafc1125bad0f197ffbcff1f72b7f463706d713cde231f749b7dffb4963749f4f7760c919444903575b603b4602bcc2f075cf SHA512 f0595cb1c25de04510d86b6069ce936c5b5339d76ddbeecc60453b7545ecd245efb3b1a712aff4b30f3600c8ab83dee8602380a673e05f39fb51e29c189aa98d
-EBUILD postgresql-15.5.ebuild 13826 BLAKE2B 9f6c3356369fae30f0dd4e2d5faf4151d96d55d4cd247616741ee8b23db2adcb95471509a96fe798dd477d81997e11352ccb8b085137891b98451a0cd9cb5992 SHA512 2415d2983367f2415723355755b942787a0f250ad6eb59f2174bf001dcbe483cfbed17b96bd5850d032700554b85d2331a44e8ba6db1267806d7e9b4907029f1
-EBUILD postgresql-15.6.ebuild 13805 BLAKE2B 9defd43448a16f628fdf86550ad37656d375464475f4ec1d043bc926323d426231137f6472739ea0b05d14d0b702df34593966fe3a4194a51295616369af873a SHA512 b7ba07e52e3907cfda0285e2c8f56c2ae682cb188819aa1efa52ed5b54009dbb423702b4869cd677c404b9c18642e50d6413c6ff160b178dda525f52b1e7988c
-EBUILD postgresql-16.1.ebuild 13836 BLAKE2B cca22b68e00a73dfaa17b2ea3f04d24d1ecd459b40f9d713b627cdee35f07857002deed4776c62c401bbb789fb2fb9ad511ede67ddffeb8329a418a3f0135d0d SHA512 988bcd24a5691857d2a2f6f7062814aa3a333e43d193be5a42f0ae7c984ce499cebb318810b7f8e783d25e29d6659d429904fe1f647191c646779f6e209c55de
-EBUILD postgresql-16.2.ebuild 13815 BLAKE2B 7b4e8630cb07dc14ce0df96e20f6847eb97bdb851fb5ed65005d5eb89ff829450f2c5015a69da45750ee43176ae5c4207889dd6ceed7b2cc650a4e4beb0e1a97 SHA512 a3894ee70a914007dcb54b279a45ccce556032dc1fbb7dd98e7a6d0b13e82913bd7466632dafe44b6ffacfd0e81a75ee6df53bc008d53f6a835840f265d0fd90
-EBUILD postgresql-9999.ebuild 12932 BLAKE2B e3ee40dd98963f8842ba47400b6c71f107c0dd926c14a94f301e4bb69b0570338bf20224cef262bd11a66f7212dd2977d99194a8c17bf4bdd78c21e4c461f9fb SHA512 64d73783080d3cef4163d97e116aa5d7088cdc5a3a453dd6a325e0653b0ce55638a5cc16ea41da0e7808879cd7dccf2d909064ac32ab8c1a392a92e1549a9e5f
+DIST postgresql-12.19.tar.bz2 21218699 BLAKE2B d858108017ad9fd1c9813080c18f21cf2574f2b21a9881ae35e0291f3710664890983e71a2cd1c45f10b4c1ff8ab19d9d2383e35217b55e8e67b72b2673bec29 SHA512 c08cb8f902728ea5ab5872fa2e37f8646f6beb4df39425a5a42db30ce86fa499a2059fa57b4eac3089bfba875a85a55144eba5ce6c525c642ba33c82f264b1b5
+DIST postgresql-13.15.tar.bz2 21597871 BLAKE2B 63631ea73e42fb846a9a78473d5929a2c9bf91016ef0808578d6ff6ce1e3d862ae1f8524f26f074f2adb30e55fd941ef6ce9b27c5eaa83f41d165f45958e0445 SHA512 6614b3ccf3ab41f34fc36e75f501853b13e0b9900728b8f8bbf8e3ac22783d18b0f05183beab778eb84ca71665574063fac6e1153bcd86bac252a8a9bbff0d8b
+DIST postgresql-14.12.tar.bz2 22390865 BLAKE2B 09848b504c2c970d4b3a5ee3b7eec951f8966c3fcfdd77cea9a001b305ffa8ad55ea08eee2219abb6eb2e6478dddfcd29889308ee8f72eadb39d777e55f5f848 SHA512 cb6729d0fba8aa705c92beecdc5cd1131e64337db6de038da6f5b75c7d9e65381f93f6ebfac601d5622399b9485e8ec558be53e6a7dcc59350a9b053f8836bf9
+DIST postgresql-15.7.tar.bz2 23112318 BLAKE2B 6a31ca8b833caf9400ce176211005c2b522e3f431717ad6b73c0df842121d3898dcfddce4626f961539a80b09960fb7659703e6f82d5eadff7217789893b9279 SHA512 8a03e2d7a267f0d11c27d90a2fb605725accb41cfebba2b56c735d4af45bb5f977d4ba051a02ac8d31f93253372df3d3b5efdd159e258d6fcc506b73e3ad6e27
+DIST postgresql-16.3.tar.bz2 24737644 BLAKE2B 3390c781631645e9f51f31885d20cfeabf64992af9d56addaf847233e0c652aac8751dcf3a7c041962972de084722aee6070437c0517f729b200baf9e4bda2a3 SHA512 dc1c8d4fbc8e53e9be91dcf1b644b3969bd634f11bf5a1c4fe16619fd386f3349a5509788d43e6a57d099ad75233026d4dd4e0bb180ffc747fd3c1a575c51a5f
+EBUILD postgresql-12.19-r2.ebuild 13086 BLAKE2B d8cdb89621a072cda1747441c88a3e49c430739e0a3785d5112b7b4671dd692373cd2145ae965bce251a89d63b408e660106b935cae3580bdb0007ae31e07d28 SHA512 010d8052a79f4a3006bba020ee79b14c937808daec1fe80bd58383aee3d658971ceb9d2750be7b636f11c1a712fa7dc76de35debb04207b571cfa56cee31352b
+EBUILD postgresql-13.15-r2.ebuild 13520 BLAKE2B 93deeac89aee3a2c2b388edd6d16ad1ec74669a795bc5bd0143a72dfe17d01ec3f64c85f84eac680a816f62eb4fc846c85d1ca8529c889ed6f79c9ee494388c1 SHA512 d54ed4dd5f6a71a6f7f89564f2a1089b1479aea1a26e2ee83df04c027aebe0d4e9c599fbf448341481b7569b58da75fad8b9d4ca54645380fc2b424c65b4efe7
+EBUILD postgresql-14.12-r2.ebuild 13511 BLAKE2B 163634f66d4add4dbbafb1ee8ea6dff3e4e5cbf35117dff28b5c1577ec71eb9d1ecf85b481247dfc30622f2e4785a4595b2fbd079760a33bd918d2878ea888dd SHA512 0c86440928f8e8b0c30705ebf77b5b260987840b4c8df989e02cde5fa0fac045c49d45a04a5e3a8eeac2c80007050e0e1c0d502b3061f5c56b02841b2253e527
+EBUILD postgresql-15.7-r2.ebuild 13573 BLAKE2B 26330426a892e7de3f0b441327984aa7a959f303c9572c72076ae7ec004168f992596506008b836c4d1ee2595329bca80a22eba76e5844b4928b478012a3f307 SHA512 0052c5ab32c994fe464ddff22eed6f768e7ddd4efb5ad3c8be73b1b73afb40d98788073b084e513194d21ec20df890c9c785c5c04fd8d3c4ed72f5ee32fb4cb4
+EBUILD postgresql-16.3-r2.ebuild 13583 BLAKE2B 466c7178312b160e43118a92aa5200d132ebd3d09d1df2e7d1f9cf32b5ec1d292edcbb02cb5ff9246755256c859f6d14d542101d7cf986b28fa87e422695bd72 SHA512 6f2f36e77b2263d2f0dc53bce3f601f441de1d3fc4e34ef430e86558d176be4b6f27faabb4b6d0d05ed34bc60342dfa1c06142637624de1ea811430c13a43ccd
+EBUILD postgresql-9999.ebuild 14262 BLAKE2B 666cd28147b2d18c9e3ed623067f6168f2883e936cdc6438672a9b363e050530d50c284905d2b556de3af05d8f09fbac05049aac2e56da5840f56030e43cddf5 SHA512 f1764f55850e4ee8377c5f9bc1989f25ebca4b796c54b84497dca25e644bb1ee238185cdb8e6391ac154c44ec4d254d024a958823b240057f9d91f63c8ffe648
MISC metadata.xml 653 BLAKE2B b5b85d83ee78ac502e2707d156e2fadf6fea857160e2f48da51c755e221c52a14b9eb04354202287f4aba15c274c07ba7b0911c76fd034bfa774ce3500ccb165 SHA512 fd543af224f6f8677e138cb1db7154d2444295c45df8696e3584911943176023d8d1b179f6b16d88ffc6d290265ec1b2f4c902cf95cc79eb37599ae3635b0942
diff --git a/dev-db/postgresql/postgresql-12.17.ebuild b/dev-db/postgresql/postgresql-12.17.ebuild
deleted file mode 100644
index 51c7e054b6b5..000000000000
--- a/dev-db/postgresql/postgresql-12.17.ebuild
+++ /dev/null
@@ -1,452 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10,11,12} )
-LLVM_MAX_SLOT=17
-
-inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
-
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~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 nls pam perl python +readline
- selinux +server systemd ssl static-libs tcl uuid xml zlib"
-
-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? ( virtual/krb5 )
-ldap? ( net-nds/openldap:= )
-llvm? (
- <sys-devel/llvm-18:=
- <sys-devel/clang-18:=
-)
-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=
- <dev-libs/openssl-3.2 )
-tcl? ( >=dev-lang/tcl-8:0= )
-xml? ( dev-libs/libxml2 dev-libs/libxslt )
-zlib? ( sys-libs/zlib )
-"
-
-# 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 )
-"
-
-pkg_setup() {
- use llvm && llvm_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}-12.1-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
-
- eapply_user
-}
-
-src_configure() {
- 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
-
- econf \
- --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 !alpha spinlocks) \
- $(use_enable debug) \
- $(use_with icu) \
- $(use_with kerberos gssapi) \
- $(use_with ldap) \
- $(use_with llvm) \
- $(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_enable nls)
-}
-
-src_compile() {
- emake
- emake -C contrib
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- emake DESTDIR="${D}" install -C contrib
-
- dodoc README 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
-
- # 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
-
- cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
- # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
- # On the off-chance that you might need to work with UTF-8 encoded
- # characters in PL/Perl
- plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
- EOF
-
- 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
- emake check
-
- 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
-}
diff --git a/dev-db/postgresql/postgresql-12.18.ebuild b/dev-db/postgresql/postgresql-12.19-r2.ebuild
index 8365c8725242..b0c6363f0d16 100644
--- a/dev-db/postgresql/postgresql-12.18.ebuild
+++ b/dev-db/postgresql/postgresql-12.19-r2.ebuild
@@ -3,10 +3,11 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10,11,12} )
-LLVM_MAX_SLOT=17
+PYTHON_COMPAT=( python3_{10,11,12,13} )
+LLVM_COMPAT=( {15..18} )
+LLVM_OPTIONAL=1
-inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
+inherit flag-o-matic linux-info llvm-r1 pam python-single-r1 systemd tmpfiles
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
@@ -35,10 +36,10 @@ virtual/libintl
icu? ( dev-libs/icu:= )
kerberos? ( virtual/krb5 )
ldap? ( net-nds/openldap:= )
-llvm? (
- <sys-devel/llvm-18:=
- <sys-devel/clang-18:=
-)
+llvm? ( $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}
+ sys-devel/llvm:${LLVM_SLOT}
+ ') )
pam? ( sys-libs/pam )
perl? ( >=dev-lang/perl-5.8:= )
python? ( ${PYTHON_DEPS} )
@@ -83,7 +84,7 @@ selinux? ( sec-policy/selinux-postgresql )
"
pkg_setup() {
- use llvm && llvm_pkg_setup
+ use llvm && llvm-r1_pkg_setup
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
@@ -398,13 +399,6 @@ pkg_config() {
# overridden in the initscript
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
- cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
- # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
- # On the off-chance that you might need to work with UTF-8 encoded
- # characters in PL/Perl
- plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
- EOF
-
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:"
diff --git a/dev-db/postgresql/postgresql-13.13.ebuild b/dev-db/postgresql/postgresql-13.13.ebuild
deleted file mode 100644
index 5e8c350bca7f..000000000000
--- a/dev-db/postgresql/postgresql-13.13.ebuild
+++ /dev/null
@@ -1,464 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10,11,12} )
-LLVM_MAX_SLOT=17
-
-inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
-
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~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 nls pam perl python +readline
- selinux +server systemd ssl static-libs tcl uuid xml zlib"
-
-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? ( virtual/krb5 )
-ldap? ( net-nds/openldap:= )
-llvm? (
- <sys-devel/llvm-18:=
- <sys-devel/clang-18:=
-)
-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=
- <dev-libs/openssl-3.2 )
-tcl? ( >=dev-lang/tcl-8:0= )
-xml? ( dev-libs/libxml2 dev-libs/libxslt )
-zlib? ( sys-libs/zlib )
-"
-
-# 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 )
-"
-
-pkg_setup() {
- use llvm && llvm_pkg_setup
-
- use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
-
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- eapply "${FILESDIR}"/${PN}-13.3-riscv-spinlocks.patch
-
- # 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}-13.8-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
-
- eapply_user
-}
-
-src_configure() {
- 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 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_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
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- emake DESTDIR="${D}" install -C contrib
-
- dodoc README 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
-
- # 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
-
- cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
- # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
- # On the off-chance that you might need to work with UTF-8 encoded
- # characters in PL/Perl
- plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
- EOF
-
- 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
-}
diff --git a/dev-db/postgresql/postgresql-13.14.ebuild b/dev-db/postgresql/postgresql-13.15-r2.ebuild
index 60d28d2d7d08..822fbdabce55 100644
--- a/dev-db/postgresql/postgresql-13.14.ebuild
+++ b/dev-db/postgresql/postgresql-13.15-r2.ebuild
@@ -3,10 +3,11 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10,11,12} )
-LLVM_MAX_SLOT=17
+PYTHON_COMPAT=( python3_{10,11,12,13} )
+LLVM_COMPAT=( {15..18} )
+LLVM_OPTIONAL=1
-inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
+inherit flag-o-matic linux-info llvm-r1 pam python-single-r1 systemd tmpfiles
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
@@ -35,10 +36,10 @@ virtual/libintl
icu? ( dev-libs/icu:= )
kerberos? ( virtual/krb5 )
ldap? ( net-nds/openldap:= )
-llvm? (
- <sys-devel/llvm-18:=
- <sys-devel/clang-18:=
-)
+llvm? ( $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}
+ sys-devel/llvm:${LLVM_SLOT}
+ ') )
pam? ( sys-libs/pam )
perl? ( >=dev-lang/perl-5.8:= )
python? ( ${PYTHON_DEPS} )
@@ -83,7 +84,7 @@ selinux? ( sec-policy/selinux-postgresql )
"
pkg_setup() {
- use llvm && llvm_pkg_setup
+ use llvm && llvm-r1_pkg_setup
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
@@ -406,13 +407,6 @@ pkg_config() {
# overridden in the initscript
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
- cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
- # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
- # On the off-chance that you might need to work with UTF-8 encoded
- # characters in PL/Perl
- plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
- EOF
-
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:"
diff --git a/dev-db/postgresql/postgresql-14.10.ebuild b/dev-db/postgresql/postgresql-14.10.ebuild
deleted file mode 100644
index 341c1e37a966..000000000000
--- a/dev-db/postgresql/postgresql-14.10.ebuild
+++ /dev/null
@@ -1,464 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10,11,12} )
-LLVM_MAX_SLOT=17
-
-inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
-
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~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"
-
-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? ( virtual/krb5 )
-ldap? ( net-nds/openldap:= )
-llvm? (
- <sys-devel/llvm-18:=
- <sys-devel/clang-18:=
-)
-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=
- <dev-libs/openssl-3.2 )
-tcl? ( >=dev-lang/tcl-8:0= )
-xml? ( dev-libs/libxml2 dev-libs/libxslt )
-zlib? ( sys-libs/zlib )
-"
-
-# 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 )
-"
-
-pkg_setup() {
- use llvm && llvm_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}-14.5-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
-
- eapply_user
-}
-
-src_configure() {
- 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_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
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- emake DESTDIR="${D}" install -C contrib
-
- dodoc README 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
-
- # 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
-
- cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
- # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
- # On the off-chance that you might need to work with UTF-8 encoded
- # characters in PL/Perl
- plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
- EOF
-
- 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
-}
diff --git a/dev-db/postgresql/postgresql-14.11.ebuild b/dev-db/postgresql/postgresql-14.12-r2.ebuild
index db34b02f91bd..d141a01baf2c 100644
--- a/dev-db/postgresql/postgresql-14.11.ebuild
+++ b/dev-db/postgresql/postgresql-14.12-r2.ebuild
@@ -3,10 +3,11 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10,11,12} )
-LLVM_MAX_SLOT=17
+PYTHON_COMPAT=( python3_{10,11,12,13} )
+LLVM_COMPAT=( {15..18} )
+LLVM_OPTIONAL=1
-inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
+inherit flag-o-matic linux-info llvm-r1 pam python-single-r1 systemd tmpfiles
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
@@ -35,10 +36,10 @@ virtual/libintl
icu? ( dev-libs/icu:= )
kerberos? ( virtual/krb5 )
ldap? ( net-nds/openldap:= )
-llvm? (
- <sys-devel/llvm-18:=
- <sys-devel/clang-18:=
-)
+llvm? ( $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}
+ sys-devel/llvm:${LLVM_SLOT}
+ ') )
lz4? ( app-arch/lz4 )
pam? ( sys-libs/pam )
perl? ( >=dev-lang/perl-5.8:= )
@@ -84,7 +85,7 @@ selinux? ( sec-policy/selinux-postgresql )
"
pkg_setup() {
- use llvm && llvm_pkg_setup
+ use llvm && llvm-r1_pkg_setup
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
@@ -406,13 +407,6 @@ pkg_config() {
# overridden in the initscript
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
- cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
- # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
- # On the off-chance that you might need to work with UTF-8 encoded
- # characters in PL/Perl
- plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
- EOF
-
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:"
diff --git a/dev-db/postgresql/postgresql-15.5.ebuild b/dev-db/postgresql/postgresql-15.5.ebuild
deleted file mode 100644
index aebc9d9ad3be..000000000000
--- a/dev-db/postgresql/postgresql-15.5.ebuild
+++ /dev/null
@@ -1,466 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10,11,12} )
-LLVM_MAX_SLOT=17
-
-inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
-
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~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? ( virtual/krb5 )
-ldap? ( net-nds/openldap:= )
-llvm? (
- <sys-devel/llvm-18:=
- <sys-devel/clang-18:=
-)
-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=
- <dev-libs/openssl-3.2 )
-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 )
-"
-
-pkg_setup() {
- use llvm && llvm_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}-15_beta3-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
-
- eapply_user
-}
-
-src_configure() {
- 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
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- emake DESTDIR="${D}" install -C contrib
-
- dodoc README 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
-
- # 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
-
- cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
- # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
- # On the off-chance that you might need to work with UTF-8 encoded
- # characters in PL/Perl
- plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
- EOF
-
- 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
-}
diff --git a/dev-db/postgresql/postgresql-15.6.ebuild b/dev-db/postgresql/postgresql-15.7-r2.ebuild
index aaea88b1abe6..740bb9acf2d0 100644
--- a/dev-db/postgresql/postgresql-15.6.ebuild
+++ b/dev-db/postgresql/postgresql-15.7-r2.ebuild
@@ -3,10 +3,11 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10,11,12} )
-LLVM_MAX_SLOT=17
+PYTHON_COMPAT=( python3_{10,11,12,13} )
+LLVM_COMPAT=( {15..18} )
+LLVM_OPTIONAL=1
-inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
+inherit flag-o-matic linux-info llvm-r1 pam python-single-r1 systemd tmpfiles
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
@@ -35,10 +36,10 @@ virtual/libintl
icu? ( dev-libs/icu:= )
kerberos? ( virtual/krb5 )
ldap? ( net-nds/openldap:= )
-llvm? (
- <sys-devel/llvm-18:=
- <sys-devel/clang-18:=
-)
+llvm? ( $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}
+ sys-devel/llvm:${LLVM_SLOT}
+ ') )
lz4? ( app-arch/lz4 )
pam? ( sys-libs/pam )
perl? ( >=dev-lang/perl-5.8:= )
@@ -85,7 +86,7 @@ selinux? ( sec-policy/selinux-postgresql )
"
pkg_setup() {
- use llvm && llvm_pkg_setup
+ use llvm && llvm-r1_pkg_setup
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
@@ -408,13 +409,6 @@ pkg_config() {
# overridden in the initscript
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
- cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
- # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
- # On the off-chance that you might need to work with UTF-8 encoded
- # characters in PL/Perl
- plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
- EOF
-
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:"
diff --git a/dev-db/postgresql/postgresql-16.1.ebuild b/dev-db/postgresql/postgresql-16.1.ebuild
deleted file mode 100644
index f86079824aee..000000000000
--- a/dev-db/postgresql/postgresql-16.1.ebuild
+++ /dev/null
@@ -1,467 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10,11,12} )
-LLVM_MAX_SLOT=17
-
-inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
-
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~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? (
- <sys-devel/llvm-18:=
- <sys-devel/clang-18:=
-)
-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=
- <dev-libs/openssl-3.2 )
-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 )
-"
-
-pkg_setup() {
- use llvm && llvm_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}-15_beta3-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
-
- eapply_user
-}
-
-src_configure() {
- 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
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- emake DESTDIR="${D}" install -C contrib
-
- dodoc README 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
-
- # 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
-
- cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
- # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
- # On the off-chance that you might need to work with UTF-8 encoded
- # characters in PL/Perl
- plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
- EOF
-
- 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
-}
diff --git a/dev-db/postgresql/postgresql-16.2.ebuild b/dev-db/postgresql/postgresql-16.3-r2.ebuild
index 520395881338..f0ca408471e6 100644
--- a/dev-db/postgresql/postgresql-16.2.ebuild
+++ b/dev-db/postgresql/postgresql-16.3-r2.ebuild
@@ -3,10 +3,11 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10,11,12} )
-LLVM_MAX_SLOT=17
+PYTHON_COMPAT=( python3_{10,11,12,13} )
+LLVM_COMPAT=( {15..18} )
+LLVM_OPTIONAL=1
-inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
+inherit flag-o-matic linux-info llvm-r1 pam python-single-r1 systemd tmpfiles
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
@@ -36,10 +37,10 @@ virtual/libintl
icu? ( dev-libs/icu:= )
kerberos? ( app-crypt/mit-krb5 )
ldap? ( net-nds/openldap:= )
-llvm? (
- <sys-devel/llvm-18:=
- <sys-devel/clang-18:=
-)
+llvm? ( $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}
+ sys-devel/llvm:${LLVM_SLOT}
+ ') )
lz4? ( app-arch/lz4 )
pam? ( sys-libs/pam )
perl? ( >=dev-lang/perl-5.8:= )
@@ -86,7 +87,7 @@ selinux? ( sec-policy/selinux-postgresql )
"
pkg_setup() {
- use llvm && llvm_pkg_setup
+ use llvm && llvm-r1_pkg_setup
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
@@ -409,13 +410,6 @@ pkg_config() {
# overridden in the initscript
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
- cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
- # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
- # On the off-chance that you might need to work with UTF-8 encoded
- # characters in PL/Perl
- plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
- EOF
-
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:"
diff --git a/dev-db/postgresql/postgresql-9999.ebuild b/dev-db/postgresql/postgresql-9999.ebuild
index 1fa775af92f2..e5eaa285027b 100644
--- a/dev-db/postgresql/postgresql-9999.ebuild
+++ b/dev-db/postgresql/postgresql-9999.ebuild
@@ -3,25 +3,38 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10,11,12} )
+PYTHON_COMPAT=( python3_{10,11,12,13} )
+LLVM_COMPAT=( {15..18} )
+LLVM_OPTIONAL=1
-inherit flag-o-matic git-r3 linux-info meson pam python-single-r1 \
+inherit flag-o-matic linux-info llvm-r1 meson pam python-single-r1 \
systemd tmpfiles
-KEYWORDS=""
+DESCRIPTION="PostgreSQL RDBMS"
+HOMEPAGE="https://www.postgresql.org/"
+LICENSE="POSTGRESQL GPL-2"
-SLOT="9999"
+SLOT=$(ver_cut 1)
-EGIT_REPO_URI="https://git.postgresql.org/git/postgresql.git"
+if [[ $PV = *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://git.postgresql.org/git/postgresql.git"
+else
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-LICENSE="POSTGRESQL GPL-2"
-DESCRIPTION="PostgreSQL RDBMS"
-HOMEPAGE="https://www.postgresql.org/"
+ MY_PV=${PV/_/}
+ SRC_URI="https://ftp.postgresql.org/pub/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
+ S="${WORKDIR}/${PN}-${MY_PV}"
+fi
-IUSE="debug +icu kerberos ldap llvm +lz4 nls pam perl python +readline
- selinux server systemd ssl static-libs tcl uuid xml zlib zstd"
+IUSE="debug doc +icu kerberos ldap llvm +lz4 nls pam perl python +readline
+ selinux systemd ssl static-libs tcl test uuid xml zlib zstd"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+REQUIRED_USE="
+llvm? ( ${LLVM_REQUIRED_USE} )
+python? ( ${PYTHON_REQUIRED_USE} )
+"
+RESTRICT="!test? ( test )"
CDEPEND="
>=app-eselect/eselect-postgresql-2.0
@@ -32,20 +45,22 @@ virtual/libintl
icu? ( dev-libs/icu:= )
kerberos? ( app-crypt/mit-krb5 )
ldap? ( net-nds/openldap:= )
-llvm? (
- sys-devel/llvm:=
- sys-devel/clang:=
-)
+llvm? ( $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}
+ sys-devel/llvm:${LLVM_SLOT}
+ ') )
lz4? ( app-arch/lz4 )
pam? ( sys-libs/pam )
-perl? ( >=dev-lang/perl-5.8:= )
+perl? ( >=dev-lang/perl-5.14:= )
python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:0= )
ssl? ( >=dev-libs/openssl-0.9.6-r1:0= )
systemd? ( sys-apps/systemd )
tcl? ( >=dev-lang/tcl-8:0= )
-uuid? ( dev-libs/ossp-uuid )
-xml? ( dev-libs/libxml2 dev-libs/libxslt )
+xml? (
+ dev-libs/libxml2
+ dev-libs/libxslt
+)
zlib? ( sys-libs/zlib )
zstd? ( app-arch/zstd )
"
@@ -73,37 +88,38 @@ uuid? (
DEPEND="${CDEPEND}
>=dev-lang/perl-5.8
-app-text/docbook-dsssl-stylesheets
-app-text/docbook-sgml-dtd:4.5
-app-text/docbook-xml-dtd:4.5
-app-text/docbook-xsl-stylesheets
-app-text/openjade
-dev-libs/libxml2
-dev-libs/libxslt
-sys-devel/bison
app-alternatives/lex
+sys-devel/bison
nls? ( sys-devel/gettext )
xml? ( virtual/pkgconfig )
"
+
RDEPEND="${CDEPEND}
selinux? ( sec-policy/selinux-postgresql )
"
-pkg_pretend() {
- if ! use server; then
- elog "You are using a live ebuild that uses the current source code as it is"
- elog "available from PostgreSQL's Git repository at emerge time. Given such,"
- elog "the Meson build files may be altered by upstream without notice and the"
- elog "documentation for this live version is not readily available"
- elog "online. Ergo, the ebuild maintainers will not support building a"
- elog "client-only and/or document-free version."
- ewarn "Building server anyway."
- fi
-}
+# 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
+test? (
+ >=dev-lang/perl-5.14:=
+ dev-perl/IPC-Run
+ virtual/perl-Test-Simple
+ virtual/perl-ExtUtils-MakeMaker
+)
+"
pkg_setup() {
CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
+ use llvm && llvm-r1_pkg_setup
use python && python-single-r1_pkg_setup
}
@@ -118,42 +134,30 @@ src_prepare() {
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
if use pam ; then
- sed -e "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
+ sed "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
-i src/backend/libpq/auth.c || \
die 'PGSQL_PAM_SERVICE rename failed.'
fi
- eapply_user
+ default
}
src_configure() {
- local emesonargs=()
-
case ${CHOST} in
*-darwin*|*-solaris*)
use nls && append-libs intl
;;
esac
+ export LDFLAGS_SL="${LDFLAGS}"
+ export LDFLAGS_EX="${LDFLAGS}"
- local i uuid_config=""
- if use uuid; then
- for i in ${UTIL_LINUX_LIBC[@]}; do
- use ${i} && uuid_config="-Duuid=e2fs"
- done
-
- emesonargs+=( ${uuid_config:-"-Duuid=ossp"} )
- fi
-
- use debug && emesonargs+=( "--debug" )
-
- local PO="${EPREFIX}"
- emesonargs+=(
- --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}"
- -Dsystem_tzdata="${PO}/usr/share/zoneinfo"
+ local emesonargs=(
+ --prefix="${EPREFIX}/usr/$(get_libdir)/postgresql-${SLOT}"
+ --datadir="${EPREFIX}/usr/share/postgresql-${SLOT}"
+ --includedir="${EPREFIX}/usr/include/postgresql-${SLOT}"
+ --mandir="${EPREFIX}/usr/share/postgresql-${SLOT}/man"
+ --sysconfdir="${EPREFIX}/etc/postgresql-${SLOT}"
+ -Dsystem_tzdata="${EPREFIX}/usr/share/zoneinfo"
$(meson_feature icu)
$(meson_feature kerberos gssapi)
$(meson_feature ldap)
@@ -170,60 +174,64 @@ src_configure() {
$(meson_feature xml libxslt)
$(meson_feature zlib)
$(meson_feature zstd)
+ $(meson_use !alpha spinlocks)
)
+ use debug && emesonargs+=( "--debug" )
use ssl && emesonargs+=( "-Dssl=openssl" )
- use alpha && emesonargs+=( "-Dspinlocks=false" )
- export LDFLAGS_SL="${LDFLAGS}"
- export LDFLAGS_EX="${LDFLAGS}"
+ local i uuid_config=""
+ if use uuid; then
+ for i in ${UTIL_LINUX_LIBC[@]}; do
+ use ${i} && uuid_config="-Duuid=e2fs"
+ done
+
+ emesonargs+=( ${uuid_config:-"-Duuid=ossp"} )
+ fi
meson_src_configure
}
src_compile() {
meson_src_compile
- meson_src_compile {docs,man}
+
+ if use doc ; then
+ # Generates both manpages and HTML documentation.
+ meson_src_compile docs
+ else
+ meson_src_compile man:alias
+ fi
+}
+
+src_test() {
+ if [[ ${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}
+ meson_src_test
+ export LC_CTYPE=${old_ctype}
+ else
+ ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
+ ewarn 'Skipping.'
+ fi
}
src_install() {
meson_src_install
- dodoc README HISTORY doc/TODO
- dodoc -r "${BUILD_DIR}"/doc/src/sgml/html
-
- # postgresql.eselect places the man files of the selected slot, which may
- # not be this ${SLOT}, hence doins instead of doman
- insinto /usr/share/postgresql-${SLOT}/man/
- doins -r "${BUILD_DIR}"/doc/src/sgml/man{1,3,7}
- docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
-
- 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
-
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
- "${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
+ "${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
- newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
- fi
-
- newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
+ "${FILESDIR}/${PN}.init-9.3-r1" | newinitd - "${PN}-${SLOT}"
- use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
+ insinto "/etc/postgresql-${SLOT}"
+ newins src/bin/psql/psqlrc.sample psqlrc
+ # Create slot specific links to their related executables, so that they're
+ # always available. For example, pg_config9999 is always available whereas
+ # the pg_config is controlled by postgresql.eselect.
local f bn
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-mindepth 1 -maxdepth 1)
@@ -233,7 +241,15 @@ src_install() {
"/usr/bin/${bn}${SLOT/.}"
done
- # Create slot specific man pages
+ # Create slot specific man pages so that they're always available. As above
+ # for the executables, make `man pg_config9999` always refer to the same
+ # manpage, whereas postgresql.eselect controls which manpage `man pg_config`
+ # refers. And, since postgresql.eselect controls the manpages, doman would
+ # actually do the wrong thing for us, hence insinto and doins.
+ insinto "/usr/share/postgresql-${SLOT}/man/"
+ doins -r "${BUILD_DIR}"/doc/src/sgml/man{1,3,7}
+ docompress /usr/share/postgresql-"${SLOT}"/man/man{1,3,7}
+
local bn f mansec slotted_name
for mansec in 1 3 7 ; do
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
@@ -243,54 +259,90 @@ src_install() {
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
bn=$(basename "${f}")
- slotted_name=${bn%.${mansec}}${SLOT}.${mansec}
+ 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}/SELECT.7" > "${slotted_name}"
;;
*)
- echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
+ echo ".so ${rel_manpath}/${bn}" > "${slotted_name}"
;;
esac
done
- popd > /dev/null
+ popd > /dev/null || die "popd failed"
done
+ # All of the use flag influenced installs/removals begin here.
+ use doc && dodoc -r "${BUILD_DIR}"/doc/src/sgml/html
+
+ use pam && pamd_mimic system-auth "${PN}-${SLOT}" auth account session
+
if use prefix ; then
keepdir /run/postgresql
fperms 1775 /run/postgresql
fi
+
+ # 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
+
+ if use systemd; then
+ newbin "${FILESDIR}/${PN}-check-db-dir" "${PN}-${SLOT}-check-db-dir"
+
+ sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
+ "${FILESDIR}/${PN}.service-9.6-r1" | \
+ systemd_newunit - "${PN}-${SLOT}.service"
+ newtmpfiles "${FILESDIR}/${PN}.tmpfiles" "${PN}-${SLOT}.conf"
+ fi
}
pkg_postinst() {
- use systemd && tmpfiles_process ${PN}-${SLOT}.conf
- postgresql-config update
+ use systemd && tmpfiles_process "${PN}-${SLOT}.conf"
- elog "If you need a global psqlrc-file, you can place it in:"
- elog " ${EROOT}/etc/postgresql-${SLOT}/"
+ # See comment in pkg_postrm().
+ [[ ${SLOT} = $(postgresql-config show) ]] && postgresql-config update
- elog
elog "Gentoo specific documentation:"
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
elog
elog "Official documentation:"
- elog "${EROOT}/usr/share/doc/${PF}/html"
+ if use doc ; then
+ elog "${EROOT}/usr/share/doc/${PF}/html"
+ else
+ elog "https://www.postgresql.org/docs/${SLOT/9999*/devel}/index.html"
+ fi
+ elog
+
+ elog "You can find release notes at:"
+ if use doc ; then
+ elog "${EROOT}/usr/share/doc/${PF}/html/release.html"
+ else
+ elog "https://www.postgresql.org/docs/${SLOT/9999*/devel}/release.html"
+ fi
elog
- elog "The default location of the Unix-domain socket is:"
- elog " ${EROOT}/run/postgresql/"
+
+ elog "If you need a global psqlrc-file, you can place it in:"
+ elog " ${EROOT}/etc/postgresql-${SLOT}/"
elog
- elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
- elog "so that it contains your preferred locale, and other options, in:"
+ elog "The next two items only apply when running a server on this machine."
+ elog "------------------------------------------------------------------------"
+ elog "1. You may want to edit PG_INITDB_OPTS in the following file so that it"
+ elog " contains your preferred locale, and other options, before"
+ elog " initializing the cluster:"
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}"
+ elog "2. Then, run the following command to initialize database cluster:"
+ elog " emerge --config =${CATEGORY}/${PN}:${SLOT}"
}
pkg_prerm() {
if [[ -z ${REPLACED_BY_VERSION} ]] ; then
+ ewarn "Were you running PostgreSQL ${SLOT} as a server? If no, ignore the rest"
+ ewarn "of this warning."
+ ewarn
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
@@ -301,7 +353,11 @@ pkg_prerm() {
}
pkg_postrm() {
- postgresql-config update
+ # The links managed by eselect are unversioned only, and would only be
+ # impacted if the selected slot and ebuild slot are the same. For example,
+ # if the selected slot is SLOT+1, then nothing that happened with this
+ # ebuild will impact the unversioned links.
+ [[ ${SLOT} = $(postgresql-config show) ]] && postgresql-config update
}
pkg_config() {
@@ -358,7 +414,7 @@ pkg_config() {
sleep 5
eend 0
- if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
+ 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."
@@ -366,9 +422,9 @@ pkg_config() {
einfo "Creating the data directory ..."
if [[ ${EUID} == 0 ]] ; then
- mkdir -p "${DATA_DIR}"
- chown -Rf postgres:postgres "${DATA_DIR}"
- chmod 0700 "${DATA_DIR}"
+ 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 ..."
@@ -388,13 +444,6 @@ pkg_config() {
# overridden in the initscript
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
- cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
- # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
- # On the off-chance that you might need to work with UTF-8 encoded
- # characters in PL/Perl
- plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
- EOF
-
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:"
@@ -423,20 +472,3 @@ pkg_config() {
einfo "instead of 'pg_ctl'."
fi
}
-
-src_test() {
- if [[ ${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}
- meson_src_test
- 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
- ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
- ewarn 'Skipping.'
- fi
-}
diff --git a/dev-db/pspg/Manifest b/dev-db/pspg/Manifest
index 35f9f6239e99..de550107987c 100644
--- a/dev-db/pspg/Manifest
+++ b/dev-db/pspg/Manifest
@@ -1,7 +1,9 @@
DIST pspg-5.5.4.tar.gz 2415002 BLAKE2B 1b7712318069c5fe69afe5e7477aa2a415d007a1f41af866726b11e65073c507ed12a51de14fc39ee06df9ccbe2763472332f55dda49167547e6ba590850bb5b SHA512 f13f4d7424d7b172a1fc5f963e7390a53f73f5c53ea4af7a9bed32dabc99f657e46cae550e8d5c7dd756b3496dd2ad665f3fd6551e54f9add1b3aef491709572
DIST pspg-5.5.8.tar.gz 2428371 BLAKE2B 09021f61c51698fd85ccf61c559014b6ffecad72079abf10c7dc50249bffbe34b86afa124a30a8d4f5c360af069ec623a4815288267a2ee225f7030de14b76d4 SHA512 f3fa9bc097ac43ab0113586b3474e9137c84b2ca844c45397a7ec185a01c66daa204f7bf739f7b65f1d741de02be8f7c1ba7df5abaa962008f33f6082c576b9f
DIST pspg-5.8.1.tar.gz 2442046 BLAKE2B 173b7250299927f140597d510e41aacad8be10b58e14094cbca2c2c3648925f71267a44728084ebf10cb832669c601ba121e529d7130b15cb2ab6accb3a9f77e SHA512 1ffcae86559f17e2cafba31a7bf9ba0170f4cdf8f2f5885a3650fea30463327e6a040e7746a8a074302fbb5080ce032a10775da503a5788a622203669609706f
+DIST pspg-5.8.5.tar.gz 2445232 BLAKE2B 90d6ca969bd365fea1801fb9125e4d3c5e92b916c7a13ae949a8170a7566d862d436c5d23358a6433ffa90bbf2551013b2f12a6c204614e0974c1fe6698c580e SHA512 f33be2e0ddd8f56054c82f4f3a8ea531faef2f9ca21a706f894f5419e8122d291a9174495d68dc8637728cc57fe764e63c34b843e8ed8a3b3ff7546a6c904e7e
EBUILD pspg-5.5.4.ebuild 439 BLAKE2B db8b1de5b6be0673a72436bdae85c087ad23de36ce212e9601e3a698f85a8a73e5ac0b5333e42d0d663ab21ee79662cce97d68371df15271b02e7444672cee6f SHA512 27f6dde8fc504e29d059dac4a35189f46f95f45ecf4fbc234f6c51b7803ea96dcb8445ff5e3ea66783d2376912b47f84bbe357de27131c8cddebceead271b702
EBUILD pspg-5.5.8.ebuild 552 BLAKE2B f2205e51ed599efcc708d5f6baaeefd30fbd3692f0faf7bf51b62da0c7d34256135e8cb9b28a7ecaf21645a48e5e58eab71015e2eba1521b5eaa265bf056974b SHA512 c9d19d2162d95e203fe7bdca23c32bb73c4381af36de8dc9c598997779b5467cb69dbf93c3f3ef0c46e0ff188041d7c1e3c78203306cbabbb30fb84bff34e6c8
EBUILD pspg-5.8.1.ebuild 557 BLAKE2B 1eaed8396be4fc1293e0ad933ca3b33dac2c390c977f1b2fa2d1e58978fe948531871874d839726fab8a285436fc8e97dee0f2e3d98f2bb22721649d0ffcc753 SHA512 655edc70f86ce3257d04c473f4c7d11a91c0ba75cf71f6b208218ec193794a4735f0de58a03be60480fbb079a1c5985ddd9ecdd583c43fb814e922115e8fd616
-MISC metadata.xml 661 BLAKE2B 20e3f40d583fa5cfd41028757d8b332ab5cced7d76c9aa8e96451bf3d10b549cbd42a25193fa20054bbed0782eb51663742fb25e95d93505f76c4916e8bc6a5e SHA512 0c2c8ce1aefd384146b27d84886783ea0bd8b7f1d62de60a485db501dc642778f2a016d2f848eaa2f9aa17204270d2b31833c7ad3219b93797424d569758250e
+EBUILD pspg-5.8.5.ebuild 662 BLAKE2B 17db5033506ba2f9b65803e276596045b2706914c9050ba861405096fe0e8509e0ffd860ae8bf813f52f5190ff6ab2fd13d8146a9947f6b3311545349928ab13 SHA512 e2fb2e9a1e560ea7e111776e7b2e360295308d49fd9bd487712961c6afa7e8a0f5cd7480b1e5c5481ac8712b257095b1373e4c5f62ee0dda7e32bd1a5fbfdd78
+MISC metadata.xml 746 BLAKE2B fbf6df3b4bddc3c61508c50c9ecdd1f0fa0191b1123f60da461160a4b667a9b810dbe15effcef7776f97b0fa9de9a0ed6050d25e06e8d922f4bec519456c24c2 SHA512 e03312cd437fed48a22fae4a28ab64c6633f6079204809fd3fd26eee255c5a979c05520348a9bd9396fefa611f31225798d771616ba27ed96b8e3c637eadf0d6
diff --git a/dev-db/pspg/metadata.xml b/dev-db/pspg/metadata.xml
index 334189f9edab..b852c5503b93 100644
--- a/dev-db/pspg/metadata.xml
+++ b/dev-db/pspg/metadata.xml
@@ -12,4 +12,7 @@
supports searching, selecting rows, columns, or block and export
selected area to clipboard.
</longdescription>
+ <upstream>
+ <remote-id type="github">okbob/pspg</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-db/pspg/pspg-5.8.5.ebuild b/dev-db/pspg/pspg-5.8.5.ebuild
new file mode 100644
index 000000000000..30c83cc68ff9
--- /dev/null
+++ b/dev-db/pspg/pspg-5.8.5.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1
+
+DESCRIPTION="A better pager for CLI database clients and can be used in place of psql"
+HOMEPAGE="https://github.com/okbob/pspg"
+SRC_URI="https://github.com/okbob/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="postgres"
+RESTRICT="test"
+
+RDEPEND="
+sys-libs/ncurses:=
+sys-libs/readline:=
+postgres? ( dev-db/postgresql:= )
+"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ econf $(use_with postgres postgresql)
+}
+
+src_install() {
+ default
+
+ newbashcomp bash-completion.sh ${PN}
+}
diff --git a/dev-db/psqlodbc/Manifest b/dev-db/psqlodbc/Manifest
index 336449c1952e..9f5e38f424be 100644
--- a/dev-db/psqlodbc/Manifest
+++ b/dev-db/psqlodbc/Manifest
@@ -1,7 +1,9 @@
DIST psqlodbc-11.01.0000.tar.gz 919372 BLAKE2B ce84b4bb210c4c3c3f2a3e9eae713c875e4bae491e20f207f740a02af69cb771f504de6b1da06fcd12306d986299e1537184a6787eac80e320eea6d8c13dc142 SHA512 57762bfa9925012946e56a3d5b815af00078299c121ba0142865c06f877cabf314512e4e6efc654589fb409c4dd2cbb9a3b7fd7aa1a6ace361879552774b11d7
DIST psqlodbc-13.00.0000.tar.gz 940031 BLAKE2B 346a06b5b7b16ead1d87b7bdadcd050102b1b30e19d7bf236e134439711e4832b193241d6ea02b5628a64afbfad77b0c6d3bdf921fd3ae3a5cf696a58100e53c SHA512 c8d5cb0ce304e702f3c6f0b2e1c681df283973a8459a820f92df806814659eb15668c38a855a69b44cf5ebe459283bef1ca1cba44df0fe16a361e614f5481bc7
DIST psqlodbc-15.00.0000.tar.gz 945814 BLAKE2B 0170ae9bcd1a77b0655b4d33543a7cca3551d845d8a36dd5d809567e7d7669defb278790f169a80757d41ffb5cbbfda68f0536f4fe25698e85a1fe570736409c SHA512 ae511edb9889e6cc7d05d11ee384db1aa1a52b9cac035b3449b03ab91ada5cc0d737fef34addd4be6a3ef839b68735874ee7125be9ae272328c44631fd2269e2
+DIST psqlodbc-16.00.0000.tar.gz 946997 BLAKE2B 9a4d787b1a29bb8ce874473fb126db7677ebc5e37f502b34c877341aa04c77c8acbb4d2353929631c7949ef9b482091b2dfbddf6934005d66446797bf8abcc22 SHA512 ad971cd29e431225d03faf5ebc0ba7a9f17d20dd70106867f05df8dc1e509413d4db533101a1b3418480ad758b7626c178ec345c5ff7e9409f7fcfbea9427166
EBUILD psqlodbc-11.01.0000.ebuild 690 BLAKE2B 9f70ec2a0c718567611936ac3cadadee457a2338bb3792ed4a14ff2f84ca4f7c70b1d63b2a731abac47530e17436af414f0c0864ee7aa58717efc2866116cea9 SHA512 308f135df50933cc6a0a41cfe5cc1468bad9e76163383e73101437eb8011d0e45dcdbf34ac50f4cda354aeb3357d439254baa2022e3952f92681c8509a36ad12
EBUILD psqlodbc-13.00.0000.ebuild 727 BLAKE2B bcdb118196c22fdf7224888d82749c34552d3f968798d883ad7306bcde8ce15a9178dcc288781088822b6b952cbbb844b3031cfafd68d33b4f29a8f3bf166bbe SHA512 d0d5a2f32e1c1ba83b5af483eef438eec84616eb46939609789c475e40996df7a0d014d2b434874474cdc96de1834ef41458e4308b7f6b6ac7b22d5dc05d20e3
EBUILD psqlodbc-15.00.0000.ebuild 727 BLAKE2B 99d9aef213a81973531cf93b8780970aed255f7597eefdbae065b5064faed127221d4b14f5004015f1264c90065d65c689fb1efe76b21730d3337e570c19804a SHA512 5991ac6e312f0f47438b95a4dc192d60a97e09a6e4bf56d0e1deb4f28c4b4c322dbd33ad061db13481a3923ac2ddc0f941f7079e6080abe0773ce96fec390808
+EBUILD psqlodbc-16.00.0000.ebuild 808 BLAKE2B 589e4c4e0c594f3b3134f7c5708ff4a4032e9eede25021afbb058603a760738941823c1e0c0c45e40c8a7786d548f01646be461cf375c64693b68a366c92ce9e SHA512 82e0a58e46367f6f1502d8818bcca630741dda0765ba115dbd09cdecb31c6e370488da279bfcafb5e49c97b646f7e12a7a58451474c899d85ced501845035b07
MISC metadata.xml 389 BLAKE2B a8b15e826ffaaa01a299f5500c8d6ed57ffc4d387e4874af0f61d2a04b9e83dc825efc33bf254b1f1f712f6c151937eab607ba26ddd148a4c72bb090ded5c294 SHA512 cc7a0ea725654842c246f8a4d56cff2cd6186209f5232689845739d9ddde789df42bb914011df607313306afdf414a12f719e04517b5e7b58e4bb7f738d3bd12
diff --git a/dev-db/psqlodbc/psqlodbc-16.00.0000.ebuild b/dev-db/psqlodbc/psqlodbc-16.00.0000.ebuild
new file mode 100644
index 000000000000..eb924528a69d
--- /dev/null
+++ b/dev-db/psqlodbc/psqlodbc-16.00.0000.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Official ODBC driver for PostgreSQL"
+HOMEPAGE="https://odbc.postgresql.org/"
+SRC_URI="https://ftp.postgresql.org/pub/odbc/versions/src/${P}.tar.gz"
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="iodbc ssl threads"
+
+DEPEND="dev-db/postgresql:*[ssl?]
+ !iodbc? ( dev-db/unixODBC )
+ iodbc? ( dev-db/libiodbc )
+"
+RDEPEND="${DEPEND}"
+
+# Tests require installation and a server setup for the purpose.
+RESTRICT="test"
+
+DOCS=( readme.txt )
+HTML_DOCS=(
+ docs/config.html
+ docs/config-opt.html
+ docs/editConfiguration.jpg
+ docs/release-7.3.html
+ docs/release.html
+)
+
+src_configure() {
+ econf \
+ $(use_with iodbc) \
+ $(use_with !iodbc unixodbc) \
+ $(use_enable threads pthreads)
+}
diff --git a/dev-db/qdbm/Manifest b/dev-db/qdbm/Manifest
index ec24a2ed6be4..865559d10f71 100644
--- a/dev-db/qdbm/Manifest
+++ b/dev-db/qdbm/Manifest
@@ -1,8 +1,9 @@
AUX qdbm-configure.patch 5913 BLAKE2B a899d4d281eddbe974afd5969e4766d5f2eb55dfa545e6187003c4bb12f3224ead704cc1b14fd33841c8a9788832763d641ef04b5e49eee307aa71412d1301a4 SHA512 a15c513243f2b4976acf9a27f8572726bbaa7e55c7314228fa9fbc5899454c12d8c7efbf7ab24f1b3af427e64daded8ace1a5e4af4a227cae7fbb436e875461c
AUX qdbm-darwin.patch 1060 BLAKE2B 76cabc68ade7ab738d99f2f60902a65aa1d2e617b2ca0665ad9281b0956ad02f480302bdbc295f1f04b9b9c67d5fc1e7a983e9444bcf31cbf69190b2a2f3dd73 SHA512 eb249d0fb3b3e91234798de8809ea69e6fb4e57940df8a096a63f0268ffa74656972ebc521398e161fbec8092a3d8ac276d0635bd6f6e1eec43b30a676162427
AUX qdbm-perl.patch 1260 BLAKE2B e180ba6c2d57f6d813bbc6ae01ed787f6262a290eb59253b8950ec6f80ed29964e41cd3297b063db62e8c726a8e57399fe4ee52e67887bcaa74fad829b0b372f SHA512 a7356c2f5a4313e7da2524a6276bca5720459858d8619bfd8e6514cd9c1cd9aa1a2f7f0592e5ad1ee8b05e7e34452761e26be351f8e933e79a75cb4d19c862f3
+AUX qdbm-ruby.patch 2517 BLAKE2B 504437bdb8858e8970ddcd61b05903de5aa1b0bc3c6139cad0caf4e2bd4e0dce52abccebb8029cb896b9e451182e02a38e7f768c7fbf895f121e804da3f5c9eb SHA512 1346e3f0e9a4feab58e79907a186da15488dd8391fac29aa9cfecf81a34170bd831e9238e3e946c7c13ab72c2bb16f3ec0930694cfa267717c7c171cf0037e02
AUX qdbm-ruby19.patch 10116 BLAKE2B 9a15c5d2e0cf8237edb78e68b2f9fde4868841bcca6abc08a33d110b9f25283e37fcb306c18bcca5495c7e5cedc778e3a2de2fe8414ce46c661a7c40d517cddc SHA512 f3e6c320a600ad3355fc74a333c28fc2dd904a2a52ca91a51f21b3dd14c7527bf312f5040dbc3e4f61d2dbcc0ade185e226333c79f9a04fc05437a156befc0e7
AUX qdbm-runpath.patch 1133 BLAKE2B 9b1c8c211d8e4075a77a34f3d79ca15cb3d833801777bdb328293047539bdd1a51c08031b3400c11d10732aa7864078ca8db02713a95cd90704e1a9e26f5bd10 SHA512 de8bde4a614617d742131e8025fd661019ec81b803817ef32ffca461b2c8b60c20756f6e6f84d6f23124eed3947ab3573b8c4a05b254f8b4d3e53f0cf7bc8452
DIST qdbm-1.8.78.tar.gz 1015429 BLAKE2B 1b985d856ff18ddfeb2d779694ba9a76006908b4b2a7509d4e3668aded80e08bbde28bcc24762ec27048cdc01dc84f9872dbfc221e8eea6f1c68f5e81cdc69d3 SHA512 480549c56071bf82edf714a611aef863599c858ed63702820ae0890fd2c0029d1a231ed94a8090c74420dd648bd3625d270a5c078b113cbb86a12ef509e19037
-EBUILD qdbm-1.8.78-r4.ebuild 3682 BLAKE2B 68bf64d0297b239c4163b13cfdfe487fdbd3354f5d973475a6773966bcaf7898bcdd7add66ff61518096a28ed1b27b6ba9ab43e952c9c28709de6c5bb3ef908f SHA512 c6c2c1991616dc741233387cd189b225800f771718eeaba3fdcf846d50ecb026e6af7b3b3935a5c103761d3d15517e57abe5971bb92ede073b72f6f837405d60
-MISC metadata.xml 222 BLAKE2B 425bba0db7c4bc483eddcb51bb4151324b62afc42496047413bf9d0480fd731ea78201a8b99c42d9adfa9b20614f9507e8e89a87e9afce32aa9db82f42f827ed SHA512 7ae4d3d64e85fb01194d31b41843c10e3bf6a782e9f308cbe3f0a75c0a07d6af2a88013549b5840b3cd5e766d5044f0da290c31a4800d1823f6eca4028b082da
+EBUILD qdbm-1.8.78-r5.ebuild 3539 BLAKE2B b71b9ffc179b613c644fd4de9e79090146b7ec1c9851370a2bb4636f42e9fa242640f78f34159a788396981200b59e319f13ae1390031fa86a2210fc8c579416 SHA512 5a49722f4ec4559c46bd9c2c3e5433e41475a982d401d5bc53b47283a069161e94ec17ce3b46f7a7381fbccc1b5092c56ba4dee6015c6e846861abf4c02b6394
+MISC metadata.xml 249 BLAKE2B a37da98d387308dab889eab2665b67e4176707f3c115a7a69cb7f4b19f9864b96bc2fe70efa105e627c4b57a7d626f6b23dc2709a225a9debada3356f3cf32a0 SHA512 a5095fb01e05f24583a962e36131b2f02cf2d1dd7a97051200e465ad97db014721de7c1857f5eb736cb0290682e8de833cb4c735f7de8d98cdfae1aed6d3d549
diff --git a/dev-db/qdbm/files/qdbm-ruby.patch b/dev-db/qdbm/files/qdbm-ruby.patch
new file mode 100644
index 000000000000..8b1a946d8d8c
--- /dev/null
+++ b/dev-db/qdbm/files/qdbm-ruby.patch
@@ -0,0 +1,81 @@
+--- a/ruby/curia/extconf.rb
++++ b/ruby/curia/extconf.rb
+@@ -2,10 +2,9 @@
+
+ dir_config("curia")
+
+-home = ENV['HOME']
+-$CFLAGS = "-I. -I../.. -I#{home}/include -I/usr/local/include"
+-$LDFLAGS = "-L../.. -L#{home}/lib -L/usr/local/lib"
+-$LIBS = "-L../.. -L#{home}/lib -L/usr/local/lib"
++$CFLAGS << " -I../.. " << ENV["CFLAGS"]
++$LDFLAGS << " -L../.. " << ENV["LDFLAGS"]
++$LIBS << " -L../.."
+
+ have_library("c", "main")
+ have_library("pthread", "main")
+--- a/ruby/curia/mod_curia.c
++++ b/ruby/curia/mod_curia.c
+@@ -84,7 +84,7 @@
+ *************************************************************************************************/
+
+
+-Init_mod_curia(){
++void Init_mod_curia(void){
+ crinit();
+ ccuriaerror = rb_define_class("CuriaError", rb_eStandardError);
+ ccuriaerror_ENOERR = rb_define_class("CuriaError_ENOERR", ccuriaerror);
+--- a/ruby/depot/extconf.rb
++++ b/ruby/depot/extconf.rb
+@@ -2,10 +2,9 @@
+
+ dir_config("depot")
+
+-home = ENV['HOME']
+-$CFLAGS = "-I. -I../.. -I#{home}/include -I/usr/local/include"
+-$LDFLAGS = "-L../.. -L#{home}/lib -L/usr/local/lib"
+-$LIBS = "-L../.. -L#{home}/lib -L/usr/local/lib"
++$CFLAGS << " -I../.. " << ENV["CFLAGS"]
++$LDFLAGS << " -L../.. " << ENV["LDFLAGS"]
++$LIBS << " -L../.."
+
+ have_library("c", "main")
+ have_library("pthread", "main")
+--- a/ruby/depot/mod_depot.c
++++ b/ruby/depot/mod_depot.c
+@@ -83,7 +83,7 @@
+ *************************************************************************************************/
+
+
+-Init_mod_depot(){
++void Init_mod_depot(void){
+ dpinit();
+ cdepoterror = rb_define_class("DepotError", rb_eStandardError);
+ cdepoterror_ENOERR = rb_define_class("DepotError_ENOERR", cdepoterror);
+--- a/ruby/villa/extconf.rb
++++ b/ruby/villa/extconf.rb
+@@ -2,10 +2,9 @@
+
+ dir_config("villa")
+
+-home = ENV['HOME']
+-$CFLAGS = "-I. -I../.. -I#{home}/include -I/usr/local/include"
+-$LDFLAGS = "-L../.. -L#{home}/lib -L/usr/local/lib"
+-$LIBS = "-L../.. -L#{home}/lib -L/usr/local/lib"
++$CFLAGS << " -I../.. " << ENV["CFLAGS"]
++$LDFLAGS << " -L../.. " << ENV["LDFLAGS"]
++$LIBS << " -L../.."
+
+ have_library("c", "main")
+ have_library("pthread", "main")
+--- a/ruby/villa/mod_villa.c
++++ b/ruby/villa/mod_villa.c
+@@ -97,7 +97,7 @@
+ *************************************************************************************************/
+
+
+-Init_mod_villa(){
++void Init_mod_villa(void){
+ vlinit();
+ cvillaerror = rb_define_class("VillaError", rb_eStandardError);
+ cvillaerror_ENOERR = rb_define_class("VillaError_ENOERR", cvillaerror);
diff --git a/dev-db/qdbm/metadata.xml b/dev-db/qdbm/metadata.xml
index 9a97f3478d31..987ce1bc2ed6 100644
--- a/dev-db/qdbm/metadata.xml
+++ b/dev-db/qdbm/metadata.xml
@@ -1,7 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>hattya@gentoo.org</email>
- </maintainer>
+ <maintainer type="person">
+ <email>hattya@gentoo.org</email>
+ <name>Akinori Hattori</name>
+ </maintainer>
</pkgmetadata>
diff --git a/dev-db/qdbm/qdbm-1.8.78-r4.ebuild b/dev-db/qdbm/qdbm-1.8.78-r5.ebuild
index f1ea111f2075..c4022db45e1f 100644
--- a/dev-db/qdbm/qdbm-1.8.78-r4.ebuild
+++ b/dev-db/qdbm/qdbm-1.8.78-r5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="8"
@@ -14,7 +14,7 @@ SRC_URI="https://fallabs.com/${PN}/${P}.tar.gz"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="bzip2 cxx debug java lzo perl ruby static-libs zlib"
+IUSE="bzip2 cxx java lzo perl ruby static-libs zlib"
RDEPEND="bzip2? ( app-arch/bzip2 )
java? ( >=virtual/jre-1.8:* )
@@ -30,6 +30,7 @@ RUBY_S="${P}/ruby"
PATCHES=(
"${FILESDIR}"/${PN}-configure.patch
"${FILESDIR}"/${PN}-perl.patch
+ "${FILESDIR}"/${PN}-ruby.patch
"${FILESDIR}"/${PN}-ruby19.patch
"${FILESDIR}"/${PN}-runpath.patch
"${FILESDIR}"/${PN}-darwin.patch
@@ -61,14 +62,7 @@ qdbm_foreach_api() {
eautoreconf
;;
configure)
- case "${u}" in
- cgi|java|plus)
- econf $(use_enable debug)
- ;;
- *)
- econf
- ;;
- esac
+ econf
;;
compile)
emake
@@ -99,7 +93,6 @@ src_prepare() {
-e "/^CXXFLAGS/s|$| ${CXXFLAGS}|" \
-e "/^JAVACFLAGS/s|$| ${JAVACFLAGS}|" \
-e 's/make\( \|$\)/$(MAKE)\1/g' \
- -e '/^debug/,/^$/s/LDFLAGS="[^"]*" //' \
Makefile.in {cgi,java,perl,plus,ruby}/Makefile.in || die
find -name "*~" -delete || die
@@ -121,7 +114,6 @@ each_ruby_prepare() {
src_configure() {
econf \
$(use_enable bzip2 bzip) \
- $(use_enable debug) \
$(use_enable lzo) \
$(use_enable zlib) \
--enable-iconv \
diff --git a/dev-db/redis/Manifest b/dev-db/redis/Manifest
index 70d45aa6a525..3a25c17b7aa2 100644
--- a/dev-db/redis/Manifest
+++ b/dev-db/redis/Manifest
@@ -17,7 +17,9 @@ AUX redis.tmpfiles-2 57 BLAKE2B 1e0577c1828bb693cf820f3ba5e77d7d748adf4df2d1910d
DIST redis-6.2.14.tar.gz 2496149 BLAKE2B 689a0c3b558e07f43f8b1480fbf7a083184bbc0ccde0b184dc8a1d89ed22bec9694b7c8605ff729c9e9d582e8cf47c8f9cd9ee0794ea15e07cdb0b886e93c116 SHA512 140d4b23c20d459b65be8c61996e281222f978b51c52cb048039d741801e4027775ad89ed354dc0dce3d47703a08610adafaf6253fea2f973d5b9d20bc1e59ce
DIST redis-7.0.15.tar.gz 2994329 BLAKE2B fa1bc85c89cb6a6fb18710a4d29c20db44a80ce445d217f39a234a2aad1d79031e9d1fc45415af7b0eb1c169bd88f45f1fe60cab35de38c6fadc839e2a27676d SHA512 83d58f98085f91754f6d87810e7da0d6cf11ffbe11a0f5d3581d5b2c63d2a752ba6b4eda921a04031aedc56ecebe349cd468ab5ad837493f55d2cac0ab3d015a
DIST redis-7.2.4.tar.gz 3386861 BLAKE2B 852d55f875378248fa15e189308afbe36bca73c2aa2e5423a765a3d6f6895908ac1455148e032f6d1a1087f57af5869bccf8a932684817109f3fcf09b204e639 SHA512 78590fb6680f229905c240ed8ce7a9a7153e5f8563577dbbb26aebf9bfbdcd7495d687f452bd95e0a86c76d772e1c497b506cf8d29bc97b62c9267f7d1e76f72
+DIST redis-7.2.5.tar.gz 3386454 BLAKE2B 5a0e5b0162f684ecd6db4a782a18a3c7bf272ec1ce38e2d2a4b5bc3966d968170f5b968e7f9946fd50d2b942c52298430eeccb386bbb443201eda6ac180c7f2b SHA512 e064a0f380e3a00ab8eb2f10ed7317fd6aa27d64cf00792fab80465036f92d17b166050e71b8a779fdf024528ac736cb54722316811f99951c4e386f4ab2245d
EBUILD redis-6.2.14-r1.ebuild 5480 BLAKE2B 03ab7cacdd2720e6b70e177f83814f5ebc4f5ccf010efca90b01fdabb9d553ce40f7e80c241cc90f9cf1f9d11746e3565a549fad345b93863277fa599026834b SHA512 7822951152271e852494c8500d17eeefe4e749cd0178b0a4ddf54810e063765d0cc0574bb448b815b4f15de5aa125f96926a5cf0f06a4d4eb07a4ff122cf8a5c
EBUILD redis-7.0.15-r1.ebuild 4940 BLAKE2B 9a3479bddd9566f08a9d7bca3aeb5be6ef5b1b9b06b6d0b27073983a4114ff087b3db05399e5f178c06d349c67cc8d695430fa6563a59c9b5944057601938bbe SHA512 93cd8775146b02b7b6a4296fc03f4802b5f7d8b6c12bf602d0bdd15d511cc8a6e022640a5ef8ceb241ece8083a3145ec6a4ef34fc879e72f0510c627145934be
EBUILD redis-7.2.4-r1.ebuild 5093 BLAKE2B 182f57a3b299f84e5bd95a5ba6caec357e483d50068cb424fc09185b7a2c4d8fc9e924f8252e932b0db43523798d486525abde1b5cd5cdd900fcb305ec875c27 SHA512 1cfb7257f0ca5a6bd325fe2e4170200cf870515a9ee0a4c699a80e1a23cb4c21ac1f1bc33f2b3ed1191e1b486b0c079759a105c258d1ab82b32ada7defb7bb3c
+EBUILD redis-7.2.5.ebuild 5029 BLAKE2B 2b8e0b87b26b9d933437e5194eacedc2c40da0e7f4748f847c5e3669db1559298b4a43a47a1d2fe4ddff74a5205cf25c0a3b8cea7346e086d21c134419562acd SHA512 974767292b75b2c13da0f433ec304960b4b7ac956a6bb17aa95bf68038dccb7064bea946e9bf39caa691dd422b70aa5d8440156452cb4015ced594646ea69705
MISC metadata.xml 547 BLAKE2B 43d462a2c301c4431aa233467563140076269fec170063a9b5501fad2bad3afb9602aab971a5ef16997dd24cc5cfd27c9a9e194059b8db8784250cdae0fd5db3 SHA512 6b4549d4c296c19bc054175c7cf2d1af785d9217b4f298460be5ed08c0197ad8d6fdc29c998c85a5c6926947d99665265a008163e2dc15def2e1230ca6b561eb
diff --git a/dev-db/redis/redis-7.2.5.ebuild b/dev-db/redis/redis-7.2.5.ebuild
new file mode 100644
index 000000000000..b82b9e409b2f
--- /dev/null
+++ b/dev-db/redis/redis-7.2.5.ebuild
@@ -0,0 +1,197 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# N.B.: It is no clue in porting to Lua eclasses, as upstream have deviated
+# too far from vanilla Lua, adding their own APIs like lua_enablereadonlytable
+
+inherit autotools edo multiprocessing systemd tmpfiles toolchain-funcs
+
+DESCRIPTION="A persistent caching system, key-value, and data structures database"
+HOMEPAGE="
+ https://redis.io
+ https://github.com/redis/redis
+"
+SRC_URI="https://download.redis.io/releases/${P}.tar.gz"
+
+LICENSE="BSD Boost-1.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="+jemalloc selinux ssl systemd tcmalloc test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ jemalloc? ( >=dev-libs/jemalloc-5.1:= )
+ ssl? ( dev-libs/openssl:0= )
+ systemd? ( sys-apps/systemd:= )
+ tcmalloc? ( dev-util/google-perftools )
+"
+
+RDEPEND="
+ ${DEPEND}
+ acct-group/redis
+ acct-user/redis
+ selinux? ( sec-policy/selinux-redis )
+"
+
+BDEPEND="
+ acct-group/redis
+ acct-user/redis
+ virtual/pkgconfig
+ test? (
+ dev-lang/tcl:0=
+ ssl? ( dev-tcltk/tls )
+ )
+"
+
+REQUIRED_USE="?? ( jemalloc tcmalloc )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.2.1-config.patch
+ "${FILESDIR}"/${PN}-7.2.0-system-jemalloc.patch
+ "${FILESDIR}"/${PN}-6.2.3-ppc-atomic.patch
+ "${FILESDIR}"/${PN}-sentinel-7.2.0-config.patch
+ "${FILESDIR}"/${PN}-7.0.4-no-which.patch
+)
+
+src_prepare() {
+ default
+
+ # Respect user CFLAGS in bundled lua
+ sed -i '/LUA_CFLAGS/s: -O2::g' deps/Makefile || die
+
+ # now we will rewrite present Makefiles
+ local makefiles="" MKF
+ local mysedconf=(
+ -e 's:$(CC):@CC@:g'
+ -e 's:$(CFLAGS):@AM_CFLAGS@:g'
+ -e 's: $(DEBUG)::g'
+
+ -e 's:-Werror ::g'
+ -e 's:-Werror=deprecated-declarations ::g'
+ )
+ for MKF in $(find -name 'Makefile' | cut -b 3-); do
+ mv "${MKF}" "${MKF}.in"
+ sed -i "${mysedconf[@]}" "${MKF}.in" || die "Sed failed for ${MKF}"
+ makefiles+=" ${MKF}"
+ done
+ # autodetection of compiler and settings; generates the modified Makefiles
+ cp "${FILESDIR}"/configure.ac-7.0 configure.ac || die
+
+ sed -i \
+ -e "/^AC_INIT/s|, __PV__, |, $PV, |" \
+ -e "s:AC_CONFIG_FILES(\[Makefile\]):AC_CONFIG_FILES([${makefiles}]):g" \
+ configure.ac || die "Sed failed for configure.ac"
+ eautoreconf
+}
+
+src_configure() {
+ econf
+
+ # Linenoise can't be built with -std=c99, see https://bugs.gentoo.org/451164
+ # also, don't define ANSI/c99 for lua twice
+ sed -i -e "s:-std=c99::g" deps/linenoise/Makefile deps/Makefile || die
+}
+
+src_compile() {
+ tc-export AR CC RANLIB
+
+ local myconf=(
+ AR="${AR}"
+ CC="${CC}"
+ RANLIB="${RANLIB}"
+
+ V=1 # verbose
+
+ # OPTIMIZATION defaults to -O3. Let's respect user CFLAGS by setting it
+ # to empty value.
+ OPTIMIZATION=''
+ # Disable debug flags in bundled hiredis
+ DEBUG_FLAGS=''
+
+ BUILD_TLS=$(usex ssl)
+ USE_SYSTEMD=$(usex systemd)
+ )
+
+ if use jemalloc; then
+ myconf+=( MALLOC=jemalloc )
+ elif use tcmalloc; then
+ myconf+=( MALLOC=tcmalloc )
+ else
+ myconf+=( MALLOC=libc )
+ fi
+
+ emake "${myconf[@]}"
+}
+
+src_test() {
+ local runtestargs=(
+ --clients "$(makeopts_jobs)" # see bug #649868
+
+ --skiptest "Active defrag eval scripts" # see bug #851654
+ )
+
+ if has usersandbox ${FEATURES} || ! has userpriv ${FEATURES}; then
+ ewarn "oom-score-adj related tests will be skipped." \
+ "They are known to fail with FEATURES usersandbox or -userpriv. See bug #756382."
+
+ runtestargs+=(
+ # unit/oom-score-adj was introduced in version 6.2.0
+ --skipunit unit/oom-score-adj # see bug #756382
+
+ # Following test was added in version 7.0.0 to unit/introspection.
+ # It also tries to adjust OOM score.
+ --skiptest "CONFIG SET rollback on apply error"
+ )
+ fi
+
+ if use ssl; then
+ edo ./utils/gen-test-certs.sh
+ runtestargs+=( --tls )
+ fi
+
+ edo ./runtest "${runtestargs[@]}"
+}
+
+src_install() {
+ insinto /etc/redis
+ doins redis.conf sentinel.conf
+ use prefix || fowners -R redis:redis /etc/redis /etc/redis/{redis,sentinel}.conf
+ fperms 0750 /etc/redis
+ fperms 0644 /etc/redis/{redis,sentinel}.conf
+
+ newconfd "${FILESDIR}/redis.confd-r2" redis
+ newinitd "${FILESDIR}/redis.initd-6" redis
+
+ systemd_newunit "${FILESDIR}/redis.service-4" redis.service
+ newtmpfiles "${FILESDIR}/redis.tmpfiles-2" redis.conf
+
+ newconfd "${FILESDIR}/redis-sentinel.confd-r1" redis-sentinel
+ newinitd "${FILESDIR}/redis-sentinel.initd-r1" redis-sentinel
+
+ insinto /etc/logrotate.d/
+ newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+ dodoc 00-RELEASENOTES BUGS CONTRIBUTING.md MANIFESTO README.md
+
+ dobin src/redis-cli
+ dosbin src/redis-benchmark src/redis-server src/redis-check-aof src/redis-check-rdb
+ fperms 0750 /usr/sbin/redis-benchmark
+ dosym redis-server /usr/sbin/redis-sentinel
+
+ if use prefix; then
+ diropts -m0750
+ else
+ diropts -m0750 -o redis -g redis
+ fi
+ keepdir /var/{log,lib}/redis
+}
+
+pkg_postinst() {
+ tmpfiles_process redis.conf
+
+ ewarn "The default redis configuration file location changed to:"
+ ewarn " /etc/redis/{redis,sentinel}.conf"
+ ewarn "Please apply your changes to the new configuration files."
+}
diff --git a/dev-db/sqliteman/Manifest b/dev-db/sqliteman/Manifest
index 80ae8d39d2cb..d4bdf2c46518 100644
--- a/dev-db/sqliteman/Manifest
+++ b/dev-db/sqliteman/Manifest
@@ -4,4 +4,4 @@ AUX sqliteman-1.2.2-lpthread.patch 486 BLAKE2B 4918962f3369880750e366fdfd8ae2a4a
AUX sqliteman-1.2.2-qt5.patch 11317 BLAKE2B 0fb2f1afca7d4c2cc443a29c7f5c4b1babdeea2025bb4811052d98bfb26f5ee241e58c99830fa820d07ed5a03d2cc264ebab532c872cbb622f4ed65e6e99174f SHA512 5169991a0b764fe02782dcc94befe1479bcae631f815c268c9e2a3f02c8efbaceb78ecb87d04eea240623fdfcc475b6b91149a4461974f648f4dea62ba07e309
DIST sqliteman-1.2.2.tar.gz 1579855 BLAKE2B 9415ac36c56ddf3ea53ace0a6441ef45514b9bffc1a95a652f71c53c802f0f78f77701520c76abade149db55476155472a71cf19f845ee096d96888e111daebd SHA512 ada8315247723c6cbb9a4c235ce427aed3fcbe6f4edaa3ee2f9c31c1729d71a4bfc874bb7ca561f2a2c9afad092e2f90c7871646eccecb3e71bcd50d1164faf4
EBUILD sqliteman-1.2.2-r6.ebuild 789 BLAKE2B a12a776ca3ca2cc06c7469e2da5bda189a7a40b1fe16211945caf278f5039f1141d2a74e4cc121d51c495738cd63029152bbb213d96c17a6dcd8a451034833ec SHA512 a8f0d3e20c78abbe439ee483da984f064b3068c008d3212e277d0facb1a180893b420ee50650994dc78074a72d9d6a454d3a8efd1845b8fec82b0f7d2aa0d9bf
-MISC metadata.xml 327 BLAKE2B a496818d78df9916ff4dfd166ee20e51e3e2c5ab88c63b96e4b0d966fe204aad099a977eb2d0f8a9c59f83ee7a45e8a71df2b90f23c1dd7c7bc4d73352a4d68a SHA512 e3a1e4a653332bbaff90ae0ff84638eb1e33948db96c055e74d2dd64936392b2a4fbacd40ad02e0613fe92f40ea83488412a6cd9c23086ed8ff5a22d8e82ddd5
+MISC metadata.xml 247 BLAKE2B 33411e727dfa5b53bd309c3755cc5ffa08207d97d9aca13e40aeeb9f673e0a82079cc4947323fad21bd764b2e9615f81cbc21319ca269c1f7ad7d3edddbe7df7 SHA512 397c3cf566441fa9f54960e824a39433f0c452acc57f4f736812278d98a2e27de1b6b942eb09c98f3bd34af9d9320ecd72f333130cb5c6753da3bd6f842c2a65
diff --git a/dev-db/sqliteman/metadata.xml b/dev-db/sqliteman/metadata.xml
index 4c234b878d14..17c382ef902c 100644
--- a/dev-db/sqliteman/metadata.xml
+++ b/dev-db/sqliteman/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>qt@gentoo.org</email>
- <name>Gentoo Qt Project</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="sourceforge">sqliteman</remote-id>
</upstream>
diff --git a/dev-db/timescaledb/Manifest b/dev-db/timescaledb/Manifest
index 0dd1c2546092..910ad116df76 100644
--- a/dev-db/timescaledb/Manifest
+++ b/dev-db/timescaledb/Manifest
@@ -1,5 +1,7 @@
DIST timescaledb-2.14.0.tar.gz 7316149 BLAKE2B d646e20d56ced87f3b95a7a58ed30bcbeec571b1042b64c2fef4f8521248db2142f54cb45d2afbbeb902e451823615fde1bb0259b421350928c146634db9c4d5 SHA512 75a66a51de313fa1beb4a576181888dbe742ffa0325b5813b5b12749c9fc97705eaa030186e424a360ee20745226768a679632182c079117586c5e4a5c108236
DIST timescaledb-2.14.2.tar.gz 7319288 BLAKE2B aa6d56939a4647f9276743cabece77c33760e7f9d451b90aaa03c9391fcfad94afcd315b65c0c589c7188073884bf7ab65f9c796e35f634b8704f334ffa4ac34 SHA512 5a7ab4df5d89b83d423be5d6770098ab0303b22e29166afd3ab91ac2199571df20e33ec9f40bfa90ddf44829571fe696f311d81d27b46d569f2d75e75970e4f9
+DIST timescaledb-2.15.0.tar.gz 7428047 BLAKE2B 6806def8ec01213b81d545817048af569a7b43ab88397e51d25dea680780e7764d9ec0bd638cb9deca6a7492d9a2b0e792adcc46a794cacde83d62c23c09dd83 SHA512 fe2ccc0baa4ec39773a9258142fd287f4ff3c296a39bc19daa75d30a5e3755efc4aa902c00e4e1030f4d5203b95c31c0493a5eb78aed6a26d8226930d1e2aef8
EBUILD timescaledb-2.14.0.ebuild 1437 BLAKE2B d63b700a8b0f1d3930da2430738251b4367c8ef2da5ea6f622725f4626f6eec60ea51c54409db484713ccfa0ee1c9c13fcb094fdeaf61d7e02b243a010ef53ed SHA512 f264586a02983db681ddda5ec9a8d99bc8b78a31aea4417dcd5172f5b039866effd8ff283521bb6a305fd715328785ee8a45d440bdb81a75632c7ed5fc83ed84
EBUILD timescaledb-2.14.2.ebuild 1437 BLAKE2B d63b700a8b0f1d3930da2430738251b4367c8ef2da5ea6f622725f4626f6eec60ea51c54409db484713ccfa0ee1c9c13fcb094fdeaf61d7e02b243a010ef53ed SHA512 f264586a02983db681ddda5ec9a8d99bc8b78a31aea4417dcd5172f5b039866effd8ff283521bb6a305fd715328785ee8a45d440bdb81a75632c7ed5fc83ed84
+EBUILD timescaledb-2.15.0.ebuild 1437 BLAKE2B d63b700a8b0f1d3930da2430738251b4367c8ef2da5ea6f622725f4626f6eec60ea51c54409db484713ccfa0ee1c9c13fcb094fdeaf61d7e02b243a010ef53ed SHA512 f264586a02983db681ddda5ec9a8d99bc8b78a31aea4417dcd5172f5b039866effd8ff283521bb6a305fd715328785ee8a45d440bdb81a75632c7ed5fc83ed84
MISC metadata.xml 510 BLAKE2B 4e96707c6ee1fd09ff2baff091e02ceab53bfc28a6a3b91265a21fe9918a9728d2fe6394bed01e8bf4417c2349c2e72bab180cfff71cedf4641d462b29a33d3d SHA512 5e91ef3b9a503462dc880300e364f74e6564dd74671d0b0ce723a86ea7471f987424e06e51384d6fb079681122b8d454e255efe2e19726d64de7928df227148a
diff --git a/dev-db/timescaledb/timescaledb-2.15.0.ebuild b/dev-db/timescaledb/timescaledb-2.15.0.ebuild
new file mode 100644
index 000000000000..ec3d2f7794de
--- /dev/null
+++ b/dev-db/timescaledb/timescaledb-2.15.0.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+POSTGRES_COMPAT=( 13 14 15 16 )
+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"
+
+IUSE="proprietary-extensions"
+LICENSE="POSTGRESQL Apache-2.0 proprietary-extensions? ( timescale )"
+
+KEYWORDS="~amd64"
+
+SLOT=0
+
+RESTRICT="test"
+
+DEPEND="${POSTGRES_DEP}"
+RDEPEND="${DEPEND}"
+
+CMAKE_IN_SOURCE_BUILD=yes
+CMAKE_BUILD_TYPE="RelWithDebInfo"
+BUILD_DIR=${WORKDIR}/${P}
+
+src_prepare() {
+ postgres-multi_src_prepare
+ postgres-multi_foreach cmake_src_prepare
+}
+
+timescale_configure() {
+ local CMAKE_USE_DIR=$BUILD_DIR
+ local mycmakeargs=( "-DPG_CONFIG=/usr/bin/pg_config${MULTIBUILD_VARIANT}" "-DREGRESS_CHECKS=OFF" )
+
+ # licensing is tied to features, this useflag disables the non-apache2 licensed bits
+ if ! use proprietary-extensions ; then
+ mycmakeargs+=("-DAPACHE_ONLY=ON")
+ fi
+ 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
+}
diff --git a/dev-db/tinycdb/Manifest b/dev-db/tinycdb/Manifest
index bc53b9e8b7ba..96ef7f9642b3 100644
--- a/dev-db/tinycdb/Manifest
+++ b/dev-db/tinycdb/Manifest
@@ -1,7 +1,5 @@
AUX tinycdb-gentoo.patch 711 BLAKE2B a1f6a43fb9903784d3cc4dfdbd2b3d1b5b5532801b6de1cbda922b7a318ead7e93696b0722ee3132618f3cd8bb3ec1eb4f4cdfda35c1b428c3988626ff87b91c SHA512 b188db6904ef63a262a88aa79d1488ede1a9917af8e33b97da5d80c34cb00065bb42e84b00e20548a85f5f0b939679f5a3d85336b938318f98d101d880489415
AUX tinycdb-uclibc.patch 328 BLAKE2B 20dacb9fc08d7e02c0b138c445d91ecbdcb1993d4b6709081bd4f8c81ce92ba5124c8e6dc8e59644bce8823d0fd0a16e3f7ae543d3dc9c093768114f55ec23a6 SHA512 b58656fbcdcd21d46ace85ba50fcbc9a85b3c0d02fe3c7ba048276e6a22e2d8a91dce6fe5f853a3516071e33fc9513216148b0e92ebe13b75b201881e73f127f
-DIST tinycdb-0.78.tar.gz 36754 BLAKE2B 41f4256840645acd28296c5473087c7cf4c026f068310375b3c305430c030b1c946f53fd3e09967d77b592ba84e7e56518fdb18e54d1e0f5e7dd552a1664a0ec SHA512 8930086b8e7fddcd4dbd3354c5f5ee05171df68fde1cc222b6c402430042b6e761efbad7e5fa8de18e1d36390f1526cc3e605c5086fe1c363ba1df6c03201553
DIST tinycdb-0.81.tar.gz 31901 BLAKE2B 6b5b1167bd7e58a02b9a3a1ff2d58adb0e522ef65a13384051d9a037358ed7586f7d567e543099adec6322f9c60d38525fed586488510215bf72d12a60c67684 SHA512 56d0422700835d7b0460c32c41e6d5f30b8b833cefea775eb7f2b5592d744942c1109eac1501421b02f196d15e551111bb2accc71f2fd32ef4b8d658c635340e
-EBUILD tinycdb-0.78.ebuild 1059 BLAKE2B a2d631e4442aa467240c78b3df148d6010a2551d4f82bf2d9149072e3600ca8f65646b9f34dc40172660e980cc9e683018c0fa372b2aab23f48ed9e91ead2d08 SHA512 e679753be2342bcb8b4112aca19200741aa4d6fc33ab398b95ad8d58804712e421d9678d1aad9275f00cc713240ad878a7ad2e55fb15681189c8e7a563a9f207
-EBUILD tinycdb-0.81.ebuild 1062 BLAKE2B 6675159d04979482acbd487aaf7527e406939c63eb061ca7764f3e338e06b8f361ce7ea06d8e17c60855ec30c781bc4b330f6b8698e4d76b705db11325958171 SHA512 0f817bc3a68e586ce675483963becfc2f93e827abe074c9fd9e7a7807c0b25198d061966da436a2071f8f09243a6a53c081e4b4c0a1def8bffc1d9883baeca9a
+EBUILD tinycdb-0.81.ebuild 1059 BLAKE2B 3ae443ee11175a03bc137cf9c39ec27d85cd0fd10eabcefbd1495303b8415d7bb3838a315dc726ccf62e964f40c4cef8da317ac82821700d297b72230dfc3576 SHA512 ebf12727f21596d1dfa6b306d383741127757e80f2512c307bf0b9cf8825d283ae1335b036858d215cef9e5469308b119150f543dea8400e04e4cfcc74546808
MISC metadata.xml 249 BLAKE2B a37da98d387308dab889eab2665b67e4176707f3c115a7a69cb7f4b19f9864b96bc2fe70efa105e627c4b57a7d626f6b23dc2709a225a9debada3356f3cf32a0 SHA512 a5095fb01e05f24583a962e36131b2f02cf2d1dd7a97051200e465ad97db014721de7c1857f5eb736cb0290682e8de833cb4c735f7de8d98cdfae1aed6d3d549
diff --git a/dev-db/tinycdb/tinycdb-0.78.ebuild b/dev-db/tinycdb/tinycdb-0.78.ebuild
deleted file mode 100644
index 501f95371b5a..000000000000
--- a/dev-db/tinycdb/tinycdb-0.78.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit toolchain-funcs
-
-DESCRIPTION="A very fast and simple package for creating and reading constant data bases"
-HOMEPAGE="https://www.corpit.ru/mjt/tinycdb.html"
-SRC_URI="https://www.corpit.ru/mjt/${PN}/${P}.tar.gz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ~hppa ~ia64 ~mips ppc ~riscv x86"
-IUSE="static-libs"
-RESTRICT="test"
-
-RDEPEND="!dev-db/cdb"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-gentoo.patch
- "${FILESDIR}"/${PN}-uclibc.patch
-)
-
-src_prepare() {
- default
-
- sed -i "/^libdir/s:/lib:/$(get_libdir):" Makefile
-}
-
-src_compile() {
- local targets="shared"
- use static-libs && targets+=" staticlib piclib"
-
- emake \
- CC="$(tc-getCC)" \
- CFLAGS="${CFLAGS}" \
- LDFLAGS="${LDFLAGS}" \
- ${targets}
-}
-
-src_install() {
- local targets="install install-sharedlib"
- use static-libs && targets+=" install-piclib"
-
- emake \
- prefix="${EPREFIX}"/usr \
- mandir="${EPREFIX}"/usr/share/man \
- DESTDIR="${D}" \
- ${targets}
- einstalldocs
-}
diff --git a/dev-db/tinycdb/tinycdb-0.81.ebuild b/dev-db/tinycdb/tinycdb-0.81.ebuild
index fc9fe8b1d16b..3a96152e3268 100644
--- a/dev-db/tinycdb/tinycdb-0.81.ebuild
+++ b/dev-db/tinycdb/tinycdb-0.81.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://www.corpit.ru/mjt/${PN}/${P}.tar.gz"
LICENSE="public-domain"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~hppa ~ia64 ~mips ~ppc ~riscv ~x86"
+KEYWORDS="amd64 ~arm64 ~hppa ~ia64 ~mips ppc ~riscv x86"
IUSE="static-libs"
RESTRICT="test"