mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-21 19:42:24 +01:00
system/postgresql: Updated for version 8.3.5
This commit is contained in:
parent
65739ea69c
commit
99e6253644
8 changed files with 109 additions and 119 deletions
|
@ -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.
|
37
system/postgresql/README.SBo
Normal file
37
system/postgresql/README.SBo
Normal file
|
@ -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
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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
|
||||
# Install init script
|
||||
mkdir -p $PKG/etc/rc.d
|
||||
cat $CWD/rc.postgresql.new > $PKG/etc/rc.d/rc.postgresql.new
|
||||
|
||||
# Install logrotate script
|
||||
mkdir -p $PKG/etc/logrotate.d
|
||||
cat $CWD/postgresql.logrotate > $PKG/etc/logrotate.d/postgresql.new
|
||||
|
||||
# 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
|
||||
mkdir -p $PKG/etc/rc.d
|
||||
cat $CWD/rc.postgresql.new > $PKG/etc/rc.d/rc.postgresql.new
|
||||
mkdir -p $PKG/install
|
||||
cat $CWD/slack-desc > $PKG/install/slack-desc
|
||||
cat $CWD/doinst.sh > $PKG/install/doinst.sh
|
||||
|
||||
# logrotation
|
||||
mkdir -p $PKG/etc/logrotate.d
|
||||
cat $CWD/postgresql.logrotate > $PKG/etc/logrotate.d/postgresql.new
|
||||
|
||||
## make the package
|
||||
cd $PKG
|
||||
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/var/log/postgresql.log {
|
||||
/var/log/postgresql {
|
||||
postrotate
|
||||
/etc/rc.d/rc.postgresql reload 2>&1 > /dev/null
|
||||
endscript
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue