]> git.pld-linux.org Git - packages/postgresql.git/commitdiff
- up to 9.2.5
authorAndrzej Zawadzki <zawadaa@pld-linux.org>
Wed, 16 Oct 2013 10:04:57 +0000 (12:04 +0200)
committerAndrzej Zawadzki <zawadaa@pld-linux.org>
Wed, 16 Oct 2013 10:04:57 +0000 (12:04 +0200)
- add support for pg_upgrade

postgresql.spec

index fc5bae103bff0a210f63171ad5e9c397c31da2b0..d5e0e4166362712f88d0f4c2c6a5b96ef06d9883 100644 (file)
@@ -1,8 +1,6 @@
 # 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?)
-#   create postgresqlM.N packages with parts of old pgsql required by pg_upgrade
 # - test init script (db initialization)
 #
 # Conditional build:
@@ -13,6 +11,7 @@
 %bcond_without python                  # disable Python support
 %bcond_without ldap                    # disable LDAP support
 %bcond_without selinux                 # sepgsql contrib module
+%bcond_with    pg_upgrade              # enable pg_upgrade support
 %bcond_with    absolute_dbpaths        # enable absolute paths to create database
                                        # (disabled by default because it is a security risk)
 #
@@ -31,12 +30,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}.4
-Release:       2
+Version:       %{mver}.5
+Release:       1
 License:       BSD
 Group:         Applications/Databases
 Source0:       ftp://ftp.postgresql.org/pub/source/v%{version}/%{name}-%{version}.tar.bz2
-# Source0-md5: 6ee5bb53b97da7c6ad9cb0825d3300dd
+# Source0-md5: e8438e0ed5e6371741be7697886e7340
 Source1:       %{name}.init
 Source2:       pgsql-Database-HOWTO-html.tar.gz
 # Source2-md5: 5b656ddf1db41965761f85204a14398e
@@ -768,6 +767,23 @@ Miscellaneous PostgreSQL contrib modules.
 %description contrib -l pl.UTF-8
 Różne moduły dołączone do PostgreSQL-a.
 
+%package pg_upgrade
+Summary:       Support for upgrading to new major release
+Summary(pl.UTF-8):     Wsparcie
+Group:         Applications/Databases
+#Requires:     %{name} = %{version}-%{release}
+
+%description pg_upgrade
+The postgresql-upgrade package contains minimal database files needed
+for upgrading a PostgreSQL database cluster without dump/restore operation,
+to the next major version of PostgreSQL.
+
+%description pg_upgrade -l pl.UTF-8
+Pakiet postgresql-upgrade zawiera minimalnÄ\85 instalacjÄ\99 bazy
+pozwalajÄ\85\85 na aktualizacjÄ\99 klastra bazy danych bez
+koniecznoÅ\9bci wykonywania operacji dump/restore, do kolejnej gÅ\82ów
+wersji bazy PostgreSQL.
+
 %prep
 %setup -q
 %patch0 -p1
@@ -777,6 +793,18 @@ Różne moduły dołączone do PostgreSQL-a.
 %patch4 -p1
 %patch5 -p1
 
+%if %{with pg_upgrade}
+tar xjf %{SOURCE0}
+cd postgresql-%{version}
+%patch0 -p1
+%{?with_absolute_dbpaths:%patch1 -p1}
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+cd ..
+%endif
+
 # force rebuild of bison/flex files
 find src -name \*.l -o -name \*.y | xargs touch
 
@@ -823,6 +851,37 @@ done
 %{?with_tests:%{__make} -j1 check}
 %endif
 
+%if %{with pg_upgrade}
+cd postgresql-%{version}
+%{__aclocal} -I config
+%{__autoconf}
+
+./configure \
+       CFLAGS="%{rpmcflags} -DNEED_REENTRANT_FUNCS `uuid-config --cflags`" \
+--prefix=%{_libdir}/pgsql/postgresql-%{mver} \
+       --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 ..
+%endif
+
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig,init/%{name}}} \
@@ -892,6 +951,48 @@ install src/pl/plperl/ppport.h $RPM_BUILD_ROOT%{_includedir}/postgresql/server/
 # package it...?  nah, why bother.
 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/doc/postgresql/html
 
+%if %{with pg_upgrade}
+cd postgresql-%{version}
+%{__make} install \
+        DESTDIR=$RPM_BUILD_ROOT/postgresql-%{mver}
+cd $RPM_BUILD_ROOT/postgresql-%{mver}%{_libdir}/pgsql/postgresql-%{mver}
+       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_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-%{mver}
+       cp -ra $RPM_BUILD_ROOT/postgresql-%{mver}%{_libdir}/pgsql/postgresql-%{mver}/* $RPM_BUILD_ROOT%{_libdir}/postgresql-%{mver}
+cd $RPM_BUILD_ROOT
+%endif
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -1291,3 +1392,7 @@ fi
 %{_pgsqldir}/uuid-ossp--*.sql
 %{_pgsqldir}/uuid-ossp.control
 
+%if %{with pg_upgrade}
+%files pg_upgrade
+%{_libdir}/postgresql-%{mver}
+%endif
This page took 0.197326 seconds and 4 git commands to generate.