From 990e5ce23e05503b60d7db4d04b8f8fdf113ebb9cdc104262dfa98eaff83cc0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Mon, 25 Nov 2024 20:48:18 +0100 Subject: [PATCH] Sync from SUSE:SLFO:Main postgresql15 revision 8f4023b60bac527a6f7b896b9f85e3ec --- _constraints | 13 -- _multibuild | 3 - postgresql-15.10.tar.bz2 | 3 + postgresql-15.10.tar.bz2.sha256 | 1 + postgresql-15.4.tar.bz2 | 3 - postgresql-15.4.tar.bz2.sha256 | 1 - postgresql-README.SUSE | 80 --------- postgresql-testsuite-keep-results-file.patch | 8 +- postgresql-var-run-socket.patch | 4 +- postgresql15.changes | 169 +++++++++++++++++++ postgresql15.spec | 117 ++++++++----- 11 files changed, 250 insertions(+), 152 deletions(-) delete mode 100644 _constraints delete mode 100644 _multibuild create mode 100644 postgresql-15.10.tar.bz2 create mode 100644 postgresql-15.10.tar.bz2.sha256 delete mode 100644 postgresql-15.4.tar.bz2 delete mode 100644 postgresql-15.4.tar.bz2.sha256 delete mode 100644 postgresql-README.SUSE diff --git a/_constraints b/_constraints deleted file mode 100644 index f2c2682..0000000 --- a/_constraints +++ /dev/null @@ -1,13 +0,0 @@ - - - - - s390x - - - - 12 - - - - diff --git a/_multibuild b/_multibuild deleted file mode 100644 index 9317e4b..0000000 --- a/_multibuild +++ /dev/null @@ -1,3 +0,0 @@ - - mini - diff --git a/postgresql-15.10.tar.bz2 b/postgresql-15.10.tar.bz2 new file mode 100644 index 0000000..f1b3e6d --- /dev/null +++ b/postgresql-15.10.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55abe738d441f0e58658b3ec6f88097a713b5e3b73139f6230d7b5c4c389e573 +size 23138615 diff --git a/postgresql-15.10.tar.bz2.sha256 b/postgresql-15.10.tar.bz2.sha256 new file mode 100644 index 0000000..ee8e77f --- /dev/null +++ b/postgresql-15.10.tar.bz2.sha256 @@ -0,0 +1 @@ +55abe738d441f0e58658b3ec6f88097a713b5e3b73139f6230d7b5c4c389e573 postgresql-15.10.tar.bz2 diff --git a/postgresql-15.4.tar.bz2 b/postgresql-15.4.tar.bz2 deleted file mode 100644 index 8409bfb..0000000 --- a/postgresql-15.4.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:baec5a4bdc4437336653b6cb5d9ed89be5bd5c0c58b94e0becee0a999e63c8f9 -size 22850355 diff --git a/postgresql-15.4.tar.bz2.sha256 b/postgresql-15.4.tar.bz2.sha256 deleted file mode 100644 index 0038621..0000000 --- a/postgresql-15.4.tar.bz2.sha256 +++ /dev/null @@ -1 +0,0 @@ -baec5a4bdc4437336653b6cb5d9ed89be5bd5c0c58b94e0becee0a999e63c8f9 postgresql-15.4.tar.bz2 diff --git a/postgresql-README.SUSE b/postgresql-README.SUSE deleted file mode 100644 index 2fbea8e..0000000 --- a/postgresql-README.SUSE +++ /dev/null @@ -1,80 +0,0 @@ -Unix-Domain Socket Directory -============================ - - - -Upgrading PostgreSQL on openSUSE and SUSE Linux Enterprise Server -================================================================= - -Current versions of PostgreSQL come with the pg_upgrade tool that -simplifies and speeds up the migration of a PostgreSQL installation to -a new version. Before version 9.1 dump and restore was needed which -was much slower. - -pg_upgrade needs to have the server binaries of both versions -available. To allow this, we had to change the way PostgreSQL is -packaged as well as the naming of the packages, so that two or more -versions of PostgreSQL can be installed in parallel. The package -names for PostgreSQL contain numbers indicating the major version. - -In PostgreSQL terms for versions up to 9.6 the major version consisted -of the first two components of the three-component version number, -i.e. 8.3, 8.4, 9.0, or 9.1. So, the packages for Postgresql 9.1 are -named postgresql91, postgresql91-server, etc. Inside the packages the -files were moved from their standard locations to a versioned location -such as /usr/lib/postgresql83/bin or /usr/lib/postgresql91/bin to -avoid file conflicts if packages are installed in parallel. - -Starting with version 10 the PostgreSQL project changed their -versioning scheme from from three components to two, which means one -component for the major version and one for the minor. So, the -sequence of major version across the versioning scheme change will be: -9.4, 9.5, 9.6, 10, 11, 12. For versions that use the new versioning -scheme SUSE only puts the single component major version into the -package name, so the postgresql96 package (containg version 9.6 -according to the old versioning scheme) will be followed by -postgresql10, then postgresql11, and so on. - -The update-alternatives mechanism creates and maintains symbolic links -that cause one version (by default the highest installed version) to -re-appear in the standard locations. By default, database data are -stored under /var/lib/pgsql/data on SUSE Linux. - -The following preconditions have to be fulfilled before data migration -can be started: - - 1. If not already done, the packages of the old PostgreSQL version - must be upgraded to the new packaging scheme through a maintenance - update. - - 2. The packages of the new PostgreSQL major version need to be - installed. As pg_upgrade is contained in postgresql91-contrib, that - one has to be installed as well, at least until the migration is - done. - - 3. Unless pg_upgrade is used in link mode, the server must have - enough free disk space to temporarily hold a copy of the database - files. If the database instance was installed in the default - location, the needed space in megabytes can be determined by running - the follwing command as root: "du -hs /var/lib/pgsql/data". If space - is tight, it might help to run the "VACUUM FULL" SQL command on each - database in the instance to be migrated, but be aware that it might - take very long. - -The latest upstream documentation for pg_upgrade including step by -step instructions for performing a database migration can be found -online under https://www.postgresql.org/docs/current/pgupgrade.html , -or locally under -file:///usr/share/doc/packages/postgresqlXX/html/pgupgrade.html , if -the postgresqlXX-docs package is installed. XX is a place holder for -the respective major version here. - -NOTE: The online documentation starts with explaining how you can -install PostgreSQL from the upstream sources (which is not necessary -when you install the SUSE RPMs) and also uses other directory names -(/usr/local instead of the update-alternatives based path as described -above). - -For background information about the inner workings of pg_upgrade and -a performance comparison with the old dump and restore method, see -http://momjian.us/main/writings/pgsql/pg_upgrade.pdf . diff --git a/postgresql-testsuite-keep-results-file.patch b/postgresql-testsuite-keep-results-file.patch index 0fa205d..0445f61 100644 --- a/postgresql-testsuite-keep-results-file.patch +++ b/postgresql-testsuite-keep-results-file.patch @@ -4,11 +4,9 @@ Date: Mon Mar 11 18:42:39 2013 +0100 don't unlink the result file -Index: postgresql-15beta1/src/test/regress/pg_regress.c -=================================================================== ---- postgresql-15beta1.orig/src/test/regress/pg_regress.c -+++ postgresql-15beta1/src/test/regress/pg_regress.c -@@ -2574,7 +2574,6 @@ regression_main(int argc, char *argv[], +--- src/test/regress/pg_regress.c.orig ++++ src/test/regress/pg_regress.c +@@ -2585,7 +2585,6 @@ regression_main(int argc, char *argv[], else { unlink(difffilename); diff --git a/postgresql-var-run-socket.patch b/postgresql-var-run-socket.patch index 0fd5387..7fe4cd7 100644 --- a/postgresql-var-run-socket.patch +++ b/postgresql-var-run-socket.patch @@ -1,4 +1,4 @@ -Change the built-in default socket directory to be /var/run/postgresql. +Change the built-in default socket directory to be /run/postgresql. For backwards compatibility with (probably non-libpq-based) clients that might still expect to find the socket in /tmp, also create a socket in /tmp. This is to resolve communication problems with clients operating @@ -48,7 +48,7 @@ Index: src/include/pg_config_manual.h */ #ifndef WIN32 -#define DEFAULT_PGSOCKET_DIR "/tmp" -+#define DEFAULT_PGSOCKET_DIR "/var/run/postgresql" ++#define DEFAULT_PGSOCKET_DIR "/run/postgresql" #else #define DEFAULT_PGSOCKET_DIR "" #endif diff --git a/postgresql15.changes b/postgresql15.changes index f53ac74..05681df 100644 --- a/postgresql15.changes +++ b/postgresql15.changes @@ -1,3 +1,157 @@ +------------------------------------------------------------------- +Tue Nov 19 14:27:34 UTC 2024 - Reinhard Max + +- Upgrade to 15.10 + * Repair ABI break for extensions that work with struct + ResultRelInfo. + * Restore functionality of ALTER {ROLE|DATABASE} SET role. + * Fix cases where a logical replication slot's restart_lsn could + go backwards. + * Avoid deleting still-needed WAL files during pg_rewind. + * Fix race conditions associated with dropping shared statistics + entries. + * Count index scans in contrib/bloom indexes in the statistics + views, such as the pg_stat_user_indexes.idx_scan counter. + * Fix crash when checking to see if an index's opclass options + have changed. + * Avoid assertion failure caused by disconnected NFA sub-graphs + in regular expression parsing. + * https://www.postgresql.org/docs/release/15.10/ + +------------------------------------------------------------------- +Wed Nov 13 13:55:01 UTC 2024 - Reinhard Max + +- Upgrade to 15.9: + * CVE-2024-10976, bsc#1233323: Ensure cached plans are marked as + dependent on the calling role when RLS applies to a + non-top-level table reference. + * CVE-2024-10977, bsc#1233325: Make libpq discard error messages + received during SSL or GSS protocol negotiation. + * CVE-2024-10978, bsc#1233326: Fix unintended interactions + between SET SESSION AUTHORIZATION and SET ROLE + * CVE-2024-10979, bsc#1233327: Prevent trusted PL/Perl code from + changing environment variables. + * https://www.postgresql.org/about/news/p-2955/ + * https://www.postgresql.org/docs/release/15.9/ + +------------------------------------------------------------------- +Tue Nov 5 12:35:17 UTC 2024 - Reinhard Max + +- Sync spec file from postgresql17. + +------------------------------------------------------------------- +Sat Aug 10 14:11:36 UTC 2024 - Marcus Rueckert + +- Upgrade to 15.8 (bsc#1229013): + * bsc#1229013, CVE-2024-7348 PostgreSQL relation replacement + during pg_dump executes arbitrary SQL + * https://www.postgresql.org/about/news/p-2910/ + * https://www.postgresql.org/docs/release/15.8/ + +------------------------------------------------------------------- +Wed May 8 12:05:25 UTC 2024 - Reinhard Max + +- Upgrade to 15.7 (bsc#1224051): + * bsc#1224038, CVE-2024-4317: Restrict visibility of pg_stats_ext + and pg_stats_ext_exprs entries to the table owner. See the + release notes for the steps that have to be taken to fix + existing PostgreSQL instances. + * Fix incompatibility with LLVM 18. + * https://www.postgresql.org/docs/release/15.7/ +- Prepare for PostgreSQL 17. +- Make sure all compilation and doc generation happens in %build. + +------------------------------------------------------------------- +Tue Mar 12 22:48:41 UTC 2024 - Aaron Puchert + +- Require LLVM <= 17 for now, because LLVM 18 doesn't seem to work. + +------------------------------------------------------------------- +Thu Mar 7 15:04:40 UTC 2024 - Sarah Kriesch + +- Remove constraints file because improved memory usage for s390x + +------------------------------------------------------------------- +Thu Feb 29 14:36:57 UTC 2024 - Dominique Leuenberger + +- Use %patch -P N instead of deprecated %patchN. + +------------------------------------------------------------------- +Thu Feb 8 14:04:50 UTC 2024 - Reinhard Max + +- Upgrade to 15.6: + * bsc#1219679, CVE-2024-0985: Tighten security restrictions + within REFRESH MATERIALIZED VIEW CONCURRENTLY. + One step of a concurrent refresh command was run under weak + security restrictions. If a materialized view's owner could + persuade a superuser or other high-privileged user to perform a + concurrent refresh on that view, the view's owner could control + code executed with the privileges of the user running REFRESH. + Fix things so that all user-determined code is run as the + view's owner, as expected + * If you use GIN indexes, you may need to reindex after updating + to this release. + * LLVM 18 is now supported. + * https://www.postgresql.org/docs/release/15.6/ + +------------------------------------------------------------------- +Wed Nov 8 14:26:51 UTC 2023 - Reinhard Max + +- Upgrade to 15.5: + * bsc#1216962, CVE-2023-5868: Fix handling of unknown-type + arguments in DISTINCT "any" aggregate functions. This error led + to a text-type value being interpreted as an unknown-type value + (that is, a zero-terminated string) at runtime. This could + result in disclosure of server memory following the text value. + * bsc#1216961, CVE-2023-5869: Detect integer overflow while + computing new array dimensions. When assigning new elements to + array subscripts that are outside the current array bounds, an + undetected integer overflow could occur in edge cases. Memory + stomps that are potentially exploitable for arbitrary code + execution are possible, and so is disclosure of server memory. + * bsc#1216960, CVE-2023-5870: Prevent the pg_signal_backend role + from signalling background workers and autovacuum processes. + The documentation says that pg_signal_backend cannot issue + signals to superuser-owned processes. It was able to signal + these background processes, though, because they advertise a + role OID of zero. Treat that as indicating superuser ownership. + The security implications of cancelling one of these process + types are fairly small so far as the core code goes (we'll just + start another one), but extensions might add background workers + that are more vulnerable. + Also ensure that the is_superuser parameter is set correctly in + such processes. No specific security consequences are known for + that oversight, but it might be significant for some extensions. + * Add support for LLVM 16 and 17 + * https://www.postgresql.org/docs/15/release-15-5.html + +------------------------------------------------------------------- +Tue Oct 31 10:57:13 UTC 2023 - Reinhard Max + +- boo#1216734: Revert the last change and make the devel package + independend of all other subpackages except for the libs. + +------------------------------------------------------------------- +Tue Oct 10 12:49:02 UTC 2023 - Reinhard Max + +- boo#1216022: Call install-alternatives from the devel subpackage + as well, otherwise the symlink for ecpg might be missing. + +------------------------------------------------------------------- +Mon Sep 18 15:24:14 UTC 2023 - Dominique Leuenberger + +- Also buildignore the postgresql*-implementation symbols: this is + needed in order to bootstrap when no postgresql version currently + has valid symbols provided. Once the packages are built, OBS + could translate this to the pgname-* packages and accept the + ignores; during bootstrap though, there is nothing providing the + symbol and the existing buildignores do not suffice. + +------------------------------------------------------------------- +Thu Sep 14 12:18:06 UTC 2023 - Reinhard Max + +- The libs and mini package are now provided by postgresql16. + ------------------------------------------------------------------- Wed Aug 9 09:14:59 UTC 2023 - Reinhard Max @@ -9,6 +163,20 @@ Wed Aug 9 09:14:59 UTC 2023 - Reinhard Max policies properly. * https://www.postgresql.org/docs/15/release-15-4.html +------------------------------------------------------------------- +Fri May 26 11:48:38 UTC 2023 - Reinhard Max + +- Restore the independence of mini builds from the main build after + the -mini name change from April 4, 2023. +- Adjust icu handling to prepare for PostgreSQL 16. + +------------------------------------------------------------------- +Mon May 15 14:20:25 UTC 2023 - Reinhard Max + +- Overhaul postgresql-README.SUSE and move it from the binary + package to the noarch wrapper package. +- Change the unix domain socket location from /var/run to /run. + ------------------------------------------------------------------- Tue May 9 11:07:48 UTC 2023 - Reinhard Max @@ -17,6 +185,7 @@ Tue May 9 11:07:48 UTC 2023 - Reinhard Max Prevent CREATE SCHEMA from defeating changes in search_path * bsc#1211229, CVE-2023-2455: Enforce row-level security policies correctly after inlining a set-returning function + * https://www.postgresql.org/about/news/2637/ * https://www.postgresql.org/docs/15/release-15-3.html ------------------------------------------------------------------- diff --git a/postgresql15.spec b/postgresql15.spec index de3ad07..022fa77 100644 --- a/postgresql15.spec +++ b/postgresql15.spec @@ -1,7 +1,7 @@ # -# spec file +# spec file for package postgresql15 # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,11 +16,13 @@ # -%define pgversion 15.4 +%define pgversion 15.10 %define pgmajor 15 -%define buildlibs 1 +%define buildlibs 0 %define tarversion %{pgversion} -%define latest_supported_llvm_ver 15 +%define oldest_supported_llvm_ver 10 +# To be able to use cmake(LLVM) < ... +%define latest_supported_llvm_ver_plus_one 19 ### CUT HERE ### %define pgname postgresql%pgmajor @@ -59,6 +61,12 @@ Name: %pgname %define python python %endif +%if %pgmajor >= 17 +%bcond_with derived +%else +%bcond_without derived +%endif + %if 0%{?suse_version} >= 1500 %bcond_without liblz4 %endif @@ -67,9 +75,19 @@ Name: %pgname %bcond_without libzstd %endif +%if %{without derived} +BuildRequires: bison +BuildRequires: docbook-xsl-stylesheets +BuildRequires: flex +BuildRequires: perl +%endif %if %mini %bcond_with selinux +%if %pgmajor >= 16 +%bcond_without icu +%else %bcond_with icu +%endif %else BuildRequires: %{python}-devel BuildRequires: docbook_4 @@ -128,13 +146,8 @@ BuildRequires: libselinux-devel %endif %if %{with llvm} BuildRequires: gcc-c++ -%if 0%{?product_libs_llvm_ver} > %{latest_supported_llvm_ver} -BuildRequires: clang%{latest_supported_llvm_ver} -BuildRequires: llvm%{latest_supported_llvm_ver}-devel -%else -BuildRequires: clang -BuildRequires: llvm-devel -%endif +BuildRequires: (cmake(Clang) >= %{oldest_supported_llvm_ver} with cmake(Clang) < %{latest_supported_llvm_ver_plus_one}) +BuildRequires: (cmake(LLVM) >= %{oldest_supported_llvm_ver} with cmake(LLVM) < %{latest_supported_llvm_ver_plus_one}) %endif BuildRequires: libxslt-devel BuildRequires: openldap2-devel @@ -143,11 +156,22 @@ BuildRequires: pkg-config BuildRequires: pkgconfig(krb5) BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(systemd) +#!BuildIgnore: %pgname +#!BuildIgnore: %pgname-server +#!BuildIgnore: %pgname-devel +#!BuildIgnore: %pgname-server-devel +#!BuildIgnore: %pgname-llvmjit +#!BuildIgnore: %pgname-llvmjit-devel +#!BuildIgnore: %pgname-contrib +#!BuildIgnore: %pgname-docs +#!BuildIgnore: %pgname-test +#!BuildIgnore: %pgname-pltcl +#!BuildIgnore: %pgname-plperl +#!BuildIgnore: %pgname-plpython #!BuildIgnore: postgresql-implementation #!BuildIgnore: postgresql-server-implementation -#!BuildIgnore: postgresql-devel-noarch -#!BuildIgnore: postgresql-llvmjit-devel-noarch -#!BuildIgnore: postgresql-server-devel-noarch +#!BuildIgnore: postgresql-server-devel-implementation +#!BuildIgnore: postgresql-llvmjit-devel-implementation Summary: Basic Clients and Utilities for PostgreSQL License: PostgreSQL Group: Productivity/Databases/Tools @@ -156,7 +180,6 @@ Release: 0 Source0: https://ftp.postgresql.org/pub/source/v%{tarversion}/postgresql-%{tarversion}.tar.bz2 Source1: https://ftp.postgresql.org/pub/source/v%{tarversion}/postgresql-%{tarversion}.tar.bz2.sha256 Source2: baselibs.conf -Source3: postgresql-README.SUSE Source17: postgresql-rpmlintrc Patch1: postgresql-conf.patch # PL/Perl needs to be linked with rpath (bsc#578053) @@ -173,7 +196,7 @@ Provides: postgresql = %version-%release Provides: postgresql-implementation = %version-%release Requires: %libpq >= %version Requires(post): postgresql-noarch >= %pgmajor -Requires(postun):postgresql-noarch >= %pgmajor +Requires(postun): postgresql-noarch >= %pgmajor # At this point we changed the package layout on SLE and conflict with # older releases to get a clean cut. Conflicts: postgresql-noarch < 12.0.1 @@ -263,7 +286,7 @@ Provides: %pgname-server-devel = %version-%release Provides: postgresql-server-devel = %version-%release Provides: postgresql-server-devel-implementation = %version-%release Requires(post): postgresql-server-devel-noarch >= %pgmajor -Requires(postun):postgresql-server-devel-noarch >= %pgmajor +Requires(postun): postgresql-server-devel-noarch >= %pgmajor Requires: %pgname-devel = %version Requires: %pgname-server = %version-%release # Installation of postgresql??-devel is exclusive @@ -321,10 +344,10 @@ Recommends: %{name}-llvmjit Provides: postgresql-server-implementation = %version-%release Requires: %libpq >= %version Requires(pre): postgresql-server-noarch >= %pgmajor -Requires(preun):postgresql-server-noarch >= %pgmajor -Requires(postun):postgresql-server-noarch >= %pgmajor +Requires(preun): postgresql-server-noarch >= %pgmajor +Requires(postun): postgresql-server-noarch >= %pgmajor Requires(post): postgresql-noarch >= %pgmajor -Requires(postun):postgresql-noarch >= %pgmajor +Requires(postun): postgresql-noarch >= %pgmajor %description server PostgreSQL is an advanced object-relational database management system @@ -363,7 +386,7 @@ Requires: %pgname-server-devel = %version %if %{with llvm} Requires: %pgname-llvmjit = %version Requires(post): postgresql-llvmjit-devel-noarch >= %pgmajor -Requires(postun):postgresql-llvmjit-devel-noarch >= %pgmajor +Requires(postun): postgresql-llvmjit-devel-noarch >= %pgmajor %requires_file %_bindir/llc %requires_file %_bindir/clang %endif @@ -493,13 +516,13 @@ included in the postgresql-server package. # Keep the timestamp of configure, because patching it would otherwise # confuse PostgreSQL's build system touch -r configure tmp -%patch1 -%patch4 -%patch8 -p1 -%patch9 +%patch -P 1 +%patch -P 4 +%patch -P 8 +%patch -P 9 %if %{with llvm} -%patch10 -%patch11 +%patch -P 10 +%patch -P 11 %endif touch -r tmp configure rm tmp @@ -559,7 +582,7 @@ PACKAGE_TARNAME=%pgname %configure \ %if %mini make -C src/interfaces %{?_smp_mflags} PACKAGE_TARNAME=%pgname %else -make %{?_smp_mflags} PACKAGE_TARNAME=%pgname +make %{?_smp_mflags} PACKAGE_TARNAME=%pgname world %if %{with check} @@ -584,6 +607,7 @@ VLANG=%pgmajor make DESTDIR=%buildroot PACKAGE_TARNAME=%pgname -C src/include install make DESTDIR=%buildroot PACKAGE_TARNAME=%pgname -C src/interfaces install rm -rf %buildroot%pgincludedir/server +rm -rf %buildroot%pgdatadir %else make DESTDIR=%buildroot PACKAGE_TARNAME=%pgname install install-docs %if 0 @@ -627,10 +651,9 @@ find %buildroot -type f -cnewer flag -printf "/%%P\n" | > contrib.files rm flag install -d -m 750 %buildroot/var/lib/pgsql -install -d -m755 %buildroot%pgdocdir +install -d -m 755 %buildroot%pgdocdir cp doc/KNOWN_BUGS doc/MISSING_FEATURES COPYRIGHT \ - README HISTORY %buildroot%pgdocdir -cp -a %SOURCE3 %buildroot%pgdocdir/README.SUSE + README* HISTORY %buildroot%pgdocdir # Use versioned names for the man pages: for f in %buildroot%pgmandir/man*/*; do mv $f ${f}pg%pgmajor @@ -688,6 +711,7 @@ genlists main \ pg_receivewal \ pg_verify_checksums \ pg_checksums \ + pg_combinebackup \ pg_verifybackup %find_lang plpgsql-$VLANG main.files @@ -698,6 +722,8 @@ genlists server \ pg_ctl \ pg_controldata \ pg_resetwal \ + pg_createsubscriber \ + pg_walsummary \ pg_waldump \ pg_resetxlog \ %if %pgmajor >= 15 @@ -744,10 +770,10 @@ done %endif popd -mkdir -p %buildroot%pgmandir/man1 -cp -a doc/src/sgml/man1/ecpg.1 %buildroot%pgmandir/man1/ecpg.1pg%pgmajor %find_lang ecpg-$VLANG devel.files -ln -s %pgbindir/ecpg %buildroot%_bindir/ecpg +# The devel subpackage is exclusive across versions +# and not handled by update-alternatives. +mv %buildroot%pgbindir/ecpg %buildroot%_bindir/ecpg %if !%mini %find_lang pg_config-$VLANG server-devel.files @@ -761,8 +787,10 @@ cat server-devel.files >> devel.files # Build up the file lists for the libpq and libecpg packages cat > libpq.files <> libpq.files %find_lang libpq5-$VLANG libpq.files @@ -782,18 +810,18 @@ awk -v P=%buildroot '/^(%lang|[^%])/{print P $NF}' libpq.files libecpg.files | x %post -n %pgname-%devel /sbin/ldconfig -%if %{with server_devel} -%post server-devel -%endif -/usr/share/postgresql/install-alternatives %pgmajor %postun -n %pgname-%devel /sbin/ldconfig + %if %{with server_devel} -%postun server-devel -%endif +%post server-devel /usr/share/postgresql/install-alternatives %pgmajor +%postun server-devel +/usr/share/postgresql/install-alternatives %pgmajor +%endif + %if !%mini %postun @@ -909,7 +937,6 @@ fi %files llvmjit-devel %defattr(-,root,root) -%doc README %files pltcl -f pltcl.lang %defattr(-,root,root) @@ -945,17 +972,17 @@ fi %dir %pgbasedir %dir %pgbindir -%ghost %_bindir/ecpg +%_bindir/ecpg %_libdir/pkgconfig/* %_libdir/lib*.so -%pgbindir/ecpg %pgincludedir + %if %{with server_devel} %exclude %pgincludedir/server %endif -%doc %pgmandir/man1/ecpg.1* %if !%mini +%doc %pgmandir/man1/ecpg.1* %if %{with server_devel} %files server-devel -f server-devel.files %endif