396089
# This is the PostgreSQL Global Development Group Official RPMset spec file,
396089
# or a derivative thereof.
396089
# Copyright 2003-2009 Lamar Owen <lowen@pari.edu> <lamar.owen@wgcr.org>
396089
# and others listed.                 ** vi: ts=4 sw=4 noexpandtab nosmarttab
396089
396089
# Major Contributors:
396089
# ---------------
396089
# Lamar Owen
396089
# Trond Eivind Glomsrd <teg@redhat.com>
396089
# Thomas Lockhart
396089
# Reinhard Max
396089
# Karl DeBisschop
396089
# Peter Eisentraut
396089
# Joe Conway
396089
# Andrew Overholt
396089
# David Jee
396089
# Kaj J. Niemi
396089
# Sander Steffann
396089
# Tom Lane
396089
# and others in the Changelog....
396089
396089
# This spec file and ancillary files are licensed in accordance with
396089
# The PostgreSQL license.
396089
396089
# In this file you can find the default build package list macros.
396089
# These can be overridden by defining on the rpm command line:
396089
# rpm --define 'packagename 1' .... to force the package to build.
396089
# rpm --define 'packagename 0' .... to force the package NOT to build.
396089
# The base package, the libs package, the devel package, and the server package
396089
# always get built.
396089
396089
%{!?beta:%global beta 0}
396089
396089
%{!?test:%global test 1}
396089
# Disable temporarily to be able to build the package
396089
# tracked in RHBZ#1940964
396089
%{!?llvmjit:%global llvmjit 0}
396089
%{!?external_libpq:%global external_libpq 0}
396089
%{!?upgrade:%global upgrade 1}
396089
%{!?plpython3:%global plpython3 1}
396089
%{!?pltcl:%global pltcl 1}
396089
%{!?plperl:%global plperl 1}
396089
%{!?ssl:%global ssl 1}
396089
%{!?icu:%global icu 1}
396089
%{!?kerberos:%global kerberos 1}
396089
%{!?ldap:%global ldap 1}
396089
%{!?nls:%global nls 1}
396089
%{!?uuid:%global uuid 1}
396089
%{!?xml:%global xml 1}
396089
%{!?pam:%global pam 1}
396089
%{!?sdt:%global sdt 1}
396089
%{!?selinux:%global selinux 1}
396089
%{!?runselftest:%global runselftest 1}
396089
396089
# By default, patch(1) creates backup files when chunks apply with offsets.
396089
# Turn that off to ensure such files don't get included in RPMs.
396089
%global _default_patch_flags --no-backup-if-mismatch
396089
396089
# https://fedoraproject.org/wiki/Packaging:Guidelines#Packaging_of_Additional_RPM_Macros
396089
%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)
396089
396089
Summary: PostgreSQL client programs
396089
Name: postgresql
396089
%global majorversion 15
396089
Version: %{majorversion}.2
396089
Release: 1%{?dist}
396089
396089
# The PostgreSQL license is very similar to other MIT licenses, but the OSI
396089
# recognizes it as an independent license, so we do as well.
396089
License: PostgreSQL
396089
Url: http://www.postgresql.org/
396089
396089
# This SRPM includes a copy of the previous major release, which is needed for
396089
# in-place upgrade of an old database.  In most cases it will not be critical
396089
# that this be kept up with the latest minor release of the previous series;
396089
# but update when bugs affecting pg_dump output are fixed.
396089
%global prevmajorversion 13
396089
%global prevversion %{prevmajorversion}.7
396089
%global prev_prefix %{_libdir}/pgsql/postgresql-%{prevmajorversion}
396089
%global precise_version %{?epoch:%epoch:}%version-%release
396089
396089
%global setup_version 8.8
396089
396089
%global service_name postgresql.service
396089
396089
Source0: https://ftp.postgresql.org/pub/source/v%{version}/postgresql-%{version}.tar.bz2
396089
# The PDF file is generated by generate-pdf.sh, which see for comments
396089
Source1: postgresql-%{version}-US.pdf
396089
# generate-pdf.sh is not used during RPM build, but include for documentation
396089
Source2: generate-pdf.sh
396089
Source3: https://ftp.postgresql.org/pub/source/v%{prevversion}/postgresql-%{prevversion}.tar.bz2
396089
Source4: Makefile.regress
396089
Source9: postgresql.tmpfiles.d
396089
Source10: postgresql.pam
396089
Source11: postgresql-bashprofile
396089
396089
396089
# git: https://github.com/devexp-db/postgresql-setup
396089
Source12: https://github.com/devexp-db/postgresql-setup/releases/download/v%{setup_version}/postgresql-setup-%{setup_version}.tar.gz
396089
396089
# Those here are just to enforce packagers check that the tarball was downloaded
396089
# correctly.  Also, this allows us check that packagers-only tarballs do not
396089
# differ with publicly released ones.
396089
Source16: https://ftp.postgresql.org/pub/source/v%{version}/postgresql-%{version}.tar.bz2.sha256
396089
Source17: https://ftp.postgresql.org/pub/source/v%{prevversion}/postgresql-%{prevversion}.tar.bz2.sha256
396089
396089
# Comments for these patches are in the patch files.
396089
Patch1: rpm-pgsql.patch
396089
Patch2: postgresql-logging.patch
396089
Patch5: postgresql-var-run-socket.patch
396089
Patch8: postgresql-external-libpq.patch
396089
Patch9: postgresql-server-pg_config.patch
396089
Patch12: postgresql-no-libecpg.patch
396089
396089
BuildRequires: make
396089
BuildRequires: gcc
396089
BuildRequires: perl(ExtUtils::MakeMaker) glibc-devel bison flex gawk
396089
BuildRequires: perl(ExtUtils::Embed), perl-devel
396089
BuildRequires: perl(Opcode)
396089
%if 0%{?fedora} || 0%{?rhel} > 7
396089
BuildRequires: perl-generators
396089
%endif
396089
BuildRequires: readline-devel zlib-devel
396089
BuildRequires: systemd systemd-devel util-linux
396089
BuildRequires: multilib-rpm-config
396089
%if %external_libpq
396089
BuildRequires: libpq-devel >= %version
396089
%endif
396089
BuildRequires: docbook-style-xsl
396089
396089
# postgresql-setup build requires
396089
BuildRequires: m4 elinks docbook-utils help2man
396089
396089
%if %plpython3
396089
BuildRequires: python3-devel
396089
%endif
396089
396089
%if %pltcl
396089
BuildRequires: tcl-devel
396089
%endif
396089
396089
%if %ssl
396089
BuildRequires: openssl-devel
396089
%endif
396089
396089
%if %kerberos
396089
BuildRequires: krb5-devel
396089
%endif
396089
396089
%if %ldap
396089
BuildRequires: openldap-devel
396089
%endif
396089
396089
%if %nls
396089
BuildRequires: gettext >= 0.10.35
396089
%endif
396089
396089
%if %uuid
396089
BuildRequires: uuid-devel
396089
%endif
396089
396089
%if %xml
396089
BuildRequires: libxml2-devel libxslt-devel
396089
%endif
396089
396089
%if %pam
396089
BuildRequires: pam-devel
396089
%endif
396089
396089
%if %sdt
396089
BuildRequires: systemtap-sdt-devel
396089
%endif
396089
396089
%if %selinux
396089
BuildRequires: libselinux-devel
396089
%endif
396089
396089
%if %icu
396089
BuildRequires:	libicu-devel
396089
%endif
396089
396089
# https://bugzilla.redhat.com/1464368
396089
# and do not provide pkgconfig RPM provides (RHBZ#1980992)
396089
%global __provides_exclude_from %{_libdir}/(pgsql|pkgconfig)
396089
396089
%description
396089
PostgreSQL is an advanced Object-Relational database management system (DBMS).
396089
The base postgresql package contains the client programs that you'll need to
396089
access a PostgreSQL DBMS server, as well as HTML documentation for the whole
396089
system.  These client programs can be located on the same machine as the
396089
PostgreSQL server, or on a remote machine that accesses a PostgreSQL server
396089
over a network connection.  The PostgreSQL server can be found in the
396089
postgresql-server sub-package.
396089
396089
396089
%if ! %external_libpq
396089
%package private-libs
396089
Summary: The shared libraries required only for this build of PostgreSQL server
396089
Group: Applications/Databases
396089
# for /sbin/ldconfig
396089
Requires(post): glibc
396089
Requires(postun): glibc
396089
396089
%description private-libs
396089
The postgresql-private-libs package provides the shared libraries for this
396089
build of PostgreSQL server and plugins build with this version of server.
396089
For shared libraries used by client packages that need to connect to a
396089
PostgreSQL server, install libpq package instead.
396089
396089
396089
%package private-devel
396089
Summary: PostgreSQL development header files for this build of PostgreSQL server
396089
Group: Development/Libraries
396089
Requires: %{name}-private-libs%{?_isa} = %precise_version
396089
# Conflict is desired here, a user must pick one or another
396089
Conflicts: libpq-devel
396089
396089
%description private-devel
396089
The postgresql-private-devel package contains the header files and libraries
396089
needed to compile C or C++ applications which will directly interact
396089
with a PostgreSQL database management server.
396089
You need to install this package if you want to develop applications which
396089
will interact with a PostgreSQL server.
396089
%endif
396089
396089
396089
%package server
396089
Summary: The programs needed to create and run a PostgreSQL server
396089
Requires: %{name}%{?_isa} = %precise_version
396089
Requires(pre): /usr/sbin/useradd
396089
# We require this to be present for %%{_prefix}/lib/tmpfiles.d
396089
Requires: systemd
396089
# Make sure it's there when scriptlets run, too
396089
%{?systemd_requires}
396089
# Packages which provide postgresql plugins should build-require
396089
# postgresql-server-devel and require
396089
# postgresql-server(:MODULE_COMPAT_%%{postgresql_major}).
396089
# This will automatically guard against incompatible server & plugin
396089
# installation (#1008939, #1007840)
396089
Provides: %{name}-server(:MODULE_COMPAT_%{majorversion})
396089
Provides: bundled(postgresql-setup) = %setup_version
396089
396089
%description server
396089
PostgreSQL is an advanced Object-Relational database management system (DBMS).
396089
The postgresql-server package contains the programs needed to create
396089
and run a PostgreSQL server, which will in turn allow you to create
396089
and maintain PostgreSQL databases.
396089
396089
396089
%package docs
396089
Summary: Extra documentation for PostgreSQL
396089
Requires: %{name}%{?_isa} = %precise_version
396089
# Just for more intuitive documentation installation
396089
Provides: %{name}-doc = %precise_version
396089
396089
%description docs
396089
The postgresql-docs package contains some additional documentation for
396089
PostgreSQL.  Currently, this includes the main documentation in PDF format
396089
and source files for the PostgreSQL tutorial.
396089
396089
396089
%package contrib
396089
Summary: Extension modules distributed with PostgreSQL
396089
Requires: %{name}%{?_isa} = %precise_version
396089
396089
%description contrib
396089
The postgresql-contrib package contains various extension modules that are
396089
included in the PostgreSQL distribution.
396089
396089
396089
%package server-devel
396089
Summary: PostgreSQL development header files and libraries
396089
%if %icu
396089
Requires:	libicu-devel
396089
%endif
396089
%if %kerberos
396089
Requires: krb5-devel
396089
%endif
396089
%if %llvmjit
396089
Requires: clang-devel llvm-devel
396089
%endif
396089
%if %external_libpq
396089
# Some extensions require libpq
396089
# Do not make them care about whether server uses private or system-wide
396089
# libpq, simply let the server pull the correct one
396089
Requires: libpq-devel
396089
%else
396089
Requires: %{name}-private-devel
396089
%endif
396089
396089
%description server-devel
396089
The postgresql-server-devel package contains the header files and configuration
396089
needed to compile PostgreSQL server extension.
396089
396089
%package test-rpm-macros
396089
Summary: Convenience RPM macros for build-time testing against PostgreSQL server
396089
Requires: %{name}-server = %precise_version
396089
BuildArch: noarch
396089
396089
%description test-rpm-macros
396089
This package is meant to be added as BuildRequires: dependency of other packages
396089
that want to run build-time testsuite against running PostgreSQL server.
396089
396089
396089
%package static
396089
Summary: Statically linked PostgreSQL libraries
396089
Requires: %{name}-server-devel%{?_isa} = %precise_version
396089
396089
%description static
396089
Statically linked PostgreSQL libraries that do not have dynamically linked
396089
counterparts.
396089
396089
396089
%if %upgrade
396089
%package upgrade
396089
Summary: Support for upgrading from the previous major release of PostgreSQL
396089
Requires: %{name}-server%{?_isa} = %precise_version
396089
Provides: bundled(postgresql-server) = %prevversion
396089
396089
%description upgrade
396089
The postgresql-upgrade package contains the pg_upgrade utility and supporting
396089
files needed for upgrading a PostgreSQL database from the previous major
396089
version of PostgreSQL.
396089
396089
396089
%package upgrade-devel
396089
Summary: Support for build of extensions required for upgrade process
396089
Requires: %{name}-upgrade%{?_isa} = %precise_version
396089
396089
%description upgrade-devel
396089
The postgresql-devel package contains the header files and libraries
396089
needed to compile C or C++ applications which are necessary in upgrade
396089
process.
396089
%endif
396089
396089
396089
%if %plperl
396089
%package plperl
396089
Summary: The Perl procedural language for PostgreSQL
396089
Requires: %{name}-server%{?_isa} = %precise_version
396089
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
396089
%if %runselftest
396089
BuildRequires: perl(Opcode)
396089
BuildRequires: perl(Data::Dumper)
396089
%endif
396089
396089
%description plperl
396089
The postgresql-plperl package contains the PL/Perl procedural language,
396089
which is an extension to the PostgreSQL database server.
396089
Install this if you want to write database functions in Perl.
396089
%endif
396089
396089
396089
%if %plpython3
396089
%package plpython3
396089
Summary: The Python3 procedural language for PostgreSQL
396089
Requires: %{name}-server%{?_isa} = %precise_version
396089
396089
%description plpython3
396089
The postgresql-plpython3 package contains the PL/Python3 procedural language,
396089
which is an extension to the PostgreSQL database server.
396089
Install this if you want to write database functions in Python 3.
396089
%endif
396089
396089
396089
%if %pltcl
396089
%package pltcl
396089
Summary: The Tcl procedural language for PostgreSQL
396089
Requires: %{name}-server%{?_isa} = %precise_version
396089
396089
%description pltcl
396089
The postgresql-pltcl package contains the PL/Tcl procedural language,
396089
which is an extension to the PostgreSQL database server.
396089
Install this if you want to write database functions in Tcl.
396089
%endif
396089
396089
396089
%if %test
396089
%package test
396089
Summary: The test suite distributed with PostgreSQL
396089
Requires: %{name}-server%{?_isa} = %precise_version
396089
Requires: %{name}-server-devel%{?_isa} = %precise_version
396089
396089
%description test
396089
The postgresql-test package contains files needed for various tests for the
396089
PostgreSQL database management system, including regression tests and
396089
benchmarks.
396089
%endif
396089
396089
%if %llvmjit
396089
%package llvmjit
396089
Summary:	Just-in-time compilation support for PostgreSQL
396089
Requires:	%{name}-server%{?_isa} = %{version}-%{release}
396089
%if 0%{?rhel} && 0%{?rhel} == 7
396089
Requires:	llvm5.0 >= 5.0
396089
%else
396089
Requires:	llvm => 5.0
396089
%endif
396089
Provides:	postgresql-llvmjit >= %{version}-%{release}
396089
396089
BuildRequires:	llvm-devel >= 5.0 clang-devel >= 5.0
396089
396089
%description llvmjit
396089
The postgresql-llvmjit package contains support for
396089
just-in-time compiling parts of PostgreSQL queries. Using LLVM it
396089
compiles e.g. expressions and tuple deforming into native code, with the
396089
goal of accelerating analytics queries.
396089
%endif
396089
396089
%prep
396089
(
396089
  cd "$(dirname "%{SOURCE0}")"
396089
  sha256sum -c %{SOURCE16}
396089
%if %upgrade
396089
  sha256sum -c %{SOURCE17}
396089
%endif
396089
)
396089
%setup -q -a 12 -n postgresql-%{version}
396089
%patch1 -p1
396089
%patch2 -p1
396089
%patch5 -p1
396089
%if %external_libpq
396089
%patch8 -p1
396089
%else
396089
%patch12 -p1
396089
%endif
396089
%patch9 -p1
396089
396089
# We used to run autoconf here, but there's no longer any real need to,
396089
# since Postgres ships with a reasonably modern configure script.
396089
396089
cp -p %{SOURCE1} .
396089
396089
%if ! %external_libpq
396089
%global private_soname private%{majorversion}
396089
find . -type f -name Makefile -exec sed -i -e "s/SO_MAJOR_VERSION=\s\?\([0-9]\+\)/SO_MAJOR_VERSION= %{private_soname}-\1/" {} \;
396089
%endif
396089
396089
%if %upgrade
396089
tar xfj %{SOURCE3}
396089
396089
# libpq from this upgrade-only build is dropped and the libpq from the main
396089
# version is used. Use the same major hack therefore.
396089
%if ! %external_libpq
396089
find . -type f -name Makefile -exec sed -i -e "s/SO_MAJOR_VERSION=\s\?\([0-9]\+\)/SO_MAJOR_VERSION= %{private_soname}-\1/" {} \;
396089
%endif
396089
396089
# apply once SOURCE3 is extracted
396089
%endif
396089
396089
# remove .gitignore files to ensure none get into the RPMs (bug #642210)
396089
find . -type f -name .gitignore | xargs rm
396089
396089
396089
%build
396089
# Avoid LTO on armv7hl as it runs out of memory
396089
%ifarch armv7hl s390x
396089
%define _lto_cflags %{nil}
396089
%endif
396089
# fail quickly and obviously if user tries to build as root
396089
%if %runselftest
396089
	if [ x"`id -u`" = x0 ]; then
396089
		echo "postgresql's regression tests fail if run as root."
396089
		echo "If you really need to build the RPM as root, use"
396089
		echo "--define='runselftest 0' to skip the regression tests."
396089
		exit 1
396089
	fi
396089
%endif
396089
396089
# Building postgresql-setup
396089
396089
cd postgresql-setup-%{setup_version}
396089
396089
%configure \
396089
    pgdocdir=%{_pkgdocdir} \
396089
    PGVERSION=%{version} \
396089
    PGMAJORVERSION=%{majorversion} \
396089
    NAME_DEFAULT_PREV_SERVICE=postgresql
396089
396089
make %{?_smp_mflags}
396089
cd ..
396089
396089
# Fiddling with CFLAGS.
396089
396089
CFLAGS="${CFLAGS:-%optflags}"
396089
# Strip out -ffast-math from CFLAGS....
396089
CFLAGS=`echo $CFLAGS|xargs -n 1|grep -v ffast-math|xargs -n 100`
396089
export CFLAGS
396089
396089
common_configure_options='
396089
	--disable-rpath
396089
%if %beta
396089
	--enable-debug
396089
	--enable-cassert
396089
%endif
396089
%if %plperl
396089
	--with-perl
396089
%endif
396089
%if %pltcl
396089
	--with-tcl
396089
	--with-tclconfig=%_libdir
396089
%endif
396089
%if %ldap
396089
	--with-ldap
396089
%endif
396089
%if %ssl
396089
	--with-openssl
396089
%endif
396089
%if %pam
396089
	--with-pam
396089
%endif
396089
%if %kerberos
396089
	--with-gssapi
396089
%endif
396089
%if %uuid
396089
	--with-ossp-uuid
396089
%endif
396089
%if %xml
396089
	--with-libxml
396089
	--with-libxslt
396089
%endif
396089
%if %nls
396089
	--enable-nls
396089
%endif
396089
%if %sdt
396089
	--enable-dtrace
396089
%endif
396089
%if %selinux
396089
	--with-selinux
396089
%endif
396089
	--with-system-tzdata=%_datadir/zoneinfo
396089
	--datadir=%_datadir/pgsql
396089
	--with-systemd
396089
%if %icu
396089
	--with-icu
396089
%endif
396089
%if %llvmjit
396089
	--with-llvm
396089
%endif
396089
%if %plpython3
396089
	--with-python
396089
%endif
396089
'
396089
396089
export PYTHON=/usr/bin/python3
396089
396089
# These configure options must match main build
396089
%configure $common_configure_options
396089
396089
%make_build world
396089
396089
# Have to hack makefile to put correct path into tutorial scripts
396089
sed "s|C=\`pwd\`;|C=%{_libdir}/pgsql/tutorial;|" < src/tutorial/Makefile > src/tutorial/GNUmakefile
396089
make %{?_smp_mflags} -C src/tutorial NO_PGXS=1 all
396089
rm -f src/tutorial/GNUmakefile
396089
396089
# The object files shouldn't be copied to rpm bz#1187514
396089
rm -f src/tutorial/*.o
396089
396089
# run_testsuite WHERE
396089
# -------------------
396089
# Run 'make check' in WHERE path.  When that command fails, return the logs
396089
# given by PostgreSQL build system and set 'test_failure=1'.  This function
396089
# never exits directly nor stops rpmbuild where `set -e` is enabled.
396089
run_testsuite()
396089
{
396089
	make -k -C "$1" MAX_CONNECTIONS=5 check && return 0 || test_failure=1
396089
	(
396089
		set +x
396089
		echo "=== trying to find all regression.diffs files in build directory ==="
396089
		find "$1" -name 'regression.diffs' | \
396089
		while read line; do
396089
			echo "=== make failure: $line ==="
396089
			cat "$line"
396089
		done
396089
	)
396089
}
396089
396089
test_failure=0
396089
396089
%if %runselftest
396089
	run_testsuite "src/test/regress"
396089
	make clean -C "src/test/regress"
396089
	run_testsuite "src/pl"
396089
	run_testsuite "contrib"
396089
%endif
396089
396089
# "assert(ALL_TESTS_OK)"
396089
test "$test_failure" -eq 0
396089
396089
%if %test
396089
	# undo the "make clean" above
396089
	make all -C src/test/regress
396089
%endif
396089
396089
%if %upgrade
396089
	pushd postgresql-%{prevversion}
396089
396089
	# The upgrade build can be pretty stripped-down, but make sure that
396089
	# any options that affect on-disk file layout match the previous
396089
	# major release!
396089
396089
	# The set of built server modules here should ideally create superset
396089
	# of modules we used to ship in %%prevversion (in the installation
396089
	# the user will upgrade from), including *-contrib or *-pl*
396089
	# subpackages.  This increases chances that the upgrade from
396089
	# %%prevversion will work smoothly.
396089
396089
upgrade_configure ()
396089
{
396089
	# Note we intentionally do not use %%configure here, because we *don't* want
396089
	# its ideas about installation paths.
396089
396089
	# The -fno-aggressive-loop-optimizations is hack for #993532
396089
	CFLAGS="$CFLAGS -fno-aggressive-loop-optimizations" ./configure \
396089
		--build=%{_build} \
396089
		--host=%{_host} \
396089
		--prefix=%prev_prefix \
396089
		--disable-rpath \
396089
%if %beta
396089
		--enable-debug \
396089
		--enable-cassert \
396089
%endif
396089
%if %icu
396089
		--with-icu \
396089
%endif
396089
%if %plperl
396089
		--with-perl \
396089
%endif
396089
%if %pltcl
396089
		--with-tcl \
396089
%endif
396089
%if %ssl
396089
	    --with-openssl \
396089
%endif
396089
%if %plpython3
396089
		--with-python \
396089
%endif
396089
		--with-tclconfig=%_libdir \
396089
		--with-system-tzdata=/usr/share/zoneinfo \
396089
		"$@"
396089
}
396089
396089
	upgrade_configure \
396089
396089
	make %{?_smp_mflags} all
396089
	make -C contrib %{?_smp_mflags} all
396089
	popd
396089
# endif upgrade
396089
%endif
396089
396089
396089
%install
396089
cd postgresql-setup-%{setup_version}
396089
make install DESTDIR=$RPM_BUILD_ROOT
396089
cd ..
396089
396089
# For some reason, having '%%doc %%{_pkgdocdir}/README.rpm-dist' in %%files
396089
# causes FTBFS (at least on RHEL6), see rhbz#1250006.
396089
mv $RPM_BUILD_ROOT/%{_pkgdocdir}/README.rpm-dist ./
396089
396089
cat > $RPM_BUILD_ROOT%{_sysconfdir}/postgresql-setup/upgrade/postgresql.conf <
396089
id              postgresql
396089
major           %{prevmajorversion}
396089
data_default    %{_localstatedir}/pgsql/data
396089
package         postgresql-upgrade
396089
engine          %{_libdir}/pgsql/postgresql-%{prevmajorversion}/bin
396089
description     "Upgrade data from system PostgreSQL version (PostgreSQL %{prevmajorversion})"
396089
redhat_sockets_hack no
396089
EOF
396089
396089
make DESTDIR=$RPM_BUILD_ROOT install-world
396089
396089
# We ship pg_config through libpq-devel
396089
mv $RPM_BUILD_ROOT/%_mandir/man1/pg_{,server_}config.1
396089
%if %external_libpq
396089
rm $RPM_BUILD_ROOT/%_includedir/pg_config*.h
396089
rm $RPM_BUILD_ROOT/%_includedir/libpq/libpq-fs.h
396089
rm $RPM_BUILD_ROOT/%_includedir/postgres_ext.h
396089
rm -r $RPM_BUILD_ROOT/%_includedir/pgsql/internal/
396089
%else
396089
ln -s pg_server_config $RPM_BUILD_ROOT/%_bindir/pg_config
396089
rm $RPM_BUILD_ROOT/%{_libdir}/libpq.a
396089
%endif
396089
396089
# make sure these directories exist even if we suppressed all contrib modules
396089
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/pgsql/contrib
396089
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/pgsql/extension
396089
396089
# multilib header hack
396089
for header in \
396089
	%{_includedir}/pg_config.h \
396089
	%{_includedir}/pg_config_ext.h
396089
do
396089
%multilib_fix_c_header --file "$header"
396089
done
396089
396089
install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/pgsql/tutorial
396089
cp -p src/tutorial/* $RPM_BUILD_ROOT%{_libdir}/pgsql/tutorial
396089
396089
%if %pam
396089
install -d $RPM_BUILD_ROOT/etc/pam.d
396089
install -m 644 %{SOURCE10} $RPM_BUILD_ROOT/etc/pam.d/postgresql
396089
%endif
396089
396089
# Create the directory for sockets.
396089
install -d -m 755 $RPM_BUILD_ROOT%{?_localstatedir}/run/postgresql
396089
396089
# ... and make a tmpfiles script to recreate it at reboot.
396089
mkdir -p $RPM_BUILD_ROOT%{_tmpfilesdir}
396089
install -m 0644 %{SOURCE9} $RPM_BUILD_ROOT%{_tmpfilesdir}/postgresql.conf
396089
396089
# PGDATA needs removal of group and world permissions due to pg_pwd hole.
396089
install -d -m 700 $RPM_BUILD_ROOT%{?_localstatedir}/lib/pgsql/data
396089
396089
# backups of data go here...
396089
install -d -m 700 $RPM_BUILD_ROOT%{?_localstatedir}/lib/pgsql/backups
396089
396089
# postgres' .bash_profile
396089
install -m 644 %{SOURCE11} $RPM_BUILD_ROOT%{?_localstatedir}/lib/pgsql/.bash_profile
396089
396089
rm $RPM_BUILD_ROOT/%{_datadir}/man/man1/ecpg.1
396089
396089
%if %upgrade
396089
	pushd postgresql-%{prevversion}
396089
	make DESTDIR=$RPM_BUILD_ROOT install
396089
	make -C contrib DESTDIR=$RPM_BUILD_ROOT install
396089
	popd
396089
396089
	# remove stuff we don't actually need for upgrade purposes
396089
	pushd $RPM_BUILD_ROOT%{_libdir}/pgsql/postgresql-%{prevmajorversion}
396089
	rm bin/clusterdb
396089
	rm bin/createdb
396089
	rm bin/createuser
396089
	rm bin/dropdb
396089
	rm bin/dropuser
396089
	rm bin/ecpg
396089
	rm bin/initdb
396089
	rm bin/pg_basebackup
396089
	rm bin/pg_dump
396089
	rm bin/pg_dumpall
396089
	rm bin/pg_restore
396089
	rm bin/pgbench
396089
	rm bin/psql
396089
	rm bin/reindexdb
396089
	rm bin/vacuumdb
396089
	rm -rf share/doc
396089
	rm -rf share/man
396089
	rm -rf share/tsearch_data
396089
	rm lib/*.a
396089
	# Drop libpq.  This might need some tweaks once there's
396089
	# soname bump between %%prevversion and %%version.
396089
	rm lib/libpq.so*
396089
	# Drop libraries.
396089
	rm lib/lib{ecpg,ecpg_compat,pgtypes}.so*
396089
	rm share/*.bki
396089
	rm share/*.sample
396089
	rm share/*.sql
396089
	rm share/*.txt
396089
	rm share/extension/*.sql
396089
	rm share/extension/*.control
396089
	popd
396089
	cat <<EOF > $RPM_BUILD_ROOT%macrosdir/macros.%name-upgrade
396089
%%postgresql_upgrade_prefix %prev_prefix
396089
EOF
396089
%endif
396089
396089
# Let plugins use the same llvmjit settings as server has
396089
cat <<EOF >> $RPM_BUILD_ROOT%macrosdir/macros.%name
396089
%%postgresql_server_llvmjit %llvmjit
396089
EOF
396089
396089
%if %test
396089
	# tests. There are many files included here that are unnecessary,
396089
	# but include them anyway for completeness.  We replace the original
396089
	# Makefiles, however.
396089
	mkdir -p $RPM_BUILD_ROOT%{_libdir}/pgsql/test
396089
	cp -a src/test/regress $RPM_BUILD_ROOT%{_libdir}/pgsql/test
396089
	# pg_regress binary should be only in one subpackage,
396089
	# there will be a symlink from -test to -devel
396089
	rm -f $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress/pg_regress
396089
	ln -sf ../../pgxs/src/test/regress/pg_regress $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress/pg_regress
396089
	pushd  $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress
396089
	rm -f GNUmakefile Makefile *.o
396089
	chmod 0755 pg_regress regress.so
396089
	popd
396089
	sed 's|@bindir@|%{_bindir}|g' \
396089
		< %{SOURCE4} \
396089
		> $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress/Makefile
396089
	chmod 0644 $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress/Makefile
396089
%endif
396089
396089
rm -rf doc/html # HACK! allow 'rpmbuild -bi --short-circuit'
396089
mv $RPM_BUILD_ROOT%{_docdir}/pgsql/html doc
396089
rm -rf $RPM_BUILD_ROOT%{_docdir}/pgsql
396089
396089
# remove files not to be packaged
396089
rm $RPM_BUILD_ROOT%{_libdir}/libpgfeutils.a
396089
396089
%if !%plperl
396089
rm -f $RPM_BUILD_ROOT%{_bindir}/pgsql/hstore_plperl.so
396089
%endif
396089
396089
# no python2, yet installed, remove
396089
rm -f $RPM_BUILD_ROOT%{_datadir}/pgsql/extension/*_plpythonu*
396089
rm -f $RPM_BUILD_ROOT%{_datadir}/pgsql/extension/*_plpython2u*
396089
396089
%if %nls
396089
find_lang_bins ()
396089
{
396089
	lstfile=$1 ; shift
396089
	cp /dev/null "$lstfile"
396089
	for binary; do
396089
		%find_lang "$binary"-%{majorversion}
396089
		cat "$binary"-%{majorversion}.lang >>"$lstfile"
396089
	done
396089
}
396089
find_lang_bins devel.lst pg_server_config
396089
find_lang_bins server.lst \
396089
	initdb pg_basebackup pg_controldata pg_ctl pg_resetwal pg_rewind plpgsql \
396089
	postgres pg_checksums pg_verifybackup
396089
find_lang_bins contrib.lst \
396089
	pg_amcheck pg_archivecleanup pg_test_fsync pg_test_timing pg_waldump
396089
find_lang_bins main.lst \
396089
	pg_dump pg_upgrade pgscripts psql \
396089
%if ! %external_libpq
396089
libpq%{private_soname}-5
396089
%endif
396089
396089
%if %plperl
396089
find_lang_bins plperl.lst plperl
396089
%endif
396089
%if %plpython3
396089
find_lang_bins plpython3.lst plpython
396089
%endif
396089
%if %pltcl
396089
find_lang_bins pltcl.lst pltcl
396089
%endif
396089
%endif
396089
396089
%pre server
396089
/usr/sbin/groupadd -g 26 -o -r postgres >/dev/null 2>&1 || :
396089
/usr/sbin/useradd -M -N -g postgres -o -r -d /var/lib/pgsql -s /bin/bash \
396089
	-c "PostgreSQL Server" -u 26 postgres >/dev/null 2>&1 || :
396089
396089
%post server
396089
%systemd_post %service_name
396089
396089
396089
%preun server
396089
%systemd_preun %service_name
396089
396089
396089
%postun server
396089
%systemd_postun_with_restart %service_name
396089
396089
396089
%check
396089
%if %runselftest
396089
make -C postgresql-setup-%{setup_version} check
396089
%endif
396089
396089
# FILES sections.
396089
%files -f main.lst
396089
%doc doc/KNOWN_BUGS doc/MISSING_FEATURES doc/TODO
396089
%doc COPYRIGHT README HISTORY
396089
%doc README.rpm-dist
396089
%{_bindir}/clusterdb
396089
%{_bindir}/createdb
396089
%{_bindir}/createuser
396089
%{_bindir}/dropdb
396089
%{_bindir}/dropuser
396089
%{_bindir}/pg_dump
396089
%{_bindir}/pg_dumpall
396089
%{_bindir}/pg_isready
396089
%{_bindir}/pg_restore
396089
%{_bindir}/pg_upgrade
396089
%{_bindir}/psql
396089
%{_bindir}/reindexdb
396089
%{_bindir}/vacuumdb
396089
%{_mandir}/man1/clusterdb.*
396089
%{_mandir}/man1/createdb.*
396089
%{_mandir}/man1/createuser.*
396089
%{_mandir}/man1/dropdb.*
396089
%{_mandir}/man1/dropuser.*
396089
%{_mandir}/man1/pg_dump.*
396089
%{_mandir}/man1/pg_dumpall.*
396089
%{_mandir}/man1/pg_isready.*
396089
%{_mandir}/man1/pg_restore.*
396089
%{_mandir}/man1/pg_upgrade.*
396089
%{_mandir}/man1/psql.*
396089
%{_mandir}/man1/reindexdb.*
396089
%{_mandir}/man1/vacuumdb.*
396089
%{_mandir}/man7/*
396089
%if %llvmjit
396089
# Install bitcode directory along with the main package,
396089
# so that extensions can use this dir.
396089
%dir %{_libdir}/pgsql/bitcode
396089
%endif
396089
396089
396089
%if ! %external_libpq
396089
%files private-libs
396089
%{_libdir}/libpq.so.*
396089
%endif
396089
396089
396089
%files docs
396089
%doc *-US.pdf
396089
%doc doc/html
396089
%{_libdir}/pgsql/tutorial/
396089
396089
396089
%files contrib -f contrib.lst
396089
%doc contrib/spi/*.example
396089
%{_bindir}/oid2name
396089
%{_bindir}/pg_amcheck
396089
%{_bindir}/pg_archivecleanup
396089
%{_bindir}/pg_test_fsync
396089
%{_bindir}/pg_test_timing
396089
%{_bindir}/pg_waldump
396089
%{_bindir}/pgbench
396089
%{_bindir}/vacuumlo
396089
%{_datadir}/pgsql/extension/adminpack*
396089
%{_datadir}/pgsql/extension/amcheck*
396089
%{_datadir}/pgsql/extension/autoinc*
396089
%{_datadir}/pgsql/extension/bloom*
396089
%{_datadir}/pgsql/extension/btree_gin*
396089
%{_datadir}/pgsql/extension/btree_gist*
396089
%{_datadir}/pgsql/extension/citext*
396089
%{_datadir}/pgsql/extension/cube*
396089
%{_datadir}/pgsql/extension/dblink*
396089
%{_datadir}/pgsql/extension/dict_int*
396089
%{_datadir}/pgsql/extension/dict_xsyn*
396089
%{_datadir}/pgsql/extension/earthdistance*
396089
%{_datadir}/pgsql/extension/file_fdw*
396089
%{_datadir}/pgsql/extension/fuzzystrmatch*
396089
%{_datadir}/pgsql/extension/hstore*
396089
%{_datadir}/pgsql/extension/insert_username*
396089
%{_datadir}/pgsql/extension/intagg*
396089
%{_datadir}/pgsql/extension/intarray*
396089
%{_datadir}/pgsql/extension/isn*
396089
%if %{plperl}
396089
%{_datadir}/pgsql/extension/jsonb_plperl*
396089
%endif
396089
%if %{plpython3}
396089
%{_datadir}/pgsql/extension/jsonb_plpython3u*
396089
%endif
396089
%{_datadir}/pgsql/extension/lo*
396089
%{_datadir}/pgsql/extension/ltree*
396089
%{_datadir}/pgsql/extension/moddatetime*
396089
%{_datadir}/pgsql/extension/old_snapshot*
396089
%{_datadir}/pgsql/extension/pg_surgery*
396089
%{_datadir}/pgsql/extension/pageinspect*
396089
%{_datadir}/pgsql/extension/pg_buffercache*
396089
%{_datadir}/pgsql/extension/pg_freespacemap*
396089
%{_datadir}/pgsql/extension/pg_prewarm*
396089
%{_datadir}/pgsql/extension/pg_stat_statements*
396089
%{_datadir}/pgsql/extension/pg_trgm*
396089
%{_datadir}/pgsql/extension/pg_visibility*
396089
%{_datadir}/pgsql/extension/pgcrypto*
396089
%{_datadir}/pgsql/extension/pgrowlocks*
396089
%{_datadir}/pgsql/extension/pgstattuple*
396089
%{_datadir}/pgsql/extension/postgres_fdw*
396089
%{_datadir}/pgsql/extension/refint*
396089
%{_datadir}/pgsql/extension/seg*
396089
%{_datadir}/pgsql/extension/tablefunc*
396089
%{_datadir}/pgsql/extension/tcn*
396089
%{_datadir}/pgsql/extension/tsm_system_rows*
396089
%{_datadir}/pgsql/extension/tsm_system_time*
396089
%{_datadir}/pgsql/extension/unaccent*
396089
%{_datadir}/pgsql/extension/pg_walinspect*
396089
%{_libdir}/pgsql/_int.so
396089
%{_libdir}/pgsql/adminpack.so
396089
%{_libdir}/pgsql/amcheck.so
396089
%{_libdir}/pgsql/auth_delay.so
396089
%{_libdir}/pgsql/auto_explain.so
396089
%{_libdir}/pgsql/autoinc.so
396089
%{_libdir}/pgsql/bloom.so
396089
%{_libdir}/pgsql/btree_gin.so
396089
%{_libdir}/pgsql/btree_gist.so
396089
%{_libdir}/pgsql/citext.so
396089
%{_libdir}/pgsql/cube.so
396089
%{_libdir}/pgsql/dblink.so
396089
%{_libdir}/pgsql/dict_int.so
396089
%{_libdir}/pgsql/dict_xsyn.so
396089
%{_libdir}/pgsql/earthdistance.so
396089
%{_libdir}/pgsql/file_fdw.so
396089
%{_libdir}/pgsql/fuzzystrmatch.so
396089
%{_libdir}/pgsql/hstore.so
396089
%if %plperl
396089
%{_libdir}/pgsql/hstore_plperl.so
396089
%endif
396089
%if %plpython3
396089
%{_libdir}/pgsql/hstore_plpython3.so
396089
%endif
396089
%{_libdir}/pgsql/insert_username.so
396089
%{_libdir}/pgsql/isn.so
396089
%if %plperl
396089
%{_libdir}/pgsql/jsonb_plperl.so
396089
%endif
396089
%if %plpython3
396089
%{_libdir}/pgsql/jsonb_plpython3.so
396089
%endif
396089
%{_libdir}/pgsql/lo.so
396089
%{_libdir}/pgsql/ltree.so
396089
%if %plpython3
396089
%{_libdir}/pgsql/ltree_plpython3.so
396089
%endif
396089
%{_libdir}/pgsql/moddatetime.so
396089
%{_libdir}/pgsql/old_snapshot.so
396089
%{_libdir}/pgsql/pg_surgery.so
396089
%{_libdir}/pgsql/pageinspect.so
396089
%{_libdir}/pgsql/passwordcheck.so
396089
%{_libdir}/pgsql/pg_buffercache.so
396089
%{_libdir}/pgsql/pg_freespacemap.so
396089
%{_libdir}/pgsql/pg_stat_statements.so
396089
%{_libdir}/pgsql/pg_trgm.so
396089
%{_libdir}/pgsql/pg_visibility.so
396089
%{_libdir}/pgsql/pgcrypto.so
396089
%{_libdir}/pgsql/pgrowlocks.so
396089
%{_libdir}/pgsql/pgstattuple.so
396089
%{_libdir}/pgsql/postgres_fdw.so
396089
%{_libdir}/pgsql/refint.so
396089
%{_libdir}/pgsql/seg.so
396089
%{_libdir}/pgsql/tablefunc.so
396089
%{_libdir}/pgsql/tcn.so
396089
%{_libdir}/pgsql/test_decoding.so
396089
%{_libdir}/pgsql/tsm_system_rows.so
396089
%{_libdir}/pgsql/tsm_system_time.so
396089
%{_libdir}/pgsql/unaccent.so
396089
%{_libdir}/pgsql/basebackup_to_shell.so
396089
%{_libdir}/pgsql/basic_archive.so
396089
%{_libdir}/pgsql/pg_walinspect.so
396089
%{_mandir}/man1/oid2name.*
396089
%{_mandir}/man1/pg_amcheck.*
396089
%{_mandir}/man1/pg_archivecleanup.*
396089
%{_mandir}/man1/pg_recvlogical.*
396089
%{_mandir}/man1/pg_test_fsync.*
396089
%{_mandir}/man1/pg_test_timing.*
396089
%{_mandir}/man1/pg_waldump.*
396089
%{_mandir}/man1/pgbench.*
396089
%{_mandir}/man1/vacuumlo.*
396089
%{_mandir}/man3/dblink*
396089
%if %selinux
396089
%{_datadir}/pgsql/contrib/sepgsql.sql
396089
%{_libdir}/pgsql/sepgsql.so
396089
%endif
396089
%if %ssl
396089
%{_datadir}/pgsql/extension/sslinfo*
396089
%{_libdir}/pgsql/sslinfo.so
396089
%endif
396089
%if %uuid
396089
%{_datadir}/pgsql/extension/uuid-ossp*
396089
%{_libdir}/pgsql/uuid-ossp.so
396089
%endif
396089
%if %xml
396089
%{_datadir}/pgsql/extension/xml2*
396089
%{_libdir}/pgsql/pgxml.so
396089
%endif
396089
396089
%files server -f server.lst
396089
%{_bindir}/initdb
396089
%{_bindir}/pg_basebackup
396089
%{_bindir}/pg_controldata
396089
%{_bindir}/pg_ctl
396089
%{_bindir}/pg_receivewal
396089
%{_bindir}/pg_recvlogical
396089
%{_bindir}/pg_resetwal
396089
%{_bindir}/pg_rewind
396089
%{_bindir}/pg_checksums
396089
%{_bindir}/pg_verifybackup
396089
%{_bindir}/postgres
396089
%{_bindir}/postgresql-setup
396089
%{_bindir}/postgresql-upgrade
396089
%{_bindir}/postmaster
396089
%dir %{_datadir}/pgsql
396089
%{_datadir}/pgsql/*.sample
396089
%dir %{_datadir}/pgsql/contrib
396089
%dir %{_datadir}/pgsql/extension
396089
%{_datadir}/pgsql/extension/plpgsql*
396089
%{_datadir}/pgsql/information_schema.sql
396089
%{_datadir}/pgsql/postgres.bki
396089
%{_datadir}/pgsql/snowball_create.sql
396089
%{_datadir}/pgsql/sql_features.txt
396089
%{_datadir}/pgsql/system_constraints.sql
396089
%{_datadir}/pgsql/system_functions.sql
396089
%{_datadir}/pgsql/system_views.sql
396089
%{_datadir}/pgsql/timezonesets/
396089
%{_datadir}/pgsql/tsearch_data/
396089
%dir %{_datadir}/postgresql-setup
396089
%{_datadir}/postgresql-setup/library.sh
396089
%dir %{_libdir}/pgsql
396089
%{_libdir}/pgsql/*_and_*.so
396089
%{_libdir}/pgsql/dict_snowball.so
396089
%{_libdir}/pgsql/euc2004_sjis2004.so
396089
%{_libdir}/pgsql/libpqwalreceiver.so
396089
%{_libdir}/pgsql/pg_prewarm.so
396089
%{_libdir}/pgsql/pgoutput.so
396089
%{_libdir}/pgsql/plpgsql.so
396089
%dir %{_libexecdir}/initscripts/legacy-actions/postgresql
396089
%{_libexecdir}/initscripts/legacy-actions/postgresql/*
396089
%{_libexecdir}/postgresql-check-db-dir
396089
%dir %{_sysconfdir}/postgresql-setup
396089
%dir %{_sysconfdir}/postgresql-setup/upgrade
396089
%config %{_sysconfdir}/postgresql-setup/upgrade/*.conf
396089
%{_mandir}/man1/initdb.*
396089
%{_mandir}/man1/pg_basebackup.*
396089
%{_mandir}/man1/pg_controldata.*
396089
%{_mandir}/man1/pg_ctl.*
396089
%{_mandir}/man1/pg_receivewal.*
396089
%{_mandir}/man1/pg_resetwal.*
396089
%{_mandir}/man1/pg_rewind.*
396089
%{_mandir}/man1/pg_checksums.*
396089
%{_mandir}/man1/pg_verifybackup.*
396089
%{_mandir}/man1/postgres.*
396089
%{_mandir}/man1/postgresql-new-systemd-unit.*
396089
%{_mandir}/man1/postgresql-setup.*
396089
%{_mandir}/man1/postgresql-upgrade.*
396089
%{_mandir}/man1/postmaster.*
396089
%{_sbindir}/postgresql-new-systemd-unit
396089
%{_tmpfilesdir}/postgresql.conf
396089
%{_unitdir}/*postgresql*.service
396089
%attr(700,postgres,postgres) %dir %{?_localstatedir}/lib/pgsql
396089
%attr(644,postgres,postgres) %config(noreplace) %{?_localstatedir}/lib/pgsql/.bash_profile
396089
%attr(700,postgres,postgres) %dir %{?_localstatedir}/lib/pgsql/backups
396089
%attr(700,postgres,postgres) %dir %{?_localstatedir}/lib/pgsql/data
396089
%attr(755,postgres,postgres) %dir %{?_localstatedir}/run/postgresql
396089
%if %pam
396089
%config(noreplace) /etc/pam.d/postgresql
396089
%endif
396089
396089
396089
%files server-devel -f devel.lst
396089
%{_bindir}/pg_server_config
396089
%dir %{_datadir}/pgsql
396089
%{_datadir}/pgsql/errcodes.txt
396089
%dir %{_includedir}/pgsql
396089
%{_includedir}/pgsql/server
396089
%{_libdir}/pgsql/pgxs/
396089
%{_mandir}/man1/pg_server_config.*
396089
%{_mandir}/man3/SPI_*
396089
%{macrosdir}/macros.%name
396089
396089
396089
%if ! %external_libpq
396089
%files private-devel
396089
%{_bindir}/pg_config
396089
%{_includedir}/libpq-events.h
396089
%{_includedir}/libpq-fe.h
396089
%{_includedir}/postgres_ext.h
396089
%{_includedir}/pgsql/internal/*.h
396089
%{_includedir}/pgsql/internal/libpq/pqcomm.h
396089
%{_includedir}/libpq/*.h
396089
%exclude %{_libdir}/pkgconfig/*.pc
396089
%{_libdir}/libpq.so
396089
%{_includedir}/pg_config*.h
396089
%endif
396089
396089
396089
%files test-rpm-macros
396089
%{_datadir}/postgresql-setup/postgresql_pkg_tests.sh
396089
%{macrosdir}/macros.%name-test
396089
396089
396089
%files static
396089
%{_libdir}/libpgcommon.a
396089
%{_libdir}/libpgport.a
396089
%{_libdir}/libpgcommon_shlib.a
396089
%{_libdir}/libpgport_shlib.a
396089
396089
396089
%if %upgrade
396089
%files upgrade
396089
%{_libdir}/pgsql/postgresql-%{prevmajorversion}/bin
396089
%exclude %{_libdir}/pgsql/postgresql-%{prevmajorversion}/bin/pg_config
396089
%{_libdir}/pgsql/postgresql-%{prevmajorversion}/lib
396089
%exclude %{_libdir}/pgsql/postgresql-%{prevmajorversion}/lib/pgxs
396089
%exclude %{_libdir}/pgsql/postgresql-%{prevmajorversion}/lib/pkgconfig
396089
%{_libdir}/pgsql/postgresql-%{prevmajorversion}/share
396089
396089
396089
%files upgrade-devel
396089
%{_libdir}/pgsql/postgresql-%{prevmajorversion}/bin/pg_config
396089
%{_libdir}/pgsql/postgresql-%{prevmajorversion}/include
396089
%{_libdir}/pgsql/postgresql-%{prevmajorversion}/lib/pkgconfig
396089
%{_libdir}/pgsql/postgresql-%{prevmajorversion}/lib/pgxs
396089
%{macrosdir}/macros.%name-upgrade
396089
%endif
396089
396089
%if %llvmjit
396089
%files llvmjit
396089
%defattr(-,root,root)
396089
%{_libdir}/pgsql/bitcode/*
396089
%{_libdir}/pgsql/llvmjit.so
396089
%{_libdir}/pgsql/llvmjit_types.bc
396089
%endif
396089
396089
%if %plperl
396089
%files plperl -f plperl.lst
396089
%{_datadir}/pgsql/extension/bool_plperl*
396089
%{_datadir}/pgsql/extension/plperl*
396089
%{_libdir}/pgsql/bool_plperl.so
396089
%{_libdir}/pgsql/plperl.so
396089
%endif
396089
396089
396089
%if %pltcl
396089
%files pltcl -f pltcl.lst
396089
%{_datadir}/pgsql/extension/pltcl*
396089
%{_libdir}/pgsql/pltcl.so
396089
%endif
396089
396089
396089
%if %plpython3
396089
%files plpython3 -f plpython3.lst
396089
%{_datadir}/pgsql/extension/plpython3*
396089
%{_libdir}/pgsql/plpython3.so
396089
%endif
396089
396089
396089
%if %test
396089
%files test
396089
%attr(-,postgres,postgres) %{_libdir}/pgsql/test
396089
%endif
396089
396089
396089
%changelog
396089
* Wed Feb 08 2023 Filip Januš <fjanus@redhat.com> - 15.2-1
396089
- Update to upstream version 15.2
396089
- Update postgresql-setup to 8.8
396089
- PostgreSQL systemd unit waits for the network to be up
396089
- Resolves: #2128241
396089
396089
* Fri Oct 14 2022 Filip Januš <fjanus@redhat.com> - 15.0-1
396089
- Initial import for postgresql 15
396089
- Specfile is based on version locate in centos stream
396089
  It reflects changes with libpq. This version of databse server
396089
  will use private libpq library.
396089
- Resolves: #2128241