void-packages/srcpkgs/postgresql/template

184 lines
5.4 KiB
Bash
Raw Normal View History

# Template file for 'postgresql'
pkgname=postgresql
2015-02-06 13:09:26 +00:00
version=9.4.1
revision=6
build_style=gnu-configure
2014-10-04 15:39:40 +00:00
make_build_target="world"
configure_args="--with-openssl --with-python
2012-12-07 10:54:59 +00:00
--with-pam --datadir=/usr/share/postgresql --enable-thread-safety
--with-perl --with-tcl --without-ldap --without-gssapi --without-krb5
--without-bonjour --with-libxml --with-libxslt --disable-rpath
--with-system-tzdata=/usr/share/zoneinfo --enable-nls --with-uuid=e2fs"
short_desc="Sophisticated open-source Object-Relational DBMS"
2015-01-15 22:24:27 +00:00
maintainer="Philipp Hirsch <itself@hanspolo.net>"
2011-06-20 13:19:36 +00:00
homepage="http://www.postgresql.org"
license="BSD"
2012-07-02 09:33:29 +00:00
distfiles="ftp://ftp.postgresql.org/pub/source/v${version}/${pkgname}-${version}.tar.bz2"
2015-02-06 13:09:26 +00:00
checksum=29ddb77c820095b8f52e5455e9c6c6c20cf979b0834ed1986a8857b84888c3a6
hostmakedepends="flex docbook docbook2x openjade"
makedepends="libfl-devel readline-devel libressl-devel perl
tcl-devel python-devel libxml2-devel libxslt-devel pam-devel libuuid-devel"
conf_files="
/etc/default/${pkgname}
/etc/pam.d/${pkgname}
/etc/${pkgname}/${pkgname}.conf"
systemd_services="${pkgname}.service on"
# Create 'postgres' user for the server.
system_accounts="postgres"
postgres_homedir="/var/lib/${pkgname}"
postgres_shell="/bin/sh"
postgres_descr="PostgreSQL database server user"
2012-12-07 10:54:59 +00:00
if [ "$CROSS_BUILD" ]; then
configure_args+=" --without-perl --without-python --without-tcl"
fi
2014-10-04 15:39:40 +00:00
build_options="systemd"
pre_build() {
# http://www.postgresql.org/docs/9.3/static/docguide-toolsets.html
export SGML_CATALOG_FILES="/usr/share/sgml/openjade/catalog:/usr/share/sgml/iso8879/catalog:/usr/share/sgml/docbook/dsssl/modular/catalog:/usr/share/sgml/docbook/4.2/catalog"
}
post_build() {
make -C contrib ${makejobs}
}
post_install() {
make -C contrib install
2014-10-04 15:39:40 +00:00
vmkdir usr/share/man
cp -r doc/src/sgml/man? ${DESTDIR}/usr/share/man
vmkdir usr/share/doc/postgresql
cp -r doc/src/sgml/html ${DESTDIR}/usr/share/doc/postgresql
2014-10-13 09:18:32 +00:00
vsv postgresql
vinstall ${FILESDIR}/${pkgname}.confd 644 etc/default ${pkgname}
2014-10-04 15:39:40 +00:00
if [ "$build_option_systemd" ]; then
vinstall ${FILESDIR}/${pkgname}.service 644 usr/lib/systemd/system
vinstall ${FILESDIR}/${pkgname}-initdb 755 usr/lib/systemd/scripts
fi
vinstall ${FILESDIR}/${pkgname}.pam 644 etc/pam.d ${pkgname}
vinstall ${DESTDIR}/usr/share/${pkgname}/${pkgname}.conf.sample \
644 etc/${pkgname} ${pkgname}.conf
}
postgresql-doc_package() {
short_desc="PostgreSQL documentation"
noarch=yes
pkg_install() {
vmove usr/share/doc
}
}
postgresql-libs_package() {
short_desc="PostgreSQL shared libraries"
pkg_install() {
vmove "usr/lib/*.so*"
2014-11-11 14:20:48 +00:00
for d in $(find ${DESTDIR}/usr/share/locale \
-type f -name libpq5\*); do
mkdir -p ${PKGDESTDIR}/$(dirname ${d#${DESTDIR}})
mv ${d} ${PKGDESTDIR}/$(dirname ${d#${DESTDIR}})
done
}
}
postgresql-libs-devel_package() {
depends="postgresql-libs>=$version"
short_desc="PostgreSQL shared libraries (development files)"
pkg_install() {
for f in pg_config ecpg; do
vmove usr/bin/${f}
vmove "usr/share/man/man1/$(basename ${f})*"
done
vmove usr/include
vmove "usr/lib/*.a"
2014-10-04 15:39:40 +00:00
vmove "usr/lib/pkgconfig/*"
vmove usr/share/man/man3
vmove usr/lib/postgresql/pgxs
for d in $(find ${DESTDIR}/usr/share/locale \
-type f -name pg_config\* -o -name ecpg\*); do
mkdir -p ${PKGDESTDIR}/$(dirname ${d#${DESTDIR}})
mv ${d} ${PKGDESTDIR}/$(dirname ${d#${DESTDIR}})
done
}
}
# XXX disabled for now in cross builds.
if [ -z "$CROSS_BUILD" ]; then
postgresql-plperl_package() {
depends="postgresql>=$version"
short_desc="PL/Perl procedural language for PostgreSQL"
pkg_install() {
vmove "usr/lib/postgresql/plperl*"
for d in $(find ${DESTDIR}/usr/share/locale \
-type f -name plperl\*); do
mkdir -p ${PKGDESTDIR}/$(dirname ${d#${DESTDIR}})
mv ${d} ${PKGDESTDIR}/$(dirname ${d#${DESTDIR}})
done
}
}
postgresql-plpython_package() {
depends="postgresql>=$version"
short_desc="PL/Python procedural language for PostgreSQL"
pkg_install() {
vmove "usr/lib/postgresql/plpython*"
for d in $(find ${DESTDIR}/usr/share/locale \
-type f -name plpython\*); do
mkdir -p ${PKGDESTDIR}/$(dirname ${d#${DESTDIR}})
mv ${d} ${PKGDESTDIR}/$(dirname ${d#${DESTDIR}})
done
}
}
postgresql-pltcl_package() {
depends="postgresql>=$version"
short_desc="PL/Tcl procedural language for PostgreSQL"
pkg_install() {
vmove "usr/bin/pltcl*"
vmove "usr/lib/postgresql/pltcl*"
for d in $(find ${DESTDIR}/usr/share/locale \
-type f -name pltcl\*); do
mkdir -p ${PKGDESTDIR}/$(dirname ${d#${DESTDIR}})
mv ${d} ${PKGDESTDIR}/$(dirname ${d#${DESTDIR}})
done
vmove "usr/share/postgresql/*.pltcl"
}
}
fi # !CROSS_BUILD
postgresql-client_package() {
short_desc="Client frontends programs for PostgreSQL"
pkg_install() {
for f in clusterdb createdb createlang createuser dropdb droplang \
2014-11-11 14:20:48 +00:00
dropuser pg_dump pg_dumpall pg_isready pg_restore psql reindexdb \
vacuumdb; do
vmove usr/bin/${f}
vmove usr/share/man/man1/$(basename ${f}).1
done
vmove usr/share/man/man7
for d in $(find ${DESTDIR}/usr/share/locale \
-type f -name pgscripts\* -o \
-name psql\* -o \
-name pg_dump\*); do
mkdir -p ${PKGDESTDIR}/$(dirname ${d#${DESTDIR}})
mv ${d} ${PKGDESTDIR}/$(dirname ${d#${DESTDIR}})
done
vmkdir usr/share/postgresql
mv ${DESTDIR}/usr/share/postgresql/psqlrc.* \
${PKGDESTDIR}/usr/share/postgresql
}
}
postgresql-contrib_package() {
short_desc="PostgreSQL contributed programs and extensions"
pkg_install() {
make -C contrib install DESTDIR=${PKGDESTDIR}
}
}