dev-db/postgresql: Cleanup old/insecure
authorAaron W. Swenson <titanofold@gentoo.org>
Sat, 15 Jun 2019 10:56:02 +0000 (06:56 -0400)
committerAaron W. Swenson <titanofold@gentoo.org>
Sat, 15 Jun 2019 10:56:09 +0000 (06:56 -0400)
Bug: https://bugs.gentoo.org/685846
Package-Manager: Portage-2.3.62, Repoman-2.3.11
Signed-off-by: Aaron W. Swenson <titanofold@gentoo.org>
14 files changed:
dev-db/postgresql/Manifest
dev-db/postgresql/files/postgresql-9.3-no-server.patch [deleted file]
dev-db/postgresql/postgresql-10.6.ebuild [deleted file]
dev-db/postgresql/postgresql-10.7.ebuild [deleted file]
dev-db/postgresql/postgresql-11.1.ebuild [deleted file]
dev-db/postgresql/postgresql-11.2.ebuild [deleted file]
dev-db/postgresql/postgresql-12_beta1.ebuild [deleted file]
dev-db/postgresql/postgresql-9.3.25.ebuild [deleted file]
dev-db/postgresql/postgresql-9.4.20.ebuild [deleted file]
dev-db/postgresql/postgresql-9.4.21.ebuild [deleted file]
dev-db/postgresql/postgresql-9.5.15.ebuild [deleted file]
dev-db/postgresql/postgresql-9.5.16.ebuild [deleted file]
dev-db/postgresql/postgresql-9.6.11.ebuild [deleted file]
dev-db/postgresql/postgresql-9.6.12.ebuild [deleted file]

index 95279f068e8ebf9c6c15f14f7f946ef897aec241..ea182832865d67abe16fb0022f56026b0905706c 100644 (file)
@@ -1,17 +1,6 @@
-DIST postgresql-10.6.tar.bz2 20350612 BLAKE2B b751085b8fce73efb2531378a553c8c956f5e05a0002de8fdc58c0f2a6cf2b9dfaff6bd621047a094a51e459bc8fc5b1658d6a754a396fa3b7aedc1024ea3b4c SHA512 5d4d5cee2a19ad1820c3411bc4851904e3059cdcacc837350694d54d7d59260b66c565c72cc14a3a10541a8fc49c5185f08f57b7a8c7e4c64ed2614da6e1201f
-DIST postgresql-10.7.tar.bz2 18940030 BLAKE2B ce02d2c4ba97c1845b3708941bb7a9f6ee025fc4a881e35790279aadf5e35464d6716cfdeb4ad145ce4549e639ad01d333cff858f956607c0cd583af65f1cd3e SHA512 2fa8194e9ef540930eecc2a43907a77f7f185590046350d48fd625bdb1ab459095c4e2e0d2faac846935d7231ac672ace760633deeee365572768da619458ba9
 DIST postgresql-10.8.tar.bz2 18958913 BLAKE2B d2e1664a53c5b2f24b412f497769ffd33e2f48977fa0f4503cb588497b61955a97497c87950ae60d498d75c7385fc63dd832b518174614f695d8882628a4ebb8 SHA512 c9cd0298f553e13e32d4315e17e9e61c1fd011391c5203282d9040f26fd08c85f749e6f2cea3bcc42d1ca153a1272bcd773196ef3bf2bdfb74cd12c5f523b7ca
-DIST postgresql-11.1.tar.bz2 21263173 BLAKE2B d762b6e8b0e7b08b16ed252687118a0a4516172e38e8940879fd050f72d19ff045af949e72977a62c2ce0a788af7d42c9bde7748347566bec3694e337bba6f73 SHA512 35d00984e9f5f063a5b96e97aa1b40381ab76d07b2336bda5981fd80bef1324f56eefca5069ae78770ecd6ece5df85264e599fdb3478ecb71d4fdd0d7b6becca
-DIST postgresql-11.2.tar.bz2 19714229 BLAKE2B 459674c08a0435363da29428bef7ec49a012b534b390ce6addafac000ce58ad0ad7ba4e1522f5279da29535399836971c61536827d481af766322935d7c6d01b SHA512 dae00a543fdeed36bc338abd4ccfd9fe9a8b6b2b7eaa00b1078e4f27802de75a461c27da2800bc9dd64e658681e5787bd03764bde79940656cae1e8c8716f011
 DIST postgresql-11.3.tar.bz2 19718775 BLAKE2B f56686bff4e70c2b6333554a620a5c2d5c226654a1d61de43b4493c44a14e2bcd9c102dba420994878d328af52d933885e4948cd002f14b693aef1416697a0ea SHA512 03269bb88f44f3a81d5e3a8ca2fe59f63f784436840f08870b2e539755629cbde8ac288e0bb4472ee93294a88b37b814ddff48444254c1a3f7a10b4bb64f7133
 DIST postgresql-12beta1.tar.bz2 20589423 BLAKE2B 622f936524bca74c20e27967b4cfcec31ba4ffc3132af516fc6dbb89843d688df41b72b7febe7060d2eb6716d64228124b4bc9831e9b11601be0fd95b7727710 SHA512 f46017659aa88141b056fc1852280c92ffbc3ba52d1cda2e3e302d3ec6ba478cc2a8ab04c87f10774b0401e8284fc46bb387a3e0e594a26a30ef7a4cf79b1de3
-DIST postgresql-9.3.25.tar.bz2 17067593 BLAKE2B fd9ca5685e5511dcaa72da882b674846dcd5a16227e5b33ae06701fe7881df71847666c37925033c6cb01c916111a8f76df134491645f4d1e1dd48a008bd2831 SHA512 319e12b73853b74f5ef2c520d64795bb586ffd495ceab6518f7844de6e0a054aea821976c470108d346f8090c7d3949920d9c435432e33004b7caa7a77a5cdca
-DIST postgresql-9.4.20.tar.bz2 17905682 BLAKE2B cb65228f8e78dc8b6303a06480a68de58ecac1fefa1342e4563f2c4051c9f5506b366b36c2dbd54207d25ae497625f8fc5e3e771174a6b3ec33c3c19d2c9ea08 SHA512 664c6e97979f38d263d1dc75a7db442f193a230435cad43ddfa2afcd42ac0d73b2aef0e846fddcc9008cd6d89cba2d5c0a4db93b111665646d3ff4d8f6fbe1e8
-DIST postgresql-9.4.21.tar.bz2 16871522 BLAKE2B e6b8957f52a95d5fa56bc39756f1de83459882e40eee07c3ddf9e33eab39a0d61ee492864a920e7714ca1914a772dcc9048bc34072349197597cfb116aa94422 SHA512 850d1f59369457d9a8a42de8f0e4811f60e9164d2e7d7605fdabc04cc5ba2e3794d51e155d709419d06b8e070f214f7d3ef2328c6d37f125264ea008ca18ff5a
 DIST postgresql-9.4.22.tar.bz2 16848787 BLAKE2B 5c2aaef13ef0cf33c421e6839877a8e4e1fc5dbe41d9cabefddd369925869f92f6c6b8a124b5778f9b25359103f0a7ada1eddcaf4bac498709f563928f25e7e3 SHA512 f11623a89b2320616fd53eda52da544bdfcb63bff08cb78fccde134ef628eee7ee90b3de6952f4e08c10297d356624faabf0e5b181b0105f51797796cd04efef
-DIST postgresql-9.5.15.tar.bz2 18707696 BLAKE2B f1be26085953d5a15a6545aed3527b9eec6eb57c72f2e05401e43200e628b3a42ee824dd1cb0138556b97fe4922a991489dffa77329b653475874766c1d5b944 SHA512 2ea241b6751a2812c689da9bde40151ebb7cdabdd14e93d92f8bea1e3fcf5bc0d4854834999f33270329e22a09c5aeaf8d59d36ca6e8860704f81f3adcfb30d5
-DIST postgresql-9.5.16.tar.bz2 17506874 BLAKE2B ce5c804315ce5d7ac95af2455322801f581c3aa8e943ffae40b7e14a95a4610b71956568a418f2f22b8a9814ff9fd1f9296efc974716c0096aa22dcdb7609ff7 SHA512 4583c825ed00a5ba915863b41c39cd9580492444ff299e44c3856db55fb4f0607d184534fe8977d915fb0730e6d638d8560be11915ce21b9d1f6971e7a285c7c
 DIST postgresql-9.5.17.tar.bz2 17563469 BLAKE2B d40b7f95d03db594144b4882f36bbe22f348faab0b8d67eda3f946448bb0e09188eccdeb4d1c92742fb29a920b30ede55e536a863b22d2009283eab66679122d SHA512 bb468528b1f18166cda0be136f31a632859ffe6e6800233b1cb0e91ce11d2d00d3dc108a74580b5552a4d30b9f1b6849c91576cd497beac788c429815c66eac5
-DIST postgresql-9.6.11.tar.bz2 20009048 BLAKE2B aa3e5b1e63c983226ea71737982e62eaff655af7e0f55f20ec886f5d7406b1e30e2fe5378b0dd1ef59e777f862ccc2386121653853d4c186a1b4853a9bbb1591 SHA512 a4314f92d1a661af4076d8c120533ecae76d91461043b8a6ad22dd6e5b562e0bf019bc7f3157a26d9666ba5866e254613ae5b690310168b029795dc088f8c060
-DIST postgresql-9.6.12.tar.bz2 18759442 BLAKE2B 067b307318f65616651ee4502f420a84df26e906350f07ce5ab4a769608075f0d017b6d84b0ce5045662ab379e236b66cf751f7950d026f011d0915efcdfab3e SHA512 3a7a96caf682461f1f9bffdbe2b72b1ce00cc6680145e00c139e4af8b9dc8b8679fda1626de65921d6e187fa9290efc930584b98f1fd2aba1ba3d790a741a415
 DIST postgresql-9.6.13.tar.bz2 18767279 BLAKE2B c1ec780a7f938f878425cbd6556145e60a613135129daaacc52e9a699cc448a22481b01fac20d0c09373ea6a026f39bc58234aae4f1126333b94f621981a8135 SHA512 65cc70410ad4a1a738b92855b92eecdbb9efbbca0eb9a45a138d47b696c8f9c9cd19073fbfdf5c80eea7633d0be29b4ed8acbadd38724acf8f18c90bb30f9b26
diff --git a/dev-db/postgresql/files/postgresql-9.3-no-server.patch b/dev-db/postgresql/files/postgresql-9.3-no-server.patch
deleted file mode 100644 (file)
index 48e5377..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
---- a/contrib/Makefile
-+++ b/contrib/Makefile
-@@ -5,61 +5,10 @@
- include $(top_builddir)/src/Makefile.global
- SUBDIRS = \
--              adminpack       \
--              auth_delay      \
--              auto_explain    \
--              btree_gin       \
--              btree_gist      \
--              chkpass         \
--              citext          \
--              cube            \
--              dblink          \
--              dict_int        \
--              dict_xsyn       \
--              dummy_seclabel  \
--              earthdistance   \
--              file_fdw        \
--              fuzzystrmatch   \
--              hstore          \
--              intagg          \
--              intarray        \
--              isn             \
--              lo              \
--              ltree           \
-               oid2name        \
--              pageinspect     \
--              passwordcheck   \
--              pg_archivecleanup \
--              pg_buffercache  \
--              pg_freespacemap \
--              pg_standby      \
--              pg_stat_statements \
--              pg_test_fsync   \
--              pg_test_timing  \
--              pg_trgm         \
--              pg_upgrade      \
--              pg_upgrade_support \
-               pgbench         \
--              pgcrypto        \
--              pgrowlocks      \
--              pgstattuple     \
--              pg_xlogdump     \
--              postgres_fdw    \
--              seg             \
--              spi             \
--              tablefunc       \
--              tcn             \
--              test_parser     \
--              tsearch2        \
--              unaccent        \
--              vacuumlo        \
--              worker_spi
-+              vacuumlo
--ifeq ($(with_openssl),yes)
--SUBDIRS += sslinfo
--else
--ALWAYS_SUBDIRS += sslinfo
--endif
- ifeq ($(with_ossp_uuid),yes)
- SUBDIRS += uuid-ossp
---- a/src/backend/Makefile
-+++ b/src/backend/Makefile
-@@ -47,7 +47,7 @@
- ##########################################################################
--all: submake-libpgport submake-schemapg postgres $(POSTGRES_IMP)
-+all: someheaders
- ifneq ($(PORTNAME), cygwin)
- ifneq ($(PORTNAME), win32)
-@@ -116,7 +116,7 @@
- endif # aix
- # Update the commonly used headers before building the subdirectories
--$(SUBDIRS:%=%-recursive): $(top_builddir)/src/include/parser/gram.h $(top_builddir)/src/include/catalog/schemapg.h $(top_builddir)/src/include/utils/fmgroids.h $(top_builddir)/src/include/utils/errcodes.h $(top_builddir)/src/include/utils/probes.h
-+someheaders $(SUBDIRS:%=%-recursive): $(top_builddir)/src/include/parser/gram.h $(top_builddir)/src/include/catalog/schemapg.h $(top_builddir)/src/include/utils/fmgroids.h $(top_builddir)/src/include/utils/errcodes.h $(top_builddir)/src/include/utils/probes.h
- # run this unconditionally to avoid needing to know its dependencies here:
- submake-schemapg:
-@@ -209,23 +209,8 @@
- ##########################################################################
--install: all installdirs install-bin
--ifeq ($(PORTNAME), cygwin)
--ifeq ($(MAKE_DLL), true)
--      $(INSTALL_DATA) libpostgres.a '$(DESTDIR)$(libdir)/libpostgres.a'
--endif
--endif
--ifeq ($(PORTNAME), win32)
--ifeq ($(MAKE_DLL), true)
--      $(INSTALL_DATA) libpostgres.a '$(DESTDIR)$(libdir)/libpostgres.a'
--endif
--endif
--      $(MAKE) -C catalog install-data
--      $(MAKE) -C tsearch install-data
--      $(INSTALL_DATA) $(srcdir)/libpq/pg_hba.conf.sample '$(DESTDIR)$(datadir)/pg_hba.conf.sample'
--      $(INSTALL_DATA) $(srcdir)/libpq/pg_ident.conf.sample '$(DESTDIR)$(datadir)/pg_ident.conf.sample'
--      $(INSTALL_DATA) $(srcdir)/utils/misc/postgresql.conf.sample '$(DESTDIR)$(datadir)/postgresql.conf.sample'
--      $(INSTALL_DATA) $(srcdir)/access/transam/recovery.conf.sample '$(DESTDIR)$(datadir)/recovery.conf.sample'
-+install:
-+
- install-bin: postgres $(POSTGRES_IMP) installdirs
-       $(INSTALL_PROGRAM) postgres$(X) '$(DESTDIR)$(bindir)/postgres$(X)'
---- a/src/bin/Makefile
-+++ b/src/bin/Makefile
-@@ -13,8 +13,7 @@
- top_builddir = ../..
- include $(top_builddir)/src/Makefile.global
--SUBDIRS = initdb pg_ctl pg_dump \
--      psql scripts pg_config pg_controldata pg_resetxlog pg_basebackup
-+SUBDIRS = pg_dump psql scripts pg_config
- ifeq ($(PORTNAME), win32)
- SUBDIRS += pgevent
---- a/src/Makefile
-+++ b/src/Makefile
-@@ -15,17 +15,11 @@
- SUBDIRS = \
-       common \
-       port \
--      timezone \
-       backend \
--      backend/utils/mb/conversion_procs \
--      backend/snowball \
-       include \
-       interfaces \
--      backend/replication/libpqwalreceiver \
-       bin \
--      pl \
--      makefiles \
--      test/regress
-+      makefiles
- # There are too many interdependencies between the subdirectories, so
- # don't attempt parallel make here.
diff --git a/dev-db/postgresql/postgresql-10.6.ebuild b/dev-db/postgresql/postgresql-10.6.ebuild
deleted file mode 100644 (file)
index b4ca072..0000000
+++ /dev/null
@@ -1,460 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python2_7 python3_{5,6} )
-
-PLOCALES="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN
-                zh_TW"
-
-inherit flag-o-matic l10n linux-info multilib pam prefix python-single-r1 \
-               systemd user versionator
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
-
-SLOT=$(get_major_version)
-
-MY_PV=${PV/_/}
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-SRC_URI="mirror://postgresql/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
-
-LICENSE="POSTGRESQL GPL-2"
-DESCRIPTION="PostgreSQL RDBMS"
-HOMEPAGE="https://www.postgresql.org/"
-
-IUSE="doc kerberos kernel_linux ldap libressl nls pam perl python +readline
-         selinux +server systemd ssl static-libs tcl threads uuid xml zlib"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="
->=app-eselect/eselect-postgresql-2.0
-sys-apps/less
-virtual/libintl
-kerberos? ( virtual/krb5 )
-ldap? ( net-nds/openldap )
-pam? ( virtual/pam )
-perl? ( >=dev-lang/perl-5.8:= )
-python? ( ${PYTHON_DEPS} )
-readline? ( sys-libs/readline:0= )
-server? ( systemd? ( sys-apps/systemd ) )
-ssl? (
-       !libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
-       libressl? ( dev-libs/libressl:= )
-)
-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,uclibc,musl} )
-BSD_LIBC=( elibc_{Free,Net,Open}BSD )
-
-nest_usedep() {
-       local front back
-       while [[ ${#} -gt 1 ]]; do
-               front+="${1}? ( "
-               back+=" )"
-               shift
-       done
-       echo "${front}${1}${back}"
-}
-
-IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
-CDEPEND+="
-uuid? (
-       ${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
-       $(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
-)"
-
-DEPEND="${CDEPEND}
-!!<sys-apps/sandbox-2.0
-sys-devel/bison
-sys-devel/flex
-nls? ( sys-devel/gettext )
-xml? ( virtual/pkgconfig )
-"
-
-RDEPEND="${CDEPEND}
-!dev-db/postgresql-docs:${SLOT}
-!dev-db/postgresql-base:${SLOT}
-!dev-db/postgresql-server:${SLOT}
-selinux? ( sec-policy/selinux-postgresql )
-"
-
-pkg_setup() {
-       use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
-
-       enewgroup postgres 70
-       enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
-
-       use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-       # Work around PPC{,64} compilation bug where bool is already defined
-       sed '/#ifndef __cplusplus/a #undef bool' -i src/include/c.h || die
-
-       # 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}-10.2-no-server.patch"
-
-       if use pam ; then
-               sed -e "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
-               for i in ${BSD_LIBC[@]}; do
-                       use ${i} && uuid_config="--with-uuid=bsd"
-               done
-               [[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
-       fi
-
-       econf \
-               --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
-               --datadir="${PO}/usr/share/postgresql-${SLOT}" \
-               --docdir="${PO}/usr/share/doc/${PF}" \
-               --includedir="${PO}/usr/include/postgresql-${SLOT}" \
-               --mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
-               --sysconfdir="${PO}/etc/postgresql-${SLOT}" \
-               --with-system-tzdata="${PO}/usr/share/zoneinfo" \
-               $(use_enable !alpha spinlocks) \
-               $(use_enable threads thread-safety) \
-               $(use_with kerberos gssapi) \
-               $(use_with ldap) \
-               $(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 nls "'$(l10n_get_locales)'")
-}
-
-src_compile() {
-       emake
-       emake -C contrib
-}
-
-src_install() {
-       emake DESTDIR="${D}" install
-       emake DESTDIR="${D}" install -C contrib
-
-       dodoc README HISTORY doc/{TODO,bug.template}
-
-       # 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
-
-       use static-libs || find "${ED}" -name '*.a' -delete
-
-       local f bn
-       for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-                                       -mindepth 1 -maxdepth 1)
-       do
-               bn=$(basename "${f}")
-               # Temporarily tack on tmp to workaround a file collision
-               # issue. This is only necessary for 9.7 and earlier. 10 never
-               # had this issue.
-               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
-                       systemd_newtmpfilesd "${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 && systemd_tmpfiles_create ${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 "${DATA_DIR}"
-               chown -Rf postgres:postgres "${DATA_DIR}"
-               chmod 0700 "${DATA_DIR}"
-       fi
-
-       einfo "Initializing the database ..."
-
-       if [[ ${EUID} == 0 ]] ; then
-               su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
-       else
-               "${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
-       fi
-
-       if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
-               mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
-               ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
-       fi
-
-       # unix_socket_directory has no effect in postgresql.conf as it's
-       # overridden in the initscript
-       sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
-
-       cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
-               # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
-               # On the off-chance that you might need to work with UTF-8 encoded
-               # characters in PL/Perl
-               plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
-       EOF
-
-       einfo "The autovacuum function, which was in contrib, has been moved to the main"
-       einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
-       einfo "by default. You can disable it in the cluster's:"
-       einfo "    ${PGDATA%/}/postgresql.conf"
-       einfo
-       if ! use systemd; then
-               einfo "The PostgreSQL server, by default, will log events to:"
-               einfo "    ${DATA_DIR%/}/postmaster.log"
-               einfo
-       fi
-       if use prefix ; then
-               einfo "The location of the configuration files have moved to:"
-               einfo "    ${PGDATA}"
-               einfo "To start the server:"
-               einfo "    pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
-               einfo "To stop:"
-               einfo "    pg_ctl stop -D ${DATA_DIR}"
-               einfo
-               einfo "Or move the configuration files back:"
-               einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
-       elif use systemd; then
-               einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       else
-               einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       fi
-}
-
-src_test() {
-       if use server && [[ ${UID} -ne 0 ]] ; then
-               emake check
-
-               einfo "If you think other tests besides the regression tests are necessary, please"
-               einfo "submit a bug including a patch for this ebuild to enable them."
-       else
-               use server || \
-                       ewarn 'Tests cannot be run without the "server" use flag enabled.'
-               [[ ${UID} -eq 0 ]] || \
-                       ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
-
-               ewarn 'Skipping.'
-       fi
-}
diff --git a/dev-db/postgresql/postgresql-10.7.ebuild b/dev-db/postgresql/postgresql-10.7.ebuild
deleted file mode 100644 (file)
index 12803d6..0000000
+++ /dev/null
@@ -1,460 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python2_7 python3_{5,6} )
-
-PLOCALES="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN
-                zh_TW"
-
-inherit flag-o-matic l10n linux-info multilib pam prefix python-single-r1 \
-               systemd user versionator
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
-
-SLOT=$(get_major_version)
-
-MY_PV=${PV/_/}
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-SRC_URI="mirror://postgresql/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
-
-LICENSE="POSTGRESQL GPL-2"
-DESCRIPTION="PostgreSQL RDBMS"
-HOMEPAGE="https://www.postgresql.org/"
-
-IUSE="doc kerberos kernel_linux ldap libressl nls pam perl python +readline
-         selinux +server systemd ssl static-libs tcl threads uuid xml zlib"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="
->=app-eselect/eselect-postgresql-2.0
-sys-apps/less
-virtual/libintl
-kerberos? ( virtual/krb5 )
-ldap? ( net-nds/openldap )
-pam? ( virtual/pam )
-perl? ( >=dev-lang/perl-5.8:= )
-python? ( ${PYTHON_DEPS} )
-readline? ( sys-libs/readline:0= )
-server? ( systemd? ( sys-apps/systemd ) )
-ssl? (
-       !libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
-       libressl? ( dev-libs/libressl:= )
-)
-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,uclibc,musl} )
-BSD_LIBC=( elibc_{Free,Net,Open}BSD )
-
-nest_usedep() {
-       local front back
-       while [[ ${#} -gt 1 ]]; do
-               front+="${1}? ( "
-               back+=" )"
-               shift
-       done
-       echo "${front}${1}${back}"
-}
-
-IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
-CDEPEND+="
-uuid? (
-       ${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
-       $(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
-)"
-
-DEPEND="${CDEPEND}
-!!<sys-apps/sandbox-2.0
-sys-devel/bison
-sys-devel/flex
-nls? ( sys-devel/gettext )
-xml? ( virtual/pkgconfig )
-"
-
-RDEPEND="${CDEPEND}
-!dev-db/postgresql-docs:${SLOT}
-!dev-db/postgresql-base:${SLOT}
-!dev-db/postgresql-server:${SLOT}
-selinux? ( sec-policy/selinux-postgresql )
-"
-
-pkg_setup() {
-       use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
-
-       enewgroup postgres 70
-       enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
-
-       use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-       # Work around PPC{,64} compilation bug where bool is already defined
-       sed '/#ifndef __cplusplus/a #undef bool' -i src/include/c.h || die
-
-       # 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}-10.2-no-server.patch"
-
-       if use pam ; then
-               sed -e "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
-               for i in ${BSD_LIBC[@]}; do
-                       use ${i} && uuid_config="--with-uuid=bsd"
-               done
-               [[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
-       fi
-
-       econf \
-               --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
-               --datadir="${PO}/usr/share/postgresql-${SLOT}" \
-               --docdir="${PO}/usr/share/doc/${PF}" \
-               --includedir="${PO}/usr/include/postgresql-${SLOT}" \
-               --mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
-               --sysconfdir="${PO}/etc/postgresql-${SLOT}" \
-               --with-system-tzdata="${PO}/usr/share/zoneinfo" \
-               $(use_enable !alpha spinlocks) \
-               $(use_enable threads thread-safety) \
-               $(use_with kerberos gssapi) \
-               $(use_with ldap) \
-               $(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 nls "'$(l10n_get_locales)'")
-}
-
-src_compile() {
-       emake
-       emake -C contrib
-}
-
-src_install() {
-       emake DESTDIR="${D}" install
-       emake DESTDIR="${D}" install -C contrib
-
-       dodoc README HISTORY doc/{TODO,bug.template}
-
-       # 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
-
-       use static-libs || find "${ED}" -name '*.a' -delete
-
-       local f bn
-       for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-                                       -mindepth 1 -maxdepth 1)
-       do
-               bn=$(basename "${f}")
-               # Temporarily tack on tmp to workaround a file collision
-               # issue. This is only necessary for 9.7 and earlier. 10 never
-               # had this issue.
-               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
-                       systemd_newtmpfilesd "${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 && systemd_tmpfiles_create ${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 "${DATA_DIR}"
-               chown -Rf postgres:postgres "${DATA_DIR}"
-               chmod 0700 "${DATA_DIR}"
-       fi
-
-       einfo "Initializing the database ..."
-
-       if [[ ${EUID} == 0 ]] ; then
-               su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
-       else
-               "${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
-       fi
-
-       if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
-               mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
-               ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
-       fi
-
-       # unix_socket_directory has no effect in postgresql.conf as it's
-       # overridden in the initscript
-       sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
-
-       cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
-               # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
-               # On the off-chance that you might need to work with UTF-8 encoded
-               # characters in PL/Perl
-               plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
-       EOF
-
-       einfo "The autovacuum function, which was in contrib, has been moved to the main"
-       einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
-       einfo "by default. You can disable it in the cluster's:"
-       einfo "    ${PGDATA%/}/postgresql.conf"
-       einfo
-       if ! use systemd; then
-               einfo "The PostgreSQL server, by default, will log events to:"
-               einfo "    ${DATA_DIR%/}/postmaster.log"
-               einfo
-       fi
-       if use prefix ; then
-               einfo "The location of the configuration files have moved to:"
-               einfo "    ${PGDATA}"
-               einfo "To start the server:"
-               einfo "    pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
-               einfo "To stop:"
-               einfo "    pg_ctl stop -D ${DATA_DIR}"
-               einfo
-               einfo "Or move the configuration files back:"
-               einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
-       elif use systemd; then
-               einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       else
-               einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       fi
-}
-
-src_test() {
-       if use server && [[ ${UID} -ne 0 ]] ; then
-               emake check
-
-               einfo "If you think other tests besides the regression tests are necessary, please"
-               einfo "submit a bug including a patch for this ebuild to enable them."
-       else
-               use server || \
-                       ewarn 'Tests cannot be run without the "server" use flag enabled.'
-               [[ ${UID} -eq 0 ]] || \
-                       ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
-
-               ewarn 'Skipping.'
-       fi
-}
diff --git a/dev-db/postgresql/postgresql-11.1.ebuild b/dev-db/postgresql/postgresql-11.1.ebuild
deleted file mode 100644 (file)
index dea7d4a..0000000
+++ /dev/null
@@ -1,460 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python2_7 python3_{5,6} )
-
-PLOCALES="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN
-                zh_TW"
-
-inherit flag-o-matic l10n linux-info multilib pam prefix python-single-r1 \
-               systemd user versionator
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-SLOT=$(get_major_version)
-
-MY_PV=${PV/_/}
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-SRC_URI="mirror://postgresql/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
-
-LICENSE="POSTGRESQL GPL-2"
-DESCRIPTION="PostgreSQL RDBMS"
-HOMEPAGE="http://www.postgresql.org/"
-
-IUSE="doc kerberos kernel_linux ldap libressl llvm nls pam perl python +readline
-         selinux +server systemd ssl static-libs tcl threads uuid xml zlib"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="
->=app-eselect/eselect-postgresql-2.0
-sys-apps/less
-virtual/libintl
-kerberos? ( virtual/krb5 )
-ldap? ( net-nds/openldap )
-llvm? ( sys-devel/llvm:=
-       sys-devel/clang:= )
-pam? ( virtual/pam )
-perl? ( >=dev-lang/perl-5.8:= )
-python? ( ${PYTHON_DEPS} )
-readline? ( sys-libs/readline:0= )
-server? ( systemd? ( sys-apps/systemd ) )
-ssl? (
-       !libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
-       libressl? ( dev-libs/libressl:= )
-)
-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,uclibc,musl} )
-BSD_LIBC=( elibc_{Free,Net,Open}BSD )
-
-nest_usedep() {
-       local front back
-       while [[ ${#} -gt 1 ]]; do
-               front+="${1}? ( "
-               back+=" )"
-               shift
-       done
-       echo "${front}${1}${back}"
-}
-
-IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
-CDEPEND+="
-uuid? (
-       ${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
-       $(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
-)"
-
-DEPEND="${CDEPEND}
-!!<sys-apps/sandbox-2.0
-sys-devel/bison
-sys-devel/flex
-nls? ( sys-devel/gettext )
-xml? ( virtual/pkgconfig )
-"
-
-RDEPEND="${CDEPEND}
-!dev-db/postgresql-docs:${SLOT}
-!dev-db/postgresql-base:${SLOT}
-!dev-db/postgresql-server:${SLOT}
-selinux? ( sec-policy/selinux-postgresql )
-"
-
-pkg_setup() {
-       use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
-
-       enewgroup postgres 70
-       enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
-
-       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}-11_beta1-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
-               for i in ${BSD_LIBC[@]}; do
-                       use ${i} && uuid_config="--with-uuid=bsd"
-               done
-               [[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
-       fi
-
-       econf \
-               --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
-               --datadir="${PO}/usr/share/postgresql-${SLOT}" \
-               --docdir="${PO}/usr/share/doc/${PF}" \
-               --includedir="${PO}/usr/include/postgresql-${SLOT}" \
-               --mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
-               --sysconfdir="${PO}/etc/postgresql-${SLOT}" \
-               --with-system-tzdata="${PO}/usr/share/zoneinfo" \
-               $(use_enable !alpha spinlocks) \
-               $(use_enable threads thread-safety) \
-               $(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 nls "'$(l10n_get_locales)'")
-}
-
-src_compile() {
-       emake
-       emake -C contrib
-}
-
-src_install() {
-       emake DESTDIR="${D}" install
-       emake DESTDIR="${D}" install -C contrib
-
-       dodoc README HISTORY doc/{TODO,bug.template}
-
-       # 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
-
-       use static-libs || find "${ED}" -name '*.a' -delete
-
-       local f bn
-       for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-                                       -mindepth 1 -maxdepth 1)
-       do
-               bn=$(basename "${f}")
-               # Temporarily tack on tmp to workaround a file collision
-               # issue. This is only necessary for 9.7 and earlier. 10 never
-               # had this issue.
-               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
-                       systemd_newtmpfilesd "${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 && systemd_tmpfiles_create ${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 "http://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 "    http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
-       einfo "    http://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 "${DATA_DIR}"
-               chown -Rf postgres:postgres "${DATA_DIR}"
-               chmod 0700 "${DATA_DIR}"
-       fi
-
-       einfo "Initializing the database ..."
-
-       if [[ ${EUID} == 0 ]] ; then
-               su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
-       else
-               "${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
-       fi
-
-       if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
-               mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
-               ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
-       fi
-
-       # unix_socket_directory has no effect in postgresql.conf as it's
-       # overridden in the initscript
-       sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
-
-       cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
-               # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
-               # On the off-chance that you might need to work with UTF-8 encoded
-               # characters in PL/Perl
-               plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
-       EOF
-
-       einfo "The autovacuum function, which was in contrib, has been moved to the main"
-       einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
-       einfo "by default. You can disable it in the cluster's:"
-       einfo "    ${PGDATA%/}/postgresql.conf"
-       einfo
-       if ! use systemd; then
-               einfo "The PostgreSQL server, by default, will log events to:"
-               einfo "    ${DATA_DIR%/}/postmaster.log"
-               einfo
-       fi
-       if use prefix ; then
-               einfo "The location of the configuration files have moved to:"
-               einfo "    ${PGDATA}"
-               einfo "To start the server:"
-               einfo "    pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
-               einfo "To stop:"
-               einfo "    pg_ctl stop -D ${DATA_DIR}"
-               einfo
-               einfo "Or move the configuration files back:"
-               einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
-       elif use systemd; then
-               einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       else
-               einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       fi
-}
-
-src_test() {
-       if use server && [[ ${UID} -ne 0 ]] ; then
-               emake check
-
-               einfo "If you think other tests besides the regression tests are necessary, please"
-               einfo "submit a bug including a patch for this ebuild to enable them."
-       else
-               use server || \
-                       ewarn 'Tests cannot be run without the "server" use flag enabled.'
-               [[ ${UID} -eq 0 ]] || \
-                       ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
-
-               ewarn 'Skipping.'
-       fi
-}
diff --git a/dev-db/postgresql/postgresql-11.2.ebuild b/dev-db/postgresql/postgresql-11.2.ebuild
deleted file mode 100644 (file)
index 7329f53..0000000
+++ /dev/null
@@ -1,460 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python2_7 python3_{5,6} )
-
-PLOCALES="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN
-                zh_TW"
-
-inherit flag-o-matic l10n linux-info multilib pam prefix python-single-r1 \
-               systemd user versionator
-
-KEYWORDS="alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-SLOT=$(get_major_version)
-
-MY_PV=${PV/_/}
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-SRC_URI="mirror://postgresql/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
-
-LICENSE="POSTGRESQL GPL-2"
-DESCRIPTION="PostgreSQL RDBMS"
-HOMEPAGE="http://www.postgresql.org/"
-
-IUSE="doc kerberos kernel_linux ldap libressl llvm nls pam perl python +readline
-         selinux +server systemd ssl static-libs tcl threads uuid xml zlib"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="
->=app-eselect/eselect-postgresql-2.0
-sys-apps/less
-virtual/libintl
-kerberos? ( virtual/krb5 )
-ldap? ( net-nds/openldap )
-llvm? ( sys-devel/llvm:=
-       sys-devel/clang:= )
-pam? ( virtual/pam )
-perl? ( >=dev-lang/perl-5.8:= )
-python? ( ${PYTHON_DEPS} )
-readline? ( sys-libs/readline:0= )
-server? ( systemd? ( sys-apps/systemd ) )
-ssl? (
-       !libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
-       libressl? ( dev-libs/libressl:= )
-)
-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,uclibc,musl} )
-BSD_LIBC=( elibc_{Free,Net,Open}BSD )
-
-nest_usedep() {
-       local front back
-       while [[ ${#} -gt 1 ]]; do
-               front+="${1}? ( "
-               back+=" )"
-               shift
-       done
-       echo "${front}${1}${back}"
-}
-
-IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
-CDEPEND+="
-uuid? (
-       ${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
-       $(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
-)"
-
-DEPEND="${CDEPEND}
-!!<sys-apps/sandbox-2.0
-sys-devel/bison
-sys-devel/flex
-nls? ( sys-devel/gettext )
-xml? ( virtual/pkgconfig )
-"
-
-RDEPEND="${CDEPEND}
-!dev-db/postgresql-docs:${SLOT}
-!dev-db/postgresql-base:${SLOT}
-!dev-db/postgresql-server:${SLOT}
-selinux? ( sec-policy/selinux-postgresql )
-"
-
-pkg_setup() {
-       use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
-
-       enewgroup postgres 70
-       enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
-
-       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}-11_beta1-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
-               for i in ${BSD_LIBC[@]}; do
-                       use ${i} && uuid_config="--with-uuid=bsd"
-               done
-               [[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
-       fi
-
-       econf \
-               --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
-               --datadir="${PO}/usr/share/postgresql-${SLOT}" \
-               --docdir="${PO}/usr/share/doc/${PF}" \
-               --includedir="${PO}/usr/include/postgresql-${SLOT}" \
-               --mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
-               --sysconfdir="${PO}/etc/postgresql-${SLOT}" \
-               --with-system-tzdata="${PO}/usr/share/zoneinfo" \
-               $(use_enable !alpha spinlocks) \
-               $(use_enable threads thread-safety) \
-               $(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 nls "'$(l10n_get_locales)'")
-}
-
-src_compile() {
-       emake
-       emake -C contrib
-}
-
-src_install() {
-       emake DESTDIR="${D}" install
-       emake DESTDIR="${D}" install -C contrib
-
-       dodoc README HISTORY doc/{TODO,bug.template}
-
-       # 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
-
-       use static-libs || find "${ED}" -name '*.a' -delete
-
-       local f bn
-       for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-                                       -mindepth 1 -maxdepth 1)
-       do
-               bn=$(basename "${f}")
-               # Temporarily tack on tmp to workaround a file collision
-               # issue. This is only necessary for 9.7 and earlier. 10 never
-               # had this issue.
-               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
-                       systemd_newtmpfilesd "${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 && systemd_tmpfiles_create ${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 "http://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 "    http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
-       einfo "    http://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 "${DATA_DIR}"
-               chown -Rf postgres:postgres "${DATA_DIR}"
-               chmod 0700 "${DATA_DIR}"
-       fi
-
-       einfo "Initializing the database ..."
-
-       if [[ ${EUID} == 0 ]] ; then
-               su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
-       else
-               "${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
-       fi
-
-       if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
-               mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
-               ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
-       fi
-
-       # unix_socket_directory has no effect in postgresql.conf as it's
-       # overridden in the initscript
-       sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
-
-       cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
-               # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
-               # On the off-chance that you might need to work with UTF-8 encoded
-               # characters in PL/Perl
-               plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
-       EOF
-
-       einfo "The autovacuum function, which was in contrib, has been moved to the main"
-       einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
-       einfo "by default. You can disable it in the cluster's:"
-       einfo "    ${PGDATA%/}/postgresql.conf"
-       einfo
-       if ! use systemd; then
-               einfo "The PostgreSQL server, by default, will log events to:"
-               einfo "    ${DATA_DIR%/}/postmaster.log"
-               einfo
-       fi
-       if use prefix ; then
-               einfo "The location of the configuration files have moved to:"
-               einfo "    ${PGDATA}"
-               einfo "To start the server:"
-               einfo "    pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
-               einfo "To stop:"
-               einfo "    pg_ctl stop -D ${DATA_DIR}"
-               einfo
-               einfo "Or move the configuration files back:"
-               einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
-       elif use systemd; then
-               einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       else
-               einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       fi
-}
-
-src_test() {
-       if use server && [[ ${UID} -ne 0 ]] ; then
-               emake check
-
-               einfo "If you think other tests besides the regression tests are necessary, please"
-               einfo "submit a bug including a patch for this ebuild to enable them."
-       else
-               use server || \
-                       ewarn 'Tests cannot be run without the "server" use flag enabled.'
-               [[ ${UID} -eq 0 ]] || \
-                       ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
-
-               ewarn 'Skipping.'
-       fi
-}
diff --git a/dev-db/postgresql/postgresql-12_beta1.ebuild b/dev-db/postgresql/postgresql-12_beta1.ebuild
deleted file mode 100644 (file)
index bea7f35..0000000
+++ /dev/null
@@ -1,460 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python2_7 python3_{5,6} )
-
-PLOCALES="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN
-                zh_TW"
-
-inherit flag-o-matic l10n linux-info multilib pam prefix python-single-r1 \
-               systemd user versionator
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-SLOT=$(get_major_version)
-
-MY_PV=${PV/_/}
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-SRC_URI="mirror://postgresql/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
-
-LICENSE="POSTGRESQL GPL-2"
-DESCRIPTION="PostgreSQL RDBMS"
-HOMEPAGE="http://www.postgresql.org/"
-
-IUSE="doc kerberos kernel_linux ldap libressl llvm nls pam perl python +readline
-         selinux +server systemd ssl static-libs tcl threads uuid xml zlib"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="
->=app-eselect/eselect-postgresql-2.0
-sys-apps/less
-virtual/libintl
-kerberos? ( virtual/krb5 )
-ldap? ( net-nds/openldap )
-llvm? ( sys-devel/llvm:=
-       sys-devel/clang:= )
-pam? ( virtual/pam )
-perl? ( >=dev-lang/perl-5.8:= )
-python? ( ${PYTHON_DEPS} )
-readline? ( sys-libs/readline:0= )
-server? ( systemd? ( sys-apps/systemd ) )
-ssl? (
-       !libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
-       libressl? ( dev-libs/libressl:= )
-)
-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,uclibc,musl} )
-BSD_LIBC=( elibc_{Free,Net,Open}BSD )
-
-nest_usedep() {
-       local front back
-       while [[ ${#} -gt 1 ]]; do
-               front+="${1}? ( "
-               back+=" )"
-               shift
-       done
-       echo "${front}${1}${back}"
-}
-
-IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
-CDEPEND+="
-uuid? (
-       ${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
-       $(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
-)"
-
-DEPEND="${CDEPEND}
-!!<sys-apps/sandbox-2.0
-sys-devel/bison
-sys-devel/flex
-nls? ( sys-devel/gettext )
-xml? ( virtual/pkgconfig )
-"
-
-RDEPEND="${CDEPEND}
-!dev-db/postgresql-docs:${SLOT}
-!dev-db/postgresql-base:${SLOT}
-!dev-db/postgresql-server:${SLOT}
-selinux? ( sec-policy/selinux-postgresql )
-"
-
-pkg_setup() {
-       use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
-
-       enewgroup postgres 70
-       enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
-
-       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}-11_beta1-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
-               for i in ${BSD_LIBC[@]}; do
-                       use ${i} && uuid_config="--with-uuid=bsd"
-               done
-               [[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
-       fi
-
-       econf \
-               --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
-               --datadir="${PO}/usr/share/postgresql-${SLOT}" \
-               --docdir="${PO}/usr/share/doc/${PF}" \
-               --includedir="${PO}/usr/include/postgresql-${SLOT}" \
-               --mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
-               --sysconfdir="${PO}/etc/postgresql-${SLOT}" \
-               --with-system-tzdata="${PO}/usr/share/zoneinfo" \
-               $(use_enable !alpha spinlocks) \
-               $(use_enable threads thread-safety) \
-               $(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 nls "'$(l10n_get_locales)'")
-}
-
-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
-
-       use static-libs || find "${ED}" -name '*.a' -delete
-
-       local f bn
-       for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-                                       -mindepth 1 -maxdepth 1)
-       do
-               bn=$(basename "${f}")
-               # Temporarily tack on tmp to workaround a file collision
-               # issue. This is only necessary for 9.7 and earlier. 10 never
-               # had this issue.
-               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
-                       systemd_newtmpfilesd "${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 && systemd_tmpfiles_create ${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 "http://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 "    http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
-       einfo "    http://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 "${DATA_DIR}"
-               chown -Rf postgres:postgres "${DATA_DIR}"
-               chmod 0700 "${DATA_DIR}"
-       fi
-
-       einfo "Initializing the database ..."
-
-       if [[ ${EUID} == 0 ]] ; then
-               su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
-       else
-               "${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
-       fi
-
-       if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
-               mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
-               ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
-       fi
-
-       # unix_socket_directory has no effect in postgresql.conf as it's
-       # overridden in the initscript
-       sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
-
-       cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
-               # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
-               # On the off-chance that you might need to work with UTF-8 encoded
-               # characters in PL/Perl
-               plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
-       EOF
-
-       einfo "The autovacuum function, which was in contrib, has been moved to the main"
-       einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
-       einfo "by default. You can disable it in the cluster's:"
-       einfo "    ${PGDATA%/}/postgresql.conf"
-       einfo
-       if ! use systemd; then
-               einfo "The PostgreSQL server, by default, will log events to:"
-               einfo "    ${DATA_DIR%/}/postmaster.log"
-               einfo
-       fi
-       if use prefix ; then
-               einfo "The location of the configuration files have moved to:"
-               einfo "    ${PGDATA}"
-               einfo "To start the server:"
-               einfo "    pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
-               einfo "To stop:"
-               einfo "    pg_ctl stop -D ${DATA_DIR}"
-               einfo
-               einfo "Or move the configuration files back:"
-               einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
-       elif use systemd; then
-               einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       else
-               einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       fi
-}
-
-src_test() {
-       if use server && [[ ${UID} -ne 0 ]] ; then
-               emake check
-
-               einfo "If you think other tests besides the regression tests are necessary, please"
-               einfo "submit a bug including a patch for this ebuild to enable them."
-       else
-               use server || \
-                       ewarn 'Tests cannot be run without the "server" use flag enabled.'
-               [[ ${UID} -eq 0 ]] || \
-                       ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
-
-               ewarn 'Skipping.'
-       fi
-}
diff --git a/dev-db/postgresql/postgresql-9.3.25.ebuild b/dev-db/postgresql/postgresql-9.3.25.ebuild
deleted file mode 100644 (file)
index 99535f9..0000000
+++ /dev/null
@@ -1,443 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python2_7 python3_{5,6} )
-
-PLOCALES="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN
-                 zh_TW"
-
-inherit flag-o-matic l10n linux-info multilib pam prefix python-single-r1 \
-               systemd user versionator
-
-KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
-
-SLOT="$(get_version_component_range 1-2)"
-
-SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
-
-LICENSE="POSTGRESQL GPL-2"
-DESCRIPTION="PostgreSQL RDBMS"
-HOMEPAGE="https://www.postgresql.org/"
-
-IUSE="doc kerberos kernel_linux ldap libressl nls pam perl -pg_legacytimestamp
-         python +readline selinux +server systemd ssl static-libs tcl threads uuid
-         xml zlib"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="
->=app-eselect/eselect-postgresql-2.0
-sys-apps/less
-virtual/libintl
-kerberos? ( virtual/krb5 )
-ldap? ( net-nds/openldap )
-pam? ( virtual/pam )
-perl? ( >=dev-lang/perl-5.8:= )
-python? ( ${PYTHON_DEPS} )
-readline? ( sys-libs/readline:0= )
-ssl? (
-       !libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
-       libressl? ( dev-libs/libressl:= )
-)
-tcl? ( >=dev-lang/tcl-8:0= )
-uuid? ( dev-libs/ossp-uuid )
-xml? ( dev-libs/libxml2 dev-libs/libxslt )
-zlib? ( sys-libs/zlib )
-"
-
-DEPEND="${CDEPEND}
-!!<sys-apps/sandbox-2.0
-sys-devel/bison
-sys-devel/flex
-nls? ( sys-devel/gettext )
-xml? ( virtual/pkgconfig )
-"
-
-RDEPEND="${CDEPEND}
-!dev-db/postgresql-docs:${SLOT}
-!dev-db/postgresql-base:${SLOT}
-!dev-db/postgresql-server:${SLOT}
-selinux? ( sec-policy/selinux-postgresql )
-"
-
-pkg_setup() {
-       use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
-
-       enewgroup postgres 70
-       enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
-
-       use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-       # Work around PPC{,64} compilation bug where bool is already defined
-       sed '/#ifndef __cplusplus/a #undef bool' -i src/include/c.h || die
-
-       # 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}-${SLOT}-no-server.patch"
-
-       if use pam ; then
-               sed -e "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%/}"
-
-       econf \
-               --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
-               --datadir="${PO}/usr/share/postgresql-${SLOT}" \
-               --docdir="${PO}/usr/share/doc/${PF}" \
-               --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 !pg_legacytimestamp integer-datetimes) \
-               $(use_enable threads thread-safety) \
-               $(use_with kerberos gssapi) \
-               $(use_with kerberos krb5) \
-               $(use_with ldap) \
-               $(use_with pam) \
-               $(use_with perl) \
-               $(use_with python) \
-               $(use_with readline) \
-               $(use_with ssl openssl) \
-               $(use_with tcl) \
-               $(use_with uuid ossp-uuid) \
-               $(use_with xml libxml) \
-               $(use_with xml libxslt) \
-               $(use_with zlib) \
-               $(use_enable nls nls "'$(l10n_get_locales)'")
-}
-
-src_compile() {
-       emake
-       emake -C contrib
-}
-
-src_install() {
-       emake DESTDIR="${D}" install
-       emake DESTDIR="${D}" install -C contrib
-
-       dodoc README HISTORY doc/{TODO,bug.template}
-
-       # 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
-               for m in {initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}; 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
-
-       use static-libs || find "${ED}" -name '*.a' -delete
-
-       local f bn
-       for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-                                       -mindepth 1 -maxdepth 1)
-       do
-               bn=$(basename "${f}")
-               # Temporarily tack on tmp to workaround a file collision
-               # issue. This is only necessary for 9.7 and earlier. 10 never
-               # had this issue.
-               dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
-                         "/usr/bin/${bn}${SLOT/.}tmp"
-       done
-
-       if use doc ; then
-               docinto html
-               dodoc doc/src/sgml/html/*
-
-               docinto sgml
-               dodoc doc/src/sgml/*.{sgml,dsl}
-       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.2" | \
-                               systemd_newunit - ${PN}-${SLOT}.service
-                       systemd_newtmpfilesd "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
-               fi
-
-               newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
-
-               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_preinst() {
-       # Find all of the slot-specific symlinks, if any, in /usr/bin (e.g.,
-       # /usr/bin/psql96). They may have been created by the
-       # postgresql.eselect module, but they're handled within this ebuild
-       # now. It's alright if we momentarily delete /usr/bin/psql as it
-       # will be recreated by the eselect module in pkg_ppostinst(). This
-       # is only necessary for 9.7 and earlier. 10 and later were never
-       # handled in this manner.
-       local canonicalise
-       if type -p realpath > /dev/null; then
-               canonicalise=realpath
-       elif type -p readlink > /dev/null; then
-               canonicalise='readlink -f'
-       else
-               # can't die, subshell
-               die "No readlink nor realpath found, cannot canonicalise"
-       fi
-
-       local l
-       # First remove any symlinks in /usr/bin that may have been created
-       # by the old eselect
-       for l in $(find "${ROOT%/}/usr/bin" -mindepth 1 -maxdepth 1 -type l) ; do
-               if [[ $(${canonicalise} "${l}") == *postgresql-${SLOT}* ]] ; then
-                       rm "${l}" || ewarn "Couldn't remove ${l}"
-               fi
-       done
-
-       # Then move the symlinks created by the ebuild to their proper place.
-       for l in "${ED}"/usr/bin/*tmp ; do
-               mv "${l}" "${l%tmp}" \
-                       || ewarn "Couldn't rename $(basename ${l}) to $(basename ${l%tmp})"
-       done
-}
-
-pkg_postinst() {
-       use server && use systemd && systemd_tmpfiles_create ${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}"
-       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 "${DATA_DIR}"
-               chown -Rf postgres:postgres "${DATA_DIR}"
-               chmod 0700 "${DATA_DIR}"
-       fi
-
-       einfo "Initializing the database ..."
-
-       if [[ ${EUID} == 0 ]] ; then
-               su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
-       else
-               "${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
-       fi
-
-       if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
-               mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
-               ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
-       fi
-
-       # unix_socket_directory has no effect in postgresql.conf as it's
-       # overridden in the initscript
-       sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
-
-       cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
-               # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
-               # On the off-chance that you might need to work with UTF-8 encoded
-               # characters in PL/Perl
-               plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
-       EOF
-
-       einfo "The autovacuum function, which was in contrib, has been moved to the main"
-       einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
-       einfo "by default. You can disable it in the cluster's:"
-       einfo "    ${PGDATA%/}/postgresql.conf"
-       einfo
-       einfo "The PostgreSQL server, by default, will log events to:"
-       einfo "    ${DATA_DIR%/}/postmaster.log"
-       einfo
-       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}"
-       else
-               einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       fi
-}
-
-src_test() {
-       if use server && [[ ${UID} -ne 0 ]] ; then
-               emake check
-
-               einfo "If you think other tests besides the regression tests are necessary, please"
-               einfo "submit a bug including a patch for this ebuild to enable them."
-       else
-               use server || \
-                       ewarn 'Tests cannot be run without the "server" use flag enabled.'
-               [[ ${UID} -eq 0 ]] || \
-                       ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
-
-               ewarn 'Skipping.'
-       fi
-}
diff --git a/dev-db/postgresql/postgresql-9.4.20.ebuild b/dev-db/postgresql/postgresql-9.4.20.ebuild
deleted file mode 100644 (file)
index 9463417..0000000
+++ /dev/null
@@ -1,475 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python2_7 python3_{5,6} )
-
-PLOCALES="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN
-                 zh_TW"
-
-inherit flag-o-matic l10n linux-info multilib pam prefix python-single-r1 \
-               systemd user versionator
-
-KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
-
-SLOT="$(get_version_component_range 1-2)"
-
-SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
-
-LICENSE="POSTGRESQL GPL-2"
-DESCRIPTION="PostgreSQL RDBMS"
-HOMEPAGE="https://www.postgresql.org/"
-
-IUSE="doc kerberos kernel_linux ldap libressl nls pam perl -pg_legacytimestamp
-         python +readline selinux +server systemd ssl static-libs tcl threads uuid
-         xml zlib"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="
->=app-eselect/eselect-postgresql-2.0
-sys-apps/less
-virtual/libintl
-kerberos? ( virtual/krb5 )
-ldap? ( net-nds/openldap )
-pam? ( virtual/pam )
-perl? ( >=dev-lang/perl-5.8:= )
-python? ( ${PYTHON_DEPS} )
-readline? ( sys-libs/readline:0= )
-ssl? (
-       !libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
-       libressl? ( dev-libs/libressl:= )
-)
-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,uclibc,musl} )
-BSD_LIBC=( elibc_{Free,Net,Open}BSD )
-
-nest_usedep() {
-       local front back
-       while [[ ${#} -gt 1 ]]; do
-               front+="${1}? ( "
-               back+=" )"
-               shift
-       done
-       echo "${front}${1}${back}"
-}
-
-IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
-CDEPEND+="
-uuid? (
-       ${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
-       $(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
-)"
-
-DEPEND="${CDEPEND}
-!!<sys-apps/sandbox-2.0
-sys-devel/bison
-sys-devel/flex
-nls? ( sys-devel/gettext )
-xml? ( virtual/pkgconfig )
-"
-
-RDEPEND="${CDEPEND}
-!dev-db/postgresql-docs:${SLOT}
-!dev-db/postgresql-base:${SLOT}
-!dev-db/postgresql-server:${SLOT}
-selinux? ( sec-policy/selinux-postgresql )
-"
-
-pkg_setup() {
-       use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
-
-       enewgroup postgres 70
-       enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
-
-       use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-       # Work around PPC{,64} compilation bug where bool is already defined
-       sed '/#ifndef __cplusplus/a #undef bool' -i src/include/c.h || die
-
-       # 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}-9.4.10-no-server.patch"
-
-       if use pam ; then
-               sed -e "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
-               for i in ${BSD_LIBC[@]}; do
-                       use ${i} && uuid_config="--with-uuid=bsd"
-               done
-               [[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
-       fi
-
-       econf \
-               --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
-               --datadir="${PO}/usr/share/postgresql-${SLOT}" \
-               --docdir="${PO}/usr/share/doc/${PF}" \
-               --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 !pg_legacytimestamp integer-datetimes) \
-               $(use_enable threads thread-safety) \
-               $(use_with kerberos gssapi) \
-               $(use_with ldap) \
-               $(use_with pam) \
-               $(use_with perl) \
-               $(use_with python) \
-               $(use_with readline) \
-               $(use_with ssl openssl) \
-               $(use_with tcl) \
-               ${uuid_config} \
-               $(use_with xml libxml) \
-               $(use_with xml libxslt) \
-               $(use_with zlib) \
-               $(use_enable nls nls "'$(l10n_get_locales)'")
-}
-
-src_compile() {
-       emake
-       emake -C contrib
-}
-
-src_install() {
-       emake DESTDIR="${D}" install
-       emake DESTDIR="${D}" install -C contrib
-
-       dodoc README HISTORY doc/{TODO,bug.template}
-
-       # 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
-               for m in {initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}; 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
-
-       use static-libs || find "${ED}" -name '*.a' -delete
-
-       local f bn
-       for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-                                       -mindepth 1 -maxdepth 1)
-       do
-               bn=$(basename "${f}")
-               # Temporarily tack on tmp to workaround a file collision
-               # issue. This is only necessary for 9.7 and earlier. 10 never
-               # had this issue.
-               dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
-                         "/usr/bin/${bn}${SLOT/.}tmp"
-       done
-
-       if use doc ; then
-               docinto html
-               dodoc doc/src/sgml/html/*
-
-               docinto sgml
-               dodoc doc/src/sgml/*.{sgml,dsl}
-       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.2" | \
-                               systemd_newunit - ${PN}-${SLOT}.service
-                       systemd_newtmpfilesd "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
-               fi
-
-               newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
-
-               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_preinst() {
-       # Find all of the slot-specific symlinks, if any, in /usr/bin (e.g.,
-       # /usr/bin/psql96). They may have been created by the
-       # postgresql.eselect module, but they're handled within this ebuild
-       # now. It's alright if we momentarily delete /usr/bin/psql as it
-       # will be recreated by the eselect module in pkg_ppostinst(). This
-       # is only necessary for 9.7 and earlier. 10 and later were never
-       # handled in this manner.
-       local canonicalise
-       if type -p realpath > /dev/null; then
-               canonicalise=realpath
-       elif type -p readlink > /dev/null; then
-               canonicalise='readlink -f'
-       else
-               # can't die, subshell
-               die "No readlink nor realpath found, cannot canonicalise"
-       fi
-
-       local l
-       # First remove any symlinks in /usr/bin that may have been created
-       # by the old eselect
-       for l in $(find "${ROOT%/}/usr/bin" -mindepth 1 -maxdepth 1 -type l) ; do
-               if [[ $(${canonicalise} "${l}") == *postgresql-${SLOT}* ]] ; then
-                       rm "${l}" || ewarn "Couldn't remove ${l}"
-               fi
-       done
-
-       # Then move the symlinks created by the ebuild to their proper place.
-       for l in "${ED}"/usr/bin/*tmp ; do
-               mv "${l}" "${l%tmp}" \
-                       || ewarn "Couldn't rename $(basename ${l}) to $(basename ${l%tmp})"
-       done
-}
-
-pkg_postinst() {
-       use server && use systemd && systemd_tmpfiles_create ${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}"
-       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 "${DATA_DIR}"
-               chown -Rf postgres:postgres "${DATA_DIR}"
-               chmod 0700 "${DATA_DIR}"
-       fi
-
-       einfo "Initializing the database ..."
-
-       if [[ ${EUID} == 0 ]] ; then
-               su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
-       else
-               "${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
-       fi
-
-       if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
-               mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
-               ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
-       fi
-
-       # unix_socket_directory has no effect in postgresql.conf as it's
-       # overridden in the initscript
-       sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
-
-       cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
-               # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
-               # On the off-chance that you might need to work with UTF-8 encoded
-               # characters in PL/Perl
-               plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
-       EOF
-
-       einfo "The autovacuum function, which was in contrib, has been moved to the main"
-       einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
-       einfo "by default. You can disable it in the cluster's:"
-       einfo "    ${PGDATA%/}/postgresql.conf"
-       einfo
-       einfo "The PostgreSQL server, by default, will log events to:"
-       einfo "    ${DATA_DIR%/}/postmaster.log"
-       einfo
-       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}"
-       else
-               einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       fi
-}
-
-src_test() {
-       if use server && [[ ${UID} -ne 0 ]] ; then
-               emake check
-
-               einfo "If you think other tests besides the regression tests are necessary, please"
-               einfo "submit a bug including a patch for this ebuild to enable them."
-       else
-               use server || \
-                       ewarn 'Tests cannot be run without the "server" use flag enabled.'
-               [[ ${UID} -eq 0 ]] || \
-                       ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
-
-               ewarn 'Skipping.'
-       fi
-}
diff --git a/dev-db/postgresql/postgresql-9.4.21.ebuild b/dev-db/postgresql/postgresql-9.4.21.ebuild
deleted file mode 100644 (file)
index 3dfe4e3..0000000
+++ /dev/null
@@ -1,475 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python2_7 python3_{5,6} )
-
-PLOCALES="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN
-                 zh_TW"
-
-inherit flag-o-matic l10n linux-info multilib pam prefix python-single-r1 \
-               systemd user versionator
-
-KEYWORDS="alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
-
-SLOT="$(get_version_component_range 1-2)"
-
-SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
-
-LICENSE="POSTGRESQL GPL-2"
-DESCRIPTION="PostgreSQL RDBMS"
-HOMEPAGE="https://www.postgresql.org/"
-
-IUSE="doc kerberos kernel_linux ldap libressl nls pam perl -pg_legacytimestamp
-         python +readline selinux +server systemd ssl static-libs tcl threads uuid
-         xml zlib"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="
->=app-eselect/eselect-postgresql-2.0
-sys-apps/less
-virtual/libintl
-kerberos? ( virtual/krb5 )
-ldap? ( net-nds/openldap )
-pam? ( virtual/pam )
-perl? ( >=dev-lang/perl-5.8:= )
-python? ( ${PYTHON_DEPS} )
-readline? ( sys-libs/readline:0= )
-ssl? (
-       !libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
-       libressl? ( dev-libs/libressl:= )
-)
-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,uclibc,musl} )
-BSD_LIBC=( elibc_{Free,Net,Open}BSD )
-
-nest_usedep() {
-       local front back
-       while [[ ${#} -gt 1 ]]; do
-               front+="${1}? ( "
-               back+=" )"
-               shift
-       done
-       echo "${front}${1}${back}"
-}
-
-IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
-CDEPEND+="
-uuid? (
-       ${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
-       $(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
-)"
-
-DEPEND="${CDEPEND}
-!!<sys-apps/sandbox-2.0
-sys-devel/bison
-sys-devel/flex
-nls? ( sys-devel/gettext )
-xml? ( virtual/pkgconfig )
-"
-
-RDEPEND="${CDEPEND}
-!dev-db/postgresql-docs:${SLOT}
-!dev-db/postgresql-base:${SLOT}
-!dev-db/postgresql-server:${SLOT}
-selinux? ( sec-policy/selinux-postgresql )
-"
-
-pkg_setup() {
-       use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
-
-       enewgroup postgres 70
-       enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
-
-       use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-       # Work around PPC{,64} compilation bug where bool is already defined
-       sed '/#ifndef __cplusplus/a #undef bool' -i src/include/c.h || die
-
-       # 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}-9.4.10-no-server.patch"
-
-       if use pam ; then
-               sed -e "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
-               for i in ${BSD_LIBC[@]}; do
-                       use ${i} && uuid_config="--with-uuid=bsd"
-               done
-               [[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
-       fi
-
-       econf \
-               --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
-               --datadir="${PO}/usr/share/postgresql-${SLOT}" \
-               --docdir="${PO}/usr/share/doc/${PF}" \
-               --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 !pg_legacytimestamp integer-datetimes) \
-               $(use_enable threads thread-safety) \
-               $(use_with kerberos gssapi) \
-               $(use_with ldap) \
-               $(use_with pam) \
-               $(use_with perl) \
-               $(use_with python) \
-               $(use_with readline) \
-               $(use_with ssl openssl) \
-               $(use_with tcl) \
-               ${uuid_config} \
-               $(use_with xml libxml) \
-               $(use_with xml libxslt) \
-               $(use_with zlib) \
-               $(use_enable nls nls "'$(l10n_get_locales)'")
-}
-
-src_compile() {
-       emake
-       emake -C contrib
-}
-
-src_install() {
-       emake DESTDIR="${D}" install
-       emake DESTDIR="${D}" install -C contrib
-
-       dodoc README HISTORY doc/{TODO,bug.template}
-
-       # 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
-               for m in {initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}; 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
-
-       use static-libs || find "${ED}" -name '*.a' -delete
-
-       local f bn
-       for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-                                       -mindepth 1 -maxdepth 1)
-       do
-               bn=$(basename "${f}")
-               # Temporarily tack on tmp to workaround a file collision
-               # issue. This is only necessary for 9.7 and earlier. 10 never
-               # had this issue.
-               dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
-                         "/usr/bin/${bn}${SLOT/.}tmp"
-       done
-
-       if use doc ; then
-               docinto html
-               dodoc doc/src/sgml/html/*
-
-               docinto sgml
-               dodoc doc/src/sgml/*.{sgml,dsl}
-       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.2" | \
-                               systemd_newunit - ${PN}-${SLOT}.service
-                       systemd_newtmpfilesd "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
-               fi
-
-               newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
-
-               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_preinst() {
-       # Find all of the slot-specific symlinks, if any, in /usr/bin (e.g.,
-       # /usr/bin/psql96). They may have been created by the
-       # postgresql.eselect module, but they're handled within this ebuild
-       # now. It's alright if we momentarily delete /usr/bin/psql as it
-       # will be recreated by the eselect module in pkg_ppostinst(). This
-       # is only necessary for 9.7 and earlier. 10 and later were never
-       # handled in this manner.
-       local canonicalise
-       if type -p realpath > /dev/null; then
-               canonicalise=realpath
-       elif type -p readlink > /dev/null; then
-               canonicalise='readlink -f'
-       else
-               # can't die, subshell
-               die "No readlink nor realpath found, cannot canonicalise"
-       fi
-
-       local l
-       # First remove any symlinks in /usr/bin that may have been created
-       # by the old eselect
-       for l in $(find "${ROOT%/}/usr/bin" -mindepth 1 -maxdepth 1 -type l) ; do
-               if [[ $(${canonicalise} "${l}") == *postgresql-${SLOT}* ]] ; then
-                       rm "${l}" || ewarn "Couldn't remove ${l}"
-               fi
-       done
-
-       # Then move the symlinks created by the ebuild to their proper place.
-       for l in "${ED}"/usr/bin/*tmp ; do
-               mv "${l}" "${l%tmp}" \
-                       || ewarn "Couldn't rename $(basename ${l}) to $(basename ${l%tmp})"
-       done
-}
-
-pkg_postinst() {
-       use server && use systemd && systemd_tmpfiles_create ${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}"
-       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 "${DATA_DIR}"
-               chown -Rf postgres:postgres "${DATA_DIR}"
-               chmod 0700 "${DATA_DIR}"
-       fi
-
-       einfo "Initializing the database ..."
-
-       if [[ ${EUID} == 0 ]] ; then
-               su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
-       else
-               "${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
-       fi
-
-       if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
-               mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
-               ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
-       fi
-
-       # unix_socket_directory has no effect in postgresql.conf as it's
-       # overridden in the initscript
-       sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
-
-       cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
-               # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
-               # On the off-chance that you might need to work with UTF-8 encoded
-               # characters in PL/Perl
-               plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
-       EOF
-
-       einfo "The autovacuum function, which was in contrib, has been moved to the main"
-       einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
-       einfo "by default. You can disable it in the cluster's:"
-       einfo "    ${PGDATA%/}/postgresql.conf"
-       einfo
-       einfo "The PostgreSQL server, by default, will log events to:"
-       einfo "    ${DATA_DIR%/}/postmaster.log"
-       einfo
-       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}"
-       else
-               einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       fi
-}
-
-src_test() {
-       if use server && [[ ${UID} -ne 0 ]] ; then
-               emake check
-
-               einfo "If you think other tests besides the regression tests are necessary, please"
-               einfo "submit a bug including a patch for this ebuild to enable them."
-       else
-               use server || \
-                       ewarn 'Tests cannot be run without the "server" use flag enabled.'
-               [[ ${UID} -eq 0 ]] || \
-                       ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
-
-               ewarn 'Skipping.'
-       fi
-}
diff --git a/dev-db/postgresql/postgresql-9.5.15.ebuild b/dev-db/postgresql/postgresql-9.5.15.ebuild
deleted file mode 100644 (file)
index cdbace4..0000000
+++ /dev/null
@@ -1,481 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python2_7 python3_{5,6} )
-
-PLOCALES="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN
-                 zh_TW"
-
-inherit flag-o-matic l10n linux-info multilib pam prefix python-single-r1 \
-               systemd user versionator
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
-
-SLOT="$(get_version_component_range 1-2)"
-
-SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
-
-LICENSE="POSTGRESQL GPL-2"
-DESCRIPTION="PostgreSQL RDBMS"
-HOMEPAGE="https://www.postgresql.org/"
-
-IUSE="doc kerberos kernel_linux ldap libressl nls pam perl -pg_legacytimestamp
-         python +readline selinux +server systemd ssl static-libs tcl threads uuid
-         xml zlib"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="
->=app-eselect/eselect-postgresql-2.0
-sys-apps/less
-virtual/libintl
-kerberos? ( virtual/krb5 )
-ldap? ( net-nds/openldap )
-pam? ( virtual/pam )
-perl? ( >=dev-lang/perl-5.8:= )
-python? ( ${PYTHON_DEPS} )
-readline? ( sys-libs/readline:0= )
-ssl? (
-       !libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
-       libressl? ( dev-libs/libressl:= )
-)
-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,uclibc,musl} )
-BSD_LIBC=( elibc_{Free,Net,Open}BSD )
-
-nest_usedep() {
-       local front back
-       while [[ ${#} -gt 1 ]]; do
-               front+="${1}? ( "
-               back+=" )"
-               shift
-       done
-       echo "${front}${1}${back}"
-}
-
-IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
-CDEPEND+="
-uuid? (
-       ${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
-       $(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
-)"
-
-DEPEND="${CDEPEND}
-!!<sys-apps/sandbox-2.0
-sys-devel/bison
-sys-devel/flex
-nls? ( sys-devel/gettext )
-xml? ( virtual/pkgconfig )
-"
-
-RDEPEND="${CDEPEND}
-!dev-db/postgresql-docs:${SLOT}
-!dev-db/postgresql-base:${SLOT}
-!dev-db/postgresql-server:${SLOT}
-selinux? ( sec-policy/selinux-postgresql )
-"
-
-pkg_setup() {
-       use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
-
-       enewgroup postgres 70
-       enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
-
-       use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-       # Work around PPC{,64} compilation bug where bool is already defined
-       sed '/#ifndef __cplusplus/a #undef bool' -i src/include/c.h || die
-
-       # 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}-9.5.5-no-server.patch"
-
-       if use pam ; then
-               sed -e "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
-               for i in ${BSD_LIBC[@]}; do
-                       use ${i} && uuid_config="--with-uuid=bsd"
-               done
-               [[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
-       fi
-
-       econf \
-               --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
-               --datadir="${PO}/usr/share/postgresql-${SLOT}" \
-               --docdir="${PO}/usr/share/doc/${PF}" \
-               --includedir="${PO}/usr/include/postgresql-${SLOT}" \
-               --mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
-               --sysconfdir="${PO}/etc/postgresql-${SLOT}" \
-               --with-system-tzdata="${PO}/usr/share/zoneinfo" \
-               $(use_enable !alpha spinlocks) \
-               $(use_enable !pg_legacytimestamp integer-datetimes) \
-               $(use_enable threads thread-safety) \
-               $(use_with kerberos gssapi) \
-               $(use_with ldap) \
-               $(use_with pam) \
-               $(use_with perl) \
-               $(use_with python) \
-               $(use_with readline) \
-               $(use_with ssl openssl) \
-               $(use_with tcl) \
-               ${uuid_config} \
-               $(use_with xml libxml) \
-               $(use_with xml libxslt) \
-               $(use_with zlib) \
-               $(use_enable nls nls "'$(l10n_get_locales)'")
-}
-
-src_compile() {
-       emake
-       emake -C contrib
-}
-
-src_install() {
-       emake DESTDIR="${D}" install
-       emake DESTDIR="${D}" install -C contrib
-
-       dodoc README HISTORY doc/{TODO,bug.template}
-
-       # 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
-               for m in {initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}; 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
-
-       use static-libs || find "${ED}" -name '*.a' -delete
-
-       local f bn
-       for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-                                       -mindepth 1 -maxdepth 1)
-       do
-               bn=$(basename "${f}")
-               # Temporarily tack on tmp to workaround a file collision
-               # issue. This is only necessary for 9.7 and earlier. 10 never
-               # had this issue.
-               dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
-                         "/usr/bin/${bn}${SLOT/.}tmp"
-       done
-
-       if use doc ; then
-               docinto html
-               dodoc doc/src/sgml/html/*
-
-               docinto sgml
-               dodoc doc/src/sgml/*.{sgml,dsl}
-       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.2" | \
-                               systemd_newunit - ${PN}-${SLOT}.service
-                       systemd_newtmpfilesd "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
-               fi
-
-               newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
-
-               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_preinst() {
-       # Find all of the slot-specific symlinks, if any, in /usr/bin (e.g.,
-       # /usr/bin/psql96). They may have been created by the
-       # postgresql.eselect module, but they're handled within this ebuild
-       # now. It's alright if we momentarily delete /usr/bin/psql as it
-       # will be recreated by the eselect module in pkg_ppostinst(). This
-       # is only necessary for 9.7 and earlier. 10 and later were never
-       # handled in this manner.
-       local canonicalise
-       if type -p realpath > /dev/null; then
-               canonicalise=realpath
-       elif type -p readlink > /dev/null; then
-               canonicalise='readlink -f'
-       else
-               # can't die, subshell
-               die "No readlink nor realpath found, cannot canonicalise"
-       fi
-
-       local l
-       # First remove any symlinks in /usr/bin that may have been created
-       # by the old eselect
-       for l in $(find "${ROOT%/}/usr/bin" -mindepth 1 -maxdepth 1 -type l) ; do
-               if [[ $(${canonicalise} "${l}") == *postgresql-${SLOT}* ]] ; then
-                       rm "${l}" || ewarn "Couldn't remove ${l}"
-               fi
-       done
-
-       # Then move the symlinks created by the ebuild to their proper place.
-       for l in "${ED}"/usr/bin/*tmp ; do
-               mv "${l}" "${l%tmp}" \
-                       || ewarn "Couldn't rename $(basename ${l}) to $(basename ${l%tmp})"
-       done
-}
-
-pkg_postinst() {
-       use server && use systemd && systemd_tmpfiles_create ${PN}-${SLOT}.conf
-       postgresql-config update
-
-       if use alpha && use server ; then
-               ewarn "PostgreSQL 9.5+ no longer has native spinlock support on Alpha platforms."
-               ewarn "As a result, performance will be extremely degraded."
-       fi
-
-       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}"
-       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 "${DATA_DIR}"
-               chown -Rf postgres:postgres "${DATA_DIR}"
-               chmod 0700 "${DATA_DIR}"
-       fi
-
-       einfo "Initializing the database ..."
-
-       if [[ ${EUID} == 0 ]] ; then
-               su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
-       else
-               "${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
-       fi
-
-       if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
-               mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
-               ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
-       fi
-
-       # unix_socket_directory has no effect in postgresql.conf as it's
-       # overridden in the initscript
-       sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
-
-       cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
-               # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
-               # On the off-chance that you might need to work with UTF-8 encoded
-               # characters in PL/Perl
-               plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
-       EOF
-
-       einfo "The autovacuum function, which was in contrib, has been moved to the main"
-       einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
-       einfo "by default. You can disable it in the cluster's:"
-       einfo "    ${PGDATA%/}/postgresql.conf"
-       einfo
-       einfo "The PostgreSQL server, by default, will log events to:"
-       einfo "    ${DATA_DIR%/}/postmaster.log"
-       einfo
-       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}"
-       else
-               einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       fi
-}
-
-src_test() {
-       if use server && [[ ${UID} -ne 0 ]] ; then
-               emake check
-
-               einfo "If you think other tests besides the regression tests are necessary, please"
-               einfo "submit a bug including a patch for this ebuild to enable them."
-       else
-               use server || \
-                       ewarn 'Tests cannot be run without the "server" use flag enabled.'
-               [[ ${UID} -eq 0 ]] || \
-                       ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
-
-               ewarn 'Skipping.'
-       fi
-}
diff --git a/dev-db/postgresql/postgresql-9.5.16.ebuild b/dev-db/postgresql/postgresql-9.5.16.ebuild
deleted file mode 100644 (file)
index b8c8eb9..0000000
+++ /dev/null
@@ -1,481 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python2_7 python3_{5,6} )
-
-PLOCALES="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN
-                 zh_TW"
-
-inherit flag-o-matic l10n linux-info multilib pam prefix python-single-r1 \
-               systemd user versionator
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x86-solaris"
-
-SLOT="$(get_version_component_range 1-2)"
-
-SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2"
-
-LICENSE="POSTGRESQL GPL-2"
-DESCRIPTION="PostgreSQL RDBMS"
-HOMEPAGE="https://www.postgresql.org/"
-
-IUSE="doc kerberos kernel_linux ldap libressl nls pam perl -pg_legacytimestamp
-         python +readline selinux +server systemd ssl static-libs tcl threads uuid
-         xml zlib"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="
->=app-eselect/eselect-postgresql-2.0
-sys-apps/less
-virtual/libintl
-kerberos? ( virtual/krb5 )
-ldap? ( net-nds/openldap )
-pam? ( virtual/pam )
-perl? ( >=dev-lang/perl-5.8:= )
-python? ( ${PYTHON_DEPS} )
-readline? ( sys-libs/readline:0= )
-ssl? (
-       !libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
-       libressl? ( dev-libs/libressl:= )
-)
-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,uclibc,musl} )
-BSD_LIBC=( elibc_{Free,Net,Open}BSD )
-
-nest_usedep() {
-       local front back
-       while [[ ${#} -gt 1 ]]; do
-               front+="${1}? ( "
-               back+=" )"
-               shift
-       done
-       echo "${front}${1}${back}"
-}
-
-IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
-CDEPEND+="
-uuid? (
-       ${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
-       $(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
-)"
-
-DEPEND="${CDEPEND}
-!!<sys-apps/sandbox-2.0
-sys-devel/bison
-sys-devel/flex
-nls? ( sys-devel/gettext )
-xml? ( virtual/pkgconfig )
-"
-
-RDEPEND="${CDEPEND}
-!dev-db/postgresql-docs:${SLOT}
-!dev-db/postgresql-base:${SLOT}
-!dev-db/postgresql-server:${SLOT}
-selinux? ( sec-policy/selinux-postgresql )
-"
-
-pkg_setup() {
-       use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
-
-       enewgroup postgres 70
-       enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
-
-       use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-       # Work around PPC{,64} compilation bug where bool is already defined
-       sed '/#ifndef __cplusplus/a #undef bool' -i src/include/c.h || die
-
-       # 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}-9.5.5-no-server.patch"
-
-       if use pam ; then
-               sed -e "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
-               for i in ${BSD_LIBC[@]}; do
-                       use ${i} && uuid_config="--with-uuid=bsd"
-               done
-               [[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
-       fi
-
-       econf \
-               --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
-               --datadir="${PO}/usr/share/postgresql-${SLOT}" \
-               --docdir="${PO}/usr/share/doc/${PF}" \
-               --includedir="${PO}/usr/include/postgresql-${SLOT}" \
-               --mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
-               --sysconfdir="${PO}/etc/postgresql-${SLOT}" \
-               --with-system-tzdata="${PO}/usr/share/zoneinfo" \
-               $(use_enable !alpha spinlocks) \
-               $(use_enable !pg_legacytimestamp integer-datetimes) \
-               $(use_enable threads thread-safety) \
-               $(use_with kerberos gssapi) \
-               $(use_with ldap) \
-               $(use_with pam) \
-               $(use_with perl) \
-               $(use_with python) \
-               $(use_with readline) \
-               $(use_with ssl openssl) \
-               $(use_with tcl) \
-               ${uuid_config} \
-               $(use_with xml libxml) \
-               $(use_with xml libxslt) \
-               $(use_with zlib) \
-               $(use_enable nls nls "'$(l10n_get_locales)'")
-}
-
-src_compile() {
-       emake
-       emake -C contrib
-}
-
-src_install() {
-       emake DESTDIR="${D}" install
-       emake DESTDIR="${D}" install -C contrib
-
-       dodoc README HISTORY doc/{TODO,bug.template}
-
-       # 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
-               for m in {initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}; 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
-
-       use static-libs || find "${ED}" -name '*.a' -delete
-
-       local f bn
-       for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-                                       -mindepth 1 -maxdepth 1)
-       do
-               bn=$(basename "${f}")
-               # Temporarily tack on tmp to workaround a file collision
-               # issue. This is only necessary for 9.7 and earlier. 10 never
-               # had this issue.
-               dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
-                         "/usr/bin/${bn}${SLOT/.}tmp"
-       done
-
-       if use doc ; then
-               docinto html
-               dodoc doc/src/sgml/html/*
-
-               docinto sgml
-               dodoc doc/src/sgml/*.{sgml,dsl}
-       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.2" | \
-                               systemd_newunit - ${PN}-${SLOT}.service
-                       systemd_newtmpfilesd "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
-               fi
-
-               newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
-
-               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_preinst() {
-       # Find all of the slot-specific symlinks, if any, in /usr/bin (e.g.,
-       # /usr/bin/psql96). They may have been created by the
-       # postgresql.eselect module, but they're handled within this ebuild
-       # now. It's alright if we momentarily delete /usr/bin/psql as it
-       # will be recreated by the eselect module in pkg_ppostinst(). This
-       # is only necessary for 9.7 and earlier. 10 and later were never
-       # handled in this manner.
-       local canonicalise
-       if type -p realpath > /dev/null; then
-               canonicalise=realpath
-       elif type -p readlink > /dev/null; then
-               canonicalise='readlink -f'
-       else
-               # can't die, subshell
-               die "No readlink nor realpath found, cannot canonicalise"
-       fi
-
-       local l
-       # First remove any symlinks in /usr/bin that may have been created
-       # by the old eselect
-       for l in $(find "${ROOT%/}/usr/bin" -mindepth 1 -maxdepth 1 -type l) ; do
-               if [[ $(${canonicalise} "${l}") == *postgresql-${SLOT}* ]] ; then
-                       rm "${l}" || ewarn "Couldn't remove ${l}"
-               fi
-       done
-
-       # Then move the symlinks created by the ebuild to their proper place.
-       for l in "${ED}"/usr/bin/*tmp ; do
-               mv "${l}" "${l%tmp}" \
-                       || ewarn "Couldn't rename $(basename ${l}) to $(basename ${l%tmp})"
-       done
-}
-
-pkg_postinst() {
-       use server && use systemd && systemd_tmpfiles_create ${PN}-${SLOT}.conf
-       postgresql-config update
-
-       if use alpha && use server ; then
-               ewarn "PostgreSQL 9.5+ no longer has native spinlock support on Alpha platforms."
-               ewarn "As a result, performance will be extremely degraded."
-       fi
-
-       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}"
-       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 "${DATA_DIR}"
-               chown -Rf postgres:postgres "${DATA_DIR}"
-               chmod 0700 "${DATA_DIR}"
-       fi
-
-       einfo "Initializing the database ..."
-
-       if [[ ${EUID} == 0 ]] ; then
-               su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
-       else
-               "${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
-       fi
-
-       if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
-               mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
-               ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
-       fi
-
-       # unix_socket_directory has no effect in postgresql.conf as it's
-       # overridden in the initscript
-       sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
-
-       cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
-               # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
-               # On the off-chance that you might need to work with UTF-8 encoded
-               # characters in PL/Perl
-               plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
-       EOF
-
-       einfo "The autovacuum function, which was in contrib, has been moved to the main"
-       einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
-       einfo "by default. You can disable it in the cluster's:"
-       einfo "    ${PGDATA%/}/postgresql.conf"
-       einfo
-       einfo "The PostgreSQL server, by default, will log events to:"
-       einfo "    ${DATA_DIR%/}/postmaster.log"
-       einfo
-       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}"
-       else
-               einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       fi
-}
-
-src_test() {
-       if use server && [[ ${UID} -ne 0 ]] ; then
-               emake check
-
-               einfo "If you think other tests besides the regression tests are necessary, please"
-               einfo "submit a bug including a patch for this ebuild to enable them."
-       else
-               use server || \
-                       ewarn 'Tests cannot be run without the "server" use flag enabled.'
-               [[ ${UID} -eq 0 ]] || \
-                       ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
-
-               ewarn 'Skipping.'
-       fi
-}
diff --git a/dev-db/postgresql/postgresql-9.6.11.ebuild b/dev-db/postgresql/postgresql-9.6.11.ebuild
deleted file mode 100644 (file)
index 8c7844a..0000000
+++ /dev/null
@@ -1,486 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python2_7 python3_{5,6} )
-
-PLOCALES="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN
-                 zh_TW"
-
-inherit flag-o-matic l10n linux-info multilib pam prefix python-single-r1 \
-               systemd user versionator
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-SLOT="$(get_version_component_range 1-2)"
-
-MY_PV=${PV/_/}
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-SRC_URI="mirror://postgresql/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
-
-LICENSE="POSTGRESQL GPL-2"
-DESCRIPTION="PostgreSQL RDBMS"
-HOMEPAGE="https://www.postgresql.org/"
-
-IUSE="doc kerberos kernel_linux ldap libressl nls pam perl -pg_legacytimestamp
-         python +readline selinux +server systemd ssl static-libs tcl threads uuid
-         xml zlib"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="
->=app-eselect/eselect-postgresql-2.0
-sys-apps/less
-virtual/libintl
-kerberos? ( virtual/krb5 )
-ldap? ( net-nds/openldap )
-pam? ( virtual/pam )
-perl? ( >=dev-lang/perl-5.8:= )
-python? ( ${PYTHON_DEPS} )
-readline? ( sys-libs/readline:0= )
-ssl? (
-       !libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
-       libressl? ( dev-libs/libressl:= )
-)
-server? ( systemd? ( sys-apps/systemd ) )
-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,uclibc,musl} )
-BSD_LIBC=( elibc_{Free,Net,Open}BSD )
-
-nest_usedep() {
-       local front back
-       while [[ ${#} -gt 1 ]]; do
-               front+="${1}? ( "
-               back+=" )"
-               shift
-       done
-       echo "${front}${1}${back}"
-}
-
-IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
-CDEPEND+="
-uuid? (
-       ${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
-       $(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
-)"
-
-DEPEND="${CDEPEND}
-!!<sys-apps/sandbox-2.0
-sys-devel/bison
-sys-devel/flex
-nls? ( sys-devel/gettext )
-xml? ( virtual/pkgconfig )
-"
-
-RDEPEND="${CDEPEND}
-!dev-db/postgresql-docs:${SLOT}
-!dev-db/postgresql-base:${SLOT}
-!dev-db/postgresql-server:${SLOT}
-selinux? ( sec-policy/selinux-postgresql )
-"
-
-pkg_setup() {
-       use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
-
-       enewgroup postgres 70
-       enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
-
-       use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-       # Work around PPC{,64} compilation bug where bool is already defined
-       sed '/#ifndef __cplusplus/a #undef bool' -i src/include/c.h || die
-
-       # 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}-${SLOT}.3-no-server.patch"
-
-       if use pam ; then
-               sed -e "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
-               for i in ${BSD_LIBC[@]}; do
-                       use ${i} && uuid_config="--with-uuid=bsd"
-               done
-               [[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
-       fi
-
-       econf \
-               --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
-               --datadir="${PO}/usr/share/postgresql-${SLOT}" \
-               --docdir="${PO}/usr/share/doc/${PF}" \
-               --includedir="${PO}/usr/include/postgresql-${SLOT}" \
-               --mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
-               --sysconfdir="${PO}/etc/postgresql-${SLOT}" \
-               --with-system-tzdata="${PO}/usr/share/zoneinfo" \
-               $(use_enable !alpha spinlocks) \
-               $(use_enable !pg_legacytimestamp integer-datetimes) \
-               $(use_enable threads thread-safety) \
-               $(use_with kerberos gssapi) \
-               $(use_with ldap) \
-               $(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 nls "'$(l10n_get_locales)'")
-}
-
-src_compile() {
-       emake
-       emake -C contrib
-}
-
-src_install() {
-       emake DESTDIR="${D}" install
-       emake DESTDIR="${D}" install -C contrib
-
-       dodoc README HISTORY doc/{TODO,bug.template}
-
-       # 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
-               for m in {initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}; 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
-
-       use static-libs || find "${ED}" -name '*.a' -delete
-
-       local f bn
-       for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-                                       -mindepth 1 -maxdepth 1)
-       do
-               bn=$(basename "${f}")
-               # Temporarily tack on tmp to workaround a file collision
-               # issue. This is only necessary for 9.7 and earlier. 10 never
-               # had this issue.
-               dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
-                         "/usr/bin/${bn}${SLOT/.}tmp"
-       done
-
-       if use doc ; then
-               docinto html
-               dodoc doc/src/sgml/html/*
-
-               docinto sgml
-               dodoc doc/src/sgml/*.{sgml,dsl}
-       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
-                       systemd_newtmpfilesd "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
-               fi
-
-               newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
-
-               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_preinst() {
-       # Find all of the slot-specific symlinks, if any, in /usr/bin (e.g.,
-       # /usr/bin/psql96). They may have been created by the
-       # postgresql.eselect module, but they're handled within this ebuild
-       # now. It's alright if we momentarily delete /usr/bin/psql as it
-       # will be recreated by the eselect module in pkg_ppostinst(). This
-       # is only necessary for 9.7 and earlier. 10 and later were never
-       # handled in this manner.
-       local canonicalise
-       if type -p realpath > /dev/null; then
-               canonicalise=realpath
-       elif type -p readlink > /dev/null; then
-               canonicalise='readlink -f'
-       else
-               # can't die, subshell
-               die "No readlink nor realpath found, cannot canonicalise"
-       fi
-
-       local l
-       # First remove any symlinks in /usr/bin that may have been created
-       # by the old eselect
-       for l in $(find "${ROOT%/}/usr/bin" -mindepth 1 -maxdepth 1 -type l) ; do
-               if [[ $(${canonicalise} "${l}") == *postgresql-${SLOT}* ]] ; then
-                       rm "${l}" || ewarn "Couldn't remove ${l}"
-               fi
-       done
-
-       # Then move the symlinks created by the ebuild to their proper place.
-       for l in "${ED}"/usr/bin/*tmp ; do
-               mv "${l}" "${l%tmp}" \
-                       || ewarn "Couldn't rename $(basename ${l}) to $(basename ${l%tmp})"
-       done
-}
-
-pkg_postinst() {
-       use server && use systemd && systemd_tmpfiles_create ${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}"
-       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 "${DATA_DIR}"
-               chown -Rf postgres:postgres "${DATA_DIR}"
-               chmod 0700 "${DATA_DIR}"
-       fi
-
-       einfo "Initializing the database ..."
-
-       if [[ ${EUID} == 0 ]] ; then
-               su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
-       else
-               "${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
-       fi
-
-       if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
-               mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
-               ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
-       fi
-
-       # unix_socket_directory has no effect in postgresql.conf as it's
-       # overridden in the initscript
-       sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
-
-       cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
-               # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
-               # On the off-chance that you might need to work with UTF-8 encoded
-               # characters in PL/Perl
-               plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
-       EOF
-
-       einfo "The autovacuum function, which was in contrib, has been moved to the main"
-       einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
-       einfo "by default. You can disable it in the cluster's:"
-       einfo "    ${PGDATA%/}/postgresql.conf"
-       einfo
-       if ! use systemd; then
-               einfo "The PostgreSQL server, by default, will log events to:"
-               einfo "    ${DATA_DIR%/}/postmaster.log"
-               einfo
-       fi
-       if use prefix ; then
-               einfo "The location of the configuration files have moved to:"
-               einfo "    ${PGDATA}"
-               einfo "To start the server:"
-               einfo "    pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
-               einfo "To stop:"
-               einfo "    pg_ctl stop -D ${DATA_DIR}"
-               einfo
-               einfo "Or move the configuration files back:"
-               einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
-       elif use systemd; then
-               einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       else
-               einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       fi
-}
-
-src_test() {
-       if use server && [[ ${UID} -ne 0 ]] ; then
-               emake check
-
-               einfo "If you think other tests besides the regression tests are necessary, please"
-               einfo "submit a bug including a patch for this ebuild to enable them."
-       else
-               use server || \
-                       ewarn 'Tests cannot be run without the "server" use flag enabled.'
-               [[ ${UID} -eq 0 ]] || \
-                       ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
-
-               ewarn 'Skipping.'
-       fi
-}
diff --git a/dev-db/postgresql/postgresql-9.6.12.ebuild b/dev-db/postgresql/postgresql-9.6.12.ebuild
deleted file mode 100644 (file)
index a557fdc..0000000
+++ /dev/null
@@ -1,486 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-PYTHON_COMPAT=( python2_7 python3_{5,6} )
-
-PLOCALES="af cs de en es fa fr hr hu it ko nb pl pt_BR ro ru sk sl sv tr zh_CN
-                 zh_TW"
-
-inherit flag-o-matic l10n linux-info multilib pam prefix python-single-r1 \
-               systemd user versionator
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-SLOT="$(get_version_component_range 1-2)"
-
-MY_PV=${PV/_/}
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-SRC_URI="mirror://postgresql/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
-
-LICENSE="POSTGRESQL GPL-2"
-DESCRIPTION="PostgreSQL RDBMS"
-HOMEPAGE="https://www.postgresql.org/"
-
-IUSE="doc kerberos kernel_linux ldap libressl nls pam perl -pg_legacytimestamp
-         python +readline selinux +server systemd ssl static-libs tcl threads uuid
-         xml zlib"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-CDEPEND="
->=app-eselect/eselect-postgresql-2.0
-sys-apps/less
-virtual/libintl
-kerberos? ( virtual/krb5 )
-ldap? ( net-nds/openldap )
-pam? ( virtual/pam )
-perl? ( >=dev-lang/perl-5.8:= )
-python? ( ${PYTHON_DEPS} )
-readline? ( sys-libs/readline:0= )
-ssl? (
-       !libressl? ( >=dev-libs/openssl-0.9.6-r1:0= )
-       libressl? ( dev-libs/libressl:= )
-)
-server? ( systemd? ( sys-apps/systemd ) )
-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,uclibc,musl} )
-BSD_LIBC=( elibc_{Free,Net,Open}BSD )
-
-nest_usedep() {
-       local front back
-       while [[ ${#} -gt 1 ]]; do
-               front+="${1}? ( "
-               back+=" )"
-               shift
-       done
-       echo "${front}${1}${back}"
-}
-
-IUSE+=" ${UTIL_LINUX_LIBC[@]} ${BSD_LIBC[@]}"
-CDEPEND+="
-uuid? (
-       ${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
-       $(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} ${BSD_LIBC[@]/#/!} dev-libs/ossp-uuid)
-)"
-
-DEPEND="${CDEPEND}
-!!<sys-apps/sandbox-2.0
-sys-devel/bison
-sys-devel/flex
-nls? ( sys-devel/gettext )
-xml? ( virtual/pkgconfig )
-"
-
-RDEPEND="${CDEPEND}
-!dev-db/postgresql-docs:${SLOT}
-!dev-db/postgresql-base:${SLOT}
-!dev-db/postgresql-server:${SLOT}
-selinux? ( sec-policy/selinux-postgresql )
-"
-
-pkg_setup() {
-       use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
-
-       enewgroup postgres 70
-       enewuser postgres 70 /bin/sh /var/lib/postgresql postgres
-
-       use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
-       # Work around PPC{,64} compilation bug where bool is already defined
-       sed '/#ifndef __cplusplus/a #undef bool' -i src/include/c.h || die
-
-       # 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}-${SLOT}.3-no-server.patch"
-
-       if use pam ; then
-               sed -e "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
-               for i in ${BSD_LIBC[@]}; do
-                       use ${i} && uuid_config="--with-uuid=bsd"
-               done
-               [[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
-       fi
-
-       econf \
-               --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
-               --datadir="${PO}/usr/share/postgresql-${SLOT}" \
-               --docdir="${PO}/usr/share/doc/${PF}" \
-               --includedir="${PO}/usr/include/postgresql-${SLOT}" \
-               --mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
-               --sysconfdir="${PO}/etc/postgresql-${SLOT}" \
-               --with-system-tzdata="${PO}/usr/share/zoneinfo" \
-               $(use_enable !alpha spinlocks) \
-               $(use_enable !pg_legacytimestamp integer-datetimes) \
-               $(use_enable threads thread-safety) \
-               $(use_with kerberos gssapi) \
-               $(use_with ldap) \
-               $(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 nls "'$(l10n_get_locales)'")
-}
-
-src_compile() {
-       emake
-       emake -C contrib
-}
-
-src_install() {
-       emake DESTDIR="${D}" install
-       emake DESTDIR="${D}" install -C contrib
-
-       dodoc README HISTORY doc/{TODO,bug.template}
-
-       # 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
-               for m in {initdb,pg_{controldata,ctl,resetxlog},post{gres,master}}; 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
-
-       use static-libs || find "${ED}" -name '*.a' -delete
-
-       local f bn
-       for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
-                                       -mindepth 1 -maxdepth 1)
-       do
-               bn=$(basename "${f}")
-               # Temporarily tack on tmp to workaround a file collision
-               # issue. This is only necessary for 9.7 and earlier. 10 never
-               # had this issue.
-               dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
-                         "/usr/bin/${bn}${SLOT/.}tmp"
-       done
-
-       if use doc ; then
-               docinto html
-               dodoc doc/src/sgml/html/*
-
-               docinto sgml
-               dodoc doc/src/sgml/*.{sgml,dsl}
-       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
-                       systemd_newtmpfilesd "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
-               fi
-
-               newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
-
-               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_preinst() {
-       # Find all of the slot-specific symlinks, if any, in /usr/bin (e.g.,
-       # /usr/bin/psql96). They may have been created by the
-       # postgresql.eselect module, but they're handled within this ebuild
-       # now. It's alright if we momentarily delete /usr/bin/psql as it
-       # will be recreated by the eselect module in pkg_ppostinst(). This
-       # is only necessary for 9.7 and earlier. 10 and later were never
-       # handled in this manner.
-       local canonicalise
-       if type -p realpath > /dev/null; then
-               canonicalise=realpath
-       elif type -p readlink > /dev/null; then
-               canonicalise='readlink -f'
-       else
-               # can't die, subshell
-               die "No readlink nor realpath found, cannot canonicalise"
-       fi
-
-       local l
-       # First remove any symlinks in /usr/bin that may have been created
-       # by the old eselect
-       for l in $(find "${ROOT%/}/usr/bin" -mindepth 1 -maxdepth 1 -type l) ; do
-               if [[ $(${canonicalise} "${l}") == *postgresql-${SLOT}* ]] ; then
-                       rm "${l}" || ewarn "Couldn't remove ${l}"
-               fi
-       done
-
-       # Then move the symlinks created by the ebuild to their proper place.
-       for l in "${ED}"/usr/bin/*tmp ; do
-               mv "${l}" "${l%tmp}" \
-                       || ewarn "Couldn't rename $(basename ${l}) to $(basename ${l%tmp})"
-       done
-}
-
-pkg_postinst() {
-       use server && use systemd && systemd_tmpfiles_create ${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}"
-       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 "${DATA_DIR}"
-               chown -Rf postgres:postgres "${DATA_DIR}"
-               chmod 0700 "${DATA_DIR}"
-       fi
-
-       einfo "Initializing the database ..."
-
-       if [[ ${EUID} == 0 ]] ; then
-               su postgres -c "${EROOT%/}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
-       else
-               "${EROOT%/}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
-       fi
-
-       if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
-               mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
-               ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
-       fi
-
-       # unix_socket_directory has no effect in postgresql.conf as it's
-       # overridden in the initscript
-       sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
-
-       cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
-               # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
-               # On the off-chance that you might need to work with UTF-8 encoded
-               # characters in PL/Perl
-               plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
-       EOF
-
-       einfo "The autovacuum function, which was in contrib, has been moved to the main"
-       einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
-       einfo "by default. You can disable it in the cluster's:"
-       einfo "    ${PGDATA%/}/postgresql.conf"
-       einfo
-       if ! use systemd; then
-               einfo "The PostgreSQL server, by default, will log events to:"
-               einfo "    ${DATA_DIR%/}/postmaster.log"
-               einfo
-       fi
-       if use prefix ; then
-               einfo "The location of the configuration files have moved to:"
-               einfo "    ${PGDATA}"
-               einfo "To start the server:"
-               einfo "    pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
-               einfo "To stop:"
-               einfo "    pg_ctl stop -D ${DATA_DIR}"
-               einfo
-               einfo "Or move the configuration files back:"
-               einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
-       elif use systemd; then
-               einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       else
-               einfo "You should use the '${EROOT%/}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
-               einfo "instead of 'pg_ctl'."
-       fi
-}
-
-src_test() {
-       if use server && [[ ${UID} -ne 0 ]] ; then
-               emake check
-
-               einfo "If you think other tests besides the regression tests are necessary, please"
-               einfo "submit a bug including a patch for this ebuild to enable them."
-       else
-               use server || \
-                       ewarn 'Tests cannot be run without the "server" use flag enabled.'
-               [[ ${UID} -eq 0 ]] || \
-                       ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
-
-               ewarn 'Skipping.'
-       fi
-}