# Maintainer: Jakub Jirutka pkgname=postgresql pkgver=9.5.13 pkgrel=0 pkgdesc="A sophisticated object-relational DBMS" url="http://www.postgresql.org/" arch="all" license="PostgreSQL" depends="postgresql-client" install="$pkgname.pre-upgrade" pkgusers="postgres" pkggroups="postgres" depends_dev="openssl-dev" makedepends="$depends_dev libedit-dev zlib-dev libxml2-dev util-linux-dev openldap-dev" subpackages="$pkgname-dev $pkgname-doc libpq $pkgname-libs $pkgname-client $pkgname-contrib" patches="initdb.patch" source="https://ftp.postgresql.org/pub/source/v$pkgver/$pkgname-$pkgver.tar.bz2 $patches $pkgname.initd $pkgname.confd pg-restore.initd pg-restore.confd " _builddir="$srcdir"/$pkgname-$pkgver # secfixes: # 9.5.13-r0: # - CVE-2018-1115 # 9.5.12-r0: # - CVE-2018-1058 # 9.5.11-r0: # - CVE-2018-1053 # 9.5.10-r0: # - CVE-2017-15098 # - CVE-2017-15099 # 9.5.8-r0: # - CVE-2017-7546 # - CVE-2017-7547 # - CVE-2017-7548 # 9.5.7-r0: # - CVE-2017-7484 # - CVE-2017-7485 # - CVE-2017-7486 prepare() { cd "$_builddir" for i in $patches; do msg $i patch -p1 -i "$srcdir"/$i || return 1 done # sanity check of conf.d ( . "$srcdir"/postgresql.confd _datadir=/var/lib/postgresql/${pkgver%.*}/data if [ "$_datadir" != "$PGDATA" ]; then die "PGDATA is $PGDATA while $_datadir is expected" fi ) || return 1 } build() { cd "$_builddir" ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --mandir=/usr/share/man \ --with-ldap \ --with-libedit-preferred \ --with-libxml \ --with-openssl \ --with-uuid=e2fs \ || return 1 make world || return 1 } package() { cd "$_builddir" make DESTDIR="$pkgdir" install install-docs || return 1 install -d -m755 -o postgres -g postgres \ "$pkgdir"/var/lib/postgresql || return 1 install -D -m755 "$srcdir"/postgresql.initd \ "$pkgdir"/etc/init.d/postgresql || return 1 install -D -m644 "$srcdir"/postgresql.confd \ "$pkgdir"/etc/conf.d/postgresql || return 1 install -D -m755 "$srcdir"/pg-restore.initd \ "$pkgdir"/etc/init.d/pg-restore || return 1 install -D -m644 "$srcdir"/pg-restore.confd \ "$pkgdir"/etc/conf.d/pg-restore || return 1 } dev() { default_dev mkdir -p "$subpkgdir"/usr/bin "$subpkgdir"/usr/lib/postgresql mv "$pkgdir"/usr/bin/pg_config \ "$pkgdir"/usr/bin/ecpg \ "$subpkgdir"/usr/bin/ || return 1 mv "$pkgdir"/usr/lib/postgresql/pgxs \ "$subpkgdir"/usr/lib/postgresql/ || return 1 } libpq() { depends= pkgdesc="PostgreSQL libraries" mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/libpq.so.* "$subpkgdir"/usr/lib/ } libs() { depends= default_libs } client() { depends= pkgdesc="PostgreSQL client" mkdir -p "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/psql "$subpkgdir"/usr/bin/ } contrib() { depends= pkgdesc="Extension modules distributed with PostgreSQL" cd "$_builddir" make DESTDIR="$subpkgdir" -C contrib install || return 1 } sha512sums="807b22aabee38326934213de04b782a6b22cd8fe5c5bfd8b6cfa44281924527a715dcd78adbee276746446a7b05036b4714b00a16c650027543dcbafe1888082 postgresql-9.5.13.tar.bz2 0b88eee78380ed6cf543c851ac1cea5fc50bb6ef1bb51e03694003f43d2bf4e117ff06657f958d0e9c00ace3b8a6bab6ed0bd017d23f80cfd203dab33da81d46 initdb.patch af37b100cc67769817e4c9e997abecf50475d7f0bf9b0f1d51bf8454d45abd6c87d5d315ed6cafd14e0dd059e96723a6203b756236070d12968816666e63e522 postgresql.initd 280b759c692d9399b7204744c6c2220c390e53351f33ab53ad4a3399446f7ee29d5c1a8d9087429a9246d8d10a759c861d9ac42d968a9358423bad9281748ec2 postgresql.confd f5a1cba051e7d846c2d16703514601cb25729ed96b677c9bd0c199d64552120a8b14b238af01917fdb87106681e12dee6fff7447558155ba273e4f96be5e2892 pg-restore.initd c14a5684e914abb3b0ee71bbf15eed71a9264deacaa404a6e3af6bfc330d93e7598624d0ed11a94263106cc660f7f54c8ff57e759033cf606a795f69ff6c1c7c pg-restore.confd"