+# TODO:
+# - python 3 and python 2 subpackages?
+# - consider dns_sd/Bonjour support (--with-bonjour)
+# - think about pg_upgrade integration (sysconfig variable to allow upgrade from 8.3+ without dump/restore?)
+# - test init script (db initialization)
#
# Conditional build:
%bcond_without tests # disable testing
%bcond_without perl # disable Perl support
%bcond_without python # disable Python support
%bcond_without ldap # disable LDAP support
+%bcond_without selinux # sepgsql contrib module
%bcond_with absolute_dbpaths # enable absolute paths to create database
# (disabled by default because it is a security risk)
#
%define beta %{nil}
-%define mver 8.4
+%define mver 9.2
+
+%define prevmver 9.1
+%define prevver 9.1.6
Summary: PostgreSQL Data Base Management System
Summary(de.UTF-8): PostgreSQL Datenbankverwaltungssystem
Summary(uk.UTF-8): PostgreSQL - система керування базами даних
Summary(zh_CN.UTF-8): PostgreSQL 客户端程序和库文件
Name: postgresql
-Version: %{mver}.4
-Release: 1
+Version: %{mver}.1
+Release: 0.1
License: BSD
Group: Applications/Databases
Source0: ftp://ftp.postgresql.org/pub/source/v%{version}/%{name}-%{version}.tar.bz2
-# Source0-md5: 4bf2448ad965bca3940df648c02194df
+# Source0-md5: c0b4799ea9850eae3ead14f0a60e9418
Source1: %{name}.init
Source2: pgsql-Database-HOWTO-html.tar.gz
# Source2-md5: 5b656ddf1db41965761f85204a14398e
Source3: %{name}.sysconfig
-Source4: edb-debugger-20100404.tgz
-# Source4-md5: a10daee9a2017db40c7550c40cb47e8d
+# http://git.postgresql.org/gitweb/?p=pldebugger.git;a=snapshot;h=eb754b6ba9a1c18e7bc4ddf521408be06768c697;sf=tgz
+Source4: pldebugger-eb754b6.tar.gz
+# Source4-md5: e596193b87695d29fa9161e7182dcd32
Source5: %{name}.upstart
Source6: %{name}-instance.upstart
+Source7: ftp://ftp.postgresql.org/pub/source/v%{prevver}/%{name}-%{prevver}.tar.bz2
+# Source7-md5: 000755f66c0de58bbd4cd2b89b45b8e2
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}-pg_ctl-fix.patch
+Patch5: %{name}-heimdal.patch
+Patch6: %{name}_%{prevmver}-ac_version.patch
URL: http://www.postgresql.org/
BuildRequires: autoconf
BuildRequires: automake
# not needed for releases... but fixes something in snapshot
BuildRequires: bison >= 1.875
-BuildRequires: flex
+BuildRequires: docbook-dtd42-sgml
+BuildRequires: docbook-dtd42-xml
+BuildRequires: docbook-style-xsl
+BuildRequires: flex >= 2.5.31
BuildRequires: gettext-devel
%{?with_kerberos5:BuildRequires: heimdal-devel}
+%{?with_selinux:BuildRequires: libselinux-devel >= 2.0.93}
BuildRequires: libtool
BuildRequires: libxml2-devel >= 2.6.23
BuildRequires: libxslt-devel
+BuildRequires: libxslt-progs
BuildRequires: ncurses-devel >= 5.0
%{?with_ldap:BuildRequires: openldap-devel}
BuildRequires: openssl-devel >= 0.9.7d
BuildRequires: readline-devel >= 4.2
BuildRequires: rpmbuild(macros) >= 1.268
%{?with_tcl:BuildRequires: tcl-devel >= 8.4.3}
+%{?with_tests:BuildRequires: tzdata}
BuildRequires: zlib-devel
Requires(post,preun): /sbin/chkconfig
Requires(pre): /bin/id
Requires: %{name}-libs = %{version}-%{release}
Requires: rc-scripts >= 0.4.3.0
Requires: tzdata
+Obsoletes: postgresql-module-plpgsql
Obsoletes: postgresql-module-tsearch2
Obsoletes: postgresql-server
Obsoletes: postgresql-test
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _pgmoduledir %{_libdir}/postgresql
-%define _pgsqldir %{_datadir}/postgresql/contrib
+%define _pgsqldir %{_datadir}/postgresql/extension
%define _ulibdir /usr/lib
-%define contrib_modules auto_explain adminpack btree_gin btree_gist chkpass citext cube dblink dict_int dict_xsyn earthdistance fuzzystrmatch hstore intagg intarray isn lo ltree oid2name pageinspect pgbench pg_buffercache pgcrypto pg_freespacemap pgrowlocks pg_standby pg_stat_statements pgstattuple pg_trgm pldebugger seg sslinfo tablefunc uuid-ossp vacuumlo xml2
-
-## to be moved to rpm-build-macros
-## TODO: handle RPM_SKIP_AUTO_RESTART
-
-# migrate from init script to upstart job
-%define upstart_post() \
- if [ -f /var/lock/subsys/"%1" ] ; then \
- /sbin/service --no-upstart "%1" stop \
- /sbin/service "%1" start \
- else \
- /sbin/service "%1" try-restart \
- fi
-
-# restart the job after upgrade or migrate to init script on removal
-%define upstart_postun() \
- if [ -x /sbin/initctl ] && /sbin/initctl status "%1" 2>/dev/null | grep -q 'running' ; then \
- /sbin/initctl stop "%1" 2>/dev/null \
- [ -f "/etc/rc.d/init.d/%1" -o -f "/etc/init/%1.conf" ] && /sbin/service "%1" start \
- fi
+# omitted contribs:
+# dummy_seclabel, pg_test_fsync, spi and test_parser - 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 pgbench pgcrypto pgrowlocks pgstattuple pldebugger seg %{?with_selinux:sepgsql} sslinfo tablefunc unaccent uuid-ossp vacuumlo xml2
%description
PostgreSQL Data Base Management System (formerly known as Postgres,
Group: Daemons
Requires: %{name} = %{version}-%{release}
Requires: upstart >= 0.6
+Conflicts: syslog-ng < 3.2.4-1
%description upstart
Upstart job description for PostgreSQL.
Це окремий пакет зі статичними бібліотеками, які більш не входять в
%{name}-devel.
-%package module-plpgsql
-Summary: PL/pgSQL - PostgreSQL procedural language
-Summary(pl.UTF-8): PL/pgSQL - język proceduralny bazy danych PostgreSQL
-Group: Applications/Databases
-Requires: %{name} = %{version}-%{release}
-
-%description module-plpgsql
-From PostgreSQL documentation:
-
-Postgres supports the definition of procedural languages. In the case
-of a function or trigger procedure defined in a procedural language,
-the database has no built-in knowledge about how to interpret the
-function's source text. Instead, the task is passed to a handler that
-knows the details of the language. The handler itself is a special
-programming language function compiled into a shared object and loaded
-on demand.
-
-To enable PL/pgSQL procedural language for your database you have to
-run createlang command.
-
-%description module-plpgsql -l pl.UTF-8
-Z dokumentacji PostgreSQL:
-
-Postgres ma wsparcie dla języków proceduralnych. W przypadku, kiedy
-programista zdefiniuje procedurę wyzwalacza lub funkcję w języku
-proceduralnym, baza danych nie ma pojęcia jak interpretować tego typu
-funkcję. Funkcja lub procedura ta jest przekazywana do interpretera,
-który wie jak ją wykonać. Interpreter jest odpowiednią, specjalną
-funkcją, która jest skompilowana w obiekt dzielony i ładowany w razie
-potrzeby.
-
-Za pomocą polecenia createlang można dodać obsługę języka
-proceduralnego PL/pgSQL dla swojej bazy danych.
-
%package module-plperl
Summary: PL/perl - PostgreSQL procedural language
Summary(pl.UTF-8): PL/perl - język proceduralny bazy danych PostgreSQL
kilka funkcji pomocniczych i wyzwalacz rozwiązujący problem
osieroconych obiektów.
+%package module-pg_trgm
+Summary: Trigram matching for PostgreSQL
+Summary(pl.UTF-8): Dopasowanie trigramowe dla PostgreSQL-a
+Group: Applications/Databases
+Requires: %{name} = %{version}-%{release}
+
+%description module-pg_trgm
+This module provides functions and index classes for determining the
+similarity of text based on trigram matching.
+
+%description module-pg_trgm -l pl.UTF-8
+Ten moduł dostarcza funkcje i klasy do rozpoznawania podobnych tekstów
+w oparciu o dopasowywanie trigramowe (trigram matching).
+
%package module-pgcrypto
Summary: Cryptographic functions for PostgreSQL
Summary(pl.UTF-8): Funkcje kryptograficzne dla PostgreSQL-a
%description module-pgcrypto -l pl.UTF-8
Funkcje kryptograficzne dla PostgreSQL.
+%package module-sepgsql
+Summary: PostgreSQL external security provider using SELinux
+Summary(pl.UTF-8): Zewnętrzny moduł bezpieczeństwa PostgreSQL-a wykorzystujący SELinuksa
+Group: Applications/Databases
+Requires: %{name} = %{version}-%{release}
+Requires: libselinux >= 2.0.93
+
+%description module-sepgsql
+PostgreSQL external security provider using SELinux.
+
+%description module-sepgsql -l pl.UTF-8
+Zewnętrzny moduł bezpieczeństwa PostgreSQL-a wykorzystujący SELinuksa.
+
%package module-tablefunc
Summary: crosstab functions for PostgreSQL
Summary(pl.UTF-8): Funkcje crosstab dla PostgreSQL-a
%description module-tablefunc -l pl.UTF-8
Funkcje crosstab dla PostgreSQL-a.
-%package module-pg_trgm
-Summary: Trigram matching for PostgreSQL
-Summary(pl.UTF-8): Dopasowanie trigramowe dla PostgreSQL-a
-Group: Applications/Databases
-Requires: %{name} = %{version}-%{release}
-
-%description module-pg_trgm
-This module provides functions and index classes for determining the
-similarity of text based on trigram matching.
-
-%description module-pg_trgm -l pl.UTF-8
-Ten moduł dostarcza funkcje i klasy do rozpoznawania podobnych tekstów
-w oparciu o dopasowywanie trigramowe (trigram matching).
-
%package module-xml2
Summary: XML-handling functions for PostgreSQL
Summary(pl.UTF-8): Funkcje do obsługi XML-a dla PostgreSQL-a
%description contrib -l pl.UTF-8
Różne moduły dołączone do PostgreSQL-a.
+%package upgrade
+Summary: Support for upgrading from the previous major release
+Summary(pl.UTF-8): Wsparcie
+Group: Applications/Databases
+Requires: %{name} = %{version}-%{release}
+
+%description upgrade
+The postgresql-upgrade package contains the pg_upgrade utility and supporting
+files needed for upgrading a PostgreSQL database from the previous major
+version of PostgreSQL.
+
+
+%description upgrade -l pl.UTF-8
+The postgresql-upgrade package contains the pg_upgrade utility and supporting
+files needed for upgrading a PostgreSQL database from the previous major
+version of PostgreSQL.
+
%prep
-%setup -q
+%setup -q -a 7
%patch0 -p1
%{?with_absolute_dbpaths:%patch1 -p1}
%patch2 -p1
%patch4 -p1
%patch5 -p1
-tar xzf %{SOURCE4} -C contrib
+cd postgresql-%{prevver}
-tar xzf doc/man*.tar.gz
+%patch0 -p1
+%{?with_absolute_dbpaths:%patch1 -p1}
+%patch2 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+cd ..
-mkdir doc/unpacked
-tar zxf doc/postgres.tar.gz -C doc/unpacked
+tar xzf %{SOURCE4} -C contrib
+mv contrib/pldebugger-* contrib/pldebugger
# force rebuild of bison/flex files
find src -name \*.l -o -name \*.y | xargs touch
--with-libxslt \
%{?with_perl:--with-perl} \
%{?with_python:--with-python} \
+ %{?with_selinux:--with-selinux} \
%{?with_tcl:--with-tcl --with-tclconfig=%{_ulibdir}} \
--with-ossp-uuid \
- --without-docdir
%{__make}
for mod in %{contrib_modules}; do \
- flags="%{rpmcflags} -DNEED_REENTRANT_FUNCS"
+ flags="%{rpmcflags} %{rpmcppflags} -DNEED_REENTRANT_FUNCS"
if [ $mod = "xml2" ]; then flags="$flags -I/usr/include/libxml2"; fi
if [ $mod = "uuid-ossp" ]; then flags="$flags `uuid-config --cflags`"; fi
%{__make} -C contrib/$mod CFLAGS="$flags"
NO_PGXS=1
%ifnarch sparc sparcv9 sparc64 alpha
-%{?with_tests:%{__make} check}
+%{?with_tests:%{__make} -j1 check}
%endif
+cd postgresql-%{prevver}
+%{__aclocal} -I config
+%{__autoconf}
+
+./configure \
+ CFLAGS="%{rpmcflags} -DNEED_REENTRANT_FUNCS `uuid-config --cflags`" \
+ --prefix=%{_libdir}/pgsql/postgresql-%{prevmver} \
+ --disable-rpath \
+ --enable-depend \
+ --enable-integer-datetimes \
+ --with-system-tzdata=%{_datadir}/zoneinfo \
+ --enable-nls \
+ --enable-thread-safety \
+ %{?with_kerberos5:--with-gssapi} \
+ %{?with_kerberos5:--with-krb5} \
+ %{?with_ldap:--with-ldap} \
+ --with-openssl \
+ --with-pam \
+ --with-libxml \
+ --with-libxslt \
+ %{?with_perl:--with-perl} \
+ %{?with_python:--with-python} \
+ %{?with_selinux:--with-selinux} \
+ %{?with_tcl:--with-tcl --with-tclconfig=%{_ulibdir}} \
+ --with-ossp-uuid \
+
+%{__make}
+cd ..
+
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig,init/%{name}}} \
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
+%{__make} -C doc/src/sgml install-man \
+ DESTDIR=$RPM_BUILD_ROOT
%if %{with perl}
%{__make} install -C src/pl/plperl \
%endif
# find locales
-for f in libpq5 pg_controldata pg_dump pg_resetxlog pgscripts postgres psql initdb pg_ctl pg_config plpgsql ecpg ecpglib6 plperl plpgsql plpython; do
+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
%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 \
+ pg_basebackup-%{mver}.lang \
> main-%{mver}.lang
cat pg_dump-%{mver}.lang psql-%{mver}.lang initdb-%{mver}.lang \
pg_ctl-%{mver}.lang > clients-%{mver}.lang
cat ecpg-%{mver}.lang ecpglib6-%{mver}.lang > ecpg.lang
-# Remove Contrib documentation. We use macro %doc
-rm -rf $RPM_BUILD_ROOT/contrib
-
%if %{with tcl}
%find_lang pltcl-%{mver}
mv $RPM_BUILD_ROOT{%{_datadir}/postgresql,%{_pgsqldir}}/unknown.pltcl
%endif
+%if %{with selinux}
+mv $RPM_BUILD_ROOT{%{_datadir}/postgresql/contrib,%{_pgsqldir}}/sepgsql.sql
+%endif
+
install src/pl/plperl/ppport.h $RPM_BUILD_ROOT%{_includedir}/postgresql/server/
# package it...? nah, why bother.
-rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/postgresql/html
+%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/doc/postgresql/html
+
+cd postgresql-%{prevver}
+%{__make} install \
+ DESTDIR=$RPM_BUILD_ROOT/postgresql-%{prevmver}
+cd $RPM_BUILD_ROOT/postgresql-%{prevmver}%{_libdir}/pgsql/postgresql-%{prevmver}
+ rm bin/clusterdb
+ rm bin/createdb
+ rm bin/createlang
+ rm bin/createuser
+ rm bin/dropdb
+ rm bin/droplang
+ rm bin/dropuser
+ rm bin/ecpg
+ rm bin/initdb
+ rm bin/pg_basebackup
+ rm bin/pg_config
+ rm bin/pg_controldata
+ rm bin/pg_dump
+ rm bin/pg_dumpall
+ rm bin/pg_restore
+ rm bin/psql
+ rm bin/reindexdb
+ rm bin/vacuumdb
+ rm -rf include
+ rm lib/dict_snowball.so
+ rm lib/libecpg*
+ rm lib/libpg*
+ rm lib/libpq*
+ rm -rf lib/pgxs
+ rm lib/plpgsql.so
+ rm -rf share/doc
+ rm -rf share/man
+ rm -rf share/tsearch_data
+ rm share/*.bki
+ rm share/*description
+ rm share/*.sample
+ rm share/*.sql
+ rm share/*.txt
+ mkdir -p $RPM_BUILD_ROOT%{_libdir}/postgresql-%{prevmver}
+ cp -ra $RPM_BUILD_ROOT/postgresql-%{prevmver}%{_libdir}/pgsql/postgresql-%{prevmver}/* $RPM_BUILD_ROOT%{_libdir}/postgresql-%{prevmver}
+cd $RPM_BUILD_ROOT
%clean
-rm -rf $RPM_BUILD_ROOT
+#rm -rf $RPM_BUILD_ROOT
-%pretrans
+%pre
PG_DB_CLUSTERS=""
if [ -f /etc/sysconfig/postgresql ]; then
. /etc/sysconfig/postgresql
foundold=0
for pgdir in $PG_DB_CLUSTERS; do
if [ -f $pgdir/PG_VERSION ]; then
- if [ $(cat $pgdir/PG_VERSION) != '8.4' ]; then
+ if [ $(cat $pgdir/PG_VERSION) != '9.1' ]; then
echo "Found database(s) in older, incompatible format in cluster $pgdir."
foundold=1
fi
echo "restore all data (using pg_restore or psql)."
echo "Remember to stop the daemon before upgrading!"
echo
+ echo "Alternatively you can use pg_upgrade for 8.3+ online upgrade with"
+ echo "some restrictions: http://www.postgresql.org/docs/9.0/static/pgupgrade.html"
+ echo
echo "Warning for upgrade from version *before* 7.2."
echo "Please note, that postgresql module path changed from"
- echo "/usr/lib/pgsql/module to /usr/lib/postgresql. Change the path"
+ echo "%{_libdir}/pgsql/module to %{_libdir}/postgresql. Change the path"
echo "in dump file before restore."
echo
echo "Warning for upgrade from version *before* 7.3."
echo "http://www.ca.postgresql.org/docs/momjian/upgrade_tips_7.3"
exit 1
fi
-
-%pre
%groupadd -g 88 -r postgres
%useradd -M -o -r -u 88 -d /home/services/postgres -s /bin/sh -g postgres -c "PostgreSQL Server" postgres
%files -f main-%{mver}.lang
%defattr(644,root,root,755)
-%doc COPYRIGHT README HISTORY doc/{README*,bug.template}
+%doc COPYRIGHT README HISTORY doc/{bug.template,KNOWN_BUGS,MISSING_FEATURES,TODO}
%attr(754,root,root) /etc/rc.d/init.d/postgresql
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/postgresql
%attr(755,root,root) %{_bindir}/initdb
+%attr(755,root,root) %{_bindir}/pg_basebackup
%attr(755,root,root) %{_bindir}/pg_controldata
%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}/postgres
%attr(755,root,root) %{_bindir}/postmaster
-%attr(755,root,root) %{_pgmoduledir}/ascii*
-%attr(755,root,root) %{_pgmoduledir}/cyrillic*
-%attr(755,root,root) %{_pgmoduledir}/euc*
-%attr(755,root,root) %{_pgmoduledir}/latin*
-%attr(755,root,root) %{_pgmoduledir}/utf*
-%attr(755,root,root) %{_pgmoduledir}/dict_*
+%attr(755,root,root) %{_pgmoduledir}/ascii_and_mic.so
+%attr(755,root,root) %{_pgmoduledir}/cyrillic_and_mic.so
+%attr(755,root,root) %{_pgmoduledir}/dict_int.so
+%attr(755,root,root) %{_pgmoduledir}/dict_snowball.so
+%attr(755,root,root) %{_pgmoduledir}/dict_xsyn.so
+%attr(755,root,root) %{_pgmoduledir}/euc*.so
+%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}/plpgsql.so
+%attr(755,root,root) %{_pgmoduledir}/utf8_and_*.so
%dir %{_pgsqldir}
+%{_pgsqldir}/plpgsql--*.sql
+%{_pgsqldir}/plpgsql.control
+
%dir %{_datadir}/postgresql
%{_datadir}/postgresql/*.bki
%{_datadir}/postgresql/*.sample
%{_datadir}/postgresql/timezonesets
%{_datadir}/postgresql/tsearch_data
+%dir %{_datadir}/postgresql/contrib
+
%attr(700,postgres,postgres) /home/services/postgres
%attr(700,postgres,postgres) %dir /var/lib/pgsql
%attr(640,postgres,postgres) %config(noreplace) %verify(not md5 mtime size) /var/log/pgsql
%{_mandir}/man1/initdb.1*
+%{_mandir}/man1/pg_basebackup.1*
%{_mandir}/man1/pg_controldata.1*
%{_mandir}/man1/pg_ctl.1*
%{_mandir}/man1/pg_resetxlog.1*
%{_mandir}/man1/postgres.1*
%{_mandir}/man1/postmaster.1*
+%{_mandir}/man1/oid2name.1.gz
+%{_mandir}/man1/pg_archivecleanup.1.gz
+%{_mandir}/man1/pg_receivexlog.1.gz
+%{_mandir}/man1/pg_standby.1.gz
+%{_mandir}/man1/pg_test_fsync.1.gz
+%{_mandir}/man1/pg_test_timing.1.gz
+%{_mandir}/man1/pgbench.1.gz
+%{_mandir}/man1/vacuumlo.1.gz
+
+%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/unpacked/* howto
+%doc doc/src/sgml/html howto
%{_examplesdir}/%{name}-%{version}
%files libs -f libpq5-%{mver}.lang
%attr(755,root,root) %{_libdir}/libpq.so.*.*
%attr(755,root,root) %ghost %{_libdir}/libpq.so.5
%dir %{_pgmoduledir}
-%dir %{_pgmoduledir}/plugins
%files ecpg -f ecpg.lang
%defattr(644,root,root,755)
%dir %{_pgmoduledir}/pgxs
%attr(755,root,root) %{_pgmoduledir}/pgxs/config
%{_pgmoduledir}/pgxs/src
+%{_mandir}/man3/SPI_*.3*
%files static
%defattr(644,root,root,755)
%{_mandir}/man1/vacuumdb.1*
%{_mandir}/man7/*.7*
-%files module-plpgsql -f plpgsql-8.4.lang
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/plpgsql.so
-
%if %{with perl}
-%files module-plperl -f plperl-8.4.lang
+%files module-plperl -f plperl-%{mver}.lang
%defattr(644,root,root,755)
%attr(755,root,root) %{_pgmoduledir}/plperl.so
+%{_pgsqldir}/plperl--*.sql
+%{_pgsqldir}/plperl.control
+%{_pgsqldir}/plperlu--*.sql
+%{_pgsqldir}/plperlu.control
%endif
%if %{with python}
-%files module-plpython -f plpython-8.4.lang
+%files module-plpython -f plpython-%{mver}.lang
%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/plpython.so
+%attr(755,root,root) %{_pgmoduledir}/plpython2.so
+%{_pgsqldir}/plpython*--*.sql
+%{_pgsqldir}/plpython*.control
%endif
%if %{with tcl}
-%files module-pltcl -f pltcl-8.4.lang
+%files module-pltcl -f pltcl-%{mver}.lang
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/pltcl_*
%attr(755,root,root) %{_pgmoduledir}/pltcl.so
%{_pgsqldir}/unknown.pltcl
+%{_pgsqldir}/pltcl*--*.sql
+%{_pgsqldir}/pltcl*.control
%endif
%files module-dblink
%defattr(644,root,root,755)
%attr(755,root,root) %{_pgmoduledir}/dblink.so
-%{_pgsqldir}/*dblink.sql
+%{_pgsqldir}/dblink--*.sql
+%{_pgsqldir}/dblink.control
+%{_mandir}/man3/dblink*.3*
%files module-lo
%defattr(644,root,root,755)
%attr(755,root,root) %{_pgmoduledir}/lo.so
-%{_pgsqldir}/*lo.sql
+%{_pgsqldir}/lo--*.sql
+%{_pgsqldir}/lo.control
+
+%files module-pg_trgm
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_pgmoduledir}/pg_trgm.so
+%{_pgsqldir}/pg_trgm--*.sql
+%{_pgsqldir}/pg_trgm.control
%files module-pgcrypto
%defattr(644,root,root,755)
%attr(755,root,root) %{_pgmoduledir}/pgcrypto.so
-%{_pgsqldir}/*pgcrypto.sql
+%{_pgsqldir}/pgcrypto--*.sql
+%{_pgsqldir}/pgcrypto.control
-%files module-tablefunc
+%files module-sepgsql
%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/tablefunc.so
-%{_pgsqldir}/*tablefunc.sql
+%attr(755,root,root) %{_pgmoduledir}/sepgsql.so
+%{_pgsqldir}/sepgsql.sql
-%files module-pg_trgm
+%files module-tablefunc
%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/pg_trgm.so
-%{_pgsqldir}/*pg_trgm.sql
+%attr(755,root,root) %{_pgmoduledir}/tablefunc.so
+%{_pgsqldir}/*tablefunc--*.sql
+%{_pgsqldir}/*tablefunc.control
%files module-xml2
%defattr(644,root,root,755)
%attr(755,root,root) %{_pgmoduledir}/pgxml.so
-%{_pgsqldir}/*pgxml.sql
+%{_pgsqldir}/xml2--*.sql
+%{_pgsqldir}/xml2.control
%files contrib
%defattr(644,root,root,755)
%doc contrib/README contrib/pldebugger/README.pl*
%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}/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}/btree_gin.so
%attr(755,root,root) %{_pgmoduledir}/btree_gist.so
%attr(755,root,root) %{_pgmoduledir}/citext.so
%attr(755,root,root) %{_pgmoduledir}/cube.so
%attr(755,root,root) %{_pgmoduledir}/earthdistance.so
+%attr(755,root,root) %{_pgmoduledir}/file_fdw.so
%attr(755,root,root) %{_pgmoduledir}/fuzzystrmatch.so
%attr(755,root,root) %{_pgmoduledir}/hstore.so
%attr(755,root,root) %{_pgmoduledir}/isn.so
%attr(755,root,root) %{_pgmoduledir}/ltree.so
%attr(755,root,root) %{_pgmoduledir}/pageinspect.so
+%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_stat_statements.so
%attr(755,root,root) %{_pgmoduledir}/pgrowlocks.so
%attr(755,root,root) %{_pgmoduledir}/pgstattuple.so
-%attr(755,root,root) %{_pgmoduledir}/pldbgapi.so
-%attr(755,root,root) %{_pgmoduledir}/plugins/plugin_debugger.so
-%attr(755,root,root) %{_pgmoduledir}/plugins/plugin_profiler.so
+%attr(755,root,root) %{_pgmoduledir}/plugin_debugger.so
%attr(755,root,root) %{_pgmoduledir}/seg.so
%attr(755,root,root) %{_pgmoduledir}/sslinfo.so
-%attr(755,root,root) %{_pgmoduledir}/targetinfo.so
+%attr(755,root,root) %{_pgmoduledir}/unaccent.so
%attr(755,root,root) %{_pgmoduledir}/uuid-ossp.so
-%{_pgsqldir}/_int.sql
-%{_pgsqldir}/adminpack.sql
-%{_pgsqldir}/btree_gin.sql
-%{_pgsqldir}/btree_gist.sql
-%{_pgsqldir}/chkpass.sql
-%{_pgsqldir}/citext.sql
-%{_pgsqldir}/cube.sql
-%{_pgsqldir}/dict_int.sql
-%{_pgsqldir}/dict_xsyn.sql
-%{_pgsqldir}/earthdistance.sql
-%{_pgsqldir}/fuzzystrmatch.sql
-%{_pgsqldir}/hstore.sql
-%{_pgsqldir}/int_aggregate.sql
-%{_pgsqldir}/isn.sql
-%{_pgsqldir}/ltree.sql
-%{_pgsqldir}/pageinspect.sql
-%{_pgsqldir}/pg_buffercache.sql
-%{_pgsqldir}/pg_freespacemap.sql
-%{_pgsqldir}/pg_stat_statements.sql
-%{_pgsqldir}/pgrowlocks.sql
-%{_pgsqldir}/pgstattuple.sql
-%{_pgsqldir}/pldbgapi.sql
-%{_pgsqldir}/seg.sql
-%{_pgsqldir}/sslinfo.sql
-%{_pgsqldir}/uuid-ossp.sql
-%{_pgsqldir}/uninstall__int.sql
-%{_pgsqldir}/uninstall_adminpack.sql
-%{_pgsqldir}/uninstall_btree_gin.sql
-%{_pgsqldir}/uninstall_btree_gist.sql
-%{_pgsqldir}/uninstall_chkpass.sql
-%{_pgsqldir}/uninstall_citext.sql
-%{_pgsqldir}/uninstall_cube.sql
-%{_pgsqldir}/uninstall_dict_int.sql
-%{_pgsqldir}/uninstall_dict_xsyn.sql
-%{_pgsqldir}/uninstall_earthdistance.sql
-%{_pgsqldir}/uninstall_fuzzystrmatch.sql
-%{_pgsqldir}/uninstall_hstore.sql
-%{_pgsqldir}/uninstall_int_aggregate.sql
-%{_pgsqldir}/uninstall_isn.sql
-%{_pgsqldir}/uninstall_ltree.sql
-%{_pgsqldir}/uninstall_pageinspect.sql
-%{_pgsqldir}/uninstall_pg_buffercache.sql
-%{_pgsqldir}/uninstall_pg_freespacemap.sql
-%{_pgsqldir}/uninstall_pg_stat_statements.sql
-%{_pgsqldir}/uninstall_pgrowlocks.sql
-%{_pgsqldir}/uninstall_pgstattuple.sql
-%{_pgsqldir}/uninstall_seg.sql
-%{_pgsqldir}/uninstall_sslinfo.sql
-%{_pgsqldir}/uninstall_uuid-ossp.sql
+%{_pgsqldir}/adminpack--*.sql
+%{_pgsqldir}/adminpack.control
+%{_pgsqldir}/btree_gin--*.sql
+%{_pgsqldir}/btree_gin.control
+%{_pgsqldir}/btree_gist--*.sql
+%{_pgsqldir}/btree_gist.control
+%{_pgsqldir}/chkpass--*.sql
+%{_pgsqldir}/chkpass.control
+%{_pgsqldir}/citext--*.sql
+%{_pgsqldir}/citext.control
+%{_pgsqldir}/cube--*.sql
+%{_pgsqldir}/cube.control
+%{_pgsqldir}/dict_int--*.sql
+%{_pgsqldir}/dict_int.control
+%{_pgsqldir}/dict_xsyn--*.sql
+%{_pgsqldir}/dict_xsyn.control
+%{_pgsqldir}/earthdistance--*.sql
+%{_pgsqldir}/earthdistance.control
+%{_pgsqldir}/file_fdw--*.sql
+%{_pgsqldir}/file_fdw.control
+%{_pgsqldir}/fuzzystrmatch--*.sql
+%{_pgsqldir}/fuzzystrmatch.control
+%{_pgsqldir}/hstore--*.sql
+%{_pgsqldir}/hstore.control
+%{_pgsqldir}/intarray--*.sql
+%{_pgsqldir}/intarray.control
+%{_pgsqldir}/intagg--*.sql
+%{_pgsqldir}/intagg.control
+%{_pgsqldir}/isn--*.sql
+%{_pgsqldir}/isn.control
+%{_pgsqldir}/ltree--*.sql
+%{_pgsqldir}/ltree.control
+%{_pgsqldir}/pageinspect--*.sql
+%{_pgsqldir}/pageinspect.control
+%{_pgsqldir}/pg_buffercache--*.sql
+%{_pgsqldir}/pg_buffercache.control
+%{_pgsqldir}/pg_freespacemap--*.sql
+%{_pgsqldir}/pg_freespacemap.control
+%{_pgsqldir}/pg_stat_statements--*.sql
+%{_pgsqldir}/pg_stat_statements.control
+%{_pgsqldir}/pgrowlocks--*.sql
+%{_pgsqldir}/pgrowlocks.control
+%{_pgsqldir}/pgstattuple--*.sql
+%{_pgsqldir}/pgstattuple.control
+%{_pgsqldir}/pldbgapi--*.sql
+%{_pgsqldir}/pldbgapi.control
+%{_pgsqldir}/seg--*.sql
+%{_pgsqldir}/seg.control
+%{_pgsqldir}/sslinfo--*.sql
+%{_pgsqldir}/sslinfo.control
+%{_pgsqldir}/unaccent--*.sql
+%{_pgsqldir}/unaccent.control
+%{_pgsqldir}/uuid-ossp--*.sql
+%{_pgsqldir}/uuid-ossp.control
+
+%files upgrade
+%attr(755,root,root) %{_bindir}/pg_upgrade
+%attr(755,root,root) %{_pgmoduledir}/pg_upgrade_support.so
+%dir %{_libdir}/postgresql-%{prevmver}
+%{_libdir}/postgresql-%{prevmver}
+%{_mandir}/man1/pg_upgrade.1.gz