]> git.pld-linux.org Git - packages/postgresql.git/blobdiff - postgresql.spec
- up to 9.0.2
[packages/postgresql.git] / postgresql.spec
index 1e58aa1c84b3277be3ab9a783f0ea4970ac9c997..76ac1060ab680f76de858b30db867ac95e87b4df 100644 (file)
@@ -1,21 +1,21 @@
 # TODO:
-# - init scripts for pgclusters lb and replicate
+# - python 3 and python 2 subpackages?
+# - 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 tcl                     # disable Tcl support
 %bcond_without kerberos5               # disable kerberos5 support
-%bcond_without python                  # disable Python support
 %bcond_without perl                    # disable Perl support
-%bcond_without tcl                     # disables Tcl support
-%bcond_without tests                   # disable testing
+%bcond_without python                  # disable Python support
+%bcond_without ldap                    # disable LDAP support
 %bcond_with    absolute_dbpaths        # enable absolute paths to create database
                                        # (disabled by default because it is a security risk)
-%bcond_with    pgcluster               # enable pgcluster support
-# Fails tests because of cluster turned off:
-%if %{with pgcluster}
-%undefine       with_tests
-%endif
+#
 
-# NOTE: merge from POSTGRESQL_8_3 branch when 8.3 arrives
+%define beta %{nil}
+%define mver 9.0
 
 Summary:       PostgreSQL Data Base Management System
 Summary(de.UTF-8):     PostgreSQL Datenbankverwaltungssystem
@@ -28,37 +28,44 @@ Summary(tr.UTF-8):  Veri Tabanı Yönetim Sistemi
 Summary(uk.UTF-8):     PostgreSQL - система керування базами даних
 Summary(zh_CN.UTF-8):  PostgreSQL 客户端程序和库文件
 Name:          postgresql
-Version:       8.2.6
-%define        pgcluster_version       1.7.0rc7
+Version:       %{mver}.2
 Release:       1
 License:       BSD
 Group:         Applications/Databases
 Source0:       ftp://ftp.postgresql.org/pub/source/v%{version}/%{name}-%{version}.tar.bz2
-# Source0-md5: 17b9049b4fcad42ee95410833c1db228
+# Source0-md5: fc79ef32b602f75f2ccd37647bc008e9
 Source1:       %{name}.init
 Source2:       pgsql-Database-HOWTO-html.tar.gz
 # Source2-md5: 5b656ddf1db41965761f85204a14398e
 Source3:       %{name}.sysconfig
+Source4:       edb-debugger-20100404.tgz
+# Source4-md5: a10daee9a2017db40c7550c40cb47e8d
+Source5:       %{name}.upstart
+Source6:       %{name}-instance.upstart
 Patch0:                %{name}-conf.patch
 Patch1:                %{name}-absolute_dbpaths.patch
-Patch3:                %{name}-ecpg_link.patch
-Patch4:                %{name}-ecpg-includedir.patch
+Patch2:                %{name}-ecpg-includedir.patch
+Patch3:                %{name}-ac_version.patch
+Patch4:                %{name}-disable_horology_test.patch
 Patch5:                %{name}-pg_ctl-fix.patch
-Patch6:                %{name}-ac_version.patch
-# Sources from: http://ftp.man.poznan.pl/postgresql/projects/pgFoundry/pgcluster/
-Patch7:                %{name}-pgcluster-%{pgcluster_version}.patch
+Patch6:                %{name}-heimdal.patch
 URL:           http://www.postgresql.org/
 BuildRequires: autoconf
 BuildRequires: automake
-#BuildRequires:        bison >= 1.875  not needed for releases
+BuildRequires: docbook-dtd42-sgml
+# not needed for releases... but fixes something in snapshot
+BuildRequires: bison >= 1.875
 BuildRequires: flex
 BuildRequires: gettext-devel
-%{?with_kerberos5:BuildRequires:       krb5-devel}
+%{?with_kerberos5:BuildRequires:       heimdal-devel}
 BuildRequires: libtool
-BuildRequires: libxml2-devel
+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: ossp-uuid-devel
 BuildRequires: pam-devel
 %{?with_perl:BuildRequires:    perl-devel}
 %if %{with python}
@@ -69,16 +76,21 @@ BuildRequires:      python-modules >= 1:2.3
 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(pre): /usr/bin/getgid
 Requires(pre): /usr/sbin/groupadd
 Requires(pre): /usr/sbin/useradd
-Requires(pre): /usr/sbin/usermod
+Requires(triggerpostun):       /bin/id
+Requires(triggerpostun):       /usr/sbin/usermod
 Requires:      %{name}-clients = %{version}-%{release}
 Requires:      %{name}-libs = %{version}-%{release}
-Requires:      rc-scripts
+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)
@@ -88,6 +100,30 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _ulibdir        /usr/lib
 
+# omitted contribs:
+# spi and test_parser - examples 
+# tsearch2 - old module for compatibility only
+%define        contrib_modules adminpack auto_explain btree_gin btree_gist chkpass citext cube dblink dict_int dict_xsyn earthdistance 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 sslinfo tablefunc unaccent 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
+
 %description
 PostgreSQL Data Base Management System (formerly known as Postgres,
 then as Postgres95).
@@ -310,6 +346,19 @@ 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
+
+%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
@@ -428,74 +477,6 @@ C++, Perl и Tcl) разделены. Этот пакет включает то
 Тепер пакети з бібліотеками для різних мов програмування (C, C++, Perl
 і Tcl) розділені. Цей пакет містить тільки бібліотеки для мови C.
 
-%if %{with pgcluster}
-%package lb
-Summary:       PGCluster - synchronous replication system of the multi-master composition for PostgreSQL
-Group:         Applications/Databases
-Requires:      %{name}-libs = %{version}-%{release}
-Requires:      pgcluster = %{pgcluster_version}
-Provides:      pgcluster-lb = %{pgcluster_version}
-
-%description lb
-PGCluster is the synchronous replication system of the multi-master
-composition for PostgreSQL.
-
-PGCluster is the replication system of the query base using
-PostgreSQL.
-
-- Since a replication system is a synchronous replication, delay does
-  not occur with the data duplicate between the Cluster DBs.
-- Since a server is multi-master composition, two or more the Cluster
-  DBs can receive access from a user simultaneously.
-
-PGCluster consists of three kinds of servers, a load balancer, Cluster
-DB, and a replication server.
-
-%package replicate
-Summary:       PGCluster - synchronous replication system of the multi-master composition for PostgreSQL
-Group:         Applications/Databases
-Requires:      %{name}-libs = %{version}-%{release}
-Requires:      pgcluster = %{pgcluster_version}
-Provides:      pgcluster-replicate = %{pgcluster_version}
-
-%description replicate
-PGCluster is the synchronous replication system of the multi-master
-composition for PostgreSQL.
-
-PGCluster is the replication system of the query base using
-PostgreSQL.
-
-- Since a replication system is a synchronous replication, delay does
-  not occur with the data duplicate between the Cluster DBs.
-- Since a server is multi-master composition, two or more the Cluster
-  DBs can receive access from a user simultaneously.
-
-PGCluster consists of three kinds of servers, a load balancer, Cluster
-DB, and a replication server.
-
-%package replicate-tools
-Summary:       PGCluster - synchronous replication system of the multi-master composition for PostgreSQL
-Group:         Applications/Databases
-Requires:      %{name}-libs = %{version}-%{release}
-Requires:      pgcluster = %{pgcluster_version}
-Provides:      pgcluster-replicate = %{pgcluster_version}
-
-%description replicate-tools
-PGCluster is the synchronous replication system of the multi-master
-composition for PostgreSQL.
-
-PGCluster is the replication system of the query base using
-PostgreSQL.
-
-- Since a replication system is a synchronous replication, delay does
-  not occur with the data duplicate between the Cluster DBs.
-- Since a server is multi-master composition, two or more the Cluster
-  DBs can receive access from a user simultaneously.
-
-PGCluster consists of three kinds of servers, a load balancer, Cluster
-DB, and a replication server.
-%endif
-
 %package doc
 Summary:       Documentation for PostgreSQL
 Summary(pl.UTF-8):     Dodatkowa dokumantacja dla PostgreSQL
@@ -516,7 +497,6 @@ Summary(pl.UTF-8):  Biblioteki dzielone programu PostgreSQL
 Summary(pt_BR.UTF-8):  Biblioteca compartilhada do PostgreSQL
 Summary(zh_CN.UTF-8):  PostgreSQL 客户所需要的共享库
 Group:         Libraries
-%{?with_pgcluster:Provides:    pgcluster = %{pgcluster_version}}
 
 %description libs
 PostgreSQL shared libraries.
@@ -591,46 +571,11 @@ 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
 Group:         Applications/Databases
 Requires:      %{name} = %{version}-%{release}
-Requires:      perl(DynaLoader) = %(%{__perl} -MDynaLoader -e 'print DynaLoader->VERSION')
 
 %description module-plperl
 From PostgreSQL documentation:
@@ -783,22 +728,6 @@ crosstab functions for PostgreSQL.
 %description module-tablefunc -l pl.UTF-8
 Funkcje crosstab dla PostgreSQL-a.
 
-%package module-tsearch2
-Summary:       Full text extension for PostgreSQL
-Summary(pl.UTF-8):     Rozszerzenie pełnotekstowe dla PostgreSQL-a
-Group:         Applications/Databases
-Requires:      %{name} = %{version}-%{release}
-
-%description module-tsearch2
-Implementation of a new data type tsvector - a searchable data type
-with indexed access:
-http://www.sai.msu.su/~megera/postgres/gist/tsearch/V2/
-
-%description module-tsearch2 -l pl.UTF-8
-Implementacja nowego typu danych tsvector - typu danych podlegającego
-przeszukiwaniu z dostępem poprzez indeksy:
-http://www.sai.msu.su/~megera/postgres/gist/tsearch/V2/
-
 %package module-pg_trgm
 Summary:       Trigram matching for PostgreSQL
 Summary(pl.UTF-8):     Dopasowanie trigramowe dla PostgreSQL-a
@@ -813,7 +742,6 @@ similarity of text based on trigram matching.
 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
@@ -830,20 +758,32 @@ Moduł z funkcjami XML zapewniającymi obsługę zapytań XPath oraz
 funkcjonalność XSLT. Jest także nowa funkcja tabelowa pozwalająca na
 bezpośrednie zwracanie wielu wyników XML.
 
+%package contrib
+Summary:       Miscellaneous PostgreSQL contrib modules
+Summary(pl.UTF-8):     Różne moduły dołączone do PostgreSQL-a
+Group:         Applications/Databases
+Requires:      %{name} = %{version}-%{release}
+
+%description contrib
+Miscellaneous PostgreSQL contrib modules.
+
+%description contrib -l pl.UTF-8
+Różne moduły dołączone do PostgreSQL-a.
+
 %prep
 %setup -q
 %patch0 -p1
 %{?with_absolute_dbpaths:%patch1 -p1}
+%patch2 -p1
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
 %patch6 -p1
-%{?with_pgcluster:%patch7 -p1}
 
-tar xzf doc/man*.tar.gz
+tar xzf %{SOURCE4} -C contrib
 
-mkdir doc/unpacked
-tar zxf doc/postgres.tar.gz -C doc/unpacked
+# force rebuild of bison/flex files
+find src -name \*.l -o -name \*.y | xargs touch
 
 # Erase all CVS dirs
 #find contrib -type d -name CVS -exec rm -rf {} \;
@@ -852,28 +792,34 @@ tar zxf doc/postgres.tar.gz -C doc/unpacked
 %{__aclocal} -I config
 %{__autoconf}
 %configure \
-       CFLAGS="%{rpmcflags} -DNEED_REENTRANT_FUNCS" \
+       CFLAGS="%{rpmcflags} -DNEED_REENTRANT_FUNCS `uuid-config --cflags`" \
        --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_tcl:--with-tcl --with-tclconfig=%{_ulibdir}} \
-       --without-docdir
+       --with-ossp-uuid \
 
 %{__make}
-%{__make} -C contrib/dblink
-%{__make} -C contrib/lo
-%{__make} -C contrib/pgcrypto
-%{__make} -C contrib/tablefunc
-%{__make} -C contrib/tsearch2
-%{__make} -C contrib/pg_trgm
-%{__make} -C contrib/xml2
+
+for mod in %{contrib_modules}; do \
+       flags="%{rpmcflags} -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"
+done
+
 %{__make} -C src/tutorial \
        NO_PGXS=1
 
@@ -883,7 +829,7 @@ tar zxf doc/postgres.tar.gz -C doc/unpacked
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig}} \
+install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig,init/%{name}}} \
        $RPM_BUILD_ROOT{/var/{lib/pgsql,log},%{_pgsqldir}} \
        $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} \
        $RPM_BUILD_ROOT%{_mandir} \
@@ -893,59 +839,61 @@ install src/tutorial/*.sql $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
 
 %{__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 \
        DESTDIR=$RPM_BUILD_ROOT
 %endif
 
-%{__make} -C contrib/dblink install \
-       DESTDIR=$RPM_BUILD_ROOT
-
-%{__make} -C contrib/lo install \
-       DESTDIR=$RPM_BUILD_ROOT
-
-%{__make} -C contrib/pgcrypto install \
-       DESTDIR=$RPM_BUILD_ROOT
-
-%{__make} -C contrib/tablefunc install \
-       DESTDIR=$RPM_BUILD_ROOT
-
-%{__make} -C contrib/tsearch2 install \
-       DESTDIR=$RPM_BUILD_ROOT
-
-%{__make} -C contrib/pg_trgm install \
-       DESTDIR=$RPM_BUILD_ROOT
-
-%{__make} -C contrib/xml2 install \
-       DESTDIR=$RPM_BUILD_ROOT
+for mod in %{contrib_modules}; do \
+       %{__make} -C contrib/$mod install \
+               DESTDIR=$RPM_BUILD_ROOT
+done
 
 touch $RPM_BUILD_ROOT/var/log/pgsql
 
 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/postgresql
 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/postgresql
 
+install %{SOURCE5} $RPM_BUILD_ROOT/etc/init/%{name}.conf
+install %{SOURCE6} $RPM_BUILD_ROOT/etc/init/%{name}/instance.conf
+
 install -d howto
 tar zxf %{SOURCE2} -C howto
 
+%if %{with python}
 %py_comp $RPM_BUILD_ROOT%{py_libdir}
 %py_ocomp $RPM_BUILD_ROOT%{py_libdir}
+%endif
 
 # find locales
-for f in libpq pg_controldata pg_dump pg_resetxlog pgscripts postgres psql initdb pg_ctl pg_config; do
-       %find_lang $f
+for f in libpq5 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.lang pg_resetxlog.lang postgres.lang pg_controldata.lang > main.lang
-cat pg_dump.lang psql.lang initdb.lang pg_ctl.lang > clients.lang
+cat pgscripts-%{mver}.lang pg_resetxlog-%{mver}.lang \
+    postgres-%{mver}.lang pg_controldata-%{mver}.lang \
+    plpgsql-%{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
 
 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
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -960,7 +908,7 @@ fi
 foundold=0
 for pgdir in $PG_DB_CLUSTERS; do
        if [ -f $pgdir/PG_VERSION ]; then
-               if [ `cat $pgdir/PG_VERSION` != '8.2' ]; then
+               if [ $(cat $pgdir/PG_VERSION) != '9.0' ]; then
                        echo "Found database(s) in older, incompatible format in cluster $pgdir."
                        foundold=1
                fi
@@ -973,9 +921,12 @@ if [ "$foundold" = "1" ]; then
        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."
@@ -983,10 +934,10 @@ if [ "$foundold" = "1" ]; then
        echo "http://www.ca.postgresql.org/docs/momjian/upgrade_tips_7.3"
        exit 1
 fi
-
 %groupadd -g 88 -r postgres
 %useradd -M -o -r -u 88 -d /home/services/postgres -s /bin/sh -g postgres -c "PostgreSQL Server" postgres
 
+%triggerpostun -- %{name} < 7.2-2
 if [ -n "`/bin/id -u postgres 2>/dev/null`" ]; then
        /usr/sbin/usermod -d /home/services/postgres postgres
 fi
@@ -1001,31 +952,44 @@ if [ "$1" = "0" ]; then
        /sbin/chkconfig --del postgresql
 fi
 
+%post upstart
+%upstart_post postgresql
+
+%postun upstart
+%upstart_postun postgresql
+
 %post  libs -p /sbin/ldconfig
 %postun        libs -p /sbin/ldconfig
 
 %post  ecpg -p /sbin/ldconfig
 %postun        ecpg -p /sbin/ldconfig
 
-%files -f main.lang
+%files -f main-%{mver}.lang
 %defattr(644,root,root,755)
-%doc COPYRIGHT README HISTORY doc/{FAQ*,README*,bug.template}
+%doc COPYRIGHT README HISTORY doc/{README*,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}/ipcclean
 %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_upgrade
 %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}/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}/pg_upgrade_support.so
+%attr(755,root,root) %{_pgmoduledir}/plpgsql.so
+%attr(755,root,root) %{_pgmoduledir}/utf8_and_*.so
 
 %dir %{_pgsqldir}
 %dir %{_datadir}/postgresql
@@ -1035,41 +999,49 @@ fi
 %{_datadir}/postgresql/*.shdescription
 %{_datadir}/postgresql/*.sql
 %{_datadir}/postgresql/*.txt
-%{_datadir}/postgresql/timezone
 %{_datadir}/postgresql/timezonesets
+%{_datadir}/postgresql/tsearch_data
 
 %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/ipcclean.1*
 %{_mandir}/man1/pg_controldata.1*
 %{_mandir}/man1/pg_ctl.1*
 %{_mandir}/man1/pg_resetxlog.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/unpacked/* doc/src/FAQ howto
+%doc doc/src/sgml/html howto
 %{_examplesdir}/%{name}-%{version}
 
-%files libs -f libpq.lang
+%files libs -f libpq5-%{mver}.lang
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libpq.so.*.*
 %attr(755,root,root) %ghost %{_libdir}/libpq.so.5
 %dir %{_pgmoduledir}
+%dir %{_pgmoduledir}/plugins
 
-%files ecpg
+%files ecpg -f ecpg.lang
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/ecpg
 %attr(755,root,root) %{_libdir}/libecpg.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libecpg.so.5
+%attr(755,root,root) %ghost %{_libdir}/libecpg.so.6
 %attr(755,root,root) %{_libdir}/libecpg_compat.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libecpg_compat.so.2
+%attr(755,root,root) %ghost %{_libdir}/libecpg_compat.so.3
 %attr(755,root,root) %{_libdir}/libpgtypes.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpgtypes.so.2
+%attr(755,root,root) %ghost %{_libdir}/libpgtypes.so.3
 %{_mandir}/man1/ecpg.1*
 
 %files ecpg-devel
@@ -1079,11 +1051,12 @@ fi
 %attr(755,root,root) %{_libdir}/libpgtypes.so
 %{_includedir}/ecpg*
 
-%files devel -f pg_config.lang
+%files devel -f pg_config-%{mver}.lang
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/pg_config
 %attr(755,root,root) %{_libdir}/libpq.so
 %dir %{_includedir}/postgresql
+%{_includedir}/libpq-events.h
 %{_includedir}/libpq-fe.h
 %{_includedir}/pg_config.h
 %{_includedir}/pg_config_manual.h
@@ -1105,6 +1078,7 @@ fi
 %dir %{_pgmoduledir}/pgxs
 %attr(755,root,root) %{_pgmoduledir}/pgxs/config
 %{_pgmoduledir}/pgxs/src
+%{_mandir}/man3/SPI_*.3*
 
 %files static
 %defattr(644,root,root,755)
@@ -1114,7 +1088,7 @@ fi
 %{_libdir}/libpgtypes.a
 %{_libdir}/libpgport.a
 
-%files clients -f clients.lang
+%files clients -f clients-%{mver}.lang
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/clusterdb
 %attr(755,root,root) %{_bindir}/createdb
@@ -1145,41 +1119,21 @@ fi
 %{_mandir}/man1/vacuumdb.1*
 %{_mandir}/man7/*.7*
 
-%if %{with pgcluster}
-%files lb
-%defattr(644,root,root,755)
-%doc INSTALL_PGCLUSTER src/pgcluster/pglb/AUTHORS src/pgcluster/pglb/pglb.conf.sample
-%attr(755,root,root) %{_bindir}/pglb
-
-%files replicate
-%defattr(644,root,root,755)
-%doc INSTALL_PGCLUSTER src/pgcluster/pgrp/AUTHORS src/pgcluster/pgrp/pgreplicate.conf.sample
-%attr(755,root,root) %{_bindir}/pgreplicate
-
-%files replicate-tools
-%defattr(644,root,root,755)
-%doc src/pgcluster/tool/pgcbench.sh src/pgcluster/tool/README.jp src/pgcluster/tool/tpc-b_like.sql
-%attr(755,root,root) %{_bindir}/pgcbench
-%endif
-
-%files module-plpgsql
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_pgmoduledir}/plpgsql.so
-
 %if %{with perl}
-%files module-plperl
+%files module-plperl -f plperl-%{mver}.lang
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_pgmoduledir}/plperl.so
 %endif
 
 %if %{with python}
-%files module-plpython
+%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
 %endif
 
 %if %{with tcl}
-%files module-pltcl
+%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
 
 %files module-dblink
 %defattr(644,root,root,755)
-%doc contrib/dblink/README.dblink
 %attr(755,root,root) %{_pgmoduledir}/dblink.so
 %{_pgsqldir}/*dblink.sql
+%{_mandir}/man3/dblink*.3*
 
 %files module-lo
 %defattr(644,root,root,755)
-%doc contrib/lo/README.lo
 %attr(755,root,root) %{_pgmoduledir}/lo.so
 %{_pgsqldir}/*lo.sql
 
 %files module-pgcrypto
 %defattr(644,root,root,755)
-%doc contrib/pgcrypto/README*
 %attr(755,root,root) %{_pgmoduledir}/pgcrypto.so
 %{_pgsqldir}/*pgcrypto.sql
 
 %files module-tablefunc
 %defattr(644,root,root,755)
-%doc contrib/tablefunc/README.tablefunc
 %attr(755,root,root) %{_pgmoduledir}/tablefunc.so
 %{_pgsqldir}/*tablefunc.sql
 
-%files module-tsearch2
-%defattr(644,root,root,755)
-%doc contrib/tsearch2/README*
-%attr(755,root,root) %{_pgmoduledir}/tsearch2.so
-%{_pgsqldir}/*tsearch2.sql
-%{_pgsqldir}/russian.stop.utf8
-%{_pgsqldir}/thesaurus
-%{_pgsqldir}/*.stop
-
 %files module-pg_trgm
 %defattr(644,root,root,755)
-%doc contrib/pg_trgm/README*
 %attr(755,root,root) %{_pgmoduledir}/pg_trgm.so
 %{_pgsqldir}/*pg_trgm.sql
 
 %files module-xml2
 %defattr(644,root,root,755)
-%doc contrib/xml2/README*
 %attr(755,root,root) %{_pgmoduledir}/pgxml.so
 %{_pgsqldir}/*pgxml.sql
+
+%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}/auto_explain.so
+%attr(755,root,root) %{_pgmoduledir}/btree_gin.so
+%attr(755,root,root) %{_pgmoduledir}/btree_gist.so
+%attr(755,root,root) %{_pgmoduledir}/chkpass.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}/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}/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}/unaccent.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_unaccent.sql
+%{_pgsqldir}/uninstall_uuid-ossp.sql
This page took 0.054678 seconds and 4 git commands to generate.