# This is the PostgreSQL Global Development Group Official RPMset spec file, # or a derivative thereof. # Copyright 2003-2009 Lamar Owen # and others listed. # Major Contributors: # --------------- # Lamar Owen # Trond Eivind Glomsrd # Thomas Lockhart # Reinhard Max # Karl DeBisschop # Peter Eisentraut # Joe Conway # Andrew Overholt # David Jee # Kaj J. Niemi # Sander Steffann # Tom Lane # and others in the Changelog.... # This spec file and ancilliary files are licensed in accordance with # The PostgreSQL license. # In this file you can find the default build package list macros. # These can be overridden by defining on the rpm command line: # rpm --define 'packagename 1' .... to force the package to build. # rpm --define 'packagename 0' .... to force the package NOT to build. # The base package, the lib package, the devel package, and the server package # always get built. %define beta 0 %{?beta:%define __os_install_post /usr/lib/rpm/brp-compress} %{!?aconfver:%define aconfver autoconf} %{!?tcldevel:%define tcldevel 1} %{!?test:%define test 1} %{!?plpython:%define plpython 1} %{!?pltcl:%define pltcl 1} %{!?plperl:%define plperl 1} %{!?python:%define python 1} %{!?tcl:%define tcl 1} %{!?ssl:%define ssl 1} %{!?kerberos:%define kerberos 1} %{!?ldap:%define ldap 1} %{!?nls:%define nls 1} %{!?uuid:%define uuid 1} %{!?xml:%define xml 1} %{!?pam:%define pam 1} %{!?sdt:%define sdt 1} %{!?pgfts:%define pgfts 1} %{!?runselftest:%define runselftest 1} # Python major version. %{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} Summary: PostgreSQL client programs and libraries Name: postgresql %define majorversion 8.4 Version: 8.4.0 Release: 3.2%{?dist} License: MIT Group: Applications/Databases Url: http://www.postgresql.org/ Source0: ftp://ftp.postgresql.org/pub/source/v%{version}/postgresql-%{version}.tar.bz2 Source3: postgresql.init Source4: Makefile.regress Source5: pg_config.h Source6: README.rpm-dist Source7: ecpg_config.h Source14: postgresql.pam Source15: postgresql-bashprofile Source16: filter-requires-perl-Pg.sh Source17: http://www.postgresql.org/docs/manuals/postgresql-8.4.0-US.pdf Source18: ftp://ftp.pygresql.org/pub/distrib/PyGreSQL-3.8.1.tgz Source19: http://pgfoundry.org/projects/pgtclng/pgtcl1.6.2.tar.gz Source20: http://pgfoundry.org/projects/pgtclng/pgtcldocs-20070115.zip Patch1: rpm-pgsql.patch Patch2: postgresql-ac-version.patch Patch3: postgresql-logging.patch Patch5: pgtcl-no-rpath.patch Patch6: postgresql-perl-rpath.patch BuildRequires: perl(ExtUtils::MakeMaker) glibc-devel bison flex autoconf gawk BuildRequires: perl(ExtUtils::Embed), perl-devel # for /sbin/ldconfig Prereq: glibc initscripts %ifarch s390 s390x %define sdt 0 %endif %if %python || %plpython BuildRequires: python-devel %endif %if %tcl || %pltcl BuildRequires: tcl %if %tcldevel BuildRequires: tcl-devel %endif %endif BuildRequires: readline-devel BuildRequires: zlib-devel >= 1.0.4 %if %ssl BuildRequires: openssl-devel %endif %if %kerberos BuildRequires: krb5-devel %endif %if %ldap BuildRequires: openldap-devel %endif %if %nls BuildRequires: gettext >= 0.10.35 %endif %if %uuid BuildRequires: uuid-devel %endif %if %xml BuildRequires: libxml2-devel libxslt-devel %endif %if %pam BuildRequires: pam-devel %endif %if %sdt BuildRequires: systemtap-sdt-devel %endif # main package requires -libs subpackage Requires: postgresql-libs = %{version}-%{release} Obsoletes: postgresql-clients Obsoletes: postgresql-perl Obsoletes: postgresql-tk Obsoletes: rh-postgresql Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root %description PostgreSQL is an advanced Object-Relational database management system (DBMS) that supports almost all SQL constructs (including transactions, subselects and user-defined types and functions). The postgresql package includes the client programs and libraries that you'll need to access a PostgreSQL DBMS server. These PostgreSQL client programs are programs that directly manipulate the internal structure of PostgreSQL databases on a PostgreSQL server. These client programs can be located on the same machine with the PostgreSQL server, or may be on a remote machine which accesses a PostgreSQL server over a network connection. This package contains the docs in HTML for the whole package, as well as command-line utilities for managing PostgreSQL databases on a PostgreSQL server. If you want to manipulate a PostgreSQL database on a local or remote PostgreSQL server, you need this package. You also need to install this package if you're installing the postgresql-server package. %package libs Summary: The shared libraries required for any PostgreSQL clients Group: Applications/Databases Provides: libpq.so Obsoletes: rh-postgresql-libs %description libs The postgresql-libs package provides the essential shared libraries for any PostgreSQL client program or interface. You will need to install this package to use any other PostgreSQL package or any clients that need to connect to a PostgreSQL server. %package server Summary: The programs needed to create and run a PostgreSQL server Group: Applications/Databases Prereq: /usr/sbin/useradd /sbin/chkconfig Requires: postgresql = %{version}-%{release} Obsoletes: rh-postgresql-server %description server The postgresql-server package includes the programs needed to create and run a PostgreSQL server, which will in turn allow you to create and maintain PostgreSQL databases. PostgreSQL is an advanced Object-Relational database management system (DBMS) that supports almost all SQL constructs (including transactions, subselects and user-defined types and functions). You should install postgresql-server if you want to create and maintain your own PostgreSQL databases and/or your own PostgreSQL server. You also need to install the postgresql package. %package docs Summary: Extra documentation for PostgreSQL Group: Applications/Databases Requires: postgresql = %{version}-%{release} Obsoletes: rh-postgresql-docs %description docs The postgresql-docs package includes some additional documentation for PostgreSQL. Currently, this includes the main documentation in PDF format and source files for the PostgreSQL tutorial. %package contrib Summary: Contributed source and binaries distributed with PostgreSQL Group: Applications/Databases Requires: postgresql = %{version}-%{release} Obsoletes: rh-postgresql-contrib %description contrib The postgresql-contrib package contains contributed packages that are included in the PostgreSQL distribution. %package devel Summary: PostgreSQL development header files and libraries Group: Development/Libraries Requires: postgresql = %{version}-%{release} Obsoletes: rh-postgresql-devel %description devel The postgresql-devel package contains the header files and libraries needed to compile C or C++ applications which will directly interact with a PostgreSQL database management server and the ecpg Embedded C Postgres preprocessor. You need to install this package if you want to develop applications which will interact with a PostgreSQL server. %if %plperl %package plperl Summary: The Perl procedural language for PostgreSQL Group: Applications/Databases Requires: postgresql-server = %{version}-%{release} Obsoletes: rh-postgresql-pl Obsoletes: postgresql-pl Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) %description plperl PostgreSQL is an advanced Object-Relational database management system. The postgresql-plperl package contains the PL/Perl procedural language for the backend. %endif %if %plpython %package plpython Summary: The Python procedural language for PostgreSQL Group: Applications/Databases Requires: postgresql-server = %{version}-%{release} Obsoletes: rh-postgresql-pl Obsoletes: postgresql-pl %description plpython PostgreSQL is an advanced Object-Relational database management system. The postgresql-plpython package contains the PL/Python procedural language for the backend. %endif %if %pltcl %package pltcl Summary: The Tcl procedural language for PostgreSQL Group: Applications/Databases Requires: postgresql-server = %{version}-%{release} Obsoletes: rh-postgresql-pl Obsoletes: postgresql-pl %description pltcl PostgreSQL is an advanced Object-Relational database management system. The postgresql-pltcl package contains the PL/Tcl procedural language for the backend. %endif %if %tcl %package tcl Summary: A Tcl client library for PostgreSQL Group: Applications/Databases # this is intentionally not a version-specific Requires: Requires: libpq.so Requires: tcl >= 8.5 Obsoletes: rh-postgresql-tcl %description tcl PostgreSQL is an advanced Object-Relational database management system. The postgresql-tcl package contains the Pgtcl client library and its documentation. %endif %if %python %package python Summary: Development module for Python code to access a PostgreSQL DB Group: Applications/Databases # this is intentionally not a version-specific Requires: Requires: libpq.so Requires: python mx Obsoletes: rh-postgresql-python %description python PostgreSQL is an advanced Object-Relational database management system. The postgresql-python package includes a module for developers to use when writing Python code for accessing a PostgreSQL database. %endif %if %test %package test Summary: The test suite distributed with PostgreSQL Group: Applications/Databases Requires: postgresql-server = %{version}-%{release} Obsoletes: rh-postgresql-test %description test PostgreSQL is an advanced Object-Relational database management system. The postgresql-test package includes the sources and pre-built binaries of various tests for the PostgreSQL database management system, including regression tests and benchmarks. %endif %define __perl_requires %{SOURCE16} %prep %setup -q %patch1 -p1 %patch2 -p1 %patch3 -p1 # patch5 is applied later %patch6 -p1 #call autoconf 2.53 or greater %aconfver cp -p %{SOURCE17} . %if %python tar xzf %{SOURCE18} PYGRESQLDIR=`basename %{SOURCE18} .tgz` mv $PYGRESQLDIR PyGreSQL # Some versions of PyGreSQL.tgz contain wrong file permissions chmod 755 PyGreSQL/tutorial chmod 644 PyGreSQL/tutorial/*.py chmod 755 PyGreSQL/tutorial/advanced.py PyGreSQL/tutorial/basics.py %endif %if %tcl tar xzf %{SOURCE19} PGTCLDIR=`basename %{SOURCE19} .tar.gz` mv $PGTCLDIR Pgtcl unzip %{SOURCE20} PGTCLDOCDIR=`basename %{SOURCE20} .zip` mv $PGTCLDOCDIR Pgtcl-docs pushd Pgtcl %patch5 -p1 %aconfver popd %endif %build CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS # Strip out -ffast-math from CFLAGS.... CFLAGS=`echo $CFLAGS|xargs -n 1|grep -v ffast-math|xargs -n 100` # use -O1 on sparc64, s390x and alpha %ifarch sparc64 alpha s390x s390 CFLAGS=`echo $CFLAGS| sed -e "s|-O2|-O1|g" ` %endif %configure --disable-rpath \ %if %beta --enable-debug \ --enable-cassert \ %endif %if %plperl --with-perl \ %endif %if %pltcl --with-tcl \ --with-tclconfig=%{_libdir} \ %endif %if %plpython --with-python \ %endif %if %ldap --with-ldap \ %endif %if %ssl --with-openssl \ %endif %if %pam --with-pam \ %endif %if %kerberos --with-krb5 \ --with-gssapi \ %endif %if %uuid --with-ossp-uuid \ %endif %if %xml --with-libxml \ --with-libxslt \ %endif %if %nls --enable-nls \ %endif %if %sdt --enable-dtrace \ %endif %if %pgfts --enable-thread-safety \ %endif --with-system-tzdata=/usr/share/zoneinfo \ --sysconfdir=/etc/sysconfig/pgsql \ --datadir=/usr/share/pgsql \ --with-docdir=%{_docdir} make %{?_smp_mflags} all make %{?_smp_mflags} -C contrib all # Have to hack makefile to put correct path into tutorial scripts sed "s|C=\`pwd\`;|C=%{_libdir}/pgsql/tutorial;|" < src/tutorial/Makefile > src/tutorial/GNUmakefile make %{?_smp_mflags} -C src/tutorial NO_PGXS=1 all rm -f src/tutorial/GNUmakefile %if %runselftest pushd src/test/regress make all make MAX_CONNECTIONS=5 check make clean popd %endif %if %test pushd src/test/regress make all popd %endif %if %python PYTHON=/usr/bin/python python_version=`${PYTHON} -c "import sys; print sys.version[:3]"` python_prefix=`${PYTHON} -c "import sys; print sys.prefix"` python_includespec="-I${python_prefix}/include/python${python_version}" pushd PyGreSQL gcc $CFLAGS -fpic -shared -o _pgmodule.so ${python_includespec} -I../src/interfaces/libpq -I../src/include -L../src/interfaces/libpq -lpq pgmodule.c popd %endif %if %tcl pushd Pgtcl # pgtcl's configure only handles one include directory :-( ./configure --prefix=/usr \ --libdir=%{_libdir} \ --with-tcl=%{_libdir} \ --with-postgres-include="../src/interfaces/libpq -I../src/include" \ --with-postgres-lib=../src/interfaces/libpq # note: as of pgtcl 1.5.2, its makefile is not parallel-safe make all popd %endif %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install make -C contrib DESTDIR=$RPM_BUILD_ROOT install # multilib header hack; note pg_config.h is installed in two places! # we only apply this to known Red Hat multilib arches, per bug #177564 case `uname -i` in i386 | x86_64 | ppc | ppc64 | s390 | s390x) mv $RPM_BUILD_ROOT/usr/include/pg_config.h $RPM_BUILD_ROOT/usr/include/pg_config_`uname -i`.h install -m 644 %{SOURCE5} $RPM_BUILD_ROOT/usr/include/ mv $RPM_BUILD_ROOT/usr/include/pgsql/server/pg_config.h $RPM_BUILD_ROOT/usr/include/pgsql/server/pg_config_`uname -i`.h install -m 644 %{SOURCE5} $RPM_BUILD_ROOT/usr/include/pgsql/server/ mv $RPM_BUILD_ROOT/usr/include/ecpg_config.h $RPM_BUILD_ROOT/usr/include/ecpg_config_`uname -i`.h install -m 644 %{SOURCE7} $RPM_BUILD_ROOT/usr/include/ ;; *) ;; esac install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/pgsql/tutorial cp src/tutorial/* $RPM_BUILD_ROOT%{_libdir}/pgsql/tutorial %if %tcl TCL_VERSION=`echo 'puts $tcl_version' | tclsh` TCLLIBDIR="%{_libdir}/tcl$TCL_VERSION" # check the target directory is a dir, not a symlink if [ -h "$TCLLIBDIR" ] ; then echo "$TCLLIBDIR must not be a symlink" exit 1 fi PGTCL_DIR="${RPM_BUILD_ROOT}${TCLLIBDIR}/Pgtcl" install -d -m 755 "$PGTCL_DIR" cp Pgtcl/pkgIndex.tcl "$PGTCL_DIR" cp Pgtcl/libpgtcl*.so "$PGTCL_DIR" %endif install -d $RPM_BUILD_ROOT/etc/rc.d/init.d sed 's/^PGVERSION=.*$/PGVERSION=%{version}/' <%{SOURCE3} >postgresql.init install -m 755 postgresql.init $RPM_BUILD_ROOT/etc/rc.d/init.d/postgresql %if %pam install -d $RPM_BUILD_ROOT/etc/pam.d install -m 644 %{SOURCE14} $RPM_BUILD_ROOT/etc/pam.d/postgresql %endif # PGDATA needs removal of group and world permissions due to pg_pwd hole. install -d -m 700 $RPM_BUILD_ROOT/var/lib/pgsql/data # backups of data go here... install -d -m 700 $RPM_BUILD_ROOT/var/lib/pgsql/backups # postgres' .bash_profile install -m 644 %{SOURCE15} $RPM_BUILD_ROOT/var/lib/pgsql/.bash_profile # Create the multiple postmaster startup directory install -d -m 700 $RPM_BUILD_ROOT/etc/sysconfig/pgsql %if %test # tests. There are many files included here that are unnecessary, # but include them anyway for completeness. We replace the original # Makefiles, however. mkdir -p $RPM_BUILD_ROOT%{_libdir}/pgsql/test cp -a src/test/regress $RPM_BUILD_ROOT%{_libdir}/pgsql/test pushd $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress strip *.so rm -f GNUmakefile Makefile *.o popd cp %{SOURCE4} $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress/Makefile chmod 0644 $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress/Makefile %endif # Fix some more documentation # gzip doc/internals.ps cp %{SOURCE6} README.rpm-dist mv $RPM_BUILD_ROOT%{_docdir}/pgsql/html doc rm -rf $RPM_BUILD_ROOT%{_docdir}/pgsql %if %python pushd PyGreSQL install -m 0755 -d $RPM_BUILD_ROOT%{python_sitearch} install -m 0755 _pgmodule.so $RPM_BUILD_ROOT%{python_sitearch} install -m 0644 pg.py $RPM_BUILD_ROOT%{python_sitearch} install -m 0644 pgdb.py $RPM_BUILD_ROOT%{python_sitearch} popd %endif %find_lang ecpg-%{majorversion} cat ecpg-%{majorversion}.lang >devel.lst %find_lang ecpglib6-%{majorversion} cat ecpglib6-%{majorversion}.lang >libs.lst %find_lang initdb-%{majorversion} cat initdb-%{majorversion}.lang >server.lst %find_lang libpq5-%{majorversion} cat libpq5-%{majorversion}.lang >>libs.lst %find_lang pg_config-%{majorversion} cat pg_config-%{majorversion}.lang >>devel.lst %find_lang pg_controldata-%{majorversion} cat pg_controldata-%{majorversion}.lang >>server.lst %find_lang pg_ctl-%{majorversion} cat pg_ctl-%{majorversion}.lang >>server.lst %find_lang pg_dump-%{majorversion} cat pg_dump-%{majorversion}.lang >main.lst %find_lang pg_resetxlog-%{majorversion} cat pg_resetxlog-%{majorversion}.lang >>server.lst %find_lang pgscripts-%{majorversion} cat pgscripts-%{majorversion}.lang >>main.lst %if %plperl %find_lang plperl-%{majorversion} cat plperl-%{majorversion}.lang >plperl.lst %endif %find_lang plpgsql-%{majorversion} cat plpgsql-%{majorversion}.lang >>server.lst %if %plpython %find_lang plpython-%{majorversion} cat plpython-%{majorversion}.lang >plpython.lst %endif %if %pltcl %find_lang pltcl-%{majorversion} cat pltcl-%{majorversion}.lang >pltcl.lst %endif %find_lang postgres-%{majorversion} cat postgres-%{majorversion}.lang >>server.lst %find_lang psql-%{majorversion} cat psql-%{majorversion}.lang >>main.lst %post libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig %pre server groupadd -g 26 -o -r postgres >/dev/null 2>&1 || : useradd -M -n -g postgres -o -r -d /var/lib/pgsql -s /bin/bash \ -c "PostgreSQL Server" -u 26 postgres >/dev/null 2>&1 || : # If we're upgrading from rh-postgresql, we have to repeat the above actions # after rh-postgresql-server is uninstalled, because its postun script runs # after our pre script ... %triggerpostun -n postgresql-server -- rh-postgresql-server groupadd -g 26 -o -r postgres >/dev/null 2>&1 || : useradd -M -n -g postgres -o -r -d /var/lib/pgsql -s /bin/bash \ -c "PostgreSQL Server" -u 26 postgres >/dev/null 2>&1 || : %post server chkconfig --add postgresql /sbin/ldconfig %preun server if [ $1 = 0 ] ; then /sbin/service postgresql condstop >/dev/null 2>&1 chkconfig --del postgresql fi %postun server /sbin/ldconfig if [ $1 -ge 1 ] ; then /sbin/service postgresql condrestart >/dev/null 2>&1 || : fi %if %plperl %post -p /sbin/ldconfig plperl %postun -p /sbin/ldconfig plperl %endif %if %plpython %post -p /sbin/ldconfig plpython %postun -p /sbin/ldconfig plpython %endif %if %pltcl %post -p /sbin/ldconfig pltcl %postun -p /sbin/ldconfig pltcl %endif %if %test %post test chown -R postgres:postgres /usr/share/pgsql/test >/dev/null 2>&1 || : %endif %clean rm -rf $RPM_BUILD_ROOT # FILES section. %files -f main.lst %defattr(-,root,root) %doc doc/KNOWN_BUGS doc/MISSING_FEATURES doc/README* %doc COPYRIGHT README HISTORY doc/bug.template %doc README.rpm-dist %doc doc/html %{_bindir}/clusterdb %{_bindir}/createdb %{_bindir}/createlang %{_bindir}/createuser %{_bindir}/dropdb %{_bindir}/droplang %{_bindir}/dropuser %{_bindir}/pg_dump %{_bindir}/pg_dumpall %{_bindir}/pg_restore %{_bindir}/psql %{_bindir}/reindexdb %{_bindir}/vacuumdb %{_mandir}/man1/clusterdb.* %{_mandir}/man1/createdb.* %{_mandir}/man1/createlang.* %{_mandir}/man1/createuser.* %{_mandir}/man1/dropdb.* %{_mandir}/man1/droplang.* %{_mandir}/man1/dropuser.* %{_mandir}/man1/pg_dump.* %{_mandir}/man1/pg_dumpall.* %{_mandir}/man1/pg_restore.* %{_mandir}/man1/psql.* %{_mandir}/man1/reindexdb.* %{_mandir}/man1/vacuumdb.* %{_mandir}/man7/* %dir %{_libdir}/pgsql %files docs %defattr(-,root,root) %doc *-US.pdf %{_libdir}/pgsql/tutorial/ %files contrib %defattr(-,root,root) %{_libdir}/pgsql/_int.so %{_libdir}/pgsql/adminpack.so %{_libdir}/pgsql/autoinc.so %{_libdir}/pgsql/auto_explain.so %{_libdir}/pgsql/btree_gin.so %{_libdir}/pgsql/btree_gist.so %{_libdir}/pgsql/chkpass.so %{_libdir}/pgsql/citext.so %{_libdir}/pgsql/cube.so %{_libdir}/pgsql/dblink.so %{_libdir}/pgsql/dict_int.so %{_libdir}/pgsql/dict_xsyn.so %{_libdir}/pgsql/earthdistance.so %{_libdir}/pgsql/fuzzystrmatch.so %{_libdir}/pgsql/hstore.so %{_libdir}/pgsql/insert_username.so %{_libdir}/pgsql/isn.so %{_libdir}/pgsql/lo.so %{_libdir}/pgsql/ltree.so %{_libdir}/pgsql/moddatetime.so %{_libdir}/pgsql/pageinspect.so %{_libdir}/pgsql/pg_buffercache.so %{_libdir}/pgsql/pg_freespacemap.so %{_libdir}/pgsql/pg_trgm.so %{_libdir}/pgsql/pgcrypto.so %{_libdir}/pgsql/pgrowlocks.so %{_libdir}/pgsql/pgstattuple.so %{_libdir}/pgsql/pg_stat_statements.so %{_libdir}/pgsql/refint.so %{_libdir}/pgsql/seg.so %{_libdir}/pgsql/sslinfo.so %{_libdir}/pgsql/tablefunc.so %{_libdir}/pgsql/test_parser.so %{_libdir}/pgsql/timetravel.so %{_libdir}/pgsql/tsearch2.so %if %uuid %{_libdir}/pgsql/uuid-ossp.so %endif %if %xml %{_libdir}/pgsql/pgxml.so %endif %{_datadir}/pgsql/contrib/ %{_bindir}/oid2name %{_bindir}/pg_standby %{_bindir}/pgbench %{_bindir}/vacuumlo %doc contrib/spi/*.example %files libs -f libs.lst %defattr(-,root,root) %{_libdir}/libpq.so.* %{_libdir}/libecpg.so.* %{_libdir}/libpgtypes.so.* %{_libdir}/libecpg_compat.so.* %files server -f server.lst %defattr(-,root,root) /etc/rc.d/init.d/postgresql %if %pam %config(noreplace) /etc/pam.d/postgresql %endif %attr (755,root,root) %dir /etc/sysconfig/pgsql %{_bindir}/initdb %{_bindir}/pg_controldata %{_bindir}/pg_ctl %{_bindir}/pg_resetxlog %{_bindir}/postgres %{_bindir}/postmaster %{_mandir}/man1/initdb.* %{_mandir}/man1/pg_controldata.* %{_mandir}/man1/pg_ctl.* %{_mandir}/man1/pg_resetxlog.* %{_mandir}/man1/postgres.* %{_mandir}/man1/postmaster.* %{_datadir}/pgsql/postgres.bki %{_datadir}/pgsql/postgres.description %{_datadir}/pgsql/postgres.shdescription %{_datadir}/pgsql/system_views.sql %{_datadir}/pgsql/*.sample %{_datadir}/pgsql/timezonesets/ %{_datadir}/pgsql/tsearch_data/ %{_libdir}/pgsql/dict_snowball.so %{_libdir}/pgsql/plpgsql.so %dir %{_datadir}/pgsql %attr(700,postgres,postgres) %dir /var/lib/pgsql %attr(700,postgres,postgres) %dir /var/lib/pgsql/data %attr(700,postgres,postgres) %dir /var/lib/pgsql/backups %attr(644,postgres,postgres) %config(noreplace) /var/lib/pgsql/.bash_profile %{_libdir}/pgsql/*_and_*.so %{_datadir}/pgsql/conversion_create.sql %{_datadir}/pgsql/information_schema.sql %{_datadir}/pgsql/snowball_create.sql %{_datadir}/pgsql/sql_features.txt %files devel -f devel.lst %defattr(-,root,root) /usr/include/* %{_bindir}/ecpg %{_bindir}/pg_config %{_libdir}/libpq.so %{_libdir}/libecpg.so %{_libdir}/libpq.a %{_libdir}/libecpg.a %{_libdir}/libecpg_compat.so %{_libdir}/libecpg_compat.a %{_libdir}/libpgport.a %{_libdir}/libpgtypes.so %{_libdir}/libpgtypes.a %{_libdir}/pgsql/pgxs/ %{_mandir}/man1/ecpg.* %{_mandir}/man1/pg_config.* %if %tcl %files tcl %defattr(-,root,root) %{_libdir}/tcl*/Pgtcl/ %doc Pgtcl-docs/* %endif %if %plperl %files plperl -f plperl.lst %defattr(-,root,root) %{_libdir}/pgsql/plperl.so %endif %if %pltcl %files pltcl -f pltcl.lst %defattr(-,root,root) %{_libdir}/pgsql/pltcl.so %{_bindir}/pltcl_delmod %{_bindir}/pltcl_listmod %{_bindir}/pltcl_loadmod %{_datadir}/pgsql/unknown.pltcl %endif %if %plpython %files plpython -f plpython.lst %defattr(-,root,root) %{_libdir}/pgsql/plpython.so %endif %if %python %files python %defattr(-,root,root) %doc PyGreSQL/docs/*.txt %doc PyGreSQL/tutorial %{python_sitearch}/_pgmodule.so %{python_sitearch}/*.py %endif %if %test %files test %defattr(-,postgres,postgres) %attr(-,postgres,postgres) %{_libdir}/pgsql/test/* %attr(-,postgres,postgres) %dir %{_libdir}/pgsql/test %endif %changelog * Tue Sep 01 2009 Karsten Hopp 8.4.0-3.2 - bump release and build again with the correct libssl * Tue Sep 01 2009 Karsten Hopp 8.4.0-3.1 - disable dtrace on s390x as a workaround until #520469 has been fixed * Fri Aug 21 2009 Tomas Mraz - 8.4.0-3 - rebuilt with new openssl * Thu Aug 20 2009 Tom "spot" Callaway 8.4.0-2 - update License tag to MIT (PostgreSQL calls it "BSD", but it is MIT) - Note: This changes nothing from a license compatibility perspective. * Mon Aug 17 2009 Tom Lane 8.4.0-1 - Update to PostgreSQL 8.4.0. See release notes at http://www.postgresql.org/docs/8.4/static/release-8-4.html * Sun Jul 26 2009 Fedora Release Engineering - 8.3.7-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Sat Mar 21 2009 Tom Lane 8.3.7-1 - Update to PostgreSQL 8.3.7, for various fixes described at http://www.postgresql.org/docs/8.3/static/release-8-3-7.html notably the fix for CVE-2009-0922 * Tue Mar 10 2009 Tom Lane 8.3.6-4 - Prevent dependent packages from needing to include sys/sdt.h (unintended side effect of previous patch) - Use -O1 on alpha, per report from Oliver Falk; -O2 tickles gcc bugs * Sun Mar 8 2009 Tom Lane 8.3.6-3 - Enable tracing via systemtap Resolves: #488941 * Thu Feb 26 2009 Fedora Release Engineering - 8.3.6-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild * Sat Feb 7 2009 Tom Lane 8.3.6-1 - Update to PostgreSQL 8.3.6, for various fixes described at http://www.postgresql.org/docs/8.3/static/release-8-3-6.html * Wed Jan 21 2009 Dennis Gilmore 8.3.5-4 - use -O1 on sparc64 * Sat Jan 17 2009 Tomas Mraz - 8.3.5-3 - rebuild with new openssl * Sat Nov 29 2008 Ignacio Vazquez-Abrams - 8.3.5-2 - Rebuild for Python 2.6 * Sun Nov 2 2008 Tom Lane 8.3.5-1 - Update to PostgreSQL 8.3.5. - Improve display from init script's initdb action, per Michael Schwendt * Thu Sep 25 2008 Tom Lane 8.3.4-1 - Update to PostgreSQL 8.3.4. * Mon Jul 28 2008 Tom Lane 8.3.3-3 - Fix build failure caused by new default patch fuzz = 0 policy in rawhide. * Fri Jun 20 2008 Tom Lane 8.3.3-2 - Install Pgtcl in /usr/lib/tcl$TCL_VERSION, not directly in /usr/lib. Needed because tcl 8.5 no longer puts /usr/lib into its package search path. NOTE: do not back-port this change into branches using pre-8.5 tcl, because /usr/lib/tcl8.4 had been a symlink to /usr/share/tcl8.4, and /usr/share is exactly where we must not put Pgtcl. Resolves: #228263 * Wed Jun 11 2008 Tom Lane 8.3.3-1 - Update to PostgreSQL 8.3.3. - Remove postgresql-prefer-ncurses.patch, no longer needed in recent Fedora releases because libtermcap is gone. * Sat May 17 2008 Tom Lane 8.3.1-5 - rebuild because of buildsystem hiccup * Sat May 17 2008 Tom Lane 8.3.1-4 - Enable LDAP support Resolves: #445315 - Use -Wl,--as-needed to suppress bogus dependencies for libraries that are really only needed by some of the subpackages * Mon Apr 28 2008 Tom Lane 8.3.1-3 - Fix build breakage on PPC due to incorrect configure test Related: #444317 * Sat Apr 26 2008 Tom Lane 8.3.1-2 - Clean up cross-subpackage Requires: to ensure that updating any one subpackage brings in the matching versions of others. Resolves: #444271 * Tue Mar 25 2008 Tom Lane 8.3.1-1 - Update to PostgreSQL 8.3.1. * Tue Mar 18 2008 Tom "spot" Callaway 8.3.0-3 - add Requires for versioned perl (libperl.so) * Wed Feb 6 2008 Tom Lane 8.3.0-2 - Enable the new GSSAPI support in 8.3.0. * Mon Feb 4 2008 Tom Lane 8.3.0-1 - Update to PostgreSQL 8.3.0. * Fri Jan 18 2008 Tom Lane 8.3RC2-1 - Update to PostgreSQL 8.3RC2 (not waiting for 8.3.0 because Fedora 9 alpha should be 8.3-based not 8.2-based). - Update to pgtcl 1.6.2 * Mon Jan 7 2008 Tom Lane 8.2.6-1 - Update to PostgreSQL 8.2.6 to fix CVE-2007-4769, CVE-2007-4772, CVE-2007-6067, CVE-2007-6600, CVE-2007-6601 - Make initscript and pam config files be installed unconditionally; seems new buildroots don't necessarily have those directories in place * Wed Dec 5 2007 Tom Lane 8.2.5-2 - Rebuild for new openssl * Thu Sep 20 2007 Tom Lane 8.2.5-1 - Update to PostgreSQL 8.2.5 and pgtcl 1.6.0 * Tue Sep 4 2007 Tom Lane 8.2.4-6 - Fix multilib problem for /usr/include/ecpg_config.h (which is new in 8.2.x) * Sat Aug 25 2007 Tom Lane 8.2.4-5 - Use nicer solution for tzdata file substitution: upstream discussion concluded that hardwiring the path was better than a symlink after all. * Wed Aug 22 2007 Tom Lane 8.2.4-4 - Use tzdata package's data files instead of private copy, so that postgresql-server need not be turned for routine timezone updates - Don't remove postgres user/group during RPM uninstall, per Fedora packaging guidelines - Seems we need an explicit BuildRequires on gawk now - Rebuild to fix Fedora toolchain issues * Sun Aug 12 2007 Tom Lane 8.2.4-3 - Recent perl changes in rawhide mean we need a more specific BuildRequires * Wed Jun 20 2007 Tom Lane 8.2.4-2 - Fix oversight in postgresql-test makefile: pg_regress isn't a shell script anymore. Per upstream bug 3398. * Tue Apr 24 2007 Tom Lane 8.2.4-1 - Update to PostgreSQL 8.2.4 for CVE-2007-2138, data loss bugs Resolves: #237682 * Wed Feb 14 2007 Karsten Hopp 8.2.3-2 - rebuild with tcl-8.4 * Wed Feb 7 2007 Tom Lane 8.2.3-1 - Update to PostgreSQL 8.2.3 due to regression induced by security fix Resolves: #227522 * Sun Feb 4 2007 Tom Lane 8.2.2-1 - Update to PostgreSQL 8.2.2 to fix CVE-2007-0555, CVE-2007-0556 Related: #225496 * Fri Jan 12 2007 Tom Lane 8.2.1-2 - Split -pl subpackage into three new packages to reduce dependencies and track upstream project's packaging. * Wed Jan 10 2007 Tom Lane 8.2.1-1 - Update to PostgreSQL 8.2.1 - Update to pgtcl 1.5.3 - Be sure we link to libncurses, not libtermcap which is disappearing in Fedora * Thu Dec 7 2006 Jeremy Katz - 8.2.0-2 - rebuild for python 2.5 * Mon Dec 4 2006 Tom Lane 8.2.0-1 - Update to PostgreSQL 8.2.0 - Update to PyGreSQL 3.8.1 - Fix chcon arguments in test/regress/Makefile Related: #201035 - Adjust init script to not fool /etc/rc.d/rc Resolves: #161470 - Change init script to not do initdb automatically, but require manual "service postgresql initdb" for safety. Per upstream discussions. * Wed Jul 12 2006 Jesse Keating - 8.1.4-1.1 - rebuild * Mon May 22 2006 Tom Lane 8.1.4-1 - Update to PostgreSQL 8.1.4 (includes fixes for CVE-2006-2313, CVE-2006-2314; see bug #192173) - Update to PyGreSQL 3.8 - Suppress noise from chcon, per bug #187744 * Mon Mar 27 2006 Tom Lane 8.1.3-2 - Remove JDBC from this build; we will package it as separate SRPM * Mon Feb 13 2006 Jesse Keating - 8.1.3-1.1 - rebump for build order issues during double-long bump * Mon Feb 13 2006 Tom Lane 8.1.3-1 - Update to PostgreSQL 8.1.3 (fixes bug #180617, CVE-2006-0553) - Update to jdbc driver build 405 - Modify multilib header hack to not break non-RH arches, per bug #177564 * Tue Feb 07 2006 Jesse Keating - 8.1.2-1.1 - rebuilt for new gcc4.1 snapshot and glibc changes * Mon Jan 9 2006 Tom Lane 8.1.2-1 - Update to PostgreSQL 8.1.2 - Repair extraneous quote in pgtcl configure script ... odd that bash didn't use to spit up on this. * Thu Dec 15 2005 Tom Lane 8.1.1-3 - fix pg_config.h for 64-bit and ppc platforms - update Makefile.regress (needs to --load-language=plpgsql) * Wed Dec 14 2005 Tom Lane 8.1.1-2 - oops, looks like we want uname -i not uname -m * Wed Dec 14 2005 Tom Lane 8.1.1-1 - Update to PostgreSQL 8.1.1 - Make pg_config.h architecture-independent for multilib installs; put the original pg_config.h into pg_config_$ARCH.h * Fri Dec 09 2005 Jesse Keating - rebuilt * Sat Nov 12 2005 Tom Lane 8.1.0-4 - Update included PDF-format manual to 8.1. * Wed Nov 9 2005 Tom Lane 8.1.0-3 - Rebuild due to openssl library update. * Wed Nov 9 2005 Tom Lane 8.1.0-2 - Rebuild due to openssl library update. * Mon Nov 7 2005 Tom Lane 8.1.0-1 - Update to PostgreSQL 8.1.0, PyGreSQL 3.7, and jdbc driver build 404 - Fix PAM config file (must have account not only auth) (bug #167040) - Add BuildPrereq: libxslt-devel (bug #170141) - Sync with PGDG SRPM as much as feasible * Fri Oct 14 2005 Tomas Mraz - use include instead of pam_stack in pam config * Tue Oct 4 2005 Tom Lane 8.0.4-2 - Add rpath to plperl.so (bug #162198) * Tue Oct 4 2005 Tom Lane 8.0.4-1 - Update to PostgreSQL 8.0.4, PyGreSQL 3.6.2, and jdbc driver build 312 - Adjust pgtcl link command to ensure it binds to correct libpq (bug #166665) - Remove obsolete Conflicts: against other python versions (bug #166754) - Add /etc/pam.d/postgresql (bug #167040) - Include contrib/xml2 in build (bug #167492) * Tue May 10 2005 Tom Lane 8.0.3-1 - Update to PostgreSQL 8.0.3 (includes security and data-loss fixes; see bz#156727, CAN-2005-1409, CAN-2005-1410) - Update to jdbc driver build 311 - Recreate postgres user after superseding an rh-postgresql install (bug #151911) - Ensure postgresql server is restarted if running during an upgrade * Thu Apr 14 2005 Florian La Roche 8.0.2-2 - rebuild for postgresql-tcl * Tue Apr 12 2005 Tom Lane 8.0.2-1 - Update to PostgreSQL 8.0.2. * Fri Mar 11 2005 Tom Lane 8.0.1-5 - Remove unwanted rpath specification from pgtcl (bz#150649) * Wed Mar 2 2005 Tom Lane 8.0.1-4 - Attach Obsoletes: declarations for rh-postgresql to subpackages (bz#144435) - Make Requires: and Prereq: package linkages specify release not only version, as per recent mailing list discussion. * Tue Mar 1 2005 Tomas Mraz 8.0.1-3 - rebuild with openssl-0.9.7e * Mon Feb 21 2005 Tom Lane 8.0.1-2 - Repair improper error message in init script when PGVERSION doesn't match. - Arrange for auto update of version embedded in init script. * Sun Jan 30 2005 Tom Lane 8.0.1-1 - Update to PostgreSQL 8.0.1. - Add versionless symlinks to jar files (bz#145744) * Wed Jan 19 2005 Tom Lane 8.0.0-1 - Update to PostgreSQL 8.0.0, PyGreSQL 3.6.1, pgtcl 1.5.2, and jdbc driver build 309. - Extensive cleanout of obsolete cruft in patch set. - Regression tests are run during RPM build (NOTE: cannot build as root when this is enabled). - Postmaster stderr goes someplace useful, not /dev/null (bz#76503, #103767) - Make init script return a useful exit status (bz#80782) - Move docs' tutorial directory to %%{_libdir}/pgsql/tutorial, since it includes .so files that surely do not belong under /usr/share. - Remove useless .sgml files from docs RPM (bz#134450) - Put regression tests under /usr/lib64 on 64-bit archs, since .so files are not architecture-independent. * Wed Jan 12 2005 Tim Waugh 7.4.6-5 - Rebuilt for new readline. * Tue Jan 11 2005 Dan Walsh 7.4.6-4 - Add restorecon to postgresql.init in order to restore database to correct - SELinux context. * Thu Dec 16 2004 Tom Lane 7.4.6-3 - Update to PyGreSQL 3.6 (to fix bug #142711) - Adjust a few file permissions (bug #142431) - Assign %%{_libdir}/pgsql to base package instead of -server (bug #74003) * Mon Nov 15 2004 Tom Lane 7.4.6-2 - Rebuild so python components play with python 2.4 (bug 139160) * Sat Oct 23 2004 Tom Lane 7.4.6-1 - Update to PostgreSQL 7.4.6 (bugs 136947, 136949) - Make init script more paranoid about mkdir step of initializing a new database (bugs 136947, 136949) * Wed Oct 20 2004 Tom Lane 7.4.5-4 - Remove contrib/oidjoins stuff from installed fileset; it's of no use to ordinary users and has a security issue (bugs 136300, 136301) - adjust chkconfig priority (bug 128852) * Tue Oct 05 2004 Tom Lane 7.4.5-3 - Solve the stale lockfile problem (bugs 71295, 96981, 134090) - Use runuser instead of su for SELinux (bug 134588) * Mon Aug 30 2004 Tom Lane 7.4.5-2 - Update to PyGreSQL 3.5. * Wed Aug 24 2004 Tom Lane 7.4.5-1 - Update to PostgreSQL 7.4.5. - Update JDBC jars to driver build 215. - Add Obsoletes: entries for rh-postgresql packages, per bug 129278. * Sat Jul 10 2004 Tom Lane 7.4.3-3 - Undo ill-considered chkconfig change that causes server to start immediately upon install. Mea culpa (bug 127552). * Sat Jul 03 2004 Tom Lane 7.4.3-2 - Update JDBC jars to driver build 214. * Wed Jun 23 2004 Tom Lane 7.4.3-1 - Update to PostgreSQL 7.4.3. - Uninstalling server RPM stops postmaster first, per bug 114846. - Fix su commands to not assume PG user's shell is sh-like, per bug 124024. - Fix permissions on postgresql-python doc files, per bug 124822. - Minor postgresql.init improvements. * Tue Jun 15 2004 Elliot Lee - rebuilt * Wed Mar 10 2004 Tom Lane 7.4.2-1 - Update to PostgreSQL 7.4.2; sync with community SRPM as much as possible. - Support PGOPTS from /etc/sysconfig/pgsql, per bug 111504. - Fix permissions on /etc/sysconfig/pgsql, per bug 115278. - SELinux patch in init file: always su - rebuilt * Wed Feb 25 2004 Tom Lane - Update to PostgreSQL 7.4.1. - Rebuilt * Tue Feb 24 2004 Tom Lane - Fix chown syntax in postgresql.init also. - Rebuilt * Mon Feb 23 2004 Tim Waugh - Use ':' instead of '.' as separator for chown. * Fri Feb 13 2004 Elliot Lee - rebuilt * Fri Jan 9 2004 Lamar Owen - 7.4.1-1PGDG - Merge Sander Steffann's changes up to 7.4-0.5PGDG - Proper 7.4.1 JDBC jars this time. - Patch for no pl/python from Alvaro * Fri Dec 05 2003 David Jee 7.4-5 - Rebuild for Perl 5.8.2. * Mon Dec 01 2003 David Jee 7.4-4 - Add PyGreSQL patch for deprecated column pg_type.typprtlen [Bug #111263] - Add headers patch which moves ecpg headers to /usr/include/ecpg [Bug #111195] * Fri Nov 28 2003 David Jee 7.4-3 - uncomment buildrequires tcl-devel * Fri Nov 28 2003 David Jee 7.4-2 - rebuild * Mon Nov 24 2003 David Jee 7.4-1 - initial Red Hat build - move jars to /usr/share/java - fix rpm-multilib patch to use sysconfig * Fri Nov 21 2003 Lamar Owen - 7.4-0.1PGDG - Development JDBC jars in addition to the 7.3 jars; will replace the - 7.3 jars once 7.4 official jars are released. - Changed to use the bzip2 source to save a little size. - Removed some commented out portions of the specfile. - Removed the 7.3.4 PDF docs. Will replace with 7.4 PDF's once they - are ready. * Tue Nov 18 2003 Kaj J. Niemi 7.4-0.1 - 7.4 - Fixed Patch #1 (now rpm-pgsql-7.4.patch) - Fixed Patch #2 (now rpm-multilib-7.4.patch): - Patch #4 is unnecessary (upstream) - Fixed Patch #6 (now postgresql-7.4-src-tutorial.patch) - Added Patch #8 (postgresql-7.4-com_err.patch) as com_err() is provided by e2fsprogs and CPPFLAGS gets lost somewhere inside configure (bad macro?) - No 7.4 PDF docs available yet (Source #17) - PyGreSQL is separated from the upstream distribution but we include it as usual (Source #18) - Default to compiling libpq and ECPG as fully thread-safe - 7.4 Origin. See previous spec files for previous history. Adapted - from Red Hat and PGDG's 7.3.4 RPM, directly descended from - postgresql-7.3.4-2 as shipped in Fedora Core 1.