summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Lane <tgl@fedoraproject.org>2009-08-18 02:58:55 +0000
committerTom Lane <tgl@fedoraproject.org>2009-08-18 02:58:55 +0000
commit084ca74c6414a272863de0ae756ee704386ae380 (patch)
treeae869622d27f275fe78f7992cda44c6f0879944e
parentcddd7916a21eb15881c02a88fa35b84853e75ccb (diff)
downloadpostgresql-setup-postgresql-8_4_0-1_fc12.tar.gz
postgresql-setup-postgresql-8_4_0-1_fc12.tar.xz
postgresql-setup-postgresql-8_4_0-1_fc12.zip
Update to PostgreSQL 8.4.0.postgresql-8_4_0-1_fc12
-rw-r--r--.cvsignore4
-rw-r--r--Makefile.regress8
-rw-r--r--README.rpm-dist169
-rw-r--r--postgresql-ac-version.patch12
-rw-r--r--postgresql-logging.patch17
-rw-r--r--postgresql-perl-rpath.patch10
-rw-r--r--postgresql-test.patch53
-rw-r--r--postgresql.init19
-rwxr-xr-xpostgresql.spec144
-rw-r--r--rpm-pgsql.patch22
-rw-r--r--sources4
11 files changed, 189 insertions, 273 deletions
diff --git a/.cvsignore b/.cvsignore
index b522c56..e9bc1ce 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -1,5 +1,5 @@
-postgresql-8.3.7.tar.bz2
+postgresql-8.4.0.tar.bz2
PyGreSQL-3.8.1.tgz
pgtcl1.6.2.tar.gz
pgtcldocs-20070115.zip
-postgresql-8.3.7-US.pdf
+postgresql-8.4.0-US.pdf
diff --git a/Makefile.regress b/Makefile.regress
index c722d29..1de43c4 100644
--- a/Makefile.regress
+++ b/Makefile.regress
@@ -33,10 +33,10 @@ abs_builddir := $(shell pwd)
check: installcheck-parallel
installcheck: cleandirs
- ./pg_regress --schedule=$(srcdir)/serial_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(NOLOCALE)
+ ./pg_regress --schedule=$(srcdir)/serial_schedule --dlpath=. --multibyte=$(MULTIBYTE) --load-language=plpgsql $(NOLOCALE)
installcheck-parallel: cleandirs
- ./pg_regress --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE)
+ ./pg_regress --schedule=$(srcdir)/parallel_schedule --dlpath=. --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE)
# The tests command the server to write into testtablespace and results.
# On a SELinux-enabled system this will fail unless we mark those directories
@@ -53,10 +53,10 @@ runtest: installcheck
runtest-parallel: installcheck-parallel
bigtest: cleandirs
- ./pg_regress --schedule=$(srcdir)/serial_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(NOLOCALE) numeric_big
+ ./pg_regress --schedule=$(srcdir)/serial_schedule --dlpath=. --multibyte=$(MULTIBYTE) --load-language=plpgsql $(NOLOCALE) numeric_big
bigcheck: cleandirs
- ./pg_regress --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE) numeric_big
+ ./pg_regress --schedule=$(srcdir)/parallel_schedule --dlpath=. --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE) numeric_big
##
diff --git a/README.rpm-dist b/README.rpm-dist
index 4924c39..e4f43a8 100644
--- a/README.rpm-dist
+++ b/README.rpm-dist
@@ -1,12 +1,12 @@
README.rpm-dist
-----------------------------------------------------------------------------
-Version 8.2, for the PostgreSQL 8.2.1-2 RPMset.
-Devrim Gündüz <devrim@CommandPrompt.com>, Lamar Owen <lowen@pari.edu>
+Version 8.4, for the PostgreSQL 8.4 RPM set.
+Devrim Gündüz <devrim@CommandPrompt.com>
-----------------------------------------------------------------------------
Contents:
0.) Quick note about '-i'
- 1.) Introduction, QuickStart, and credits
+ 1.) Introduction and QuickStart
2.) PostgreSQL RPM packages and rationale
3.) Starting multiple postmasters
4.) Regression Testing
@@ -31,44 +31,49 @@ This document exists to explain the layout of the RPMs for PostgreSQL, to
describe various RPM specifics, and to document special features found
in the RPMset.
-This document is written to be applicable to version 8.2 of PostgreSQL,
+This document is written to be applicable to version 8.4 of PostgreSQL,
which is the current version of the RPMs as of this writing. More to the
-point, versions prior to 8.2 are not documented here.
+point, versions prior to 8.4 are not documented here.
-Official PostgreSQL Global Development Group RPMs have from version 7.1.2
-on carried a 'PGDG' after the release number. Other RPMsets distributed
-with Linux distributions may have a different release number and initials.
+Official PostgreSQL Global Development Group RPMs carry a 'PGDG after the
+release number. Other RPMsets as distributed with Linux distributions may
+have a different release number and initials.
-It is preferable for the distribution-specific set to be the one used, as
-the PGDG set is intentionally generic. So, if your distro has a set of RPMs,
-use them in preference. If you want to stay up-to-date on the PostgreSQL
-core itself, use the PGDG generic set -- but understand that it is a
-GENERIC set.
+If you want to stay up-to-date on the PostgreSQL core itself, you may
+want to use PGDG set, instead of the binaries supplied by distribution.
-These RPMs no longer support any sort of upgrading process other than that
-documented in the regular documentation. That is, you must dump, upgrade,
-initdb, and restore your data. Dump first, then remove the old server
-subpackage, install the new package, and restore the data from dump. (A new
-method of running multiple versions of PostgreSQL, along with the capability
-to run multiple postmasters, is in development, but was not ready for this
-release.)
+These RPMs do not support any sort of major version upgrading process
+other than that documented in the regular documentation. That is, you
+must dump, upgrade,initdb, and restore your data if you are
+performing a major version update. This is not needed for minor version
+updates.
-SuSE has maintained their own RPMset for some time -- their documentation
-supercedes any found in this file.
+For major version upgrade, dump first, then remove the old server
+subpackage, install the new package, and restore the data from dump.
+
+This document is intended for use only with Red Hat, CentOS and Fedora.
QUICKSTART
-----------------------------------------------------------------------------
-For a fresh installation on a recent Red Hat or similar system, a simple
+For a fresh installation, you will need to initialize the cluster first. Run:
+
+ service postgresql initdb
+
+as root, and it will prepare a new database cluster for you. Then you will
+need to start PostgreSQL. Again as root, run:
+
service postgresql start
-as root will prepare a new database (initdb), and start a postmaster that
-will listen on localhost and Unix socket 5432 only. Edit
-/var/lib/pgsql/data/postgresql.conf and pg_hba.conf if you want to allow
-remote access -- see the section on Grand Unified Configuration.
-The file /var/lib/pgsql/.bash_profile is now packaged to help with the
+This command will start a postmaster that willl listen on localhost and Unix
+socket 5432 only. Edit /var/lib/pgsql/data/postgresql.conf and pg_hba.conf
+if you want to allow remote access -- see the section on Grand Unified
+Configuration.
+
+The file /var/lib/pgsql/.bash_profile is packaged to help with the
setting of environment variables. You may edit this file, and it won't be
-overwritten during an upgrade. However, enhancements and bugfixes may be added
-to this file, so be sure to check .bash_profile.rpmnew after upgrading.
+overwritten during an upgrade. However, enhancements and bugfixes may
+be added to this file, so be sure to check .bash_profile.rpmnew after
+upgrading.
The user 'postgres' is created during installation of the server subpackage.
This user by default is UID and GID 26. The user has the default shell set to
@@ -76,26 +81,6 @@ bash, and the home directory set to /var/lib/pgsql. This user also has no
default password -- in order to be able to su to it from a non-root account
or login as 'postgres' you will need to set a password using passwd.
-CREDITS
------------------------------------------------------------------------------
-Thomas Lockhart
-Uncle George
-Ryan Kirkpatrick
-Trond Eivind Glomsrd
-Mark Knox
-Mike Mascari
-Nicolas Huillard
-Karl DeBisschop
-Roger Luethi
-Jeff Johnson
-Reinhard Max
-Peter Eisentraut
-Joe Conway
-Andrew Overholt
-David Jee
-Kaj J. Niemi
-Devrim Gunduz
-
POSTGRESQL RPM PACKAGES AND RATIONALE.
-----------------------------------------------------------------------------
PostgreSQL is split up into multiple packages so that users can 'pick and
@@ -139,31 +124,25 @@ various subdirectories.
Different distributions have different ideas of some of these file locations.
In particular, the documentation directory can be /usr/doc, /usr/doc/packages,
-/usr/share/doc, /usr/share/doc/packages, or some other similar path. The
-Red Hat / Fedora Core locations are listed below.
+/usr/share/doc, /usr/share/doc/packages, or some other similar path.
+
+However, the Red Hat / CentOS / Fedora RPM's install the files like
+this:
-However, the RPMs install the files like this:
Executables: /usr/bin
-Libraries: /usr/lib
-Documentation: /usr/share/doc/postgresql-x.y.z
+Libraries: /usr/lib (or /usr/lib64)
+Documentation: /usr/share/doc/postgresql-docs-x.y.z/html
Contrib documentation: /usr/share/doc/postgresql-contrib-x.y.z
Source: not installed
Data: /var/lib/pgsql/data
-Backup area: /var/lib/pgsql/backup
+Backup area: /var/lib/pgsql/backups
Templates: /usr/share/pgsql
-Procedural Languages: /usr/lib/pgsql
+Procedural Languages: /usr/lib/pgsql or /usr/lib64/pgsql
Development Headers: /usr/include/pgsql
-Localization data: /usr/share/locale
Other shared data: /usr/share/pgsql
Regression tests: /usr/lib/pgsql/test/regress (in the -test package)
-Tutorial: /usr/lib/pgsql/tutorial (in the -docs package)
-Extra documentation: /usr/share/doc/postgresql-docs-x.y.z
-
-On some 64-bit architectures, /usr/lib64 is used instead of /usr/lib.
-
-The above list describes the Red Hat / Fedora Core layout. These locations
-may change for other distributions. Use of 'rpm -ql' for each package is
-recommended as the 'official' information source.
+ or /usr/lib64/pgsql/test/regress
+Documentation SGML: /usr/share/doc/postgresql-docs-x.y.z/sgml
While it may seem gratuitous to place these files in different locations, the
FHS requires it -- distributions should not ever touch /usr/local. It may
@@ -211,24 +190,26 @@ your database machine is up to the task.
To run the regression tests under the RPM installation, make sure that
postmaster has been started (if not, su to root and execute the
"/etc/rc.d/init.d/postgresql start" init script), cd to
-/usr/lib/pgsql/test/regress, su to postgres, and execute "make check".
+/usr/lib/pgsql/test/regress (or /usr/lib64/pgsql/test/regress),
+su to postgres, and execute "make check".
This command will start the regression tests and will both show the
results to the screen and store the results in the file regress.out.
If any tests fail, see the file regression.diffs in that directory for details,
and read the "Regression Tests" section of the PostgreSQL documentation to
find out whether the differences are actually significant. If you need help
-interpreting the results, contact the pgsql-ports list at postgresql.org or
-the pgsqlrpms-general list at pgfoundry.org.
+interpreting the results, contact the pgsql-general list at
+postgresql.org.
After testing, say "make clean" to remove the files generated by the test
script.
STARTING POSTMASTER AUTOMATICALLY AT SYSTEM STARTUP
-------------------------------------------------------------------------------
-Red Hat Linux uses the System V Init package. A startup script for PostgreSQL
-is provided in the server package, as /etc/rc.d/init.d/postgresql. To start
-the postmaster, with sanity checking, as root, run
+Fedora / Red Hat / CentOS use the System V Init package. A startup
+script for PostgreSQL is provided in the server package, as
+/etc/rc.d/init.d/postgresql. To start the postmaster, with sanity
+checking, as root, run
service postgresql start
To shut the postmaster down,
service postgresql stop
@@ -269,12 +250,12 @@ REBUILDING FROM SOURCE RPM
-------------------------------------------------------------------------------
If your distribution is not supported by the binary RPMs from PostgreSQL.org,
you will need to rebuild from the source RPM. Download the .src.rpm for this
-release. You will need to be root to rebuild, unless you have already set up
-a non-root build environment.
+release. You will need to be root to rebuild, unless you have set up
+a non-root build environment (which is the recommended method anyway).
-Install the source RPM with rpm -i, then CD to the rpm building area (on Red
-Hat or Fedora Core this is /usr/src/redhat by default). You will have to have
-a full development environment to rebuild the full RPM set.
+Install the source RPM with rpm -i, then cd to the rpm building area
+(which is /usr/src/redhat by default). You will have to have a full
+development environment to rebuild the full RPM set.
This release of the RPMset includes the ability to conditionally build
sets of packages. The parameters, their defaults, and the meanings are:
@@ -283,22 +264,25 @@ beta 0 #build with cassert and do not strip the binaries
python 1 #build the postgresql-python package.
tcl 1 #build the postgresql-tcl package.
test 1 #build the postgresql-test package.
-plpython 1 #build the PL/Python package
-pltcl 1 #build the PL/Tcl package.
-plperl 1 #build the PL/Perl package.
+plpython 1 #build the PL/Python procedural language package.
+pltcl 1 #build the PL/Tcl procedural language package.
+plperl 1 #build the PL/Perl procedural language package.
ssl 1 #use OpenSSL support.
kerberos 1 #use Kerberos 5 support.
nls 1 #build with national language support.
+ldap 1 #build with LDAP support.
pam 1 #build with PAM support.
runselftest 1 #do "make check" during the build.
-xml 1 #build contrib/xml2
+sdt 1 #build with SystemTap support.
+xml 1 #build with XML support
pgfts 1 #build with --enable-thread-safety
+uuid 1 #build contrib/uuid-ossp
To use these defines, invoke a rebuild like this:
rpmbuild --rebuild --define 'python 0' --define 'tcl 0' \
- --define 'test 0' --define 'runselftest 1' --define 'kerberos 0' \
- postgresql-8.2.1-1.src.rpm
-This line would disable the python, tcl, and test subpackages, enable the
+ --define 'test 0' --define 'runselftest 0' --define 'kerberos 0' \
+ postgresql-8.4.0-1.src.rpm
+This line would disable the python, tcl, and test subpackages, disable the
regression test run during build, and disable kerberos support.
You might need to disable runselftest if there is an installed version of
@@ -314,23 +298,16 @@ CONTRIB FILES
The contents of the contrib tree are packaged into the -contrib subpackage
and are processed with make and make install. There is documentation in
/usr/share/doc/postgresql-contrib-VERSION for these modules. Most of the
-modules are in /usr/lib/pgsql for loadable modules, and binaries are in
-/usr/bin. In the future these files may be split out, depending upon function
-and dependencies.
+modules are in /usr/lib/pgsql (or /usr/lib64/pgsql) for loadable
+modules, and binaries are in /usr/bin. In the future these files may be
+split out, depending upon function and dependencies.
MORE INFORMATION
-------------------------------------------------------------------------------
You can get more information at http://www.postgresql.org and
-http://pgfoundry.org/projects/pgsqlrpms
+http://yum.pgsqlrpms.org
Please help make this packaging better -- let us know if you find problems, or
-better ways of doing things. You can reach us by e-mail at
+better ways of doing things. You can reach us by e-mail at
pgsqlrpms-hackers@pgfoundry.org
-
-SUSE products usually ship with the latest version of PostgreSQL that
-was available at the time they were released. RPMs for newer versions
-of PostgreSQL can be found on the SUSE FTP server and it's mirrors.
-
-ftp://ftp.suse.com/pub/projects/postgresql
-http://www.novell.com/products/linuxprofessional/downloads/ftp/int_mirrors.html
-------------------------------------------------------------------------------
diff --git a/postgresql-ac-version.patch b/postgresql-ac-version.patch
index 05e3fb0..9782d13 100644
--- a/postgresql-ac-version.patch
+++ b/postgresql-ac-version.patch
@@ -4,17 +4,17 @@ for PostgreSQL, but it's not very tenable in the Fedora/RHEL world.
Dike out the check.
-diff -Naur postgresql-8.3.7.orig/configure.in postgresql-8.3.7/configure.in
---- postgresql-8.3.7.orig/configure.in 2008-09-18 23:04:12.000000000 -0400
-+++ postgresql-8.3.7/configure.in 2008-09-25 10:26:10.000000000 -0400
+diff -Naur postgresql-8.4.0.orig/configure.in postgresql-8.4.0/configure.in
+--- postgresql-8.4.0.orig/configure.in 2009-06-26 20:14:47.000000000 -0400
++++ postgresql-8.4.0/configure.in 2009-08-12 23:09:31.000000000 -0400
@@ -19,10 +19,6 @@
- AC_INIT([PostgreSQL], [8.3.7], [pgsql-bugs@postgresql.org])
+ AC_INIT([PostgreSQL], [8.4.0], [pgsql-bugs@postgresql.org])
--m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.59], [], [m4_fatal([Autoconf version 2.59 is required.
+-m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.61], [], [m4_fatal([Autoconf version 2.61 is required.
-Untested combinations of 'autoconf' and PostgreSQL versions are not
-recommended. You can remove the check from 'configure.in' but it is then
-your responsibility whether the result works or not.])])
- AC_COPYRIGHT([Copyright (c) 1996-2008, PostgreSQL Global Development Group])
+ AC_COPYRIGHT([Copyright (c) 1996-2009, PostgreSQL Global Development Group])
AC_CONFIG_SRCDIR([src/backend/access/common/heaptuple.c])
AC_CONFIG_AUX_DIR(config)
diff --git a/postgresql-logging.patch b/postgresql-logging.patch
index 2fa8ed3..b6bd368 100644
--- a/postgresql-logging.patch
+++ b/postgresql-logging.patch
@@ -1,7 +1,10 @@
-diff -Naur postgresql-8.3RC2.orig/src/backend/utils/misc/postgresql.conf.sample postgresql-8.3RC2/src/backend/utils/misc/postgresql.conf.sample
---- postgresql-8.3RC2.orig/src/backend/utils/misc/postgresql.conf.sample 2008-01-09 21:50:01.000000000 -0500
-+++ postgresql-8.3RC2/src/backend/utils/misc/postgresql.conf.sample 2008-01-18 11:44:08.000000000 -0500
-@@ -237,17 +237,17 @@
+Select stderr-based logging with a week's worth of daily logfiles.
+
+
+diff -Naur postgresql-8.4.0.orig/src/backend/utils/misc/postgresql.conf.sample postgresql-8.4.0/src/backend/utils/misc/postgresql.conf.sample
+--- postgresql-8.4.0.orig/src/backend/utils/misc/postgresql.conf.sample 2009-04-22 20:23:45.000000000 -0400
++++ postgresql-8.4.0/src/backend/utils/misc/postgresql.conf.sample 2009-08-12 23:20:46.000000000 -0400
+@@ -236,17 +236,17 @@
# requires logging_collector to be on.
# This is used when logging to stderr:
@@ -23,15 +26,15 @@ diff -Naur postgresql-8.3RC2.orig/src/backend/utils/misc/postgresql.conf.sample
# same name as the new log file will be
# truncated rather than appended to.
# But such truncation only occurs on
-@@ -255,9 +255,9 @@
+@@ -254,9 +254,9 @@
# or size-driven rotation. Default is
# off, meaning append to existing files
# in all cases.
-#log_rotation_age = 1d # Automatic rotation of logfiles will
+log_rotation_age = 1d # Automatic rotation of logfiles will
- # happen after that time. 0 to disable.
+ # happen after that time. 0 disables.
-#log_rotation_size = 10MB # Automatic rotation of logfiles will
+log_rotation_size = 0 # Automatic rotation of logfiles will
# happen after that much log output.
- # 0 to disable.
+ # 0 disables.
diff --git a/postgresql-perl-rpath.patch b/postgresql-perl-rpath.patch
index 74484c4..26634b7 100644
--- a/postgresql-perl-rpath.patch
+++ b/postgresql-perl-rpath.patch
@@ -7,12 +7,12 @@ So work around it by adding an rpath spec to plperl.so (only).
Per bug #162198.
-diff -Naur postgresql-8.2.0.orig/src/pl/plperl/GNUmakefile postgresql-8.2.0/src/pl/plperl/GNUmakefile
---- postgresql-8.2.0.orig/src/pl/plperl/GNUmakefile 2006-07-20 20:24:04.000000000 -0400
-+++ postgresql-8.2.0/src/pl/plperl/GNUmakefile 2006-12-04 20:00:56.000000000 -0500
-@@ -36,6 +36,9 @@
+diff -Naur postgresql-8.4.0.orig/src/pl/plperl/GNUmakefile postgresql-8.4.0/src/pl/plperl/GNUmakefile
+--- postgresql-8.4.0.orig/src/pl/plperl/GNUmakefile 2009-06-05 14:29:56.000000000 -0400
++++ postgresql-8.4.0/src/pl/plperl/GNUmakefile 2009-08-12 23:28:57.000000000 -0400
+@@ -38,6 +38,9 @@
- SHLIB_LINK = $(perl_embed_ldflags) $(BE_DLLLIBS)
+ SHLIB_LINK = $(perl_embed_ldflags)
+# Force rpath to be used even though we disable it everywhere else
+SHLIB_LINK += $(rpath)
diff --git a/postgresql-test.patch b/postgresql-test.patch
deleted file mode 100644
index 5b1d6f4..0000000
--- a/postgresql-test.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-In the postgresql-test RPM, the contrib .so's that are used by the tests
-are installed right in the directory where the tests are run. We must
-adjust the CREATE FUNCTION commands accordingly. Note that this also
-means that the specfile has to copy the .so's into the test directory
-while doing the in-build-tree regression tests.
-
-
-diff -Naur postgresql-8.3RC2.orig/src/test/regress/input/create_function_1.source postgresql-8.3RC2/src/test/regress/input/create_function_1.source
---- postgresql-8.3RC2.orig/src/test/regress/input/create_function_1.source 2006-02-27 11:09:50.000000000 -0500
-+++ postgresql-8.3RC2/src/test/regress/input/create_function_1.source 2008-01-18 13:38:51.000000000 -0500
-@@ -24,17 +24,17 @@
-
- CREATE FUNCTION check_primary_key ()
- RETURNS trigger
-- AS '@abs_builddir@/../../../contrib/spi/refint@DLSUFFIX@'
-+ AS '@abs_builddir@/refint@DLSUFFIX@'
- LANGUAGE C;
-
- CREATE FUNCTION check_foreign_key ()
- RETURNS trigger
-- AS '@abs_builddir@/../../../contrib/spi/refint@DLSUFFIX@'
-+ AS '@abs_builddir@/refint@DLSUFFIX@'
- LANGUAGE C;
-
- CREATE FUNCTION autoinc ()
- RETURNS trigger
-- AS '@abs_builddir@/../../../contrib/spi/autoinc@DLSUFFIX@'
-+ AS '@abs_builddir@/autoinc@DLSUFFIX@'
- LANGUAGE C;
-
- CREATE FUNCTION funny_dup17 ()
-diff -Naur postgresql-8.3RC2.orig/src/test/regress/output/create_function_1.source postgresql-8.3RC2/src/test/regress/output/create_function_1.source
---- postgresql-8.3RC2.orig/src/test/regress/output/create_function_1.source 2007-06-18 17:40:58.000000000 -0400
-+++ postgresql-8.3RC2/src/test/regress/output/create_function_1.source 2008-01-18 13:38:51.000000000 -0500
-@@ -25,15 +25,15 @@
- NOTICE: argument type city_budget is only a shell
- CREATE FUNCTION check_primary_key ()
- RETURNS trigger
-- AS '@abs_builddir@/../../../contrib/spi/refint@DLSUFFIX@'
-+ AS '@abs_builddir@/refint@DLSUFFIX@'
- LANGUAGE C;
- CREATE FUNCTION check_foreign_key ()
- RETURNS trigger
-- AS '@abs_builddir@/../../../contrib/spi/refint@DLSUFFIX@'
-+ AS '@abs_builddir@/refint@DLSUFFIX@'
- LANGUAGE C;
- CREATE FUNCTION autoinc ()
- RETURNS trigger
-- AS '@abs_builddir@/../../../contrib/spi/autoinc@DLSUFFIX@'
-+ AS '@abs_builddir@/autoinc@DLSUFFIX@'
- LANGUAGE C;
- CREATE FUNCTION funny_dup17 ()
- RETURNS trigger
diff --git a/postgresql.init b/postgresql.init
index adb395a..f273ac5 100644
--- a/postgresql.init
+++ b/postgresql.init
@@ -67,10 +67,15 @@
# Version 8.2 Devrim Gunduz <devrim@CommandPrompt.com>
# Set initdb as a seperate option.
-# PGVERSION is the full package version, e.g., 8.2.0
+# Version 8.3 Devrim Gunduz <devrim@CommandPrompt.com>
+
+# Version 8.4 Devrim Gunduz <devrim@CommandPrompt.com>
+# Remove "sameuser" from initdb, to match the new hba conf file.
+
+# PGVERSION is the full package version, e.g., 8.4.0
# Note: the specfile ordinarily updates this during install
PGVERSION=xxxx
-# PGMAJORVERSION is major version, e.g., 8.2 (this should match PG_VERSION)
+# PGMAJORVERSION is major version, e.g., 8.4 (this should match PG_VERSION)
PGMAJORVERSION=`echo "$PGVERSION" | sed 's/^\([0-9]*\.[0-9]*\).*$/\1/'`
# Source function library.
@@ -101,13 +106,7 @@ fi
# Set defaults for configuration variables
PGENGINE=/usr/bin
PGPORT=5432
-PGDATA=/var/lib/pgsql
-if [ -f "$PGDATA/PG_VERSION" ] && [ -d "$PGDATA/base/template1" ]
-then
- echo "Using old-style directory structure"
-else
- PGDATA=/var/lib/pgsql/data
-fi
+PGDATA=/var/lib/pgsql/data
PGLOG=/var/lib/pgsql/pgstartup.log
# Override defaults from /etc/sysconfig/pgsql if file is present
@@ -245,7 +244,7 @@ initdb(){
# Clean up SELinux tagging for PGDATA
[ -x /sbin/restorecon ] && /sbin/restorecon "$PGDATA"
# Initialize the database
- $SU -l postgres -c "$PGENGINE/initdb --pgdata='$PGDATA' --auth='ident sameuser'" >> "$PGLOG" 2>&1 < /dev/null
+ $SU -l postgres -c "$PGENGINE/initdb --pgdata='$PGDATA' --auth='ident'" >> "$PGLOG" 2>&1 < /dev/null
# Create directory for postmaster log
mkdir "$PGDATA/pg_log"
chown postgres:postgres "$PGDATA/pg_log"
diff --git a/postgresql.spec b/postgresql.spec
index 93f87f5..9c3cc02 100755
--- a/postgresql.spec
+++ b/postgresql.spec
@@ -1,25 +1,6 @@
-# Conventions for PostgreSQL Global Development Group RPM releases:
-
-# Official PostgreSQL Development Group RPMS have a PGDG after the release number.
-# Integer releases are stable -- 0.1.x releases are Pre-releases, and x.y are
-# test releases.
-
-# Pre-releases are those that are built from CVS snapshots or pre-release
-# tarballs from postgresql.org. Official beta releases are not
-# considered pre-releases, nor are release candidates, as their beta or
-# release candidate status is reflected in the version of the tarball. Pre-
-# releases' versions do not change -- the pre-release tarball of 7.0.3, for
-# example, has the same tarball version as the final official release of 7.0.3:
-# but the tarball is different.
-
-# Test releases are where PostgreSQL itself is not in beta, but certain parts of
-# the RPM packaging (such as the spec file, the initscript, etc) are in beta.
-
-# Pre-release RPM's should not be put up on the public ftp.postgresql.org server
-# -- only test releases or full releases should be.
# This is the PostgreSQL Global Development Group Official RPMset spec file,
# or a derivative thereof.
-# Copyright 2003 Lamar Owen <lowen@pari.edu> <lamar.owen@wgcr.org>
+# Copyright 2003-2009 Lamar Owen <lowen@pari.edu> <lamar.owen@wgcr.org>
# and others listed.
# Major Contributors:
@@ -41,18 +22,12 @@
# 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:
+# 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.
-
-#build7x, build8, and build9 similar
-%{?build7x:%define tcldevel 0}
-%{?build7x:%define aconfver autoconf-2.53}
-%{?build8:%define build89 1}
-%{?build8:%define tcldevel 0}
-%{?build9:%define build89 1}
+# 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}
@@ -83,8 +58,9 @@
Summary: PostgreSQL client programs and libraries
Name: postgresql
-Version: 8.3.7
-Release: 2%{?dist}
+%define majorversion 8.4
+Version: 8.4.0
+Release: 1%{?dist}
License: BSD
Group: Applications/Databases
Url: http://www.postgresql.org/
@@ -98,7 +74,7 @@ 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.3.7-US.pdf
+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
@@ -106,7 +82,6 @@ Source20: http://pgfoundry.org/projects/pgtclng/pgtcldocs-20070115.zip
Patch1: rpm-pgsql.patch
Patch2: postgresql-ac-version.patch
Patch3: postgresql-logging.patch
-Patch4: postgresql-test.patch
Patch5: pgtcl-no-rpath.patch
Patch6: postgresql-perl-rpath.patch
@@ -185,7 +160,7 @@ 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 remote PostgreSQL
+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.
@@ -228,8 +203,8 @@ 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,
-the FAQ, and source files for the PostgreSQL tutorial.
+PostgreSQL. Currently, this includes the main documentation in PDF format
+and source files for the PostgreSQL tutorial.
%package contrib
@@ -256,7 +231,6 @@ 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
@@ -272,7 +246,6 @@ 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
@@ -287,7 +260,6 @@ 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
@@ -302,7 +274,6 @@ 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
@@ -318,7 +289,6 @@ 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
@@ -335,7 +305,6 @@ developers to use when writing Python code for accessing a PostgreSQL
database.
%endif
-#----------
%if %test
%package test
Summary: The test suite distributed with PostgreSQL
@@ -357,7 +326,6 @@ system, including regression tests and benchmarks.
%patch1 -p1
%patch2 -p1
%patch3 -p1
-%patch4 -p1
# patch5 is applied later
%patch6 -p1
@@ -402,10 +370,6 @@ CFLAGS=`echo $CFLAGS|xargs -n 1|grep -v ffast-math|xargs -n 100`
CFLAGS=`echo $CFLAGS| sed -e "s|-O2|-O1|g" `
%endif
-# Use --as-needed to eliminate unnecessary link dependencies.
-# NB: Postgres 8.4 will do this for itself.
-LDFLAGS="-Wl,--as-needed"; export LDFLAGS
-
%configure --disable-rpath \
%if %beta
--enable-debug \
@@ -466,11 +430,8 @@ rm -f src/tutorial/GNUmakefile
%if %runselftest
pushd src/test/regress
make all
- cp ../../../contrib/spi/refint.so .
- cp ../../../contrib/spi/autoinc.so .
make MAX_CONNECTIONS=5 check
make clean
- rm refint.so autoinc.so
popd
%endif
@@ -572,8 +533,6 @@ install -d -m 700 $RPM_BUILD_ROOT/etc/sysconfig/pgsql
# Makefiles, however.
mkdir -p $RPM_BUILD_ROOT%{_libdir}/pgsql/test
cp -a src/test/regress $RPM_BUILD_ROOT%{_libdir}/pgsql/test
- install -m 0755 contrib/spi/refint.so $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress
- install -m 0755 contrib/spi/autoinc.so $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress
pushd $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress
strip *.so
rm -f GNUmakefile Makefile *.o
@@ -597,21 +556,44 @@ rm -rf $RPM_BUILD_ROOT%{_docdir}/pgsql
popd
%endif
-%find_lang libpq
-%find_lang initdb
-%find_lang pg_config
-%find_lang pg_ctl
-%find_lang pg_dump
-%find_lang postgres
-%find_lang psql
-%find_lang pg_resetxlog
-%find_lang pg_controldata
-%find_lang pgscripts
-
-cat libpq.lang > libpq.lst
-cat pg_config.lang > pg_config.lst
-cat initdb.lang pg_ctl.lang psql.lang pg_dump.lang pgscripts.lang > main.lst
-cat postgres.lang pg_resetxlog.lang pg_controldata.lang > server.lst
+%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
@@ -672,7 +654,7 @@ rm -rf $RPM_BUILD_ROOT
%files -f main.lst
%defattr(-,root,root)
-%doc doc/FAQ doc/KNOWN_BUGS doc/MISSING_FEATURES doc/README*
+%doc doc/KNOWN_BUGS doc/MISSING_FEATURES doc/README*
%doc COPYRIGHT README HISTORY doc/bug.template
%doc README.rpm-dist
%doc doc/html
@@ -707,7 +689,6 @@ rm -rf $RPM_BUILD_ROOT
%files docs
%defattr(-,root,root)
-%doc doc/src/FAQ
%doc *-US.pdf
%{_libdir}/pgsql/tutorial/
@@ -716,8 +697,11 @@ rm -rf $RPM_BUILD_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
@@ -726,7 +710,6 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/pgsql/fuzzystrmatch.so
%{_libdir}/pgsql/hstore.so
%{_libdir}/pgsql/insert_username.so
-%{_libdir}/pgsql/int_aggregate.so
%{_libdir}/pgsql/isn.so
%{_libdir}/pgsql/lo.so
%{_libdir}/pgsql/ltree.so
@@ -738,6 +721,7 @@ rm -rf $RPM_BUILD_ROOT
%{_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
@@ -756,9 +740,9 @@ rm -rf $RPM_BUILD_ROOT
%{_bindir}/pg_standby
%{_bindir}/pgbench
%{_bindir}/vacuumlo
-%doc contrib/*/README.* contrib/spi/*.example
+%doc contrib/spi/*.example
-%files libs -f libpq.lang
+%files libs -f libs.lst
%defattr(-,root,root)
%{_libdir}/libpq.so.*
%{_libdir}/libecpg.so.*
@@ -773,14 +757,12 @@ rm -rf $RPM_BUILD_ROOT
%endif
%attr (755,root,root) %dir /etc/sysconfig/pgsql
%{_bindir}/initdb
-%{_bindir}/ipcclean
%{_bindir}/pg_controldata
%{_bindir}/pg_ctl
%{_bindir}/pg_resetxlog
%{_bindir}/postgres
%{_bindir}/postmaster
%{_mandir}/man1/initdb.*
-%{_mandir}/man1/ipcclean.*
%{_mandir}/man1/pg_controldata.*
%{_mandir}/man1/pg_ctl.*
%{_mandir}/man1/pg_resetxlog.*
@@ -806,7 +788,7 @@ rm -rf $RPM_BUILD_ROOT
%{_datadir}/pgsql/snowball_create.sql
%{_datadir}/pgsql/sql_features.txt
-%files devel -f pg_config.lst
+%files devel -f devel.lst
%defattr(-,root,root)
/usr/include/*
%{_bindir}/ecpg
@@ -832,13 +814,13 @@ rm -rf $RPM_BUILD_ROOT
%endif
%if %plperl
-%files plperl
+%files plperl -f plperl.lst
%defattr(-,root,root)
%{_libdir}/pgsql/plperl.so
%endif
%if %pltcl
-%files pltcl
+%files pltcl -f pltcl.lst
%defattr(-,root,root)
%{_libdir}/pgsql/pltcl.so
%{_bindir}/pltcl_delmod
@@ -848,7 +830,7 @@ rm -rf $RPM_BUILD_ROOT
%endif
%if %plpython
-%files plpython
+%files plpython -f plpython.lst
%defattr(-,root,root)
%{_libdir}/pgsql/plpython.so
%endif
@@ -870,6 +852,10 @@ rm -rf $RPM_BUILD_ROOT
%endif
%changelog
+* Mon Aug 17 2009 Tom Lane <tgl@redhat.com> 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 <rel-eng@lists.fedoraproject.org> - 8.3.7-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
diff --git a/rpm-pgsql.patch b/rpm-pgsql.patch
index ee77427..e595db7 100644
--- a/rpm-pgsql.patch
+++ b/rpm-pgsql.patch
@@ -1,7 +1,11 @@
-diff -Naur postgresql-8.1.0.orig/src/Makefile.global.in postgresql-8.1.0/src/Makefile.global.in
---- postgresql-8.1.0.orig/src/Makefile.global.in 2005-09-27 13:39:32.000000000 -0400
-+++ postgresql-8.1.0/src/Makefile.global.in 2005-11-07 14:58:59.000000000 -0500
-@@ -53,7 +53,7 @@
+For the RPMs, we want the custom installation directories to end in
+/pgsql not /postgresql. This is historical but not worth changing.
+
+
+diff -Naur postgresql-8.4.0.orig/src/Makefile.global.in postgresql-8.4.0/src/Makefile.global.in
+--- postgresql-8.4.0.orig/src/Makefile.global.in 2009-06-22 23:46:00.000000000 -0400
++++ postgresql-8.4.0/src/Makefile.global.in 2009-08-12 23:14:53.000000000 -0400
+@@ -54,7 +54,7 @@
# Installation directories
#
# These are set by the equivalent --xxxdir configure options. We
@@ -10,7 +14,7 @@ diff -Naur postgresql-8.1.0.orig/src/Makefile.global.in postgresql-8.1.0/src/Mak
# contain "pgsql" or "postgres", in order to avoid directory clutter.
#
# In a PGXS build, we cannot use the values inserted into Makefile.global
-@@ -73,14 +73,14 @@
+@@ -75,14 +75,14 @@
datadir := @datadir@
ifeq "$(findstring pgsql, $(datadir))" ""
ifeq "$(findstring postgres, $(datadir))" ""
@@ -27,7 +31,7 @@ diff -Naur postgresql-8.1.0.orig/src/Makefile.global.in postgresql-8.1.0/src/Mak
endif
endif
-@@ -89,7 +89,7 @@
+@@ -91,7 +91,7 @@
pkglibdir = $(libdir)
ifeq "$(findstring pgsql, $(pkglibdir))" ""
ifeq "$(findstring postgres, $(pkglibdir))" ""
@@ -36,7 +40,7 @@ diff -Naur postgresql-8.1.0.orig/src/Makefile.global.in postgresql-8.1.0/src/Mak
endif
endif
-@@ -98,7 +98,7 @@
+@@ -100,7 +100,7 @@
pkgincludedir = $(includedir)
ifeq "$(findstring pgsql, $(pkgincludedir))" ""
ifeq "$(findstring postgres, $(pkgincludedir))" ""
@@ -46,11 +50,11 @@ diff -Naur postgresql-8.1.0.orig/src/Makefile.global.in postgresql-8.1.0/src/Mak
endif
@@ -109,7 +109,7 @@
- ifneq (,$(docdir))
+ docdir := @docdir@
ifeq "$(findstring pgsql, $(docdir))" ""
ifeq "$(findstring postgres, $(docdir))" ""
-override docdir := $(docdir)/postgresql
+override docdir := $(docdir)/pgsql
endif
endif
- endif
+
diff --git a/sources b/sources
index bba3c17..046a91f 100644
--- a/sources
+++ b/sources
@@ -1,5 +1,5 @@
-7b7e91a2221e55fe1b167e663217a96d postgresql-8.3.7.tar.bz2
+1f172d5f60326e972837f58fa5acd130 postgresql-8.4.0.tar.bz2
5575979dac93c9c5795d7693a8f91c86 PyGreSQL-3.8.1.tgz
abf26e3cd7f8229f468045ed1fb7e748 pgtcl1.6.2.tar.gz
8ce98e93b238c3329d0fe43810442c44 pgtcldocs-20070115.zip
-cf36036b0a973f793b2ba25dfdbcf879 postgresql-8.3.7-US.pdf
+bbed2a7dad711eef335701391b9f112d postgresql-8.4.0-US.pdf