diff options
author | Aaron W. Swenson <titanofold@gentoo.org> | 2011-03-20 02:38:12 +0000 |
---|---|---|
committer | Aaron W. Swenson <titanofold@gentoo.org> | 2011-03-20 02:38:12 +0000 |
commit | 300a412bea85deb0379a001902535698a2fcaee5 (patch) | |
tree | cb79328759a62e5472802c3e2872b1afb00ec738 /dev-db | |
parent | Use in-source build (fixes bug #359357 by Qin Jue Hang). (diff) | |
download | gentoo-2-300a412bea85deb0379a001902535698a2fcaee5.tar.gz gentoo-2-300a412bea85deb0379a001902535698a2fcaee5.tar.bz2 gentoo-2-300a412bea85deb0379a001902535698a2fcaee5.zip |
EOL'd upstream.
Diffstat (limited to 'dev-db')
-rw-r--r-- | dev-db/postgresql-server/ChangeLog | 9 | ||||
-rw-r--r-- | dev-db/postgresql-server/files/postgresql-8.1-common.patch | 74 | ||||
-rw-r--r-- | dev-db/postgresql-server/files/postgresql-8.1-server.patch | 219 | ||||
-rw-r--r-- | dev-db/postgresql-server/files/postgresql.conf-8.1 | 48 | ||||
-rw-r--r-- | dev-db/postgresql-server/files/postgresql.conf-8.1-r1 | 44 | ||||
-rw-r--r-- | dev-db/postgresql-server/files/postgresql.init-8.1 | 96 | ||||
-rw-r--r-- | dev-db/postgresql-server/files/postgresql.init-8.1-r1 | 136 | ||||
-rw-r--r-- | dev-db/postgresql-server/postgresql-server-8.1.22.ebuild | 263 | ||||
-rw-r--r-- | dev-db/postgresql-server/postgresql-server-8.1.23.ebuild | 263 |
9 files changed, 8 insertions, 1144 deletions
diff --git a/dev-db/postgresql-server/ChangeLog b/dev-db/postgresql-server/ChangeLog index 4e6751bbbc6b..abbcadf162fa 100644 --- a/dev-db/postgresql-server/ChangeLog +++ b/dev-db/postgresql-server/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for dev-db/postgresql-server # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/ChangeLog,v 1.112 2011/03/06 17:51:28 armin76 Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/ChangeLog,v 1.113 2011/03/20 02:38:12 titanofold Exp $ + + 20 Mar 2011; Mr. Aaron W. Swenson (TitanOfOld) <titanofold@gentoo.org> + -files/postgresql.conf-8.1, -files/postgresql.init-8.1, + -files/postgresql.conf-8.1-r1, -files/postgresql.init-8.1-r1, + -postgresql-server-8.1.22.ebuild, -postgresql-server-8.1.23.ebuild, + -files/postgresql-8.1-common.patch, -files/postgresql-8.1-server.patch: + EOL'd upstream. 06 Mar 2011; Raúl Porcel <armin76@gentoo.org> postgresql-server-9.0.3.ebuild: diff --git a/dev-db/postgresql-server/files/postgresql-8.1-common.patch b/dev-db/postgresql-server/files/postgresql-8.1-common.patch deleted file mode 100644 index 56704f0c5afa..000000000000 --- a/dev-db/postgresql-server/files/postgresql-8.1-common.patch +++ /dev/null @@ -1,74 +0,0 @@ -diff --git a/config/programs.m4 b/config/programs.m4 -index 3f87396..9c7fbf0 100644 ---- a/config/programs.m4 -+++ b/config/programs.m4 -@@ -153,13 +153,13 @@ AC_DEFUN([PGAC_CHECK_GETTEXT], - dnl FIXME: We should probably check for version >=0.10.36. - AC_CHECK_PROGS(XGETTEXT, xgettext) - -- # Note: share/locale is always the default, independent of $datadir -- localedir='${prefix}/share/locale' -- if test x"$prefix" = x"NONE"; then -- exp_localedir="$ac_default_prefix/share/locale" -- else -- exp_localedir="$prefix/share/locale" -- fi -+ # Note: share/locale *WAS* always the default, independent of $datadir -+ AC_ARG_WITH([locale-dir], -+ AC_HELP_STRING([--with-locale-dir],[Set path to locale files]), -+ [ localedir="${withval}" ], -+ [ localedir='${prefix}/share/locale' ] -+ ) -+ exp_localedir="${localedir}" - - AC_SUBST(localedir) - AC_DEFINE_UNQUOTED(LOCALEDIR, ["$exp_localedir"], -diff --git a/configure.in b/configure.in -index d071f00..b203648 100644 ---- a/configure.in -+++ b/configure.in -@@ -19,10 +19,6 @@ m4_pattern_forbid(^PGAC_)dnl to catch undefined macros - - AC_INIT([PostgreSQL], [8.1.11], [pgsql-bugs@postgresql.org]) - --m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.59], [], [m4_fatal([Autoconf version 2.59 is required. --Untested combinations of 'autoconf' and PostgreSQL versions are not --recommended. You can remove the check from 'configure.in' but it is then --your responsibility whether the result works or not.])]) - AC_COPYRIGHT([Copyright (c) 1996-2005, PostgreSQL Global Development Group]) - AC_CONFIG_SRCDIR([src/backend/access/common/heaptuple.c]) - AC_CONFIG_AUX_DIR(config) -diff --git a/src/include/storage/s_lock.h b/src/include/storage/s_lock.h -index c5731fd..8ec70b4 100644 ---- a/src/include/storage/s_lock.h -+++ b/src/include/storage/s_lock.h -@@ -299,6 +299,29 @@ tas(volatile slock_t *lock) - - #endif /* __s390__ || __s390x__ */ - -+#if defined(__sh__) -+#define HAS_TEST_AND_SET -+ -+typedef unsigned char slock_t; -+ -+#define TAS(lock) tas(lock) -+ -+static __inline__ int -+tas(volatile slock_t *lock) -+{ -+ register int _res = 1; -+ -+ __asm__ __volatile__( -+ "tas.b @%1\n\t" -+ "movt %0\n\t" -+ "xor #1,%0" -+: "=z"(_res) -+: "r"(lock) -+: "t","memory"); -+ return _res; -+} -+ -+#endif /* __sh__ */ - - #if defined(__sparc__) - #define HAS_TEST_AND_SET diff --git a/dev-db/postgresql-server/files/postgresql-8.1-server.patch b/dev-db/postgresql-server/files/postgresql-8.1-server.patch deleted file mode 100644 index c68fcffb682a..000000000000 --- a/dev-db/postgresql-server/files/postgresql-8.1-server.patch +++ /dev/null @@ -1,219 +0,0 @@ -=== GNUmakefile.in -================================================================== ---- GNUmakefile.in (revision 14) -+++ GNUmakefile.in (local) -@@ -11,19 +11,16 @@ - all: - $(MAKE) -C doc all - $(MAKE) -C src all -- $(MAKE) -C config all - @echo "All of PostgreSQL successfully made. Ready to install." - - install: - $(MAKE) -C doc $@ - $(MAKE) -C src $@ -- $(MAKE) -C config $@ - @echo "PostgreSQL installation complete." - - installdirs uninstall distprep: - $(MAKE) -C doc $@ - $(MAKE) -C src $@ -- $(MAKE) -C config $@ - - # clean, distclean, etc should apply to contrib too, even though - # it's not built by default -=== contrib/Makefile -================================================================== ---- contrib/Makefile (revision 14) -+++ contrib/Makefile (local) -@@ -19,10 +19,8 @@ - isbn_issn \ - lo \ - ltree \ -- oid2name \ - pg_buffercache \ - pg_trgm \ -- pgbench \ - pgcrypto \ - pgstattuple \ - seg \ -@@ -30,8 +28,7 @@ - tablefunc \ - tips \ - tsearch2 \ -- userlock \ -- vacuumlo -+ userlock - - # Missing: - # adddepend \ (does not have a makefile) -=== src/Makefile -================================================================== ---- src/Makefile (revision 14) -+++ src/Makefile (local) -@@ -18,14 +18,10 @@ - $(MAKE) -C timezone $@ - $(MAKE) -C backend $@ - $(MAKE) -C backend/utils/mb/conversion_procs $@ -- $(MAKE) -C include $@ -- $(MAKE) -C interfaces $@ - $(MAKE) -C bin $@ - $(MAKE) -C pl $@ -- $(MAKE) -C makefiles $@ -- $(MAKE) -C utils $@ - --install: install-local -+install: - - install-local: installdirs-local - $(INSTALL_DATA) Makefile.global $(DESTDIR)$(pgxsdir)/$(subdir)/Makefile.global -=== src/Makefile.global.in -================================================================== ---- src/Makefile.global.in (revision 14) -+++ src/Makefile.global.in (local) -@@ -360,10 +360,10 @@ - - - submake-libpq: -- $(MAKE) -C $(libpq_builddir) all -+ @true $(MAKE) -C $(libpq_builddir) all - - submake-libpgport: -- $(MAKE) -C $(top_builddir)/src/port all -+ @true $(MAKE) -C $(top_builddir)/src/port all - - .PHONY: submake-libpq submake-libpgport - -=== src/bin/Makefile -================================================================== ---- src/bin/Makefile (revision 14) -+++ src/bin/Makefile (local) -@@ -13,8 +13,8 @@ - top_builddir = ../.. - include $(top_builddir)/src/Makefile.global - --DIRS := initdb ipcclean pg_ctl pg_dump \ -- psql scripts pg_config pg_controldata pg_resetxlog -+DIRS := initdb ipcclean pg_ctl \ -+ pg_controldata pg_resetxlog - ifeq ($(PORTNAME), win32) - DIRS+=pgevent - endif -=== src/include/pg_config_manual.h -================================================================== ---- src/include/pg_config_manual.h (revision 14) -+++ src/include/pg_config_manual.h (local) -@@ -175,7 +175,7 @@ - * here's where to twiddle it. You can also override this at runtime - * with the postmaster's -k switch. - */ --#define DEFAULT_PGSOCKET_DIR "/tmp" -+#define DEFAULT_PGSOCKET_DIR "/var/run/postgresql" - - /* - * The random() function is expected to yield values between 0 and -=== src/port/Makefile -================================================================== ---- src/port/Makefile (revision 14) -+++ src/port/Makefile (local) -@@ -29,11 +29,10 @@ - # Replace all object files so they use FRONTEND define - LIBOBJS_SRV := $(LIBOBJS:%.o=%_srv.o) - --all: libpgport.a libpgport_srv.a -+all: libpgport_srv.a - - # libpgport is needed by some contrib --install: all -- $(INSTALL_STLIB) libpgport.a $(DESTDIR)$(libdir) -+install: - - uninstall: - $(RM) $(DESTDIR)$(libdir)/libpgport.a -=== src/test/regress/GNUmakefile -================================================================== ---- src/test/regress/GNUmakefile (revision 14) -+++ src/test/regress/GNUmakefile (local) -@@ -137,7 +137,7 @@ - check: all - -rm -rf ./testtablespace - mkdir ./testtablespace -- $(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir) --temp-port=$(TEMP_PORT) --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE) -+ clientbindir="/usr/lib/postgresql-${SLOT}/bin/" $(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir) --temp-port=$(TEMP_PORT) --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE) - - installcheck: all - -rm -rf ./testtablespace -=== src/test/regress/pg_regress.sh -================================================================== ---- src/test/regress/pg_regress.sh (revision 14) -+++ src/test/regress/pg_regress.sh (local) -@@ -91,6 +91,8 @@ - enable_shared='@enable_shared@' - GCC=@GCC@ - -+test -z "${clientbindir}" && clientbindir="${bindir}" -+ - if [ "$GCC" = yes ]; then - compiler=gcc - else -@@ -441,7 +443,7 @@ - # wait forever, however. - i=0 - max=60 -- until "$bindir/psql" -X $psql_options postgres </dev/null 2>/dev/null -+ until "$clientbindir/psql" -X $psql_options postgres </dev/null 2>/dev/null - do - i=`expr $i + 1` - if [ $i -ge $max ] -@@ -498,7 +500,7 @@ - fi - - message "dropping database \"$dbname\"" -- "$bindir/dropdb" $psql_options "$dbname" -+ "$clientbindir/dropdb" $psql_options "$dbname" - # errors can be ignored - fi - -@@ -507,7 +509,7 @@ - # Set up SQL shell for the test. - # ---------- - --PSQL="$bindir/psql -a -q -X $psql_options" -+PSQL="$clientbindir/psql -a -q -X $psql_options" - - - # ---------- -@@ -538,13 +540,13 @@ - # ---------- - - message "creating database \"$dbname\"" --"$bindir/createdb" $encoding_opt $psql_options --template template0 "$dbname" -+"$clientbindir/createdb" $encoding_opt $psql_options --template template0 "$dbname" - if [ $? -ne 0 ]; then - echo "$me: createdb failed" - (exit 2); exit - fi - --"$bindir/psql" -q -X $psql_options -c "\ -+"$clientbindir/psql" -q -X $psql_options -c "\ - alter database \"$dbname\" set lc_messages to 'C'; - alter database \"$dbname\" set lc_monetary to 'C'; - alter database \"$dbname\" set lc_numeric to 'C'; -@@ -560,7 +562,7 @@ - # ---------- - - message "dropping regression test user accounts" --"$bindir/psql" -q -X $psql_options -c 'DROP GROUP regressgroup1; DROP GROUP regressgroup2; DROP USER regressuser1, regressuser2, regressuser3, regressuser4;' $dbname 2>/dev/null -+"$clientbindir/psql" -q -X $psql_options -c 'DROP GROUP regressgroup1; DROP GROUP regressgroup2; DROP USER regressuser1, regressuser2, regressuser3, regressuser4;' $dbname 2>/dev/null - if [ $? -eq 2 ]; then - echo "$me: could not drop user accounts" - (exit 2); exit -@@ -575,7 +577,7 @@ - for lang in xyzzy $load_langs ; do - if [ "$lang" != "xyzzy" ]; then - message "installing $lang" -- "$bindir/createlang" $psql_options $lang $dbname -+ "$clientbindir/createlang" $psql_options $lang $dbname - if [ $? -ne 0 ] && [ $? -ne 2 ]; then - echo "$me: createlang $lang failed" - (exit 2); exit diff --git a/dev-db/postgresql-server/files/postgresql.conf-8.1 b/dev-db/postgresql-server/files/postgresql.conf-8.1 deleted file mode 100644 index a8fb8544eb41..000000000000 --- a/dev-db/postgresql-server/files/postgresql.conf-8.1 +++ /dev/null @@ -1,48 +0,0 @@ -# PostgreSQL's Database Directory -PGDATA="/var/lib/postgresql/8.1/data" - -# PostgreSQL User -PGUSER="postgres" - -# PostgreSQL Group -PGGROUP="postgres" - -# Extra options to run postmaster with, e.g.: -# -N is the maximal number of client connections -# -B is the number of shared buffers and has to be at least 2x the value for -N -# Please read the man-page to postmaster for more options. Many of these options -# can be set directly in the configuration-file. -#PGOPTS="-N 512 -B 1024" - - -# SERVER SHUTDOWN: -# The server will receive 3 signals in the worst case: -# 1. SIGTERM -# This signals the server to ignore new connections and to -# wait for all clients to end their transactions before shutting down. -# Use WAIT_FOR_DISCONNECT to control how much time the clients -# should have until the next signal is being sent. -# 2. SIGINT -# Tell the server to forcefully disconnect all clients. -# Terminating a client results in a rollback of the open transactions for this client. -# Use WAIT_FOR_CLEANUP to determine how much time the server has -# for cleanup. -# 3. SIGQUIT -# This will terminate the server immediately and results in a recovery run for the next start. - -# Wait for clients to disconnect -WAIT_FOR_DISCONNECT=30 - -# Time the server has to clean up -WAIT_FOR_CLEANUP=60 - -# Time the server has to quit (with a recover-run on next startup) -# Set to 0 to deactivate it -WAIT_FOR_QUIT=60 - - -# If you have to export environment variables for the database process, -# this can be done here. -# -# Example: -# export R_HOME="/usr/lib/R" diff --git a/dev-db/postgresql-server/files/postgresql.conf-8.1-r1 b/dev-db/postgresql-server/files/postgresql.conf-8.1-r1 deleted file mode 100644 index c44eb74f31d4..000000000000 --- a/dev-db/postgresql-server/files/postgresql.conf-8.1-r1 +++ /dev/null @@ -1,44 +0,0 @@ -# PostgreSQL's Database Directory -PGDATA="/var/lib/postgresql/8.1/data" - -# Options to pass to PostgreSQL's initdb. -#PG_INITDB_OPTS="--locale=en_US.UTF-8" - -# PostgreSQL User -PGUSER="postgres" - -# Which port and socket to bind PostgreSQL -PGPORT="5432" - -# Extra options to run postmaster with, e.g.: -# -N is the maximal number of client connections -# -B is the number of shared buffers and has to be at least 2x the value for -N -# Please read the man-page to postmaster for more options. Many of these options -# can be set directly in the configuration-file. -#PGOPTS="-N 512 -B 1024" - -# Allow server 60 seconds to start or stop. -# Can disable waiting by changing to '-W' (capital W) -WAIT_FOR_START="-w" -WAIT_FOR_STOP="-w" - -# Ignore new connections and wait for clients to disconnect from server -# before shutting down. -# Set NICE_QUIT to "NO" to disable. -NICE_QUIT="YES" - -# Forecfully disconnect clients from server and shut down. This is performed -# after NICE_QUIT. Terminating a client results in a rollback of open -# transactions for that client. -# Set RUDE_QUIT to "NO" to disable. -RUDE_QUIT="YES" - -# If the server still fails to shutdown, you can force it to quit by setting -# this to yes and a recover-run will execute on the next startup. -# Set FORCE_QUIT to "YES" to enable. -FORCE_QUIT="NO" - -# Pass extra environment variables. If you have to export environment variables -# for the database process, this can be done here. -# Don't forget to escape quotes. -#PG_EXTRA_ENV="PGPASSFILE=\"/path/to/.pgpass\"" diff --git a/dev-db/postgresql-server/files/postgresql.init-8.1 b/dev-db/postgresql-server/files/postgresql.init-8.1 deleted file mode 100644 index a95ca10742a7..000000000000 --- a/dev-db/postgresql-server/files/postgresql.init-8.1 +++ /dev/null @@ -1,96 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/files/postgresql.init-8.1,v 1.4 2010/01/06 23:36:01 patrick Exp $ - -opts="${opts} reload" - -depend() { - use net - if [ -L /etc/eselect/postgresql/service ] ; then - local p_service="$(for f in /etc/eselect/postgresql/service/* ; do . $f ; done ; echo $postgres_service )" - test "${p_service}" = "${SVCNAME}" && provide postgresql - fi -} - -checkconfig() { - if [ ! -d "$PGDATA" ] ; then - eerror "Directory not found: $PGDATA" - eerror "Please make sure that PGDATA points to the right path." - eerror "You can run 'emerge postgresql-server --config' to setup a new database cluster." - return 1 - fi -} - -start() { - checkconfig || return 1 - - ebegin "Starting PostgreSQL" - - if [ -f "$PGDATA/postmaster.pid" ] ; then - rm -f "$PGDATA/postmaster.pid" - fi - - local retval - - su -l ${PGUSER} \ - -c "env PGDATA=\"${PGDATA}\" /usr/lib/postgresql-8.1/bin/pg_ctl start -w -o '--silent-mode=true ${PGOPTS}'" - retval=$? - [ $retval -ne 0 ] && eend $retval && return $retval - - # The following is to catch the case of an already running server - # in which pg_ctl doesn't know to which server it connected to and false reports the server as 'up' - sleep 2 - if [ ! -f "$PGDATA/postmaster.pid" ] ; then - eerror "The pid-file doesn't exist but pg_ctl reported a running server." - eerror "Please check whether there is another server running on the same port or read the log-file." - eend 1 - return 1 - fi - - local pid=$(grep "^[0-9]\+" "$PGDATA/postmaster.pid") - ps -p "${pid}" &> /dev/null - eend $? -} - -stop() { - ebegin "Stopping PostgreSQL (this can take up to $(( ${WAIT_FOR_DISCONNECT} + ${WAIT_FOR_CLEANUP} )) seconds)" - - local retval - - start-stop-daemon --stop --pidfile "${PGDATA}/postmaster.pid" \ - --retry -TERM/${WAIT_FOR_DISCONNECT} - retval=$? - [ $retval -eq 0 ] && eend $retval && return $retval - - ewarn "Some clients did not disconnect within ${WAIT_FOR_DISCONNECT} seconds." - ewarn "Going to shutdown the server anyway." - - start-stop-daemon --stop --pidfile "${PGDATA}/postmaster.pid" \ - --retry -INT/${WAIT_FOR_CLEANUP} - retval=$? - [ $retval -eq 0 ] && eend $retval && return $retval - - if [ ${WAIT_FOR_QUIT} -eq 0 ] ; then - eerror "Server did not shut down and sending the SIGQUIT has been disabled." - eend $retval - return $retval - fi - - ewarn "Shutting down the server gracefully failed." - ewarn "Forcing it to shutdown which leads to a recover-run on next startup." - - start-stop-daemon --stop --pidfile "${PGDATA}/postmaster.pid" \ - --retry -QUIT/${WAIT_FOR_QUIT} - retval=$? - [ $retval -eq 0 ] && eend $retval && return $retval - - eerror "Forced shutdown failed!!! Something is wrong with your system, please take care of it manually." - eend $? -} - -reload() { - ebegin "Reloading PostgreSQL configuration" - start-stop-daemon --stop --pidfile "${PGDATA}/postmaster.pid" --signal HUP --oknodo - eend $? -} diff --git a/dev-db/postgresql-server/files/postgresql.init-8.1-r1 b/dev-db/postgresql-server/files/postgresql.init-8.1-r1 deleted file mode 100644 index a4fb1b1a92a6..000000000000 --- a/dev-db/postgresql-server/files/postgresql.init-8.1-r1 +++ /dev/null @@ -1,136 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/files/postgresql.init-8.1-r1,v 1.2 2010/07/11 11:53:55 patrick Exp $ - -opts="${opts} reload" - -depend() { - use net - if [ -L /etc/eselect/postgresql/service ] ; then - local p_service="$(for f in /etc/eselect/postgresql/service/* ; do . $f ; done ; echo $postgres_service )" - test "${p_service}" = "${SVCNAME}" && provide postgresql - fi -} - -checkconfig() { - if [ ! -d "$PGDATA" ] ; then - eerror "Directory not found: $PGDATA" - eerror "Please make sure that PGDATA points to the right path." - eerror "You can run 'emerge postgresql-server --config' to setup a new database cluster." - return 1 - fi -} - -start() { - checkconfig || return 1 - - ebegin "Starting PostgreSQL" - - if [ -f "$PGDATA/postmaster.pid" ] ; then - rm -f "$PGDATA/postmaster.pid" - fi - - local retval - - su -l ${PGUSER} \ - -c "env PGDATA=\"${PGDATA}\" PGPORT=\"${PGPORT}\" ${PG_EXTRA_ENV} /usr/lib/postgresql-8.1/bin/pg_ctl start ${WAIT_FOR_START} -s -o '--silent-mode=true ${PGOPTS}'" - retval=$? - - if [[ $retval != 0 ]] ; then - eend $retval - return $retval - fi - -# The following is to catch the case of an already running server -# in which pg_ctl doesn't know to which server it connected to and -# falsely reports the server as 'up' - sleep 2 - if [ ! -f "$PGDATA/postmaster.pid" ] ; then - eerror "The PID file doesn't exist but pg_ctl reported a running server." - eerror "Please check whether there is another server running on the same port or read the log-file." - eend 1 - return 1 - fi - - local pid=$(grep "^[0-9]\+" "$PGDATA/postmaster.pid") - ps -p "${pid}" &> /dev/null - eend $? -} - -stop() { - ebegin "Stopping PostgreSQL (this can take a few minutes)" - - local retval - - if [[ "${NICE_QUIT}" != "NO" ]] ; then - su -l ${PGUSER} \ - -c "env PGDATA=\"${PGDATA}\" PGPORT=\"${PGPORT}\" ${PG_EXTRA_ENV} /usr/lib/postgresql-8.1/bin/pg_ctl stop ${WAIT_FOR_STOP} -s -m smart" - retval=$? - - if [[ $retval == 0 ]] ; then - eend $retval - return $retval - fi - - ewarn "Shutting down the server gracefully failed." - ewarn "Probably because some clients did not disconnect within 60 seconds." - else - ewarn "NICE_QUIT disabled." - ewarn "You really should have it enabled." - fi - - if [[ "${RUDE_QUIT}" != "NO" ]] ; then - ewarn "RUDE_QUIT enabled." - ewarn "Going to shutdown the server anyway." - - su -l ${PGUSER} \ - -c "env PGDATA=\"${PGDATA}\" PGPORT=\"${PGPORT}\" ${PG_EXTRA_ENV} /usr/lib/postgresql-8.1/bin/pg_ctl stop ${WAIT_FOR_STOP} -s -m fast" - retval=$? - - if [[ $retval == 0 ]] ; then - eend $retval - return $retval - fi - - eerror "Failed to shutdown server." - else - ewarn "RUDE_QUIT disabled." - fi - - if [[ "${FORCE_QUIT}" == "YES" ]] ; then - ewarn "FORCE_QUIT enabled." - ewarn "Forcing server to shutdown." - ewarn "A recover-run will be executed on the next startup." - - su -l ${PGUSER} \ - -c "env PGDATA=\"${PGDATA}\" PGPORT=\"${PGPORT}\" ${PG_EXTRA_ENV} /usr/lib/postgresql-8.1/bin/pg_ctl stop ${WAIT_FOR_STOP} -s -m immediate" - - retval=$? - - if [[ $retval == 0 ]] ; then - ewarn "Server forced down." - eend $retval - return $retval - fi - - eerror "Forced shutdown failed!!!" - eerror "Something is wrong with your system." - eerror "Please take care of it manually." - eerror "Unable to stop server." - eend $retval - return $retval - else - ewarn "FORCE_QUIT disabled." - eerror "Unable to shutdown server." - eend 1 - return 1 - fi -} - -reload() { - ebegin "Reloading PostgreSQL configuration" - su -l ${PGUSER} \ - -c "env PGDATA=\"${PGDATA}\" PGPORT=\"${PGPORT}\" ${PG_EXTRA_ENV} /usr/lib/postgresql-8.1/bin/pg_ctl reload -s" - eend $? -} diff --git a/dev-db/postgresql-server/postgresql-server-8.1.22.ebuild b/dev-db/postgresql-server/postgresql-server-8.1.22.ebuild deleted file mode 100644 index 40104ac8c175..000000000000 --- a/dev-db/postgresql-server/postgresql-server-8.1.22.ebuild +++ /dev/null @@ -1,263 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/postgresql-server-8.1.22.ebuild,v 1.6 2011/01/08 12:56:25 armin76 Exp $ - -EAPI="2" - -WANT_AUTOMAKE="none" -inherit eutils multilib versionator autotools - -KEYWORDS="alpha amd64 arm hppa ia64 ppc s390 sh sparc x86" - -DESCRIPTION="PostgreSQL server" -HOMEPAGE="http://www.postgresql.org/" -SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2" -LICENSE="POSTGRESQL" -SLOT="$(get_version_component_range 1-2)" -IUSE_LINGUAS=" - linguas_af linguas_cs linguas_de linguas_es linguas_fa linguas_fr - linguas_hr linguas_hu linguas_it linguas_ko linguas_nb linguas_pl - linguas_pt_BR linguas_ro linguas_ru linguas_sk linguas_sl linguas_sv - linguas_tr linguas_zh_CN linguas_zh_TW" -IUSE="doc perl python selinux tcl xml nls kernel_linux ${IUSE_LINGUAS}" - -wanted_languages() { - for u in ${IUSE_LINGUAS} ; do - use $u && echo -n "${u#linguas_} " - done -} - -RDEPEND="~dev-db/postgresql-base-${PV}:${SLOT} - perl? ( >=dev-lang/perl-5.6.1-r2 ) - python? ( >=dev-lang/python-2.2 dev-python/egenix-mx-base ) - selinux? ( sec-policy/selinux-postgresql ) - tcl? ( >=dev-lang/tcl-8 ) - xml? ( dev-libs/libxml2 dev-libs/libxslt )" -DEPEND="${RDEPEND} - sys-devel/flex - xml? ( dev-util/pkgconfig )" -PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )" - -S="${WORKDIR}/postgresql-${PV}" - -pkg_setup() { - enewgroup postgres 70 - enewuser postgres 70 /bin/bash /var/lib/postgresql postgres -} - -src_prepare() { - - epatch "${FILESDIR}/postgresql-${SLOT}-common.patch" \ - "${FILESDIR}/postgresql-${SLOT}-server.patch" - - if use test; then - sed -e "s|/no/such/location|${S}/src/test/regress/tmp_check/no/such/location|g" -i src/test/regress/{input,output}/tablespace.source - fi - - eautoconf -} - -src_configure() { - # TODO: test if PPC really cannot work with other CFLAGS settings - # use ppc && CFLAGS="-pipe -fsigned-char" - - # eval is needed to get along with pg_config quotation of space-rich entities. - eval econf "$(/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --configure)" \ - $(use_with perl) \ - $(use_with python) \ - $(use_with tcl) \ - --with-includes="/usr/include/postgresql-${SLOT}/" \ - "$(has_version ~dev-db/postgresql-base-${PV}[nls] && use_enable nls nls "$(wanted_languages)")" \ - || die "configure failed" -} - -src_compile() { - for bd in . contrib $(use xml && echo contrib/xml2) ; do - PATH="/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \ - emake -C $bd -j1 \ - PGXS=$(/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --pgxs) \ - NO_PGXS=0 USE_PGXS=1 docdir=/usr/share/doc/${PF} || die "emake in $bd failed" - done -} - -src_install() { - if use perl ; then - mv -f "${S}/src/pl/plperl/GNUmakefile" "${S}/src/pl/plperl/GNUmakefile_orig" - sed -e "s:\$(DESTDIR)\$(plperl_installdir):\$(plperl_installdir):" \ - "${S}/src/pl/plperl/GNUmakefile_orig" > "${S}/src/pl/plperl/GNUmakefile" - fi - - for bd in . contrib $(use xml && echo contrib/xml2) ; do - PATH="/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \ - emake install -C $bd -j1 DESTDIR="${D}" \ - PGXS=$(/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --pgxs) \ - NO_PGXS=0 USE_PGXS=1 docdir=/usr/share/doc/${PF} || die "emake install in $bd failed" - done - - rm -rf "${D}/usr/share/postgresql-${SLOT}/man/man7/" "${D}/usr/share/doc/${PF}/html" - rm "${D}"/usr/share/postgresql-${SLOT}/man/man1/{clusterdb,create{db,lang,user},drop{db,lang,user},ecpg,pg_{config,dump,dumpall,restore},psql,reindexdb,vacuumdb}.1 - - dodoc README HISTORY doc/{README.*,TODO,bug.template} - - dodir /etc/eselect/postgresql/slots/${SLOT} - cat >"${D}/etc/eselect/postgresql/slots/${SLOT}/service" <<-__EOF__ - postgres_ebuilds="\${postgres_ebuilds} ${PF}" - postgres_service="postgresql-${SLOT}" - __EOF__ - - newinitd "${FILESDIR}/postgresql.init-${SLOT}-r1" postgresql-${SLOT} || die "Inserting init.d-file failed" - newconfd "${FILESDIR}/postgresql.conf-${SLOT}-r1" postgresql-${SLOT} || die "Inserting conf.d-file failed" - - keepdir /var/run/postgresql - fperms 0770 /var/run/postgresql - fowners postgres:postgres /var/run/postgresql -} - -pkg_postinst() { - eselect postgresql update - [[ "$(eselect postgresql show)" = "(none)" ]] && eselect postgresql set ${SLOT} - [[ "$(eselect postgresql show-service)" = "(none)" ]] && eselect postgresql set-service ${SLOT} - - ewarn "Please note that the standard location of the socket has changed from /tmp to" - ewarn "/var/run/postgresql and you have to be in the 'postgres' group to access the" - ewarn "socket. This can break applications which have the standard location" - ewarn "hard-coded. If such an application links against the libpq, please reemerge" - ewarn "it. If that doesn't help or the application accesses the socket without using" - ewarn "libpq, please file a bug-report." - ewarn - ewarn "You can set PGOPTS='-k /tmp' in /etc/conf.d/postgresql-${SLOT} to restore the original location." - ewarn - - elog "Before initializing the database, you may want to edit PG_INITDB_OPTS so that it" - elog "contains your preferred locale in:" - elog - elog " /etc/conf.d/postgresql-${SLOT}" - elog - elog "Then, execute the following command to setup the initial database environment:" - elog - elog " emerge --config =${CATEGORY}/${PF}" - elog - elog "The autovacuum function, which was in contrib, has been moved to the main" - elog "PostgreSQL functions starting with 8.1. You can enable it in the clusters" - elog "postgresql.conf." -} - -pkg_postrm() { - eselect postgresql update -} - -pkg_config() { - [[ -f /etc/conf.d/postgresql-${SLOT} ]] && source /etc/conf.d/postgresql-${SLOT} - [[ -z "${PGDATA}" ]] && PGDATA="/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 /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 /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 pass options to initdb by setting the PG_INITDB_OPTS variable." - einfo "More information can be found here:" - einfo " http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html" - einfo " http://www.postgresql.org/docs/${SLOT}/static/app-initdb.html" - einfo "Simply add the options you would have added to initdb to the PG_INITDB_OPTS" - einfo "variable." - einfo - einfo "You can change the directory where the database cluster is being created by" - einfo "setting the PGDATA variable." - einfo - einfo "PG_INITDB_OPTS is currently set to:" - einfo " \"${PG_INITDB_OPTS}\"" - einfo "and the database cluster will be created in:" - einfo " \"${PGDATA}\"" - einfo "Are you ready to continue? (Y/n)" - read answer - [ -z $answer ] && answer=Y - [ "$answer" == "Y" ] || [ "$answer" == "y" ] || die "aborted" - - if [[ -f "${PGDATA}/PG_VERSION" ]] ; then - eerror "The given directory \"${PGDATA}\" already contains a database cluster." - die "cluster already exists" - fi - - [ -z "${PG_MAX_CONNECTIONS}" ] && PG_MAX_CONNECTIONS="128" - einfo "Checking system parameters..." - - if ! use kernel_linux ; then - SKIP_SYSTEM_TESTS=yes - einfo " Tests not supported on this OS (yet)" - fi - - if [ -z ${SKIP_SYSTEM_TESTS} ] ; then - einfo "Checking whether your system supports at least ${PG_MAX_CONNECTIONS} connections..." - - local SEMMSL=$(sysctl -n kernel.sem | cut -f1) - local SEMMNS=$(sysctl -n kernel.sem | cut -f2) - local SEMMNI=$(sysctl -n kernel.sem | cut -f4) - local SHMMAX=$(sysctl -n kernel.shmmax) - - local SEMMSL_MIN=17 - local SEMMNS_MIN=$(( ( ${PG_MAX_CONNECTIONS}/16 ) * 17 )) - local SEMMNI_MIN=$(( ( ${PG_MAX_CONNECTIONS}+15 ) / 16 )) - local SHMMAX_MIN=$(( 500000 + ( 30600 * ${PG_MAX_CONNECTIONS} ) )) - - for p in SEMMSL SEMMNS SEMMNI SHMMAX ; do - if [ $(eval echo \$$p) -lt $(eval echo \$${p}_MIN) ] ; then - eerror "The value for ${p} $(eval echo \$$p) is below the recommended value $(eval echo \$${p}_MIN)" - eerror "You have now several options:" - eerror " - Change the mentioned system parameter" - eerror " - Lower the number of max.connections by setting PG_MAX_CONNECTIONS to a value lower than ${PG_MAX_CONNECTIONS}" - eerror " - Set SKIP_SYSTEM_TESTS in case you want to ignore this test completely" - eerror "More information can be found here:" - eerror " http://www.postgresql.org/docs/${SLOT}/static/kernel-resources.html" - die "System test failed." - fi - done - einfo "Passed." - else - einfo "Skipped." - fi - - einfo "Creating the data directory ..." - mkdir -p "${PGDATA}" - chown -Rf postgres:postgres "${PGDATA}" - chmod 0700 "${PGDATA}" - - einfo "Initializing the database ..." - - su postgres -c "/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb --pgdata \"${PGDATA}\" ${PG_INITDB_OPTS}" - - einfo - einfo "You can use the '${ROOT}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL" - einfo "instead of 'pg_ctl'." - einfo -} - -src_test() { - einfo ">>> Test phase [check]: ${CATEGORY}/${PF}" - PATH="/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \ - emake -j1 check \ - PGXS=$(/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --pgxs) \ - NO_PGXS=0 USE_PGXS=1 SLOT=${SLOT} || die "Make check failed. See above for details." - - einfo "Yes, there are other tests which could be run." - einfo "... and no, we don't plan to add/support them." - einfo "For now, the main regressions tests will suffice. If you think other tests are" - einfo "necessary, please submit a bug including a patch for this ebuild to enable them." -} diff --git a/dev-db/postgresql-server/postgresql-server-8.1.23.ebuild b/dev-db/postgresql-server/postgresql-server-8.1.23.ebuild deleted file mode 100644 index 83095fd3fe0b..000000000000 --- a/dev-db/postgresql-server/postgresql-server-8.1.23.ebuild +++ /dev/null @@ -1,263 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql-server/postgresql-server-8.1.23.ebuild,v 1.1 2011/01/06 12:31:37 patrick Exp $ - -EAPI="2" - -WANT_AUTOMAKE="none" -inherit eutils multilib versionator autotools - -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~s390 ~sh ~sparc ~x86" - -DESCRIPTION="PostgreSQL server" -HOMEPAGE="http://www.postgresql.org/" -SRC_URI="mirror://postgresql/source/v${PV}/postgresql-${PV}.tar.bz2" -LICENSE="POSTGRESQL" -SLOT="$(get_version_component_range 1-2)" -IUSE_LINGUAS=" - linguas_af linguas_cs linguas_de linguas_es linguas_fa linguas_fr - linguas_hr linguas_hu linguas_it linguas_ko linguas_nb linguas_pl - linguas_pt_BR linguas_ro linguas_ru linguas_sk linguas_sl linguas_sv - linguas_tr linguas_zh_CN linguas_zh_TW" -IUSE="doc perl python selinux tcl xml nls kernel_linux ${IUSE_LINGUAS}" - -wanted_languages() { - for u in ${IUSE_LINGUAS} ; do - use $u && echo -n "${u#linguas_} " - done -} - -RDEPEND="~dev-db/postgresql-base-${PV}:${SLOT} - perl? ( >=dev-lang/perl-5.6.1-r2 ) - python? ( >=dev-lang/python-2.2 dev-python/egenix-mx-base ) - selinux? ( sec-policy/selinux-postgresql ) - tcl? ( >=dev-lang/tcl-8 ) - xml? ( dev-libs/libxml2 dev-libs/libxslt )" -DEPEND="${RDEPEND} - sys-devel/flex - xml? ( dev-util/pkgconfig )" -PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )" - -S="${WORKDIR}/postgresql-${PV}" - -pkg_setup() { - enewgroup postgres 70 - enewuser postgres 70 /bin/bash /var/lib/postgresql postgres -} - -src_prepare() { - - epatch "${FILESDIR}/postgresql-${SLOT}-common.patch" \ - "${FILESDIR}/postgresql-${SLOT}-server.patch" - - if use test; then - sed -e "s|/no/such/location|${S}/src/test/regress/tmp_check/no/such/location|g" -i src/test/regress/{input,output}/tablespace.source - fi - - eautoconf -} - -src_configure() { - # TODO: test if PPC really cannot work with other CFLAGS settings - # use ppc && CFLAGS="-pipe -fsigned-char" - - # eval is needed to get along with pg_config quotation of space-rich entities. - eval econf "$(/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --configure)" \ - $(use_with perl) \ - $(use_with python) \ - $(use_with tcl) \ - --with-includes="/usr/include/postgresql-${SLOT}/" \ - "$(has_version ~dev-db/postgresql-base-${PV}[nls] && use_enable nls nls "$(wanted_languages)")" \ - || die "configure failed" -} - -src_compile() { - for bd in . contrib $(use xml && echo contrib/xml2) ; do - PATH="/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \ - emake -C $bd -j1 \ - PGXS=$(/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --pgxs) \ - NO_PGXS=0 USE_PGXS=1 docdir=/usr/share/doc/${PF} || die "emake in $bd failed" - done -} - -src_install() { - if use perl ; then - mv -f "${S}/src/pl/plperl/GNUmakefile" "${S}/src/pl/plperl/GNUmakefile_orig" - sed -e "s:\$(DESTDIR)\$(plperl_installdir):\$(plperl_installdir):" \ - "${S}/src/pl/plperl/GNUmakefile_orig" > "${S}/src/pl/plperl/GNUmakefile" - fi - - for bd in . contrib $(use xml && echo contrib/xml2) ; do - PATH="/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \ - emake install -C $bd -j1 DESTDIR="${D}" \ - PGXS=$(/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --pgxs) \ - NO_PGXS=0 USE_PGXS=1 docdir=/usr/share/doc/${PF} || die "emake install in $bd failed" - done - - rm -rf "${D}/usr/share/postgresql-${SLOT}/man/man7/" "${D}/usr/share/doc/${PF}/html" - rm "${D}"/usr/share/postgresql-${SLOT}/man/man1/{clusterdb,create{db,lang,user},drop{db,lang,user},ecpg,pg_{config,dump,dumpall,restore},psql,reindexdb,vacuumdb}.1 - - dodoc README HISTORY doc/{README.*,TODO,bug.template} - - dodir /etc/eselect/postgresql/slots/${SLOT} - cat >"${D}/etc/eselect/postgresql/slots/${SLOT}/service" <<-__EOF__ - postgres_ebuilds="\${postgres_ebuilds} ${PF}" - postgres_service="postgresql-${SLOT}" - __EOF__ - - newinitd "${FILESDIR}/postgresql.init-${SLOT}-r1" postgresql-${SLOT} || die "Inserting init.d-file failed" - newconfd "${FILESDIR}/postgresql.conf-${SLOT}-r1" postgresql-${SLOT} || die "Inserting conf.d-file failed" - - keepdir /var/run/postgresql - fperms 0770 /var/run/postgresql - fowners postgres:postgres /var/run/postgresql -} - -pkg_postinst() { - eselect postgresql update - [[ "$(eselect postgresql show)" = "(none)" ]] && eselect postgresql set ${SLOT} - [[ "$(eselect postgresql show-service)" = "(none)" ]] && eselect postgresql set-service ${SLOT} - - ewarn "Please note that the standard location of the socket has changed from /tmp to" - ewarn "/var/run/postgresql and you have to be in the 'postgres' group to access the" - ewarn "socket. This can break applications which have the standard location" - ewarn "hard-coded. If such an application links against the libpq, please reemerge" - ewarn "it. If that doesn't help or the application accesses the socket without using" - ewarn "libpq, please file a bug-report." - ewarn - ewarn "You can set PGOPTS='-k /tmp' in /etc/conf.d/postgresql-${SLOT} to restore the original location." - ewarn - - elog "Before initializing the database, you may want to edit PG_INITDB_OPTS so that it" - elog "contains your preferred locale in:" - elog - elog " /etc/conf.d/postgresql-${SLOT}" - elog - elog "Then, execute the following command to setup the initial database environment:" - elog - elog " emerge --config =${CATEGORY}/${PF}" - elog - elog "The autovacuum function, which was in contrib, has been moved to the main" - elog "PostgreSQL functions starting with 8.1. You can enable it in the clusters" - elog "postgresql.conf." -} - -pkg_postrm() { - eselect postgresql update -} - -pkg_config() { - [[ -f /etc/conf.d/postgresql-${SLOT} ]] && source /etc/conf.d/postgresql-${SLOT} - [[ -z "${PGDATA}" ]] && PGDATA="/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 /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 /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 pass options to initdb by setting the PG_INITDB_OPTS variable." - einfo "More information can be found here:" - einfo " http://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html" - einfo " http://www.postgresql.org/docs/${SLOT}/static/app-initdb.html" - einfo "Simply add the options you would have added to initdb to the PG_INITDB_OPTS" - einfo "variable." - einfo - einfo "You can change the directory where the database cluster is being created by" - einfo "setting the PGDATA variable." - einfo - einfo "PG_INITDB_OPTS is currently set to:" - einfo " \"${PG_INITDB_OPTS}\"" - einfo "and the database cluster will be created in:" - einfo " \"${PGDATA}\"" - einfo "Are you ready to continue? (Y/n)" - read answer - [ -z $answer ] && answer=Y - [ "$answer" == "Y" ] || [ "$answer" == "y" ] || die "aborted" - - if [[ -f "${PGDATA}/PG_VERSION" ]] ; then - eerror "The given directory \"${PGDATA}\" already contains a database cluster." - die "cluster already exists" - fi - - [ -z "${PG_MAX_CONNECTIONS}" ] && PG_MAX_CONNECTIONS="128" - einfo "Checking system parameters..." - - if ! use kernel_linux ; then - SKIP_SYSTEM_TESTS=yes - einfo " Tests not supported on this OS (yet)" - fi - - if [ -z ${SKIP_SYSTEM_TESTS} ] ; then - einfo "Checking whether your system supports at least ${PG_MAX_CONNECTIONS} connections..." - - local SEMMSL=$(sysctl -n kernel.sem | cut -f1) - local SEMMNS=$(sysctl -n kernel.sem | cut -f2) - local SEMMNI=$(sysctl -n kernel.sem | cut -f4) - local SHMMAX=$(sysctl -n kernel.shmmax) - - local SEMMSL_MIN=17 - local SEMMNS_MIN=$(( ( ${PG_MAX_CONNECTIONS}/16 ) * 17 )) - local SEMMNI_MIN=$(( ( ${PG_MAX_CONNECTIONS}+15 ) / 16 )) - local SHMMAX_MIN=$(( 500000 + ( 30600 * ${PG_MAX_CONNECTIONS} ) )) - - for p in SEMMSL SEMMNS SEMMNI SHMMAX ; do - if [ $(eval echo \$$p) -lt $(eval echo \$${p}_MIN) ] ; then - eerror "The value for ${p} $(eval echo \$$p) is below the recommended value $(eval echo \$${p}_MIN)" - eerror "You have now several options:" - eerror " - Change the mentioned system parameter" - eerror " - Lower the number of max.connections by setting PG_MAX_CONNECTIONS to a value lower than ${PG_MAX_CONNECTIONS}" - eerror " - Set SKIP_SYSTEM_TESTS in case you want to ignore this test completely" - eerror "More information can be found here:" - eerror " http://www.postgresql.org/docs/${SLOT}/static/kernel-resources.html" - die "System test failed." - fi - done - einfo "Passed." - else - einfo "Skipped." - fi - - einfo "Creating the data directory ..." - mkdir -p "${PGDATA}" - chown -Rf postgres:postgres "${PGDATA}" - chmod 0700 "${PGDATA}" - - einfo "Initializing the database ..." - - su postgres -c "/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb --pgdata \"${PGDATA}\" ${PG_INITDB_OPTS}" - - einfo - einfo "You can use the '${ROOT}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL" - einfo "instead of 'pg_ctl'." - einfo -} - -src_test() { - einfo ">>> Test phase [check]: ${CATEGORY}/${PF}" - PATH="/usr/$(get_libdir)/postgresql-${SLOT}/bin:${PATH}" \ - emake -j1 check \ - PGXS=$(/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --pgxs) \ - NO_PGXS=0 USE_PGXS=1 SLOT=${SLOT} || die "Make check failed. See above for details." - - einfo "Yes, there are other tests which could be run." - einfo "... and no, we don't plan to add/support them." - einfo "For now, the main regressions tests will suffice. If you think other tests are" - einfo "necessary, please submit a bug including a patch for this ebuild to enable them." -} |