commit:     9dd931907f0be090010cced3b9c1d7dcbc5db353
Author:     Patrick Lauer <patrick <AT> gentoo <DOT> org>
AuthorDate: Wed Mar  5 10:58:58 2025 +0000
Commit:     Patrick Lauer <patrick <AT> gentoo <DOT> org>
CommitDate: Wed Mar  5 10:58:58 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9dd93190

dev-db/postgresql: drop 13.18, 14.15, 15.10, 16.6, 17.2

Signed-off-by: Patrick Lauer <patrick <AT> gentoo.org>

 dev-db/postgresql/Manifest                |   5 -
 dev-db/postgresql/postgresql-13.18.ebuild | 457 ----------------------------
 dev-db/postgresql/postgresql-14.15.ebuild | 457 ----------------------------
 dev-db/postgresql/postgresql-15.10.ebuild | 459 ----------------------------
 dev-db/postgresql/postgresql-16.6.ebuild  | 460 ----------------------------
 dev-db/postgresql/postgresql-17.2.ebuild  | 477 ------------------------------
 6 files changed, 2315 deletions(-)

diff --git a/dev-db/postgresql/Manifest b/dev-db/postgresql/Manifest
index 1c8a8157b1df..8ea8952819f4 100644
--- a/dev-db/postgresql/Manifest
+++ b/dev-db/postgresql/Manifest
@@ -1,15 +1,10 @@
-DIST postgresql-13.18.tar.bz2 21687645 BLAKE2B 
dd8c5906f7d53b5447e8c307960a5ff7cf25cec711a508acf80609e12f9411c9382753da313e31a546be528ff8263327befadcb5f8a40c3164a56f582710bc43
 SHA512 
2694ff9402683c90ccfbb53a465f6b6a09702b9b5b44e2db84a3a41175427d889d1b823897fd361b04a53dd3596289822e36a77215cb45dd972d79850fbdb97b
 DIST postgresql-13.19.tar.bz2 21729020 BLAKE2B 
ea561309053224a9181ec7a282259c5220deddaa0c871942ec9574c700626384c8215552796a1178f202ece97ab439f8dea680f51fe431526afab171c338da73
 SHA512 
cb11fbd65067572c46a06cb8c0838d2233b32b734b89db9bea954add6c50ffce2119222555dd66d3af568058b8939da2f36c288b76e8ed3f130c5504019d5f11
 DIST postgresql-13.20.tar.bz2 21730844 BLAKE2B 
ff5822ee32ae4335c92e035ea4ec8cb2fbf2028d9245f5ffdbf5257833345d40e89e3eb12f4d93d0600efc2c67917be18b434b61877e47b4accb4bd78e54bb60
 SHA512 
884ee8327b803c66679238525e7d51320ea537b41138d7fe8fd7e725631f734a61e53646d9cec78154f3f05a3b50e90508793a56a8f0f76699a53773930cb1d0
-DIST postgresql-14.15.tar.bz2 22458243 BLAKE2B 
4d5a1c253c5b015e68634ebe433dee421c5a1e1bac0cc5be2eb178001755656efd9642be2369d8b7a76fcbd4a127f40dd99d3c4624c137fca531558464df1a5d
 SHA512 
227f9551167ee62e5185d6f6777e100ecc09f497b9ee1b5a8e659de8d4c237b0f9a97005706bbf64c3e839271e2630f6a417ba98dfce47bcb4c27e8641a7c6ef
 DIST postgresql-14.16.tar.bz2 22491073 BLAKE2B 
9ace49a4f941ac1107efd7642387956d7be1df5a41c7244964b77d1c7ca1908845590841db15694da92f49f1c3c59ad83e6b2d7c55885e2505b2ff7c1a2bbb1a
 SHA512 
260b6a6bc42a448f9bb3bf4194f601d2c10de517e39c8437b194662e41aae5013f2921b3712014ada24a274edb0db5f7b9f69d15cbb48d77d36b4c53092c93e4
 DIST postgresql-14.17.tar.bz2 22488812 BLAKE2B 
e81c2416e69e3b31a69b5e8db32543c8aaff1b81f7163b3a204827d5ee4cffd08a5cc45bdc774a4ffd19d4b48dee5797842364bb9706ada945fd6ff415687486
 SHA512 
1cb7d16fbfbceaa6bf0acd4cf9bea3e8fc078fcc6c1f7baad1d66040e1467f59ac54858b11a26543b50e25d3f0db47e0c72539cde743c794d41fa9d2f97c22c1
-DIST postgresql-15.10.tar.bz2 23138615 BLAKE2B 
d187afd9897feb8bb353dee705817781f099e7cc41eb915f096196ad228646fc65d706c488258d5ee9033b20d2204fd11f5e92e33387310394e7cc102f02b72e
 SHA512 
73513f5f688f470aadd95dddef3b39b5d140d539bdf3171e053a89b3eed4c769f7951280468e9f11102f2de9fe8742bb38676c8d5d43418544b9482d83957ef4
 DIST postgresql-15.11.tar.bz2 23167652 BLAKE2B 
4345c0c45a3272b7b272b48a02b436d3ede7a8121dfe2e3ddd282eb46c6730a31829fdb465274d15d3f6f6a3d50f6dd75be4f750f42ec8eb0f89089de5da9091
 SHA512 
65a077313cf9836e6a9e48b3912d1fac98689f85e6dc00d64aa861158988bcb1719d8d9a64c5ad6fac2f0c75b447cfce5b9dc73229a9fcbbcd96e374fffe91dc
 DIST postgresql-15.12.tar.bz2 23170228 BLAKE2B 
fa92c660a7963a0ad3024200ccf5efc5898d4ba639dcd2128afb3962567022d2829841d16af3566800d3332f6e68ea2da6811492df7fe013bb11bfc3671828bf
 SHA512 
6ccb44cb7ff2133ccb03dfc6b49e26714d9aecb91f4b9d019a8f1e7d0d71ed0bf8101fbbda0185091e4688a557600f020a12306c389e819d731184c17e182717
-DIST postgresql-16.6.tar.bz2 24856956 BLAKE2B 
2d6d6efcc4cb0027c03422c839856ac024d3824a7e7da42cafbb961616cdd078064e78b6eb1c98565240ab1f78eb52582f38c9ce80b3a98f9e65568b2c14e40c
 SHA512 
ffd6d39fb7aed87241237d68af4934fba1b4ac1be4d3c2833e308e50c21a693796fe54b73e0905365d7557009c40049a23b966aa86765b969797434a0d4bd5f8
 DIST postgresql-16.7.tar.bz2 24905167 BLAKE2B 
1b72e3da10d77521315a8c0c7687390c00c41934bf71a2cd7985a158040f2ed1513e573f682a0ac59b721023be22ed5fa9922c73e3058b5d23c8955ecd38b9ee
 SHA512 
9f91e3f66c361755b088969ba100c1193806495428a88b6df7353370d5bc74f464feac36c51ebcb6f7a6ab97cde539dd904efe5f7f43bcde5576c38c5d5aab54
 DIST postgresql-16.8.tar.bz2 24911337 BLAKE2B 
03dadec5c74235d1250a5b5eea38630ea9675dc016defadf912cd837207facee000a611c62107035443ea28c491f12be84105dacec67eddf8bc48f3adf4f2097
 SHA512 
f44fdfe01fbf82f3ffe4c9fc860bd27e06dddfe43b6bd6d1c6e267d64086eb5517e23cc1b2b8895cb73e63fce76779993ea9785a97e6e348ed91b4c08bb0492d
-DIST postgresql-17.2.tar.bz2 21408880 BLAKE2B 
1afafbec5db26ab17f2410c40db38e30fc1413cd518d387bc01640232698407de97123d0c61e1ec4d32d1041055db874f04dd52ad3697f1b9993b1aff3c5156a
 SHA512 
8e15e47c22d21e1cadc31249cf31af5abe34b8ab72930e58e5fe6124795ad237ca7b4fd3bf36b5f18589c4fc439dc2bab3045d9b4ba23d1846b4b2be6fd1cb69
 DIST postgresql-17.3.tar.bz2 21520115 BLAKE2B 
49f794e2bd1fa05f881aa003fd601a8980601c795014aec71651d3b678370511da307de97a80540526204b339ca4caf95f3912929d57295f51d6f9a7e31d82c9
 SHA512 
700b62f2963d8074cae96bacd1faa74d86035ffa8291d81b5a0c1c1950b104a947a0f82b7aa02ddb0624b0da433690358f6a7f28201d83da7db850ea08b4b34f
 DIST postgresql-17.4.tar.bz2 21519810 BLAKE2B 
d8095023ae85ba2a28479e4c1d6dac57ccb71471e6e3a74730052c368a71e66e3e84df36a1e1b85f3bd070141b9464aa9c4aad179f421ea8fea274a7975398af
 SHA512 
43288a297c753d075405a7bd3fce17f6a260d6b0a80a156c1e6267e0ebd40c85b7bb929e893956a109eda4d93fa8936f43e981242c1fd67a91012cba5472026c

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

Reply via email to