rpm打包 postgres14.9 repmgr pgpool

rpm打包 postgres14.9 repmgr pgpool

上一篇讲解了rpm打包的基础知识之后,我们就可以根据实际业务自行打包了,需要注意的是依赖问题,需要提前讲依赖准备好,对于各种系统需要的依赖的依赖也不一致,可以根据具体报错去相关的依赖包网站自行查找下载。

rpm打包 postgres14.9

spec文件

%undefine _package_note_file# These are macros to be used with find_lang and other stuff
%global packageversion 140
%global pgpackageversion 14
%global prevmajorversion 13
%global sname postgresql
%global pgbaseinstdir	/usr/pgsql-%{pgmajorversion}
%global pgdepdir /usr/lib64%define debug_package %{nil}%global beta 0
%{?beta:%global __os_install_post /usr/lib/rpm/brp-compress}# Macros that define the configure parameters:
%{!?kerbdir:%global kerbdir "/usr"}
%{!?disablepgfts:%global disablepgfts 0}%if 0%{?rhel} || 0%{?suse_version} >= 1315
%{!?enabletaptests:%global enabletaptests 0}
%else
%{!?enabletaptests:%global enabletaptests 0}
%endif%{!?icu:%global icu 1}
%{!?kerberos:%global kerberos 0}
%{!?ldap:%global ldap 1}
%{!?nls:%global nls 1}
%{!?pam:%global pam 0}# All Fedora releases now use Python3
# Support Python3 on RHEL 7.7+ natively
# RHEL 8+ use Python3
%{!?plpython3:%global plpython3 0}%if 0%{?suse_version}
%if 0%{?suse_version} >= 1315
# Disable PL/Python 3 on SLES 12
%{!?plpython3:%global plpython3 0}
%endif
%endif%{!?pltcl:%global pltcl 0}
%{!?plperl:%global plperl 0}
%{!?ssl:%global ssl 1}
%{!?test:%global test 0}
%{!?runselftest:%global runselftest 0}
%{!?uuid:%global uuid 1}
%{!?xml:%global xml 1}%{!?systemd_enabled:%global systemd_enabled 0}%ifarch ppc64 ppc64le s390 s390x armv7hl
%{!?sdt:%global sdt 0}
%else%{!?sdt:%global sdt 0}
%endif%{!?selinux:%global selinux 0}%ifarch ppc64 ppc64le s390 s390x armv7hl%if 0%{?rhel} && 0%{?rhel} == 7%{!?llvm:%global llvm 0}%else%{!?llvm:%global llvm 0}%endif
%else%{!?llvm:%global llvm 0}
%endif%if 0%{?fedora} > 30
%global _hardened_build 1
%endif#Filter out some Perl "dependencies"
%global __requires_exclude ^perl\\((PostgresVersion|PostgresNode|RecursiveCopy|SimpleTee|TestLib)
%global __provides_exclude ^perl\\((PostgresVersion|PostgresNode|RecursiveCopy|SimpleTee|TestLib)%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch ppc64 ppc64le
%pgdg_set_ppc64le_compiler_at10
%endif
%endifSummary:	PostgreSQL client programs and libraries
Name:		%{sname}%{pgmajorversion}
Version:	14.5
Release:	4PGDG%{?dist}
License:	PostgreSQL
Url:		https://www.postgresql.org/Source0:	https://download.postgresql.org/pub/source/v%{version}/postgresql-%{version}.tar.bz2
Source4:	%{sname}-%{pgmajorversion}-Makefile.regress
Source5:	%{sname}-%{pgmajorversion}-pg_config.h
Source6:	%{sname}-%{pgmajorversion}-README-systemd.rpm-dist
Source7:	%{sname}-%{pgmajorversion}-ecpg_config.h
Source9:	%{sname}-%{pgmajorversion}-libs.conf
Source12:	https://www.postgresql.org/files/documentation/pdf/%{pgpackageversion}/%{sname}-%{pgpackageversion}-A4.pdf
%if 0%{?suse_version}
Source14:	%{sname}-%{pgmajorversion}.pam.suse
%else
Source14:	%{sname}-%{pgmajorversion}.pam
%endif
Source17:	%{sname}-%{pgmajorversion}-setup
%if %{systemd_enabled}
Source10:	%{sname}-%{pgmajorversion}-check-db-dir
Source18:	%{sname}-%{pgmajorversion}.service
Source19:	%{sname}-%{pgmajorversion}-tmpfiles.d
%endifPatch1:		%{sname}-%{pgmajorversion}-rpm-pgsql.patch
Patch3:		%{sname}-%{pgmajorversion}-conf.patch
Patch5:		%{sname}-%{pgmajorversion}-var-run-socket.patch
Patch6:		%{sname}-%{pgmajorversion}-perl-rpath.patch# Temp patch until 14.5 is released:
Patch10:	%{sname}-%{pgmajorversion}-14.5-Track-LLVM-15-changes.patchBuildRequires:	perl glibc-devel bison flex >= 2.5.31
BuildRequires:	gcc-c++
##BuildRequires:	perl(ExtUtils::MakeMaker)
BuildRequires:	readline-devel zlib-devel >= 1.0.4 pgdg-srpm-macros# lz4 dependency
%if 0%{?suse_version} >= 1315 && 0%{?suse_version} <= 1499
#BuildRequires:	liblz4-devel
#Requires:	liblz4-1
%endif
%if 0%{?rhel} || 0%{?fedora}
#BuildRequires:	lz4-devel
#Requires:	lz4
%endif# This dependency is needed for Source 16:
%if 0%{?fedora} || 0%{?rhel} > 7
#BuildRequires:	perl-generators
%endif%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch ppc64 ppc64le
%pgdg_set_ppc64le_min_requires
%endif
%endif
Requires:	/sbin/ldconfig%if %icu
#BuildRequires:	libicu-devel
#Requires:	libicu
%endif%if %llvm
%if 0%{?rhel} && 0%{?rhel} == 7
# Packages come from EPEL and SCL:
%ifarch aarch64
BuildRequires:	llvm-toolset-7.0-llvm-devel >= 7.0.1 llvm-toolset-7.0-clang >= 7.0.1
%else
BuildRequires:	llvm5.0-devel >= 5.0 llvm-toolset-7-clang >= 4.0.1
%endif
%endif
%if 0%{?rhel} && 0%{?rhel} >= 8
# Packages come from Appstream:
BuildRequires:	llvm-devel >= 8.0.1 clang-devel >= 8.0.1
%endif
%if 0%{?fedora}
BuildRequires:	llvm-devel >= 5.0 clang-devel >= 5.0
%endif
%if 0%{?suse_version} >= 1315 && 0%{?suse_version} <= 1499
BuildRequires:	llvm6-devel clang6-devel
%endif
%if 0%{?suse_version} >= 1500
BuildRequires:	llvm13-devel clang13-devel
%endif
%endif%if %kerberos
#BuildRequires:	krb5-devel
#BuildRequires:	e2fsprogs-devel
%endif%if %ldap
%if 0%{?suse_version}
%if 0%{?suse_version} >= 1315
#BuildRequires:	openldap2-devel
%endif
%else
#BuildRequires:	openldap-devel
%endif
%endif%if %nls
#BuildRequires:	gettext >= 0.10.35
%endif%if %pam
#BuildRequires:	pam-devel
%endif%if %plperl
%if 0%{?rhel} && 0%{?rhel} >= 7
BuildRequires:	perl-ExtUtils-Embed
%endif
%if 0%{?fedora} >= 22
BuildRequires:	perl-ExtUtils-Embed
%endif
%endif%if %plpython3
BuildRequires:	python3-devel
%endif%if %pltcl
BuildRequires:	tcl-devel
%endif%if %sdt
BuildRequires:	systemtap-sdt-devel
%endif%if %selinux
# All supported distros have libselinux-devel package:
BuildRequires:	libselinux-devel >= 2.0.93
# SLES: SLES 15 does not have selinux-policy package. Use
# it only on SLES 12:
%if 0%{?suse_version} >= 1315 && 0%{?suse_version} <= 1499
BuildRequires:	selinux-policy >= 3.9.13
%endif
# RHEL/Fedora has selinux-policy:
%if 0%{?rhel} || 0%{?fedora}
BuildRequires:	selinux-policy >= 3.9.13
%endif
%endif%if %ssl
# We depend un the SSL libraries provided by Advance Toolchain on PPC,
# so use openssl-devel only on other platforms:
%ifnarch ppc64 ppc64le
%if 0%{?suse_version} >= 1315 && 0%{?suse_version} <= 1499
BuildRequires:	libopenssl-devel
%else
BuildRequires:	openssl-devel
%endif
%endif
%endif%if %uuid
%if 0%{?suse_version}
%if 0%{?suse_version} >= 1315
BuildRequires:	uuid-devel
%endif
%else
BuildRequires:	libuuid-devel
%endif
%endif%if %xml
BuildRequires:	libxml2-devel libxslt-devel
%endif%if %{systemd_enabled}
BuildRequires:		systemd, systemd-devel
# We require this to be present for %%{_prefix}/lib/tmpfiles.d
Requires:		systemd
%if 0%{?suse_version}
%if 0%{?suse_version} >= 1315
Requires(post):		systemd-sysvinit
%endif
%else
Requires(post):		systemd-sysv
Requires(post):		systemd
Requires(preun):	systemd
Requires(postun):	systemd
%endif
%endifRequires:	%{name}-libs%{?_isa} = %{version}-%{release}Requires(post):	%{_sbindir}/update-alternatives
Requires(postun):	%{_sbindir}/update-alternativesProvides:	%{sname} >= %{version}-%{release}%description
PostgreSQL is an advanced Object-Relational database management system (DBMS).
The base postgresql package contains the client programs that you'll need to
access a PostgreSQL DBMS server, as well as HTML documentation for the whole
system. These client programs can be located on the same machine as the
PostgreSQL server, or on a remote machine that accesses a PostgreSQL server
over a network connection. The PostgreSQL server can be found in the
postgresql%{pgmajorversion}-server sub-package.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%{pgmajorversion}-server package.%package libs
Summary:	The shared libraries required for any PostgreSQL clients
Provides:	postgresql-libs = %{pgmajorversion} libpq5 >= 10.0%if 0%{?rhel} && 0%{?rhel} <= 6
Requires:	openssl
%else
%if 0%{?suse_version} >= 1315 && 0%{?suse_version} <= 1499
Requires:	libopenssl1_0_0
%else
%if 0%{?suse_version} >= 1500
Requires:	libopenssl1_1
%else
Requires:	openssl-libs >= 1.0.2k
%endif
%endif
%endif%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch ppc64 ppc64le
AutoReq:	0
Requires:	advance-toolchain-%{atstring}-runtime
%endif
%endif%description libs
The postgresql%{pgmajorversion}-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
Requires:	%{name}%{?_isa} = %{version}-%{release}
Requires:	%{name}-libs%{?_isa} = %{version}-%{release}
Requires(pre):	/usr/sbin/useradd /usr/sbin/groupadd
# for /sbin/ldconfig
Requires(post):		glibc
Requires(postun):	glibc
%if %{systemd_enabled}
# pre/post stuff needs systemd too%if 0%{?suse_version}
%if 0%{?suse_version} >= 1315
Requires(post):		systemd
%endif
%else
Requires(post):		systemd
Requires(preun):	systemd
Requires(postun):	systemd
%endif
%endifProvides:	postgresql-server >= %{version}-%{release}%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch ppc64 ppc64le
AutoReq:	0
Requires:	advance-toolchain-%{atstring}-runtime
%endif
%endif%description server
PostgreSQL is an advanced Object-Relational database management system (DBMS).
The postgresql%{pgmajorversion}-server package contains the programs needed to create
and run a PostgreSQL server, which will in turn allow you to create
and maintain PostgreSQL databases.%package docs
Summary:	Extra documentation for PostgreSQL
Provides:	postgresql-docs >= %{version}-%{release}%description docs
The postgresql%{pgmajorversion}-docs package includes the SGML source for the documentation
as well as the documentation in PDF format and some extra documentation.
Install this package if you want to help with the PostgreSQL documentation
project, or if you want to generate printed documentation. This package also
includes HTML version of the documentation.%package contrib
Summary:	Contributed source and binaries distributed with PostgreSQL
Requires:	%{name}%{?_isa} = %{version}-%{release}
Requires:	%{name}-libs%{?_isa} = %{version}-%{release}
Requires:	%{name}-server%{?_isa} = %{version}-%{release}
Provides:	postgresql-contrib >= %{version}-%{release}%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch ppc64 ppc64le
AutoReq:	0
Requires:	advance-toolchain-%{atstring}-runtime
%endif
%endif%description contrib
The postgresql%{pgmajorversion}-contrib package contains various extension modules that are
included in the PostgreSQL distribution.%package devel
Summary:	PostgreSQL development header files and libraries
Requires:	%{name}%{?_isa} = %{version}-%{release}
Requires:	%{name}-libs%{?_isa} = %{version}-%{release}
%if %llvm
%if 0%{?rhel} && 0%{?rhel} == 7
# Packages come from EPEL and SCL:
%ifarch aarch64
Requires:	llvm-toolset-7.0-llvm-devel >= 7.0.1 llvm-toolset-7.0-clang >= 7.0.1
%else
Requires:	llvm5.0-devel >= 5.0 llvm-toolset-7-clang >= 4.0.1
%endif
%endif
%if 0%{?rhel} && 0%{?rhel} >= 8
# Packages come from Appstream:
Requires:	llvm-devel >= 8.0.1 clang-devel >= 8.0.1
%endif
%if 0%{?fedora}
Requires:	llvm-devel >= 5.0 clang-devel >= 5.0
%endif
%if 0%{?suse_version} >= 1315 && 0%{?suse_version} <= 1499
Requires:	llvm6-devel clang6-devel
%endif
%if 0%{?suse_version} >= 1500
Requires:	llvm13-devel clang13-devel
%endif
%endif
%if %icu
Requires:	libicu-devel
%endif%if %enabletaptests
%if 0%{?suse_version} && 0%{?suse_version} >= 1315
Requires:	perl-IPC-Run
BuildRequires:	perl-IPC-Run
%endif
%if 0%{?rhel} && 0%{?rhel} <= 7
Requires:	perl-Test-Simple
BuildRequires:	perl-Test-Simple
%endif
%if 0%{?fedora}
Requires:	perl-IPC-Run
BuildRequires:	perl-IPC-Run
%endif
%endifProvides:	postgresql-devel >= %{version}-%{release}
Obsoletes:	libpq-devel <= 42.0%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch ppc64 ppc64le
AutoReq:	0
Requires:	advance-toolchain-%{atstring}-runtime
%endif
%endif%description devel
The postgresql%{pgmajorversion}-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. It also contains 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 %llvm
%package llvmjit
Summary:	Just-in-time compilation support for PostgreSQL
Requires:	%{name}-server%{?_isa} = %{version}-%{release}
%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch aarch64
Requires:	llvm-toolset-7.0-llvm >= 7.0.1
%else
Requires:	llvm5.0 >= 5.0
%endif
%endif
%if 0%{?suse_version} == 1315
Requires:	llvm
%endif
%if 0%{?suse_version} >= 1500
Requires:	libLLVM13
%endif
%if 0%{?fedora} || 0%{?rhel} >= 8
Requires:	llvm => 5.0
%endifProvides:	postgresql-llvmjit >= %{version}-%{release}%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch ppc64 ppc64le
AutoReq:	0
Requires:	advance-toolchain-%{atstring}-runtime
%endif
%endif%description llvmjit
The postgresql%{pgmajorversion}-llvmjit package contains support for
just-in-time compiling parts of PostgreSQL queries. Using LLVM it
compiles e.g. expressions and tuple deforming into native code, with the
goal of accelerating analytics queries.
%endif%if %plperl
%package plperl
Summary:	The Perl procedural language for PostgreSQL
Requires:	%{name}-server%{?_isa} = %{version}-%{release}
Requires:	perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
%ifarch ppc ppc64
BuildRequires:	perl-devel
%endif
Obsoletes:	postgresql%{pgmajorversion}-pl <= %{version}-%{release}
Provides:	postgresql-plperl >= %{version}-%{release}%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch ppc64 ppc64le
AutoReq:	0
Requires:	advance-toolchain-%{atstring}-runtime
%endif
%endif%description plperl
The postgresql%{pgmajorversion}-plperl package contains the PL/Perl procedural language,
which is an extension to the PostgreSQL database server.
Install this if you want to write database functions in Perl.%endif%if %plpython3
%package plpython3
Summary:	The Python3 procedural language for PostgreSQL
Requires:	%{name}%{?_isa} = %{version}-%{release}
Requires:	%{name}-server%{?_isa} = %{version}-%{release}
Obsoletes:	%{name}-pl <= %{version}-%{release}
Provides:	postgresql-plpython3 >= %{version}-%{release}
%if 0%{?suse_version} >= 1315
Requires:       python3-base
%else
# We support Python3 natively on RHEL/CentOS 7 as of 7.7.
Requires:       python3-libs
%endif%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch ppc64 ppc64le
AutoReq:	0
Requires:	advance-toolchain-%{atstring}-runtime
%endif
%endif%description plpython3
The postgresql%{pgmajorversion}-plpython3 package contains the PL/Python3 procedural language,
which is an extension to the PostgreSQL database server.
Install this if you want to write database functions in Python 3.%endif%if %pltcl
%package pltcl
Summary:	The Tcl procedural language for PostgreSQL
Requires:	%{name}%{?_isa} = %{version}-%{release}
Requires:	%{name}-server%{?_isa} = %{version}-%{release}
Requires:	tcl
Obsoletes:	%{name}-pl <= %{version}-%{release}
Provides:	postgresql-pltcl >= %{version}-%{release}%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch ppc64 ppc64le
AutoReq:	0
Requires:	advance-toolchain-%{atstring}-runtime
%endif
%endif%description pltcl
PostgreSQL is an advanced Object-Relational database management
system. The %{name}-pltcl package contains the PL/Tcl language
for the backend.
%endif%if %test
%package test
Summary:	The test suite distributed with PostgreSQL
Requires:	%{name}-server%{?_isa} = %{version}-%{release}
Requires:	%{name}-devel%{?_isa} = %{version}-%{release}
Provides:	postgresql-test >= %{version}-%{release}%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch ppc64 ppc64le
AutoReq:	0
Requires:	advance-toolchain-%{atstring}-runtime
%endif
%endif%description test
The postgresql%{pgmajorversion}-test package contains files needed for various tests for the
PostgreSQL database management system, including regression tests and
benchmarks.
%endif%prep
%setup -q -n %{sname}-%{version}%patch1 -p0
%patch3 -p0
%patch5 -p0
%patch6 -p0
%patch10 -p1%{__cp} -p %{SOURCE12} .%build# fail quickly and obviously if user tries to build as root
%if %runselftestif [ x"`id -u`" = x0 ]; thenecho "postgresql's regression tests fail if run as root."echo "If you really need to build the RPM as root, use"echo "--define='runselftest 0' to skip the regression tests."exit 1fi
%endifCFLAGS="${CFLAGS:-%optflags}"
%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch ppc64 ppc64leCFLAGS="${CFLAGS} $(echo %{__global_cflags} | sed 's/-O2/-O3/g') -m64 -mcpu=power8 -mtune=power8 -I%{atpath}/include"CXXFLAGS="${CXXFLAGS} $(echo %{__global_cflags} | sed 's/-O2/-O3/g') -m64 -mcpu=power8 -mtune=power8 -I%{atpath}/include"LDFLAGS="-L%{atpath}/%{_lib}"CC=%{atpath}/bin/gcc; export CC
%endif
%else# Strip out -ffast-math from CFLAGS....CFLAGS=`echo $CFLAGS|xargs -n 1|grep -v ffast-math|xargs -n 100`%if 0%{?rhel}LDFLAGS="-Wl,--as-needed"; export LDFLAGS%endif
%endifexport CFLAGS%if %plpython3
export PYTHON=/usr/bin/python3
%endif%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch aarch64export CLANG=/opt/rh/llvm-toolset-7.0/root/usr/bin/clang LLVM_CONFIG=/opt/rh/llvm-toolset-7.0/root/usr/bin/llvm-config
%elseexport CLANG=/opt/rh/llvm-toolset-7/root/usr/bin/clang LLVM_CONFIG=%{_libdir}/llvm5.0/bin/llvm-config
%endif
%endif
%if 0%{?rhel} && 0%{?rhel} == 8export CLANG=%{_bindir}/clang LLVM_CONFIG=%{_bindir}/llvm-config-64
%endif# These configure options must match main build
./configure --enable-rpath \--prefix=%{pgbaseinstdir} \--includedir=%{pgbaseinstdir}/include \--mandir=%{pgbaseinstdir}/share/man \--datadir=%{pgbaseinstdir}/share \--libdir=%{pgbaseinstdir}/lib \--with-lz4 \
%if %beta--enable-debug \--enable-cassert \
%endif
%if %enabletaptests--enable-tap-tests \
%endif
%if %icu--with-icu \
%endif
%if %llvm--with-llvm \
%endif
%if %plperl--with-perl \
%endif
%if %plpython3--with-python \
%endif
%if %pltcl--with-tcl \--with-tclconfig=%{_libdir} \
%endif
%if %ssl--with-openssl \
%endif
%if %pam--with-pam \
%endif
%if %kerberos--with-gssapi \--with-includes=%{kerbdir}/include \--with-libraries=%{kerbdir}/%{_lib} \
%endif
%if %nls--enable-nls \
%endif
%if %sdt--enable-dtrace \
%endif
%if %disablepgfts--disable-thread-safety \
%endif
%if %uuid--with-uuid=e2fs \
%endif
%if %xml--with-libxml \--with-libxslt \
%endif
%if %ldap--with-ldap \
%endif
%if %selinux--with-selinux \
%endif
%if %{systemd_enabled}--with-systemd \
%else--without-systemd \
%endif
%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch ppc64 ppc64le--with-includes=%{atpath}/include \--with-libraries=%{atpath}/lib64 \
%endif
%endif--with-system-tzdata=%{_datadir}/zoneinfo \--sysconfdir=/etc/sysconfig/pgsql \--docdir=%{pgbaseinstdir}/doc \--htmldir=%{pgbaseinstdir}/doc/htmlcd src/backend
MAKELEVEL=0 %{__make} submake-generated-headers
cd ../..# Have to hack makefile to put correct path into tutorial scripts
sed "s|C=\`pwd\`;|C=%{pgbaseinstdir}/lib/tutorial;|" < src/tutorial/Makefile > src/tutorial/GNUmakefile
%{__make} %{?_smp_mflags} -C src/tutorial NO_PGXS=1 all
%{__rm} -f src/tutorial/GNUmakefileMAKELEVEL=0 %{__make} %{?_smp_mflags} all
%{__make} %{?_smp_mflags} -C contrib all
%if %uuid
%{__make} %{?_smp_mflags} -C contrib/uuid-ossp all
%endif# run_testsuite WHERE
# -------------------
# Run 'make check' in WHERE path. When that command fails, return the logs
# given by PostgreSQL build system and set 'test_failure=1'.run_testsuite()
{%{__make} -C "$1" MAX_CONNECTIONS=5 check && return 0test_failure=1(set +xecho "=== trying to find all regression.diffs files in build directory ==="find -name 'regression.diffs' | \while read line; doecho "=== make failure: $line ==="cat "$line"done)
}%if %runselftestrun_testsuite "src/test/regress"%{__make} clean -C "src/test/regress"run_testsuite "src/pl"
%if %plpython3run_testsuite "src/pl/plpython"
%endifrun_testsuite "contrib"
%endif%if %testpushd src/test/regress%{__make} allpopd
%endif%install
%{__rm} -rf %{buildroot}%{__make} DESTDIR=%{buildroot} install%if %plpython3# Install PL/Python3pushd src/pl/plpython%{__make} DESTDIR=%{buildroot} installpopd%endif%{__mkdir} -p %{buildroot}%{pgbaseinstdir}/share/extensions/
%{__make} -C contrib DESTDIR=%{buildroot} install
%if %uuid
%{__make} -C contrib/uuid-ossp DESTDIR=%{buildroot} install
%endif%{__cp} -a %{pgdepdir}/libcrypto.so* %{buildroot}/%{pgbaseinstdir}/lib
%{__cp} -a %{pgdepdir}/libicu*.so* %{buildroot}/%{pgbaseinstdir}/lib
%{__cp} -a %{pgdepdir}/liblber*.so* %{buildroot}/%{pgbaseinstdir}/lib
%{__cp} -a %{pgdepdir}/libldap*.so* %{buildroot}/%{pgbaseinstdir}/lib
%{__cp} -a %{pgdepdir}/liblz4*.so* %{buildroot}/%{pgbaseinstdir}/lib
%{__cp} -a %{pgdepdir}/liblzma*.so* %{buildroot}/%{pgbaseinstdir}/lib
%{__cp} -a %{pgdepdir}/libssl*.so* %{buildroot}/%{pgbaseinstdir}/lib
%{__cp} -a %{pgdepdir}/libxml2*.so* %{buildroot}/%{pgbaseinstdir}/lib
%{__cp} -a %{pgdepdir}/libxslt*.so* %{buildroot}/%{pgbaseinstdir}/lib
%{__cp} -a %{pgdepdir}/libz*.so* %{buildroot}/%{pgbaseinstdir}/lib
%{__cp} -a %{pgdepdir}/libreadline*.so* %{buildroot}/%{pgbaseinstdir}/lib# 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` ini386 | x86_64 | ppc | ppc64 | s390 | s390x)%{__mv} %{buildroot}%{pgbaseinstdir}/include/pg_config.h %{buildroot}%{pgbaseinstdir}/include/pg_config_`uname -i`.h%{__install} -m 644 %{SOURCE5} %{buildroot}%{pgbaseinstdir}/include/pg_config.h%{__mv} %{buildroot}%{pgbaseinstdir}/include/server/pg_config.h %{buildroot}%{pgbaseinstdir}/include/server/pg_config_`uname -i`.h%{__install} -m 644 %{SOURCE5} %{buildroot}%{pgbaseinstdir}/include/server/pg_config.h%{__mv} %{buildroot}%{pgbaseinstdir}/include/ecpg_config.h %{buildroot}%{pgbaseinstdir}/include/ecpg_config_`uname -i`.h%{__install} -m 644 %{SOURCE7} %{buildroot}%{pgbaseinstdir}/include/ecpg_config.h;;*);;
esac# This is only for systemd supported distros:
%if %{systemd_enabled}
# prep the setup script, including insertion of some values it needs
sed -e 's|^PGVERSION=.*$|PGVERSION=%{pgmajorversion}|' \-e 's|^PGENGINE=.*$|PGENGINE=%{pgbaseinstdir}/bin|' \-e 's|^PREVMAJORVERSION=.*$|PREVMAJORVERSION=%{prevmajorversion}|' \<%{SOURCE17} >postgresql-%{pgmajorversion}-setup
%{__install} -m 755 postgresql-%{pgmajorversion}-setup %{buildroot}%{pgbaseinstdir}/bin/postgresql-%{pgmajorversion}-setup
# Create a symlink of the setup script under $PATH
%{__mkdir} -p %{buildroot}%{_bindir}
%{__ln_s} ../../../../../../../../../../../../../../%{pgbaseinstdir}/bin/postgresql-%{pgmajorversion}-setup %{buildroot}%{_bindir}/# prep the startup check script, including insertion of some values it needs
sed -e 's|^PGVERSION=.*$|PGVERSION=%{pgmajorversion}|' \-e 's|^PREVMAJORVERSION=.*$|PREVMAJORVERSION=%{prevmajorversion}|' \-e 's|^PGDOCDIR=.*$|PGDOCDIR=%{_pkgdocdir}|' \<%{SOURCE10} >%{sname}-%{pgmajorversion}-check-db-dir
touch -r %{SOURCE10} %{sname}-%{pgmajorversion}-check-db-dir
%{__install} -m 755 %{sname}-%{pgmajorversion}-check-db-dir %{buildroot}%{pgbaseinstdir}/bin/%{sname}-%{pgmajorversion}-check-db-dir%{__install} -d %{buildroot}%{_unitdir}
%{__install} -m 644 %{SOURCE18} %{buildroot}%{_unitdir}/%{sname}-%{pgmajorversion}.service
%endif%if %pam
%{__install} -d %{buildroot}/etc/pam.d
%{__install} -m 644 %{SOURCE14} %{buildroot}/etc/pam.d/%{sname}
%endif# Create the directory for sockets.
%{__install} -d -m 755 %{buildroot}/var/run/%{sname}
%if %{systemd_enabled}
# ... and make a tmpfiles script to recreate it at reboot.
%{__mkdir} -p %{buildroot}/%{_tmpfilesdir}
%{__install} -m 0644 %{SOURCE19} %{buildroot}/%{_tmpfilesdir}/%{sname}-%{pgmajorversion}.conf
%endif# PGDATA needs removal of group and world permissions due to pg_pwd hole.
%{__install} -d -m 700 %{buildroot}/var/lib/pgsql/%{pgmajorversion}/data# backups of data go here...
%{__install} -d -m 700 %{buildroot}/var/lib/pgsql/%{pgmajorversion}/backups# Create the multiple postmaster startup directory
%{__install} -d -m 700 %{buildroot}/etc/sysconfig/pgsql/%{pgmajorversion}# Install linker conf file under postgresql installation directory.
# We will install the latest version via alternatives.
%{__install} -d -m 755 %{buildroot}%{pgbaseinstdir}/share/
%{__install} -m 700 %{SOURCE9} %{buildroot}%{pgbaseinstdir}/share/%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 %{buildroot}%{pgbaseinstdir}/lib/test%{__cp} -a src/test/regress %{buildroot}%{pgbaseinstdir}/lib/test%{__install} -m 0755 contrib/spi/refint.so %{buildroot}%{pgbaseinstdir}/lib/test/regress%{__install} -m 0755 contrib/spi/autoinc.so %{buildroot}%{pgbaseinstdir}/lib/test/regress# pg_regress binary should be only in one subpackage,# there will be a symlink from -test to -devel%{__rm} -f %{buildroot}%{pgbaseinstdir}/lib/test/regress/pg_regress%{__mkdir} -p %{buildroot}%{pgbaseinstdir}/lib/pgsql/test/regress/%{__ln_s} -f ../../pgxs/src/test/regress/pg_regress %{buildroot}%{pgbaseinstdir}/lib/test/regress/pg_regresspushd %{buildroot}%{pgbaseinstdir}/lib/test/regressstrip *.so%{__rm} -f GNUmakefile Makefile *.ochmod 0755 pg_regress regress.sopopd%{__cp} %{SOURCE4} %{buildroot}%{pgbaseinstdir}/lib/test/regress/Makefilechmod 0644 %{buildroot}%{pgbaseinstdir}/lib/test/regress/Makefile
%endif# Quick hack:
%{__rm} -f %{buildroot}/%{pgbaseinstdir}/share/extension/*plpython2u*
%{__rm} -f %{buildroot}/%{pgbaseinstdir}/share/extension/*plpythonu-*
%{__rm} -f %{buildroot}/%{pgbaseinstdir}/share/extension/*_plpythonu.control# Fix some more documentation
# gzip doc/internals.ps
%{__cp} %{SOURCE6} README.rpm-dist
%{__mkdir} -p %{buildroot}%{pgbaseinstdir}/share/doc/html
%{__mv} doc/src/sgml/html doc
%{__mkdir} -p %{buildroot}%{pgbaseinstdir}/share/man/
%{__mv} doc/src/sgml/man1 doc/src/sgml/man3 doc/src/sgml/man7 %{buildroot}%{pgbaseinstdir}/share/man/
%{__rm} -rf %{buildroot}%{_docdir}/pgsql# These file(s) should not be packaged:
%{__rm} %{buildroot}%{pgbaseinstdir}/lib/libpgfeutils.a# initialize file lists
%{__cp} /dev/null main.lst
%{__cp} /dev/null libs.lst
%{__cp} /dev/null server.lst
%{__cp} /dev/null devel.lst
%{__cp} /dev/null plperl.lst
%{__cp} /dev/null pltcl.lst
%{__cp} /dev/null plpython.lst
%{__cp} /dev/null pg_plpython3.lst
%{__cp} /dev/null pg_checksums.lst%if %nls
%find_lang ecpg-%{pgmajorversion}
%find_lang ecpglib6-%{pgmajorversion}
%find_lang initdb-%{pgmajorversion}
%find_lang libpq5-%{pgmajorversion}
%find_lang pg_amcheck-%{pgmajorversion}
%find_lang pg_archivecleanup-%{pgmajorversion}
%find_lang pg_basebackup-%{pgmajorversion}
%find_lang pg_checksums-%{pgmajorversion}
%find_lang pg_config-%{pgmajorversion}
%find_lang pg_controldata-%{pgmajorversion}
%find_lang pg_ctl-%{pgmajorversion}
%find_lang pg_dump-%{pgmajorversion}
%find_lang pg_resetwal-%{pgmajorversion}
%find_lang pg_rewind-%{pgmajorversion}
%find_lang pg_test_fsync-%{pgmajorversion}
%find_lang pg_test_timing-%{pgmajorversion}
%find_lang pg_upgrade-%{pgmajorversion}
%find_lang pg_verifybackup-%{pgmajorversion}
%find_lang pg_waldump-%{pgmajorversion}
%find_lang pgscripts-%{pgmajorversion}
%if %plperl
%find_lang plperl-%{pgmajorversion}
cat plperl-%{pgmajorversion}.lang > pg_plperl.lst
%endif
%find_lang plpgsql-%{pgmajorversion}
%if %plpython3
# plpython3 shares message files with plpython
%find_lang plpython-%{pgmajorversion}
cat plpython-%{pgmajorversion}.lang >> pg_plpython3.lst
%endif%if %pltcl
%find_lang pltcl-%{pgmajorversion}
cat pltcl-%{pgmajorversion}.lang > pg_pltcl.lst
%endif
%find_lang postgres-%{pgmajorversion}
%find_lang psql-%{pgmajorversion}cat pg_amcheck-%{pgmajorversion}.lang > pg_contrib.lst
cat libpq5-%{pgmajorversion}.lang > pg_libpq5.lst
cat pg_config-%{pgmajorversion}.lang ecpg-%{pgmajorversion}.lang ecpglib6-%{pgmajorversion}.lang > pg_devel.lst
cat initdb-%{pgmajorversion}.lang pg_ctl-%{pgmajorversion}.lang psql-%{pgmajorversion}.lang pg_dump-%{pgmajorversion}.lang pg_basebackup-%{pgmajorversion}.lang pgscripts-%{pgmajorversion}.lang > pg_main.lst
cat postgres-%{pgmajorversion}.lang pg_resetwal-%{pgmajorversion}.lang pg_checksums-%{pgmajorversion}.lang pg_verifybackup-%{pgmajorversion}.lang pg_controldata-%{pgmajorversion}.lang plpgsql-%{pgmajorversion}.lang pg_test_timing-%{pgmajorversion}.lang pg_test_fsync-%{pgmajorversion}.lang pg_archivecleanup-%{pgmajorversion}.lang pg_waldump-%{pgmajorversion}.lang pg_rewind-%{pgmajorversion}.lang pg_upgrade-%{pgmajorversion}.lang > pg_server.lst
%endif%pre server
groupadd -g 26 -o -r postgres >/dev/null 2>&1 || :
useradd -M -g postgres -o -r -d /var/lib/pgsql -s /bin/bash \-c "PostgreSQL Server" -u 26 postgres >/dev/null 2>&1 || :%post server
/sbin/ldconfig
%if %{systemd_enabled}
if [ $1 -eq 1 ] ; then/bin/systemctl daemon-reload >/dev/null 2>&1 || :%if 0%{?suse_version}%if 0%{?suse_version} >= 1315%service_add_pre postgresql-%{pgpackageversion}.service%endif%else%systemd_post %{sname}-%{pgpackageversion}.service%endif
fi
%endif# postgres' .bash_profile.
# We now don't install .bash_profile as we used to in pre 9.0. Instead, use cat,
# so that package manager will be happy during upgrade to new major version.
echo "[ -f /etc/profile ] && source /etc/profile
PGDATA=/var/lib/pgsql/%{pgmajorversion}/data
export PGDATA
# If you want to customize your settings,
# Use the file below. This is not overridden
# by the RPMS.
[ -f /var/lib/pgsql/.pgsql_profile ] && source /var/lib/pgsql/.pgsql_profile" > /var/lib/pgsql/.bash_profile
chown postgres: /var/lib/pgsql/.bash_profile
chmod 700 /var/lib/pgsql/.bash_profile%preun server
%if %{systemd_enabled}
if [ $1 -eq 0 ] ; then# Package removal, not upgrade/bin/systemctl --no-reload disable %{sname}-%{pgmajorversion}.service >/dev/null 2>&1 || :/bin/systemctl stop %{sname}-%{pgmajorversion}.service >/dev/null 2>&1 || :
fi
%endif%postun server
/sbin/ldconfig
%if %{systemd_enabled}/bin/systemctl daemon-reload >/dev/null 2>&1 || :
%endif
%if %{systemd_enabled}
if [ $1 -ge 1 ] ; then# Package upgrade, not uninstall/bin/systemctl try-restart %{sname}-%{pgmajorversion}.service >/dev/null 2>&1 || :
fi
%endif# Create alternatives entries for common binaries and man files
%post
%{_sbindir}/update-alternatives --install %{_bindir}/psql pgsql-psql %{pgbaseinstdir}/bin/psql %{packageversion}0
%{_sbindir}/update-alternatives --install %{_bindir}/clusterdb pgsql-clusterdb %{pgbaseinstdir}/bin/clusterdb %{packageversion}0
%{_sbindir}/update-alternatives --install %{_bindir}/createdb pgsql-createdb %{pgbaseinstdir}/bin/createdb %{packageversion}0
%{_sbindir}/update-alternatives --install %{_bindir}/createuser pgsql-createuser %{pgbaseinstdir}/bin/createuser %{packageversion}0
%{_sbindir}/update-alternatives --install %{_bindir}/dropdb pgsql-dropdb %{pgbaseinstdir}/bin/dropdb %{packageversion}0
%{_sbindir}/update-alternatives --install %{_bindir}/dropuser pgsql-dropuser %{pgbaseinstdir}/bin/dropuser %{packageversion}0
%{_sbindir}/update-alternatives --install %{_bindir}/pg_basebackup pgsql-pg_basebackup %{pgbaseinstdir}/bin/pg_basebackup %{packageversion}0
%{_sbindir}/update-alternatives --install %{_bindir}/pg_dump pgsql-pg_dump %{pgbaseinstdir}/bin/pg_dump %{packageversion}0
%{_sbindir}/update-alternatives --install %{_bindir}/pg_dumpall pgsql-pg_dumpall %{pgbaseinstdir}/bin/pg_dumpall %{packageversion}0
%{_sbindir}/update-alternatives --install %{_bindir}/pg_restore pgsql-pg_restore %{pgbaseinstdir}/bin/pg_restore %{packageversion}0
%{_sbindir}/update-alternatives --install %{_bindir}/reindexdb pgsql-reindexdb %{pgbaseinstdir}/bin/reindexdb %{packageversion}0
%{_sbindir}/update-alternatives --install %{_bindir}/vacuumdb pgsql-vacuumdb %{pgbaseinstdir}/bin/vacuumdb %{packageversion}0
%{_sbindir}/update-alternatives --install %{_mandir}/man1/clusterdb.1 pgsql-clusterdbman %{pgbaseinstdir}/share/man/man1/clusterdb.1 %{packageversion}0
%{_sbindir}/update-alternatives --install %{_mandir}/man1/createdb.1 pgsql-createdbman %{pgbaseinstdir}/share/man/man1/createdb.1 %{packageversion}0
%{_sbindir}/update-alternatives --install %{_mandir}/man1/createuser.1 pgsql-createuserman %{pgbaseinstdir}/share/man/man1/createuser.1 %{packageversion}0
%{_sbindir}/update-alternatives --install %{_mandir}/man1/dropdb.1 pgsql-dropdbman %{pgbaseinstdir}/share/man/man1/dropdb.1 %{packageversion}0
%{_sbindir}/update-alternatives --install %{_mandir}/man1/dropuser.1 pgsql-dropuserman %{pgbaseinstdir}/share/man/man1/dropuser.1 %{packageversion}0
%{_sbindir}/update-alternatives --install %{_mandir}/man1/pg_basebackup.1 pgsql-pg_basebackupman %{pgbaseinstdir}/share/man/man1/pg_basebackup.1 %{packageversion}0
%{_sbindir}/update-alternatives --install %{_mandir}/man1/pg_dump.1 pgsql-pg_dumpman %{pgbaseinstdir}/share/man/man1/pg_dump.1 %{packageversion}0
%{_sbindir}/update-alternatives --install %{_mandir}/man1/pg_dumpall.1 pgsql-pg_dumpallman %{pgbaseinstdir}/share/man/man1/pg_dumpall.1 %{packageversion}0
%{_sbindir}/update-alternatives --install %{_mandir}/man1/pg_restore.1 pgsql-pg_restoreman %{pgbaseinstdir}/share/man/man1/pg_restore.1 %{packageversion}0
%{_sbindir}/update-alternatives --install %{_mandir}/man1/psql.1 pgsql-psqlman %{pgbaseinstdir}/share/man/man1/psql.1 %{packageversion}0
%{_sbindir}/update-alternatives --install %{_mandir}/man1/reindexdb.1 pgsql-reindexdbman %{pgbaseinstdir}/share/man/man1/reindexdb.1 %{packageversion}0
%{_sbindir}/update-alternatives --install %{_mandir}/man1/vacuumdb.1 pgsql-vacuumdbman %{pgbaseinstdir}/share/man/man1/vacuumdb.1 %{packageversion}0%post libs
#%{_sbindir}/update-alternatives --install /etc/ld.so.conf.d/%{sname}-pgdg-libs.conf pgsql-ld-conf %{pgbaseinstdir}/share/%{sname}-%{pgmajorversion}-libs.conf %{packageversion}0
/sbin/ldconfig# Drop alternatives entries for common binaries and man files
%postun
if [ "$1" -eq 0 ]then# Only remove these links if the package is completely removed from the system (vs.just being upgraded)%{_sbindir}/update-alternatives --remove pgsql-psql		%{pgbaseinstdir}/bin/psql%{_sbindir}/update-alternatives --remove pgsql-clusterdb	%{pgbaseinstdir}/bin/clusterdb%{_sbindir}/update-alternatives --remove pgsql-clusterdbman	%{pgbaseinstdir}/share/man/man1/clusterdb.1%{_sbindir}/update-alternatives --remove pgsql-createdb		%{pgbaseinstdir}/bin/createdb%{_sbindir}/update-alternatives --remove pgsql-createdbman	%{pgbaseinstdir}/share/man/man1/createdb.1%{_sbindir}/update-alternatives --remove pgsql-createuser	%{pgbaseinstdir}/bin/createuser%{_sbindir}/update-alternatives --remove pgsql-createuserman	%{pgbaseinstdir}/share/man/man1/createuser.1%{_sbindir}/update-alternatives --remove pgsql-dropdb		%{pgbaseinstdir}/bin/dropdb%{_sbindir}/update-alternatives --remove pgsql-dropdbman	%{pgbaseinstdir}/share/man/man1/dropdb.1%{_sbindir}/update-alternatives --remove pgsql-dropuser		%{pgbaseinstdir}/bin/dropuser%{_sbindir}/update-alternatives --remove pgsql-dropuserman	%{pgbaseinstdir}/share/man/man1/dropuser.1%{_sbindir}/update-alternatives --remove pgsql-pg_basebackup	%{pgbaseinstdir}/bin/pg_basebackup%{_sbindir}/update-alternatives --remove pgsql-pg_dump		%{pgbaseinstdir}/bin/pg_dump%{_sbindir}/update-alternatives --remove pgsql-pg_dumpall	%{pgbaseinstdir}/bin/pg_dumpall%{_sbindir}/update-alternatives --remove pgsql-pg_dumpallman	%{pgbaseinstdir}/share/man/man1/pg_dumpall.1%{_sbindir}/update-alternatives --remove pgsql-pg_basebackupman	%{pgbaseinstdir}/share/man/man1/pg_basebackup.1%{_sbindir}/update-alternatives --remove pgsql-pg_dumpman	%{pgbaseinstdir}/share/man/man1/pg_dump.1%{_sbindir}/update-alternatives --remove pgsql-pg_restore	%{pgbaseinstdir}/bin/pg_restore%{_sbindir}/update-alternatives --remove pgsql-pg_restoreman	%{pgbaseinstdir}/share/man/man1/pg_restore.1%{_sbindir}/update-alternatives --remove pgsql-psqlman		%{pgbaseinstdir}/share/man/man1/psql.1%{_sbindir}/update-alternatives --remove pgsql-reindexdb	%{pgbaseinstdir}/bin/reindexdb%{_sbindir}/update-alternatives --remove pgsql-reindexdbman	%{pgbaseinstdir}/share/man/man1/reindexdb.1%{_sbindir}/update-alternatives --remove pgsql-vacuumdb		%{pgbaseinstdir}/bin/vacuumdb%{_sbindir}/update-alternatives --remove pgsql-vacuumdbman	%{pgbaseinstdir}/share/man/man1/vacuumdb.1fi%postun libs
if [ "$1" -eq 0 ]then%{_sbindir}/update-alternatives --remove pgsql-ld-conf		%{pgbaseinstdir}/share/%{sname}-%{pgmajorversion}-libs.conf/sbin/ldconfig
fi%clean
%{__rm} -rf %{buildroot}# FILES section.%files -f pg_main.lst
%defattr(-,root,root)
%if %llvm
# Install bitcode directory along with the main package,
# so that extensions can use this dir.
%dir %{pgbaseinstdir}/lib/bitcode
%endif
%doc doc/KNOWN_BUGS doc/MISSING_FEATURES
%doc COPYRIGHT
%doc README.rpm-dist
%{pgbaseinstdir}/bin/clusterdb
%{pgbaseinstdir}/bin/createdb
%{pgbaseinstdir}/bin/createuser
%{pgbaseinstdir}/bin/dropdb
%{pgbaseinstdir}/bin/dropuser
%{pgbaseinstdir}/bin/pgbench
%{pgbaseinstdir}/bin/pg_basebackup
%{pgbaseinstdir}/bin/pg_config
%{pgbaseinstdir}/bin/pg_dump
%{pgbaseinstdir}/bin/pg_dumpall
%{pgbaseinstdir}/bin/pg_isready
%{pgbaseinstdir}/bin/pg_receivewal
%{pgbaseinstdir}/bin/pg_restore
%{pgbaseinstdir}/bin/pg_waldump
%{pgbaseinstdir}/bin/psql
%{pgbaseinstdir}/bin/reindexdb
%{pgbaseinstdir}/bin/vacuumdb
%{pgbaseinstdir}/share/errcodes.txt
%{pgbaseinstdir}/share/man/man1/clusterdb.*
%{pgbaseinstdir}/share/man/man1/createdb.*
%{pgbaseinstdir}/share/man/man1/createuser.*
%{pgbaseinstdir}/share/man/man1/dropdb.*
%{pgbaseinstdir}/share/man/man1/dropuser.*
%{pgbaseinstdir}/share/man/man1/pgbench.1
%{pgbaseinstdir}/share/man/man1/pg_basebackup.*
%{pgbaseinstdir}/share/man/man1/pg_config.*
%{pgbaseinstdir}/share/man/man1/pg_dump.*
%{pgbaseinstdir}/share/man/man1/pg_dumpall.*
%{pgbaseinstdir}/share/man/man1/pg_isready.*
%{pgbaseinstdir}/share/man/man1/pg_restore.*
%{pgbaseinstdir}/share/man/man1/psql.*
%{pgbaseinstdir}/share/man/man1/reindexdb.*
%{pgbaseinstdir}/share/man/man1/vacuumdb.*
%{pgbaseinstdir}/share/man/man3/*
%{pgbaseinstdir}/share/man/man7/*%files docs
%defattr(-,root,root)
%doc doc/src/*
%doc *-A4.pdf
%doc src/tutorial
%doc doc/html%files contrib -f pg_contrib.lst
%defattr(-,root,root)
%doc %{pgbaseinstdir}/doc/extension/*.example
%{pgbaseinstdir}/lib/_int.so
%{pgbaseinstdir}/lib/adminpack.so
%{pgbaseinstdir}/lib/amcheck.so
%{pgbaseinstdir}/lib/auth_delay.so
%{pgbaseinstdir}/lib/autoinc.so
%{pgbaseinstdir}/lib/auto_explain.so
%{pgbaseinstdir}/lib/bloom.so
%{pgbaseinstdir}/lib/btree_gin.so
%{pgbaseinstdir}/lib/btree_gist.so
%{pgbaseinstdir}/lib/citext.so
%{pgbaseinstdir}/lib/cube.so
%{pgbaseinstdir}/lib/dblink.so
%{pgbaseinstdir}/lib/earthdistance.so
%{pgbaseinstdir}/lib/file_fdw.so*
%{pgbaseinstdir}/lib/fuzzystrmatch.so
%{pgbaseinstdir}/lib/insert_username.so
%{pgbaseinstdir}/lib/isn.so
%{pgbaseinstdir}/lib/hstore.so
%if %plperl
%{pgbaseinstdir}/lib/hstore_plperl.so
%{pgbaseinstdir}/lib/jsonb_plperl.so
%{pgbaseinstdir}/share/extension/jsonb_plperl*.sql
%{pgbaseinstdir}/share/extension/jsonb_plperl*.control
%endif
%if %plpython3
%{pgbaseinstdir}/lib/hstore_plpython3.so
%{pgbaseinstdir}/lib/jsonb_plpython3.so
%{pgbaseinstdir}/lib/ltree_plpython3.so
%endif
%{pgbaseinstdir}/lib/lo.so
%{pgbaseinstdir}/lib/ltree.so
%{pgbaseinstdir}/lib/moddatetime.so
%{pgbaseinstdir}/lib/old_snapshot.so
%{pgbaseinstdir}/lib/pageinspect.so
%{pgbaseinstdir}/lib/passwordcheck.so
%{pgbaseinstdir}/lib/pgcrypto.so
%{pgbaseinstdir}/lib/pgrowlocks.so
%{pgbaseinstdir}/lib/pgstattuple.so
%{pgbaseinstdir}/lib/pg_buffercache.so
%{pgbaseinstdir}/lib/pg_freespacemap.so
%{pgbaseinstdir}/lib/pg_prewarm.so
%{pgbaseinstdir}/lib/pg_stat_statements.so
%{pgbaseinstdir}/lib/pg_surgery.so
%{pgbaseinstdir}/lib/pg_trgm.so
%{pgbaseinstdir}/lib/pg_visibility.so
%{pgbaseinstdir}/lib/postgres_fdw.so
%{pgbaseinstdir}/lib/refint.so
%{pgbaseinstdir}/lib/seg.so
%if %ssl
%{pgbaseinstdir}/lib/sslinfo.so
%endif
%if %selinux
%{pgbaseinstdir}/lib/sepgsql.so
%{pgbaseinstdir}/share/contrib/sepgsql.sql
%endif
%{pgbaseinstdir}/lib/tablefunc.so
%{pgbaseinstdir}/lib/tcn.so
%{pgbaseinstdir}/lib/test_decoding.so
%{pgbaseinstdir}/lib/tsm_system_rows.so
%{pgbaseinstdir}/lib/tsm_system_time.so
%{pgbaseinstdir}/lib/unaccent.so
%if %xml
%{pgbaseinstdir}/lib/pgxml.so
%endif
%if %uuid
%{pgbaseinstdir}/lib/uuid-ossp.so
%endif
%{pgbaseinstdir}/share/extension/adminpack*
%{pgbaseinstdir}/share/extension/amcheck*
%{pgbaseinstdir}/share/extension/autoinc*
%{pgbaseinstdir}/share/extension/bloom*
%{pgbaseinstdir}/share/extension/btree_gin*
%{pgbaseinstdir}/share/extension/btree_gist*
%{pgbaseinstdir}/share/extension/citext*
%{pgbaseinstdir}/share/extension/cube*
%{pgbaseinstdir}/share/extension/dblink*
%{pgbaseinstdir}/share/extension/dict_int*
%{pgbaseinstdir}/share/extension/dict_xsyn*
%{pgbaseinstdir}/share/extension/earthdistance*
%{pgbaseinstdir}/share/extension/file_fdw*
%{pgbaseinstdir}/share/extension/fuzzystrmatch*
%{pgbaseinstdir}/share/extension/hstore.control
%{pgbaseinstdir}/share/extension/hstore--*.sql
%if %plperl
%{pgbaseinstdir}/share/extension/hstore_plperl*
%endif
%{pgbaseinstdir}/share/extension/insert_username*
%{pgbaseinstdir}/share/extension/intagg*
%{pgbaseinstdir}/share/extension/intarray*
%{pgbaseinstdir}/share/extension/isn*
%{pgbaseinstdir}/share/extension/lo*
%{pgbaseinstdir}/share/extension/ltree.control
%{pgbaseinstdir}/share/extension/ltree--*.sql
%{pgbaseinstdir}/share/extension/moddatetime*
%{pgbaseinstdir}/share/extension/old_snapshot*
%{pgbaseinstdir}/share/extension/pageinspect*
%{pgbaseinstdir}/share/extension/pg_buffercache*
%{pgbaseinstdir}/share/extension/pg_freespacemap*
%{pgbaseinstdir}/share/extension/pg_prewarm*
%{pgbaseinstdir}/share/extension/pg_stat_statements*
%{pgbaseinstdir}/share/extension/pg_surgery*
%{pgbaseinstdir}/share/extension/pg_trgm*
%{pgbaseinstdir}/share/extension/pg_visibility*
%{pgbaseinstdir}/share/extension/pgcrypto*
%{pgbaseinstdir}/share/extension/pgrowlocks*
%{pgbaseinstdir}/share/extension/pgstattuple*
%{pgbaseinstdir}/share/extension/postgres_fdw*
%{pgbaseinstdir}/share/extension/refint*
%{pgbaseinstdir}/share/extension/seg*
%if %ssl
%{pgbaseinstdir}/share/extension/sslinfo*
%endif
%{pgbaseinstdir}/share/extension/tablefunc*
%{pgbaseinstdir}/share/extension/tcn*
%{pgbaseinstdir}/share/extension/tsm_system_rows*
%{pgbaseinstdir}/share/extension/tsm_system_time*
%{pgbaseinstdir}/share/extension/unaccent*
%if %uuid
%{pgbaseinstdir}/share/extension/uuid-ossp*
%endif
%if %xml
%{pgbaseinstdir}/share/extension/xml2*
%endif
%{pgbaseinstdir}/bin/oid2name
%{pgbaseinstdir}/bin/pg_amcheck
%{pgbaseinstdir}/bin/pg_recvlogical
%{pgbaseinstdir}/bin/vacuumlo
%{pgbaseinstdir}/share/man/man1/pg_amcheck.1
%{pgbaseinstdir}/share/man/man1/oid2name.1
%{pgbaseinstdir}/share/man/man1/pg_recvlogical.1
%{pgbaseinstdir}/share/man/man1/vacuumlo.1%files libs -f pg_libpq5.lst
%defattr(-,root,root)
%{pgbaseinstdir}/lib/libpq.so.*
%{pgbaseinstdir}/lib/libecpg.so*
%{pgbaseinstdir}/lib/libpgtypes.so.*
%{pgbaseinstdir}/lib/libecpg_compat.so.*
%{pgbaseinstdir}/lib/libpqwalreceiver.so
%config(noreplace) %attr (644,root,root) %{pgbaseinstdir}/share/%{sname}-%{pgmajorversion}-libs.conf
%{pgbaseinstdir}/lib/libcrypto.so*
%{pgbaseinstdir}/lib/libicu*.so*
%{pgbaseinstdir}/lib/liblber*.so*
%{pgbaseinstdir}/lib/libldap*.so*
%{pgbaseinstdir}/lib/liblz4*.so*
%{pgbaseinstdir}/lib/liblzma*.so*
%{pgbaseinstdir}/lib/libssl*.so*
%{pgbaseinstdir}/lib/libxml2*.so*
%{pgbaseinstdir}/lib/libxslt*.so*
%{pgbaseinstdir}/lib/libz*.so*
%{pgbaseinstdir}/lib/libreadline*.so*%files server -f pg_server.lst
%defattr(-,root,root)
%if %{systemd_enabled}
%{pgbaseinstdir}/bin/%{sname}-%{pgmajorversion}-setup
%{_bindir}/%{sname}-%{pgmajorversion}-setup
%{pgbaseinstdir}/bin/%{sname}-%{pgmajorversion}-check-db-dir
%{_tmpfilesdir}/%{sname}-%{pgmajorversion}.conf
%{_unitdir}/%{sname}-%{pgmajorversion}.service
%endif
%if %pam
%config(noreplace) /etc/pam.d/%{sname}
%endif
%attr (755,root,root) %dir /etc/sysconfig/pgsql
%{pgbaseinstdir}/bin/initdb
%{pgbaseinstdir}/bin/pg_archivecleanup
%{pgbaseinstdir}/bin/pg_checksums
%{pgbaseinstdir}/bin/pg_controldata
%{pgbaseinstdir}/bin/pg_ctl
%{pgbaseinstdir}/bin/pg_resetwal
%{pgbaseinstdir}/bin/pg_rewind
%{pgbaseinstdir}/bin/pg_test_fsync
%{pgbaseinstdir}/bin/pg_test_timing
%{pgbaseinstdir}/bin/pg_upgrade
%{pgbaseinstdir}/bin/pg_verifybackup
%{pgbaseinstdir}/bin/postgres
%{pgbaseinstdir}/bin/postmaster
%{pgbaseinstdir}/share/man/man1/initdb.*
%{pgbaseinstdir}/share/man/man1/pg_archivecleanup.1
%{pgbaseinstdir}/share/man/man1/pg_checksums.*
%{pgbaseinstdir}/share/man/man1/pg_controldata.*
%{pgbaseinstdir}/share/man/man1/pg_ctl.*
%{pgbaseinstdir}/share/man/man1/pg_resetwal.*
%{pgbaseinstdir}/share/man/man1/pg_receivewal.*
%{pgbaseinstdir}/share/man/man1/pg_rewind.1
%{pgbaseinstdir}/share/man/man1/pg_test_fsync.1
%{pgbaseinstdir}/share/man/man1/pg_test_timing.1
%{pgbaseinstdir}/share/man/man1/pg_upgrade.1
%{pgbaseinstdir}/share/man/man1/pg_verifybackup.*
%{pgbaseinstdir}/share/man/man1/pg_waldump.1
%{pgbaseinstdir}/share/man/man1/postgres.*
%{pgbaseinstdir}/share/man/man1/postmaster.*
%{pgbaseinstdir}/share/postgres.bki
%{pgbaseinstdir}/share/system_constraints.sql
%{pgbaseinstdir}/share/system_functions.sql
%{pgbaseinstdir}/share/system_views.sql
%{pgbaseinstdir}/share/*.sample
%{pgbaseinstdir}/share/timezonesets/*
%{pgbaseinstdir}/share/tsearch_data/*.affix
%{pgbaseinstdir}/share/tsearch_data/*.dict
%{pgbaseinstdir}/share/tsearch_data/*.ths
%{pgbaseinstdir}/share/tsearch_data/*.rules
%{pgbaseinstdir}/share/tsearch_data/*.stop
%{pgbaseinstdir}/share/tsearch_data/*.syn
%{pgbaseinstdir}/lib/dict_int.so
%{pgbaseinstdir}/lib/dict_snowball.so
%{pgbaseinstdir}/lib/dict_xsyn.so
%{pgbaseinstdir}/lib/euc2004_sjis2004.so
%{pgbaseinstdir}/lib/pgoutput.so
%{pgbaseinstdir}/lib/plpgsql.so
%dir %{pgbaseinstdir}/share/extension
%{pgbaseinstdir}/share/extension/plpgsql*%dir %{pgbaseinstdir}/lib
%dir %{pgbaseinstdir}/share
%attr(700,postgres,postgres) %dir /var/lib/pgsql
%attr(700,postgres,postgres) %dir /var/lib/pgsql/%{pgmajorversion}
%attr(700,postgres,postgres) %dir /var/lib/pgsql/%{pgmajorversion}/data
%attr(700,postgres,postgres) %dir /var/lib/pgsql/%{pgmajorversion}/backups
%attr(755,postgres,postgres) %dir /var/run/%{sname}
%{pgbaseinstdir}/lib/*_and_*.so
%{pgbaseinstdir}/share/information_schema.sql
%{pgbaseinstdir}/share/snowball_create.sql
%{pgbaseinstdir}/share/sql_features.txt%files devel -f pg_devel.lst
%defattr(-,root,root)
%{pgbaseinstdir}/include/*
%{pgbaseinstdir}/bin/ecpg
%{pgbaseinstdir}/lib/libpq.so
%{pgbaseinstdir}/lib/libecpg.so
%{pgbaseinstdir}/lib/libpq.a
%{pgbaseinstdir}/lib/libecpg.a
%{pgbaseinstdir}/lib/libecpg_compat.so
%{pgbaseinstdir}/lib/libecpg_compat.a
%{pgbaseinstdir}/lib/libpgcommon.a
%{pgbaseinstdir}/lib/libpgcommon_shlib.a
%{pgbaseinstdir}/lib/libpgport.a
%{pgbaseinstdir}/lib/libpgport_shlib.a
%{pgbaseinstdir}/lib/libpgtypes.so
%{pgbaseinstdir}/lib/libpgtypes.a
%{pgbaseinstdir}/lib/pgxs/*
%{pgbaseinstdir}/lib/pkgconfig/*
%{pgbaseinstdir}/share/man/man1/ecpg.*%if %llvm
%files llvmjit
%defattr(-,root,root)
%{pgbaseinstdir}/lib/bitcode/*
%{pgbaseinstdir}/lib/llvmjit.so
%{pgbaseinstdir}/lib/llvmjit_types.bc
%endif%if %plperl
%files plperl -f pg_plperl.lst
%defattr(-,root,root)
%{pgbaseinstdir}/lib/bool_plperl.so
%{pgbaseinstdir}/lib/plperl.so
%{pgbaseinstdir}/share/extension/plperl*
%{pgbaseinstdir}/share/extension/bool_plperl*
%endif%if %pltcl
%files pltcl -f pg_pltcl.lst
%defattr(-,root,root)
%{pgbaseinstdir}/lib/pltcl.so
%{pgbaseinstdir}/share/extension/pltcl*
%endif%if %plpython3
%files plpython3 -f pg_plpython3.lst
%{pgbaseinstdir}/share/extension/plpython3*
%{pgbaseinstdir}/lib/plpython3.so
%{pgbaseinstdir}/share/extension/*_plpython3u*
%endif%if %test
%files test
%defattr(-,postgres,postgres)
%attr(-,postgres,postgres) %{pgbaseinstdir}/lib/test/*
%attr(-,postgres,postgres) %dir %{pgbaseinstdir}/lib/test
%endif%changelog
* Wed Oct 19 2022 Devrim Gündüz <devrim@gunduz.org> - 14.5-3
- Add a temp patch to build against LLVM 15. Needed for Fedora 37.* Fri Aug 12 2022 - John Harvey <john.harvey@crunchydata.com> 14.5-2PGDG
- Fix macro for consistency* Tue Aug 9 2022 Devrim Gündüz <devrim@gunduz.org> - 14.5-1PGDG
- Update to 14.5, per changes described athttps://www.postgresql.org/docs/release/14.5/
- Require LLVM and clang 13 on SLES 15, as SP4 is out and SP2 is already EOLed.
- Fix long standing "absolute symlink" error while building the package
- Create a symlink of pg_regress instead of full copy to fix "duplicatebuild-id"  warning while building the package.* Tue Jul 26 2022 Devrim Gündüz <devrim@gunduz.org> - 14.4-3PGDG
- Add gcc-c++ BR expliclity.* Fri Jun 24 2022 Devrim Gündüz <devrim@gunduz.org> - 14.4-2PGDG
- Enable LLVM on ppc64le except on RHEL 7, per report from Chuan Hua Zhao
- Fix builds when plpython3 macro is disabled, per report from Shteryu Hristov.* Thu Jun 16 2022 Devrim Gündüz <devrim@gunduz.org> - 14.4-1PGDG
- Update to 14.4, per changes described athttps://www.postgresql.org/docs/release/14.4/* Thu May 19 2022 Devrim Gündüz <devrim@gunduz.org> - 14.3-2PGDG
- Undefine _package_note_file macro. This is needed for Fedora 36+,but does not hurt to use in all distros.Per https://fedoraproject.org/wiki/Changes/Package_information_on_ELF_objectsand help from Fedora developers on IRC.* Wed May 11 2022 Devrim Gündüz <devrim@gunduz.org> - 14.3-1PGDG
- Update to 14.3, per changes described athttps://www.postgresql.org/docs/release/14.3/* Tue May 10 2022 Devrim Gündüz <devrim@gunduz.org> - 14.2-4PGDG
- Rebuild on RHEL 8 against new LLVM and GCC.* Mon Feb 21 2022 Devrim Gündüz <devrim@gunduz.org> - 14.2-3PGDG
- Fix broken dependency on SLES.* Fri Feb 18 2022 Devrim Gündüz <devrim@gunduz.org> - 14.2-2PGDG
- Rebuild on Fedora 34 because of LLVM and GCC updates.* Tue Feb 8 2022 Devrim Gündüz <devrim@gunduz.org> - 14.2-1PGDG
- Update to 14.2, per changes described athttps://www.postgresql.org/docs/release/14.2/* Tue Feb 1 2022 Devrim Gündüz <devrim@gunduz.org> - 14.1-5PGDG
- Rebuild on Fedora 35 and RHEL 9 because of LLVM and GCC updates.* Wed Jan 26 2022 John Harvey <john.harvey@crunchydata.com> - 14.1-4PGDG
- Fix PAM support on suse* Thu Dec 23 2021 Devrim Gündüz <devrim@gunduz.org> - 14.1-3PGDG
- Require libLLVM11 on SLES 15, not llvm11 (compiler). Per report fromTiago ANASTACIO: https://redmine.postgresql.org/issues/7007* Thu Nov 25 2021 Devrim Gündüz <devrim@gunduz.org> - 14.1-2PGDG
- Rebuild against LLVM 12 on RHEL 8 / aarch64.* Mon Nov 8 2021 Devrim Gündüz <devrim@gunduz.org> - 14.1-1PGDG
- Update to 14.1, per changes described athttps://www.postgresql.org/docs/release/14.1/
- Configure systemd to not sigkill the postmaster, per Justin Pryzby.* Mon Nov 8 2021 John Harvey <john.harvey@crunchydata.com> - 14.0-4PGDG
- Ensure that /var/lib/pgsql is postgres-owned on SLES. This fixespostgres startup on SLES when using the default logfile path.* Mon Nov 1 2021 Devrim Gündüz <devrim@gunduz.org> - 14.0-3PGDG
- Fix PL/Python3 dependency on SLES 12 and 15.* Tue Oct 19 2021 Devrim Gündüz <devrim@gunduz.org> - 14.0-2PGDG
- Fix Makefile.regress, so that regression tests can actually be run.Per report from Tomoaki Sato.* Wed Sep 29 2021 Devrim Gündüz <devrim@gunduz.org> - 14.0-1
- Update to 14.0!* Thu Sep 16 2021 Devrim Gündüz <devrim@gunduz.org> - 14.0rc1-1
- Update ro rc1
- Fix setup script, so that it uses the right pwfile.* Fri Sep 10 2021 Devrim Gündüz <devrim@gunduz.org> - 14.0-beta3_3
- Fix setup script, put back scram auth.* Thu Sep 2 2021 - John Harvey <john.harvey@crunchydata.com> 14.0-beta3_2
- Fix macro for consistency* Wed Aug 11 2021 Devrim Gündüz <devrim@gunduz.org> - 14.0-beta3_1
- Update to beta3* Tue Jul 13 2021 Devrim Gündüz <devrim@gunduz.org> - 14.0-beta2_3
- Rebuild against clang11 and llvm11 on SLES 15 SP3* Thu Jun 24 2021 Devrim Gündüz <devrim@gunduz.org> - 14.0-beta2_2
- Build with GCC on RHEL 8 - ppc64le* Mon Jun 21 2021 Devrim Gündüz <devrim@gunduz.org> - 14.0-beta2_1
- Update to beta2* Fri May 21 2021 Devrim Gündüz <devrim@gunduz.org> - 14.0-beta1_4
- Remove redundant __perl_excludes, per Andrew Dunstan.
- Filter out some perl dependencies, per Andrew. This will probablybe removed in v15.* Fri May 21 2021 Devrim Gündüz <devrim@gunduz.org> - 14.0-beta1_3
- Add a temp patch (by Andrew Dunstan) to properly fix the PostgresVersiondependency issue. This patch will be removed in Beta 2.* Thu May 20 2021 Devrim Gündüz <devrim@gunduz.org> - 14.0-beta1_2
- Filter out PostgresVersion "dependency", per hint from Honza Horak.* Tue May 18 2021 Devrim Gündüz <devrim@gunduz.org> - 14.0-beta1_1
- Update to beta1* Thu Sep 17 2020 Devrim Gündüz <devrim@gunduz.org> - 14.0-alpha1
- Initial cut for PostgreSQL 14

rpm打包 repmgr

spec文件

Name:repmgr	
Version:5.3.3	
Release:	1%{?dist}
Summary:repmgr wangjing	Group:Applications/Internet		
License:GPL	
URL:	https://www.repmgr.org/	
Source0:	https://www.repmgr.org/download/repmgr-5.3.3.tar.gz#BuildRequires:	
#Requires:	%description%prep
%setup -q%build
%configure
make %{?_smp_mflags}%install
make install DESTDIR=%{buildroot}%files
%defattr (-,postgres,postgres)
/usr/pgsql-14/bin/repmgr
/usr/pgsql-14/bin/repmgrd
/usr/pgsql-14/lib/repmgr.so
/usr/pgsql-14/share/extension/repmgr--4.0--4.1.sql
/usr/pgsql-14/share/extension/repmgr--4.0.sql
/usr/pgsql-14/share/extension/repmgr--4.1--4.2.sql
/usr/pgsql-14/share/extension/repmgr--4.1.sql
/usr/pgsql-14/share/extension/repmgr--4.2--4.3.sql
/usr/pgsql-14/share/extension/repmgr--4.2.sql
/usr/pgsql-14/share/extension/repmgr--4.3--4.4.sql
/usr/pgsql-14/share/extension/repmgr--4.3.sql
/usr/pgsql-14/share/extension/repmgr--4.4--5.0.sql
/usr/pgsql-14/share/extension/repmgr--4.4.sql
/usr/pgsql-14/share/extension/repmgr--5.0--5.1.sql
/usr/pgsql-14/share/extension/repmgr--5.0.sql
/usr/pgsql-14/share/extension/repmgr--5.1--5.2.sql
/usr/pgsql-14/share/extension/repmgr--5.1.sql
/usr/pgsql-14/share/extension/repmgr--5.2--5.3.sql
/usr/pgsql-14/share/extension/repmgr--5.2.sql
/usr/pgsql-14/share/extension/repmgr--5.3.sql
/usr/pgsql-14/share/extension/repmgr--unpackaged--4.0.sql
/usr/pgsql-14/share/extension/repmgr--unpackaged--5.1.sql
/usr/pgsql-14/share/extension/repmgr--unpackaged--5.2.sql
/usr/pgsql-14/share/extension/repmgr--unpackaged--5.3.sql
/usr/pgsql-14/share/extension/repmgr.control
%doc%changelog

rpm打包 pgpool

spec文件

Name:pgpool-II		
Version:4.2.2	
Release:	1%{?dist}
Summary:pgpool-II wangjing	Group:Applications/Internet		
License:GPL	
URL:	https://www.pgpool.net/	
Source0:https://www.pgpool.net/mediawiki/images/pgpool-II-4.2.2.tar.gz#BuildRequires:	
#Requires:	%description%prep
%setup -q%build
%configure  --with-pgsql=/usr/pgsql-14
make -j 8%install
make install DESTDIR=%{buildroot}%files
%defattr (-,postgres,postgres)
/etc/escalation.sh.sample
/etc/failover.sh.sample
/etc/follow_primary.sh.sample
/etc/pcp.conf.sample
/etc/pgpool.conf.sample
/etc/pgpool.conf.sample-logical
/etc/pgpool.conf.sample-raw
/etc/pgpool.conf.sample-replication
/etc/pgpool.conf.sample-slony
/etc/pgpool.conf.sample-snapshot
/etc/pgpool.conf.sample-stream
/etc/pgpool_remote_start.sample
/etc/pool_hba.conf.sample
/etc/recovery_1st_stage.sample
/etc/recovery_2nd_stage.sample
/usr/bin/pcp_attach_node
/usr/bin/pcp_detach_node
/usr/bin/pcp_health_check_stats
/usr/bin/pcp_node_count
/usr/bin/pcp_node_info
/usr/bin/pcp_pool_status
/usr/bin/pcp_proc_count
/usr/bin/pcp_proc_info
/usr/bin/pcp_promote_node
/usr/bin/pcp_recovery_node
/usr/bin/pcp_reload_config
/usr/bin/pcp_stop_pgpool
/usr/bin/pcp_watchdog_info
/usr/bin/pg_enc
/usr/bin/pg_md5
/usr/bin/pgpool
/usr/bin/pgpool_setup
/usr/bin/pgproto
/usr/bin/watchdog_setup
/usr/bin/wd_cli
/usr/include/libpcp_ext.h
/usr/include/pcp.h
/usr/include/pool_process_reporting.h
/usr/include/pool_type.h
/usr/lib64/libpcp.a
/usr/lib64/libpcp.la
/usr/lib64/libpcp.so
/usr/lib64/libpcp.so.2
/usr/lib64/libpcp.so.2.0.0
/usr/share/pgpool-II/insert_lock.sql
/usr/share/pgpool-II/pgpool.pam%doc%changelog

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/22151.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python项目开发实战:二手房数据分析预测系统(案例教程)

一、项目背景与意义 在房地产市场日益繁荣的今天,二手房市场占据了重要地位。对于购房者、房地产中介和开发商来说,了解二手房市场的动态、价格趋势以及潜在价值至关重要。因此,开发一个基于Python的二手房数据分析预测系统具有实际应用价值和商业意义。本项目旨在利用Pytho…

2024.05.21 校招 实习 内推 面经

绿*泡*泡VX&#xff1a; neituijunsir 交流*裙 &#xff0c;内推/实习/校招汇总表格 1、实习 | 云鲸智能暑期实习热招岗位&#xff08;内推&#xff09; 实习 | 云鲸智能暑期实习热招岗位&#xff08;内推&#xff09; 2、实习 | 亚马逊实习生招聘倒计时&#xff01; 实习…

HOW - Lodash 使用指南和源码学习

目录 一、什么是 lodash二、为什么需要 Lodash三、API 分类ArrayCollectionDateFunctionLangMathNumberObjectStringSeqUtil 我们经常在项目里遇到 Lodash 函数的引入&#xff0c;如&#xff1a; debounce(Function)cloneDeep(Lang)isNull(Lang)isUndefined(Lang)isNil(Lang)i…

106、python-第四阶段-3-设计模式-单例模式

不是单例类&#xff0c;如下&#xff1a; class StrTools():pass str1StrTools() str2StrTools() print(str1) print(str2) 运用单例&#xff0c;先创建一个test.py class StrTools():pass str1StrTools()然后创建一个hello.py&#xff0c;在这个文件中引用test.py中的对象&a…

JVM-JAVA-双亲委派机制

双亲委派机制 双亲委派机制Tomcat打破双亲委派机制 双亲委派机制 双亲委派机制&#xff0c;加载某个类时会先委托父加载器寻找目标类&#xff0c;找不到再委托上层父加载器加载&#xff0c;如果所有父加载器在自己的加载类路径下都找不到目标类&#xff0c;则在自己的类加载路径…

网络攻击的常见形式

开篇 本篇文章来自于《网络安全 ——技术与实践》的学习整理笔记。 正篇 口令窃取 相比于利用系统缺陷破坏网络系统&#xff0c;最容易的方法还是通过窃取用户的口令进入系统。因为人们倾向于选择很糟糕的口令作为登录密码&#xff0c;所以口令猜测很容易成功。通常&#xff0…

C语言:基础知识

创作不易&#xff0c;友友们给个三连吧 一、C语⾔的基本概念与发展历史 1.1 人和计算机进行交流的语言 通常&#xff0c;我们使用英语、中文等语言来进行两个人之间的交流。这意味着当我们想要和他人进行交流时&#xff0c;我们需要一种语言来表达自己的感受。同样的&#xf…

10分钟了解ERP软件系统

ERP&#xff08;Enterprise Resource Planning&#xff0c;企业资源规划&#xff09;软件是一种集成的管理信息系统&#xff0c;旨在通过优化公司内部资源的分配和使用&#xff0c;提高企业的运营效率和管理水平。ERP系统通常包含多个功能模块&#xff0c;这些模块覆盖了企业运…

喜讯!易知微入选2024年第一批浙江省专精特新中小企业

近日&#xff0c;杭州市经济和信息化局对2024年第一批浙江省专精特新中小企业名单进行公示。 图片 经过专业化程度、技术创新与研发能力、品牌影响力、经营管理水平等多方面因素的考量筛选&#xff0c;杭州易知微科技有限公司荣幸地入选了2024年第一批浙江省专精特新中小企业…

c语言:自定义类型(枚举、联合体)

前言&#xff1a; c语言中中自定义类型不仅有结构体&#xff0c;还有枚举、联合体等类型&#xff0c;上一期我们详细讲解了结构体的初始化&#xff0c;使用&#xff0c;传参和内存对齐等知识&#xff0c;这一期我们来介绍c语言中的其他自定义类型枚举和联合体的知识。 1.位段 …

java -jar命令常见使用方法

1、基本用法&#xff1a; java -jar filename.jar这是最简单的用法&#xff0c;直接指定要运行的 JAR 文件的名称&#xff08;包括 .jar 扩展名&#xff09;。Java 虚拟机&#xff08;JVM&#xff09;将加载并执行 JAR 文件中的主类&#xff08;在 JAR 文件的 META-INF/MANIFE…

微服务:Rabbitmq利用jackson序列化消息为Json发送并接收

消息序列化 Spring默认会把你发送的消息通过JDK序列化为字节发送给MQ&#xff0c;接收消息的时候&#xff0c;再把字节反序列化为Java对象。 我们可以配置JSON方式来序列化&#xff0c;这样体积更小&#xff0c;可读性更高。 引入依赖&#xff1a; <dependency><g…

灯珠对LED显示屏性能的影响

LED显示屏作为现代显示技术的重要组成部分&#xff0c;广泛应用于广告、信息发布、交通指示等领域。灯珠作为LED显示屏的核心组件&#xff0c;对其性能有着决定性的影响。本文将从八个关键方面探讨灯珠对LED显示屏性能的影响。 1. 视角 LED显示屏的视角由灯珠的视角决定。户外显…

原型链、闭包、手写一个闭包函数、 闭包有哪些优缺点、原型链继承

什么是原型链&#xff1f; 原型链是一种查找规则 为对象成员查找机制提供一个方向 因为构造函数的 prototype 和其实例的 __ proto __ 都是指向原型对象的 所以可以通过__proto__ 查找当前的原型对象有没有该属性, 没有就找原型的原型, 依次类推一直找到Object( null ) 为…

【YOLOv9改进[Conv]】使用YOLOv10的空间通道解耦下采样SCDown模块替换部分CONv的实践 + 含全部代码和详细修改内容

本文将使用YOLOv10的空间通道解耦下采样SCDown模块替换部分CONv的实践 ,文中含全部代码和详细修改内容。 目录 一 YOLOv10 1 空间通道解耦下采样 2 可视化

UFS协议—新手快速入门(二)【5-6】

目录 五、UFS协议栈 六、UFS技术演进与详解 1、UFS应用层 设备管理器 任务管理器 2、UFS传输层 3、UFS互联层 UFS协议—新手快速入门&#xff08;一&#xff09;【1-4】 五、UFS协议栈 UFS&#xff08;Universal Flash Storage&#xff09;协议是针对固态存储设备&…

渡众机器人自动驾驶小车运行Autoware 实现港口物流运输

Autoware 是一个开源的自动驾驶软件堆栈&#xff0c;提供了丰富的功能和模块&#xff0c;用于实现自动驾驶车辆的感知、定位、规划和控制等功能。北京渡众机器人公司将多款自动驾驶小车在多场景运行Autoware &#xff0c;它可以实现以下功能&#xff1a; 1. 感知&#xff1a;利…

Spark的性能调优——RDD

前言 RDD 是 Spark 对于分布式数据集的抽象&#xff0c;每一个 RDD 都代表着一种分布式数据形态。比如 lineRDD&#xff0c;它表示数据在集群中以行&#xff08;Line&#xff09;的形式存在&#xff1b;而 wordRDD 则意味着数据的形态是单词&#xff0c;分布在计算集群中。 参…

职称继续教育--专业课2

单选题&#xff08;共10题&#xff0c;每题3分&#xff09; 1、根据本讲&#xff0c;“水十条”总体框架包括&#xff08;&#xff09;个层次。 C、5 2、根据“水十条”目标指标层&#xff0c;到2020年&#xff0c;地级及以上城市建成区的黑臭水体控制&#xff08;&#xff09…

数据挖掘综合案例-家用热水器用户行为分析与事件识别

文章目录 1. 背景与挖掘目标2. 分析方法与过程3. 数据分析3.1 数据探索分析3. 2 数据预处理1. 属性约束2. 划分用水事件3. 确定单次用水事件时长阈值4. 属性构造5.筛选候选洗浴事件 3.3 模型构建3.4 模型检验 4. 思考总结 1. 背景与挖掘目标 随着国内大家电品牌的进入和国外品…