X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=postgresql.spec;h=64010e56529d5b6aec5d2a0c68c0852719bed4aa;hb=f4b6f6d;hp=ce13a691b84305b9aea49a7ceacccef84d8b0090;hpb=3081b7c45b251e1f97c363bde9e32ad9aa5c21ab;p=packages%2Fpostgresql.git diff --git a/postgresql.spec b/postgresql.spec index ce13a69..64010e5 100644 --- a/postgresql.spec +++ b/postgresql.spec @@ -1,7 +1,6 @@ # TODO: # - python 3 and python 2 subpackages? -# - consider dns_sd/Bonjour support (--with-bonjour) -# - --enable-dtrace (is it systemtap-compatible?) +# - subpackage *_plperl and *_plpython contribs? # - think about pg_upgrade integration (sysconfig variable to allow upgrade from 8.3+ without dump/restore?) # create postgresqlM.N packages with parts of old pgsql required by pg_upgrade # - test init script (db initialization) @@ -12,14 +11,17 @@ %bcond_without kerberos5 # disable kerberos5 support %bcond_without perl # disable Perl support %bcond_without python # disable Python support +%bcond_with bonjour # Bonjour/DNS_SD support %bcond_without ldap # disable LDAP support %bcond_without selinux # sepgsql contrib module +%bcond_without systemd # systemd (notify) support +%bcond_with systemtap # systemtap/dtrace probes %bcond_with absolute_dbpaths # enable absolute paths to create database # (disabled by default because it is a security risk) # %define beta %{nil} -%define mver 9.3 +%define mver 9.6 Summary: PostgreSQL Data Base Management System Summary(de.UTF-8): PostgreSQL Datenbankverwaltungssystem @@ -32,12 +34,12 @@ Summary(tr.UTF-8): Veri Tabanı Yönetim Sistemi Summary(uk.UTF-8): PostgreSQL - система керування базами даних Summary(zh_CN.UTF-8): PostgreSQL 客户端程序和库文件 Name: postgresql -Version: %{mver}.5 +Version: %{mver}.10 Release: 1 License: BSD Group: Applications/Databases -Source0: ftp://ftp.postgresql.org/pub/source/v%{version}/%{name}-%{version}.tar.bz2 -# Source0-md5: 5059857c7d7e6ad83b6d55893a121b59 +Source0: http://ftp.postgresql.org/pub/source/v%{version}/%{name}-%{version}.tar.bz2 +# Source0-md5: 9a7f465252c0fbe2212566e3c079e062 Source1: %{name}.init Source2: pgsql-Database-HOWTO-html.tar.gz # Source2-md5: 5b656ddf1db41965761f85204a14398e @@ -45,24 +47,24 @@ Source3: %{name}.sysconfig Source4: %{name}@.service Source5: %{name}.service Source6: %{name}.target -Source7: %{name}.upstart -Source8: %{name}-instance.upstart Patch0: %{name}-conf.patch Patch1: %{name}-absolute_dbpaths.patch Patch2: %{name}-ecpg-includedir.patch -Patch3: %{name}-ac_version.patch + Patch4: %{name}-disable_horology_test.patch Patch5: %{name}-heimdal.patch +Patch6: %{name}-link.patch URL: http://www.postgresql.org/ -BuildRequires: autoconf +BuildRequires: autoconf >= 2.69 BuildRequires: automake +%{?with_bonjour:BuildRequires: avahi-compat-libdns_sd-devel} # not needed for releases... but fixes something in snapshot BuildRequires: bison >= 1.875 BuildRequires: docbook-dtd42-sgml BuildRequires: docbook-dtd42-xml BuildRequires: docbook-style-xsl BuildRequires: flex >= 2.5.31 -BuildRequires: gettext-devel +BuildRequires: gettext-tools BuildRequires: gnome-doc-tools %{?with_kerberos5:BuildRequires: heimdal-devel} %{?with_selinux:BuildRequires: libselinux-devel >= 2.1.10} @@ -83,6 +85,8 @@ BuildRequires: python-modules >= 1:2.3 %endif BuildRequires: readline-devel >= 4.2 BuildRequires: rpmbuild(macros) >= 1.671 +%{?with_systemd:BuildRequires: systemd-devel >= 1:209} +%{?with_systemtap:BuildRequires: systemtap-sdt-devel} %{?with_tcl:BuildRequires: tcl-devel >= 8.4.3} %{?with_tests:BuildRequires: tzdata} BuildRequires: zlib-devel @@ -110,9 +114,9 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _ulibdir /usr/lib # omitted contribs: -# dummy_seclabel, pg_test_fsync, pg_test_timing, spi, test_parser, worker_spi - examples/tests +# spi, test_decoding, worker_spi - examples/tests # tsearch2 - old module for compatibility only -%define contrib_modules adminpack auth_delay auto_explain btree_gin btree_gist chkpass citext cube dblink dict_int dict_xsyn earthdistance file_fdw fuzzystrmatch hstore intagg intarray isn lo ltree oid2name pageinspect passwordcheck pg_archivecleanup pg_buffercache pg_freespacemap pg_standby pg_stat_statements pg_trgm pg_upgrade pg_upgrade_support pg_xlogdump pgbench pgcrypto pgrowlocks pgstattuple postgres_fdw seg %{?with_selinux:sepgsql} sslinfo tablefunc tcn unaccent uuid-ossp vacuumlo xml2 +%define contrib_modules adminpack auth_delay auto_explain bloom btree_gin btree_gist chkpass citext cube dblink dict_int dict_xsyn earthdistance file_fdw fuzzystrmatch hstore %{?with_perl:hstore_plperl} %{?with_python:hstore_plpython} intagg intarray isn lo ltree %{?with_python:ltree_plpython} oid2name pageinspect passwordcheck pg_buffercache pg_freespacemap pg_prewarm pg_standby pg_stat_statements pg_trgm pg_visibility pgcrypto pgrowlocks pgstattuple postgres_fdw seg %{?with_selinux:sepgsql} sslinfo tablefunc tcn tsm_system_rows tsm_system_time unaccent uuid-ossp vacuumlo xml2 %description PostgreSQL Data Base Management System (formerly known as Postgres, @@ -336,20 +340,6 @@ California, Berkeley. PostgreSQL працює на Solaris, SunOS, HPUX, AIX, Linux, Irix, FreeBSD та більшості інших різновидів Unix. -%package upstart -Summary: Upstart job description for PostgreSQL server -Summary(pl.UTF-8): Opis zadania Upstart dla serwera PostgreSQL -Group: Daemons -Requires: %{name} = %{version}-%{release} -Requires: upstart >= 0.6 -Conflicts: syslog-ng < 3.2.4-1 - -%description upstart -Upstart job description for PostgreSQL. - -%description upstart -l pl.UTF-8 -Opis zadania Upstart dla PostgreSQL. - %package devel Summary: PostgreSQL development header files and libraries Summary(de.UTF-8): PostgreSQL-Entwicklungs-Header-Dateien und Libraries @@ -780,9 +770,10 @@ Różne moduły dołączone do PostgreSQL-a. %patch0 -p1 %{?with_absolute_dbpaths:%patch1 -p1} %patch2 -p1 -%patch3 -p1 + %patch4 -p1 %patch5 -p1 +%patch6 -p1 # force rebuild of bison/flex files find src -name \*.l -o -name \*.y | xargs touch @@ -793,26 +784,29 @@ find src -name \*.l -o -name \*.y | xargs touch %build %{__aclocal} -I config %{__autoconf} +%{__autoheader} %configure \ CFLAGS="%{rpmcflags} -DNEED_REENTRANT_FUNCS `uuid-config --cflags`" \ --disable-rpath \ --enable-depend \ + %{?with_systemtap:--enable-dtrace} \ --enable-integer-datetimes \ - --with-system-tzdata=%{_datadir}/zoneinfo \ --enable-nls \ --enable-thread-safety \ + %{?with_bonjour:--with-bonjour} \ %{?with_kerberos5:--with-gssapi} \ - %{?with_kerberos5:--with-krb5} \ %{?with_ldap:--with-ldap} \ - --with-openssl \ - --with-pam \ --with-libxml \ --with-libxslt \ + --with-openssl \ + --with-pam \ %{?with_perl:--with-perl} \ %{?with_python:--with-python} \ %{?with_selinux:--with-selinux} \ + --with-system-tzdata=%{_datadir}/zoneinfo \ + %{?with_systemd:--with-systemd} \ %{?with_tcl:--with-tcl --with-tclconfig=%{_ulibdir}} \ - --with-ossp-uuid \ + --with-uuid=e2fs %{__make} @@ -832,7 +826,7 @@ done %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig,init/%{name}}} \ +install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig}} \ $RPM_BUILD_ROOT{/var/{lib/pgsql,log},%{_pgsqldir}} \ $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} \ $RPM_BUILD_ROOT%{_mandir} \ @@ -865,9 +859,6 @@ install %{SOURCE4} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}@.service install %{SOURCE5} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}.service install %{SOURCE6} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}.target -install %{SOURCE7} $RPM_BUILD_ROOT/etc/init/%{name}.conf -install %{SOURCE8} $RPM_BUILD_ROOT/etc/init/%{name}/instance.conf - install -d howto tar zxf %{SOURCE2} -C howto @@ -877,13 +868,13 @@ tar zxf %{SOURCE2} -C howto %endif # find locales -for f in libpq5 pg_basebackup pg_controldata pg_dump pg_resetxlog pgscripts postgres psql initdb pg_ctl pg_config plpgsql ecpg ecpglib6 %{?with_perl:plperl} plpgsql %{?with_python: plpython}; do +for f in libpq5 pg_basebackup pg_controldata pg_dump pg_resetxlog pg_rewind pgscripts postgres psql initdb pg_ctl pg_config plpgsql ecpg ecpglib6 %{?with_perl:plperl} plpgsql %{?with_python: plpython}; do %find_lang $f-%{mver} done # merge locales cat pgscripts-%{mver}.lang pg_resetxlog-%{mver}.lang \ postgres-%{mver}.lang pg_controldata-%{mver}.lang \ - plpgsql-%{mver}.lang \ + plpgsql-%{mver}.lang pg_rewind-%{mver}.lang \ pg_basebackup-%{mver}.lang \ > main-%{mver}.lang cat pg_dump-%{mver}.lang psql-%{mver}.lang initdb-%{mver}.lang \ @@ -901,9 +892,6 @@ mv $RPM_BUILD_ROOT{%{_datadir}/postgresql/contrib,%{_pgsqldir}}/sepgsql.sql install src/pl/plperl/ppport.h $RPM_BUILD_ROOT%{_includedir}/postgresql/server/ -# unpackaged contribs -%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/{pg_test_fsync,pg_test_timing}.1 - # package it...? nah, why bother. %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/doc/postgresql/html @@ -921,7 +909,7 @@ fi foundold=0 for pgdir in $PG_DB_CLUSTERS; do if [ -f $pgdir/PG_VERSION ]; then - if [ $(cat $pgdir/PG_VERSION) != '9.3' ]; then + if [ $(cat $pgdir/PG_VERSION) != '%{mver}' ]; then echo "Found database(s) in older, incompatible format in cluster $pgdir." foundold=1 fi @@ -996,12 +984,6 @@ for pgdir in $PG_DB_CLUSTERS; do done %systemd_trigger postgresql.service -%post upstart -%upstart_post postgresql - -%postun upstart -%upstart_postun postgresql - %post libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig @@ -1024,7 +1006,13 @@ done %attr(755,root,root) %{_bindir}/pg_ctl %attr(755,root,root) %{_bindir}/pg_resetxlog %attr(755,root,root) %{_bindir}/pg_receivexlog +%attr(755,root,root) %{_bindir}/pg_recvlogical +%attr(755,root,root) %{_bindir}/pg_rewind +%attr(755,root,root) %{_bindir}/pg_test_fsync +%attr(755,root,root) %{_bindir}/pg_test_timing %attr(755,root,root) %{_bindir}/pg_upgrade +%attr(755,root,root) %{_bindir}/pg_xlogdump +%attr(755,root,root) %{_bindir}/pgbench %attr(755,root,root) %{_bindir}/postgres %attr(755,root,root) %{_bindir}/postmaster @@ -1037,7 +1025,6 @@ done %attr(755,root,root) %{_pgmoduledir}/latin2_and_win1250.so %attr(755,root,root) %{_pgmoduledir}/latin_and_mic.so %attr(755,root,root) %{_pgmoduledir}/libpqwalreceiver.so -%attr(755,root,root) %{_pgmoduledir}/pg_upgrade_support.so %attr(755,root,root) %{_pgmoduledir}/plpgsql.so %attr(755,root,root) %{_pgmoduledir}/utf8_and_*.so @@ -1067,17 +1054,16 @@ done %{_mandir}/man1/pg_ctl.1* %{_mandir}/man1/pg_resetxlog.1* %{_mandir}/man1/pg_receivexlog.1* +%{_mandir}/man1/pg_recvlogical.1* +%{_mandir}/man1/pg_rewind.1* +%{_mandir}/man1/pg_xlogdump.1* +%{_mandir}/man1/pg_test_fsync.1* +%{_mandir}/man1/pg_test_timing.1* +%{_mandir}/man1/pg_upgrade.1* +%{_mandir}/man1/pgbench.1* %{_mandir}/man1/postgres.1* %{_mandir}/man1/postmaster.1* -%if "%{pld_release}" != "ti" -%files upstart -%defattr(644,root,root,755) -%config(noreplace) %verify(not md5 mtime size) /etc/init/postgresql.conf -%dir /etc/init/postgresql -%config(noreplace) %verify(not md5 mtime size) /etc/init/postgresql/instance.conf -%endif - %files doc %defattr(644,root,root,755) %doc doc/src/sgml/html howto @@ -1147,6 +1133,7 @@ done %{_libdir}/libecpg_compat.a %{_libdir}/libpq.a %{_libdir}/libpgcommon.a +%{_libdir}/libpgfeutils.a %{_libdir}/libpgtypes.a %{_libdir}/libpgport.a @@ -1159,6 +1146,7 @@ done %attr(755,root,root) %{_bindir}/dropdb %attr(755,root,root) %{_bindir}/droplang %attr(755,root,root) %{_bindir}/dropuser +%attr(755,root,root) %{_bindir}/pg_archivecleanup %attr(755,root,root) %{_bindir}/pg_dump %attr(755,root,root) %{_bindir}/pg_dumpall %attr(755,root,root) %{_bindir}/pg_isready @@ -1174,11 +1162,11 @@ done %{_mandir}/man1/dropdb.1* %{_mandir}/man1/droplang.1* %{_mandir}/man1/dropuser.1* +%{_mandir}/man1/pg_archivecleanup.1* %{_mandir}/man1/pg_dump.1* %{_mandir}/man1/pg_dumpall.1* %{_mandir}/man1/pg_isready.1* %{_mandir}/man1/pg_restore.1* -%{_mandir}/man1/pg_upgrade.1.gz %{_mandir}/man1/psql.1* %{_mandir}/man1/reindexdb.1* %{_mandir}/man1/vacuumdb.1* @@ -1260,15 +1248,13 @@ done %defattr(644,root,root,755) %doc contrib/README %attr(755,root,root) %{_bindir}/oid2name -%attr(755,root,root) %{_bindir}/pg_archivecleanup %attr(755,root,root) %{_bindir}/pg_standby -%attr(755,root,root) %{_bindir}/pg_xlogdump -%attr(755,root,root) %{_bindir}/pgbench %attr(755,root,root) %{_bindir}/vacuumlo %attr(755,root,root) %{_pgmoduledir}/_int.so %attr(755,root,root) %{_pgmoduledir}/adminpack.so %attr(755,root,root) %{_pgmoduledir}/auth_delay.so %attr(755,root,root) %{_pgmoduledir}/auto_explain.so +%attr(755,root,root) %{_pgmoduledir}/bloom.so %attr(755,root,root) %{_pgmoduledir}/btree_gin.so %attr(755,root,root) %{_pgmoduledir}/btree_gist.so %attr(755,root,root) %{_pgmoduledir}/chkpass.so @@ -1284,17 +1270,23 @@ done %attr(755,root,root) %{_pgmoduledir}/passwordcheck.so %attr(755,root,root) %{_pgmoduledir}/pg_buffercache.so %attr(755,root,root) %{_pgmoduledir}/pg_freespacemap.so +%attr(755,root,root) %{_pgmoduledir}/pg_prewarm.so %attr(755,root,root) %{_pgmoduledir}/pg_stat_statements.so +%attr(755,root,root) %{_pgmoduledir}/pg_visibility.so %attr(755,root,root) %{_pgmoduledir}/pgrowlocks.so %attr(755,root,root) %{_pgmoduledir}/pgstattuple.so %attr(755,root,root) %{_pgmoduledir}/postgres_fdw.so %attr(755,root,root) %{_pgmoduledir}/seg.so %attr(755,root,root) %{_pgmoduledir}/sslinfo.so %attr(755,root,root) %{_pgmoduledir}/tcn.so +%attr(755,root,root) %{_pgmoduledir}/tsm_system_rows.so +%attr(755,root,root) %{_pgmoduledir}/tsm_system_time.so %attr(755,root,root) %{_pgmoduledir}/unaccent.so %attr(755,root,root) %{_pgmoduledir}/uuid-ossp.so %{_pgsqldir}/adminpack--*.sql %{_pgsqldir}/adminpack.control +%{_pgsqldir}/bloom--*.sql +%{_pgsqldir}/bloom.control %{_pgsqldir}/btree_gin--*.sql %{_pgsqldir}/btree_gin.control %{_pgsqldir}/btree_gist--*.sql @@ -1331,8 +1323,12 @@ done %{_pgsqldir}/pg_buffercache.control %{_pgsqldir}/pg_freespacemap--*.sql %{_pgsqldir}/pg_freespacemap.control +%{_pgsqldir}/pg_prewarm--*.sql +%{_pgsqldir}/pg_prewarm.control %{_pgsqldir}/pg_stat_statements--*.sql %{_pgsqldir}/pg_stat_statements.control +%{_pgsqldir}/pg_visibility--*.sql +%{_pgsqldir}/pg_visibility.control %{_pgsqldir}/pgrowlocks--*.sql %{_pgsqldir}/pgrowlocks.control %{_pgsqldir}/pgstattuple--*.sql @@ -1345,13 +1341,37 @@ done %{_pgsqldir}/sslinfo.control %{_pgsqldir}/tcn--*.sql %{_pgsqldir}/tcn.control +%{_pgsqldir}/tsm_system_rows--*.sql +%{_pgsqldir}/tsm_system_rows.control +%{_pgsqldir}/tsm_system_time--*.sql +%{_pgsqldir}/tsm_system_time.control %{_pgsqldir}/unaccent--*.sql %{_pgsqldir}/unaccent.control %{_pgsqldir}/uuid-ossp--*.sql %{_pgsqldir}/uuid-ossp.control +%if %{with perl} +%attr(755,root,root) %{_pgmoduledir}/hstore_plperl.so +%{_pgsqldir}/hstore_plperl--*.sql +%{_pgsqldir}/hstore_plperl.control +%{_pgsqldir}/hstore_plperlu--*.sql +%{_pgsqldir}/hstore_plperlu.control +%endif +%if %{with python} +%attr(755,root,root) %{_pgmoduledir}/hstore_plpython2.so +%attr(755,root,root) %{_pgmoduledir}/ltree_plpython2.so +%{_pgsqldir}/hstore_plpythonu--*.sql +%{_pgsqldir}/hstore_plpythonu.control +%{_pgsqldir}/hstore_plpython2u--*.sql +%{_pgsqldir}/hstore_plpython2u.control +%{_pgsqldir}/hstore_plpython3u--*.sql +%{_pgsqldir}/hstore_plpython3u.control +%{_pgsqldir}/ltree_plpythonu--*.sql +%{_pgsqldir}/ltree_plpythonu.control +%{_pgsqldir}/ltree_plpython2u--*.sql +%{_pgsqldir}/ltree_plpython2u.control +%{_pgsqldir}/ltree_plpython3u--*.sql +%{_pgsqldir}/ltree_plpython3u.control +%endif %{_mandir}/man1/oid2name.1* -%{_mandir}/man1/pg_archivecleanup.1* %{_mandir}/man1/pg_standby.1* -%{_mandir}/man1/pg_xlogdump.1* -%{_mandir}/man1/pgbench.1* %{_mandir}/man1/vacuumlo.1*