Date: Sunday, September 12, 2010 @ 19:32:10 Author: dan Revision: 90527
Fix FS#20556, FS#16507, FS#19687, FS#18756 And some general cleanup like `|| return 1` removal since makepkg bails automatically now. Added: postgresql/trunk/postgresql.logrotate Modified: postgresql/trunk/PKGBUILD postgresql/trunk/postgresql ----------------------+ PKGBUILD | 118 +++++++++++++++++++++++++------------------------ postgresql | 2 postgresql.logrotate | 4 + 3 files changed, 66 insertions(+), 58 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2010-09-12 18:30:29 UTC (rev 90526) +++ PKGBUILD 2010-09-12 23:32:10 UTC (rev 90527) @@ -4,126 +4,130 @@ pkgbase=('postgresql') pkgname=('postgresql-libs' 'postgresql') pkgver=8.4.4 -pkgrel=2 +pkgrel=3 arch=('i686' 'x86_64') url="http://www.postgresql.org" license=('BSD') -makedepends=('libxml2' 'python2') -options=('!makeflags') +makedepends=('libxml2' 'python2' 'perl') source=(ftp://ftp.postgresql.org/pub/source/v${pkgver}/postgresql-${pkgver}.tar.bz2 \ - postgresql postgresql.confd build.patch postgresql.pam) + postgresql postgresql.confd build.patch postgresql.pam postgresql.logrotate) build() { - cd ${srcdir}/${pkgbase}-${pkgver} || return 1 + cd "${srcdir}/${pkgbase}-${pkgver}" # patch to remove regress/test make target (won't build with it present) - patch -Np1 -i ../build.patch || return 1 + patch -Np1 -i ../build.patch # configure ./configure --prefix=/usr --mandir=/usr/share/man --with-libxml \ - --with-docdir=/usr/share/doc --with-openssl --with-python PYTHON=/usr/bin/python2 --with-pam \ - --datadir=/usr/share/postgresql --enable-thread-safety || return 1 + --with-docdir=/usr/share/doc --with-openssl --with-perl \ + --with-python PYTHON=/usr/bin/python2 --with-pam \ + --with-system-tzdata=/usr/share/zoneinfo --enable-nls \ + --datadir=/usr/share/postgresql --enable-thread-safety - sed -i -e '/interfaces/d' src/Makefile || return 1 + sed -i -e '/interfaces/d' src/Makefile # build - make || return 1 + make # build libs for dir in src/interfaces src/bin/pg_config; do - pushd ${dir} || return 1 - make || return 1 + pushd ${dir} + make popd done - cd src/include || return 1 - make || return 1 + cd src/include + make - # build adminpack - cd ../../contrib/adminpack || return 1 - make || return 1 + # build contribs + cd ../../contrib/ + make } package_postgresql-libs() { pkgdesc="Libraries for use with PostgreSQL" - depends=('openssl>=0.9.8b' 'readline>=6.0') + depends=('openssl>=1.0.0') - cd ${srcdir}/${pkgbase}-${pkgver} || return 1 + cd "${srcdir}/${pkgbase}-${pkgver}" + # install license + install -D -m644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + # install libs for dir in src/interfaces src/bin/pg_config; do - pushd ${dir} || return 1 - make DESTDIR=${pkgdir} install || return 1 + pushd ${dir} + make DESTDIR="${pkgdir}" install popd done - cd src/include || return 1 + cd src/include - mkdir -p ${pkgdir}/usr/include/{libpq,postgresql/internal/libpq} || return 1 + mkdir -p "${pkgdir}"/usr/include/{libpq,postgresql/internal/libpq} # these headers are needed by the public headers of the interfaces - install -m644 pg_config.h ${pkgdir}/usr/include/ || return 1 - install -m644 pg_config_os.h ${pkgdir}/usr/include/ || return 1 - install -m644 postgres_ext.h ${pkgdir}/usr/include/ || return 1 - install -m644 libpq/libpq-fs.h ${pkgdir}/usr/include/libpq/ || return 1 - install -m644 pg_config_manual.h ${pkgdir}/usr/include/ || return 1 + install -m644 pg_config.h "${pkgdir}/usr/include/" + install -m644 pg_config_os.h "${pkgdir}/usr/include/" + install -m644 postgres_ext.h "${pkgdir}/usr/include/" + install -m644 libpq/libpq-fs.h "${pkgdir}/usr/include/libpq/" + install -m644 pg_config_manual.h "${pkgdir}/usr/include/" # these headers are needed by the not-so-public headers of the interfaces - install -m644 c.h ${pkgdir}/usr/include/postgresql/internal/ || return 1 - install -m644 port.h ${pkgdir}/usr/include/postgresql/internal/ || return 1 - install -m644 postgres_fe.h ${pkgdir}/usr/include/postgresql/internal/ || return 1 - install -m644 libpq/pqcomm.h ${pkgdir}/usr/include/postgresql/internal/libpq/ || return 1 - - install -Dm644 ../../COPYRIGHT ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE || return 1 + install -m644 c.h "${pkgdir}/usr/include/postgresql/internal/" + install -m644 port.h "${pkgdir}/usr/include/postgresql/internal/" + install -m644 postgres_fe.h "${pkgdir}/usr/include/postgresql/internal/" + install -m644 libpq/pqcomm.h "${pkgdir}/usr/include/postgresql/internal/libpq/" } package_postgresql() { pkgdesc="A sophisticated object-relational DBMS" backup=('etc/conf.d/postgresql' 'etc/pam.d/postgresql') - depends=("postgresql-libs>=${pkgver}" 'libxml2' 'python2') - optdepends=('python2: for PL/Python support') + depends=("postgresql-libs>=${pkgver}" 'libxml2' 'readline>=6.0') + optdepends=('python2: for PL/Python support' + 'perl: for PL/Perl support') provides=('postgresql-client') conflicts=('postgresql-client') - cd ${srcdir}/${pkgbase}-${pkgver} || return 1 + cd "${srcdir}/${pkgbase}-${pkgver}" # install - make DESTDIR=${pkgdir} install || return 1 + make DESTDIR="${pkgdir}" install - # install adminpack - cd contrib/adminpack || return 1 - make DESTDIR=${pkgdir} install || return 1; + # install license + install -D -m644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgbase}/LICENSE" + # install contribs + cd contrib + make DESTDIR="${pkgdir}" install; + # clean up unneeded installed items - rm -rf ${pkgdir}/usr/include/postgresql/internal || return 1 - rm -rf ${pkgdir}/usr/include/libpq || return 1 + rm -rf "${pkgdir}/usr/include/postgresql/internal" + rm -rf "${pkgdir}/usr/include/libpq" # the below line is expected to produce an error; fix this one day #rm -f ${pkgdir}/usr/include/* - find ${pkgdir}/usr/include -maxdepth 1 -type f -execdir rm {} + || return 1 - rm -f ${pkgdir}/usr/bin/pg_config || return 1 + find "${pkgdir}/usr/include" -maxdepth 1 -type f -execdir rm {} + + rm -f "${pkgdir}/usr/bin/pg_config" - # Maintaining the lib below because of qt - #rm -f ${pkgdir}/usr/lib/libpgport.a || return 1 - # install launch script - install -D -m755 ${srcdir}/postgresql ${pkgdir}/etc/rc.d/postgresql || return 1 + install -D -m755 "${srcdir}/postgresql" "${pkgdir}/etc/rc.d/postgresql" - # install license - install -D -m644 ../../COPYRIGHT ${pkgdir}/usr/share/licenses/${pkgbase}/LICENSE || return 1 - # install conf file install -D -m644 ${srcdir}/postgresql.confd \ - ${pkgdir}/etc/conf.d/postgresql || return 1 + "${pkgdir}/etc/conf.d/postgresql" install -D -m644 ${srcdir}/postgresql.pam \ - ${pkgdir}/etc/pam.d/postgresql || return 1 + "${pkgdir}/etc/pam.d/postgresql" - chown root:root ${pkgdir}/usr/share/doc/postgresql/html/* + install -D -m644 ${srcdir}/postgresql.logrotate \ + "${pkgdir}/etc/logrotate.d/postgresql" + + chown root:root "${pkgdir}"/usr/share/doc/postgresql/html/* } md5sums=('4bf2448ad965bca3940df648c02194df' - 'de8da7eb3a2aa02d284bf904b2af4d20' + '4153ac0ef4a77e709385b0a13e1c0fad' 'd63a05943cf0a2726aa2070f3033c569' '4d74f4227dc5e12bf95b3490758d86c9' - '96f82c38f3f540b53f3e5144900acf17') + '96f82c38f3f540b53f3e5144900acf17' + 'd28e443f9f65a5712c52018b84e27137') Modified: postgresql =================================================================== --- postgresql 2010-09-12 18:30:29 UTC (rev 90526) +++ postgresql 2010-09-12 23:32:10 UTC (rev 90527) @@ -20,7 +20,7 @@ stat_done fi if [ ! -d $PGROOT ]; then - mkdir -p $PGROOT/data && chown -R postgres.postgres $PGROOT/data + mkdir -p $PGROOT/data && chown -R postgres.postgres $PGROOT su - postgres -c "/usr/bin/initdb $INITOPTS -D $PGROOT/data" fi if [ ! -e /var/log/postgresql.log ]; then Added: postgresql.logrotate =================================================================== --- postgresql.logrotate (rev 0) +++ postgresql.logrotate 2010-09-12 23:32:10 UTC (rev 90527) @@ -0,0 +1,4 @@ +/var/log/postgresql.log { + copytruncate + missingok +}