summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--system/postgresql/README53
-rw-r--r--system/postgresql/README.SBo37
-rw-r--r--system/postgresql/doinst.sh12
-rw-r--r--system/postgresql/postgresql.SlackBuild108
-rw-r--r--system/postgresql/postgresql.info10
-rw-r--r--system/postgresql/postgresql.logrotate2
-rw-r--r--system/postgresql/rc.postgresql.new4
-rw-r--r--system/postgresql/slack-desc2
8 files changed, 109 insertions, 119 deletions
diff --git a/system/postgresql/README b/system/postgresql/README
index 6a79a84ee8..476b2ac0b5 100644
--- a/system/postgresql/README
+++ b/system/postgresql/README
@@ -3,56 +3,5 @@ system (ORDBMS) based on POSTGRES. With more than 15 years of
development history, it is quickly becoming the de facto
database for enterprise level open source solutions.
-Homepage: http://www.postgresql.org
-
-This script builds postgresql with a couple of useful features in the
-contrib directory.
-
-adminpack -
- File and log manipulation routines, used by pgAdmin
- by Dave Page <dpage@vale-housing.co.uk>
-
-tsearch2 -
- Full-text-index support using GiST
- by Teodor Sigaev <teodor@sigaev.ru> and Oleg Bartunov
- <oleg@sai.msu.su>.
- Since ver. 8.3 tsearch2 is directly supported by PostgreSQL
- This contrib module is now a compatibility layer. Run
- # TSEARCH2_COMPAT=no ./postgresql.SlackBuild
- if you don't need it.
-
-
Before you can run postgresql you'll need to create the
-database files in /var/lib/pgsql. The following should do
-the trick.
-
- # su postgres -c "initdb -D /var/lib/pgsql/data"
-
-Additionally, a logrotation script is added to /etc/logrotate.d/ and an
-rc.postgresql script is added. In order to activate postgresql at boot
-time and shut it down properly upon system shutdown, add the following
-lines to the following files.
-
- /etc/rc.d/rc.local
- ==================
-
- # Startup postgresql
- if [ -x /etc/rc.d/rc.postgresql ]; then
- /etc/rc.d/rc.postgresql start
- fi
-
-
- /etc/rc.d/rc.local_shutdown
- ===========================
-
- # Stop postgres
- if [ -x /etc/rc.d/rc.postgresql ]; then
- /etc/rc.d/rc.postgresql stop
- fi
-
-Additionally, you'll have to set the rc script to be executable just
-like any other Slackware rc script.
-
- # chmod +x /etc/rc.d/rc.postgresql
-
-
+database, please see README.SBo. \ No newline at end of file
diff --git a/system/postgresql/README.SBo b/system/postgresql/README.SBo
new file mode 100644
index 0000000000..24bd944c72
--- /dev/null
+++ b/system/postgresql/README.SBo
@@ -0,0 +1,37 @@
+Before you can run postgresql you'll need to create the
+database files in /var/lib/pgsql. The following should do
+the trick.
+ # su postgres -c "initdb -D /var/lib/pgsql/data"
+
+Additionally, a logrotation script and init script are included.
+For production level log file handling please read
+http://www.postgresql.org/docs/8.3/interactive/logfile-maintenance.html
+
+In order to start postgresql at boot and stop it properly at shutdown,
+make sure rc.postgresql is executable and add the following lines to
+the following files:
+
+ /etc/rc.d/rc.local
+ ==================
+ # Startup postgresql
+ if [ -x /etc/rc.d/rc.postgresql ]; then
+ /etc/rc.d/rc.postgresql start
+ fi
+
+ /etc/rc.d/rc.local_shutdown
+ ===========================
+ # Stop postgres
+ if [ -x /etc/rc.d/rc.postgresql ]; then
+ /etc/rc.d/rc.postgresql stop
+ fi
+
+This script builds postgresql with the 'adminpack', 'tsearch2', and
+'pgcrypto' features in the contrib directory.
+
+Please note that in order to actually use extension, you must execute
+accompanying SQL scripts located in /usr/share/postgresql/contrib
+
+Since 8.3 tsearch2 functionality is available in PostgreSQL core, and
+'tsearch2' extension serves only as a compatibility layer. You can
+prevent building of this extension with:
+ TSEARCH2_COMPAT=no ./postgresql.SlackBuild
diff --git a/system/postgresql/doinst.sh b/system/postgresql/doinst.sh
index 4eed17e907..5a067b8cf5 100644
--- a/system/postgresql/doinst.sh
+++ b/system/postgresql/doinst.sh
@@ -2,15 +2,23 @@
config() {
NEW="$1"
- OLD="`dirname $NEW`/`basename $NEW .new`"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
# If there's no config file by that name, mv it over:
if [ ! -r $OLD ]; then
mv $NEW $OLD
- elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then # toss the redundant copy
rm $NEW
fi
# Otherwise, we leave the .new copy for the admin to consider...
}
+# Keep same perms on rc.postgresql.new:
+if [ -e etc/rc.d/rc.postgresql ]; then
+ cp -a etc/rc.d/rc.postgresql etc/rc.d/rc.postgresql.new.incoming
+ cat etc/rc.d/rc.postgresql.new > etc/rc.d/rc.postgresql.new.incoming
+ mv etc/rc.d/rc.postgresql.new.incoming etc/rc.d/rc.postgresql.new
+fi
+
config etc/rc.d/rc.postgresql.new
config etc/logrotate.d/postgresql.new
+
diff --git a/system/postgresql/postgresql.SlackBuild b/system/postgresql/postgresql.SlackBuild
index 379541eed0..1db01e2f1b 100644
--- a/system/postgresql/postgresql.SlackBuild
+++ b/system/postgresql/postgresql.SlackBuild
@@ -1,17 +1,18 @@
#!/bin/sh
## Slackware build script for PostgreSQL
-## $Revision: 1addf65317c9 $
-## $Date: 2007/04/25 02:58:20 $
+## $Revision: a8b7a8527f9a $
+## $Date: 2008/06/11 08:11:50 $
##
-## Copyright 2007 Adis Nezirovic <adis _at_ linux.org.ba>
+## Copyright 2007-2008 Adis Nezirovic <adis _at_ linux.org.ba>
## Licensed under GNU GPL v2
-# Slightly modified by the SlackBuilds Project
+# Modified by the SlackBuilds.org Project
+
PRGNAM=postgresql
-VERSION=8.3.0
+VERSION=8.3.5
ARCH=${ARCH:-i486}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
CWD=$(pwd)
@@ -19,9 +20,6 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-# Exit on any and all errors
-set -e
-
# Bail out if user or group isn't valid on your system
# For slackbuilds.org, assigned postgres uid/gid are 209/209
# see http://slackbuilds.org/uid_gid.txt
@@ -43,39 +41,39 @@ if [ "$ARCH" = "i486" ]; then
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2"
+ SLKCFLAGS="-O2 -fPIC"
fi
-# Make sure we start from clean state
+set -e # Exit on any and all errors
+
rm -rf $TMP/$PRGNAM-$VERSION $PKG
mkdir -p $TMP $PKG $OUTPUT
-
cd $TMP
-tar xjvf $CWD/$PRGNAM-$VERSION.tar.bz2 || exit 1
-
-# Fix permissions here.
-chmod -R a-s,u+w,go+r-w $PRGNAM-$VERSION
-chown -R root:root $PRGNAM-$VERSION
-
-cd $TMP/$PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+cd $PRGNAM-$VERSION
+chown -R root:root .
+chmod -R a-s,u+w,go+r-w .
CFLAGS="$SLKCFLAGS" \
./configure \
- --prefix=/usr \
- --with-openssl \
- --with-tcl \
- --with-perl \
- --with-python \
- --with-ldap \
- --with-xml \
- --enable-thread-safety || exit 1
-make || exit 1
-make DESTDIR=$PKG install-strip || exit 1
+ --prefix=/usr \
+ --with-openssl \
+ --with-tcl \
+ --with-perl \
+ --with-python \
+ --with-ldap \
+ --with-libxml \
+ --enable-thread-safety \
+ --build=$ARCH-slackware-linux
+
+make
+make install-strip DESTDIR=$PKG
# adminpack extension for pgAdmin
-cd $TMP/$PRGNAM-$VERSION/contrib/adminpack
-make || exit 1
-make DESTDIR=$PKG install-strip || exit 1
+cd contrib/adminpack
+ make
+ make install-strip DESTDIR=$PKG
+cd $TMP/$PRGNAM-$VERSION
# Since version 8.3 tsearch2 is directly supported by PostgreSQL
# This contrib module is now a compatibility layer.
@@ -83,25 +81,26 @@ make DESTDIR=$PKG install-strip || exit 1
# compatibility layer by running:
# TSEARCH2_COMPAT=no ./postgresql.SlackBuild
if [ "$TSEARCH2_COMPAT" != "no" ]; then
- cd $TMP/$PRGNAM-$VERSION/contrib/tsearch2
- make || exit 1
- make DESTDIR=$PKG install-strip || exit 1
+ cd contrib/tsearch2
+ make
+ make install-strip DESTDIR=$PKG
+ cd $TMP/$PRGNAM-$VERSION
fi
+# some business oriented applications use this extension
+cd contrib/pgcrypto
+ make
+ make install-strip DESTDIR=$PKG
cd $TMP/$PRGNAM-$VERSION
-# man pages
gzip -9 $PKG/usr/man/man?/*
-# docs
mv $PKG/usr/doc/$PRGNAM $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYRIGHT \
- HISTORY \
- README \
- doc/* \
- $PKG/usr/doc/$PRGNAM-$VERSION/
-rm -fr $PKG/usr/doc/$PRGNAM-$VERSION/{man.tar.gz,man1,manl,man7,postgres.tar.gz}
+cp -a COPYRIGHT HISTORY README doc/* $PKG/usr/doc/$PRGNAM-$VERSION/
+rm -rf $PKG/usr/doc/$PRGNAM-$VERSION/{man.tar.gz,man1,manl,man7,postgres.tar.gz}
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cat $CWD/README.SBo > $PKG/usr/doc/$PRGNAM-$VERSION/README.SBo
+chown -R root:root $PKG/usr/doc
# base database directory
# assumes you are using /var/lib/pgsql as a homedir for postgres user
@@ -111,24 +110,21 @@ chmod 700 $PKG/var/lib/pgsql
# permissions for DATADIR should be u=rwx (0700)
chmod 700 $PKG/var/lib/pgsql/data
-# description file
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-# pkgtool setup procedure
-mkdir -p $PKG/var/log/setup
-cat $CWD/setup.$PRGNAM > $PKG/var/log/setup/setup.$PRGNAM
-chmod 755 $PKG/var/log/setup/setup.$PRGNAM
-
-# rc script
+# Install init script
mkdir -p $PKG/etc/rc.d
cat $CWD/rc.postgresql.new > $PKG/etc/rc.d/rc.postgresql.new
-# logrotation
+# Install logrotate script
mkdir -p $PKG/etc/logrotate.d
cat $CWD/postgresql.logrotate > $PKG/etc/logrotate.d/postgresql.new
-## make the package
+mkdir -p $PKG/var/log/setup
+cat $CWD/setup.$PRGNAM > $PKG/var/log/setup/setup.$PRGNAM
+chmod 755 $PKG/var/log/setup/setup.$PRGNAM
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz
diff --git a/system/postgresql/postgresql.info b/system/postgresql/postgresql.info
index 9fa51c912f..601745ab23 100644
--- a/system/postgresql/postgresql.info
+++ b/system/postgresql/postgresql.info
@@ -1,8 +1,8 @@
PRGNAM="postgresql"
-VERSION="8.3.0"
+VERSION="8.3.5"
HOMEPAGE="http://www.postgresql.org"
-DOWNLOAD="ftp://ftp.postgresql.org/pub/source/v8.3.0/postgresql-8.3.0.tar.bz2"
-MD5SUM="53d6816eac7442f9bc8103439ebee22e"
+DOWNLOAD="ftp://ftp.postgresql.org/pub/source/v8.3.5/postgresql-8.3.5.tar.bz2"
+MD5SUM="3bc028774d7a79e926be0c6a9c7ca209"
MAINTAINER="Adis Nezirovic"
-EMAIL="adis _at_ linux.org.ba"
-APPROVED="BP{k}"
+EMAIL="adis_at_linux.org.ba"
+APPROVED="dsomero"
diff --git a/system/postgresql/postgresql.logrotate b/system/postgresql/postgresql.logrotate
index c8724992e2..11ce787a9e 100644
--- a/system/postgresql/postgresql.logrotate
+++ b/system/postgresql/postgresql.logrotate
@@ -1,4 +1,4 @@
-/var/log/postgresql.log {
+/var/log/postgresql {
postrotate
/etc/rc.d/rc.postgresql reload 2>&1 > /dev/null
endscript
diff --git a/system/postgresql/rc.postgresql.new b/system/postgresql/rc.postgresql.new
index 329b7b092d..347fe28019 100644
--- a/system/postgresql/rc.postgresql.new
+++ b/system/postgresql/rc.postgresql.new
@@ -52,7 +52,7 @@ case "$1" in
exit 6
fi
- if [ `pgrep -f $POSTGRES` ]; then
+ if [ $(pgrep -f $POSTGRES) ]; then
echo "PostgreSQL daemon already running"
if [ ! -f $DATADIR/$PIDFILE ]; then
@@ -92,7 +92,7 @@ case "$1" in
;;
"status")
- if [ `pgrep -f $POSTGRES` ]; then
+ if [ $(pgrep -f $POSTGRES) ]; then
echo "PostgreSQL is running"
if [ ! -e $DATADIR/$PIDFILE ]; then
diff --git a/system/postgresql/slack-desc b/system/postgresql/slack-desc
index 5a15c63f8b..25ca7d6609 100644
--- a/system/postgresql/slack-desc
+++ b/system/postgresql/slack-desc
@@ -1,5 +1,5 @@
|-----handy-ruler-------------------------------------------------|
-postgresql: PostgreSQL
+postgresql: PostgreSQL (object-relational database management system)
postgresql:
postgresql: PostgreSQL is an advanced object-relational database management
postgresql: system (ORDBMS) based on POSTGRES. With more than 15 years of