From efc0e9a401ab2a74206a7494887946a95c4ea951 Mon Sep 17 00:00:00 2001 From: Nikola Davidova Date: Mon, 9 Jun 2025 14:53:40 +0200 Subject: [PATCH 1/3] Rebase to 18.0 (beta) --- libpq-10.3-rpm-pgsql.patch | 2 +- libpq-10.3-var-run-socket.patch | 6 +++--- libpq-12.1-symbol-versioning.patch | 11 ++++++++--- libpq.spec | 24 +++++++++++++++++------- sources | 4 ++-- 5 files changed, 31 insertions(+), 16 deletions(-) diff --git a/libpq-10.3-rpm-pgsql.patch b/libpq-10.3-rpm-pgsql.patch index 93a3532..71a28e5 100644 --- a/libpq-10.3-rpm-pgsql.patch +++ b/libpq-10.3-rpm-pgsql.patch @@ -21,7 +21,7 @@ index 9a6265b3a0..c9371a07c4 100644 # # In a PGXS build, we cannot use the values inserted into Makefile.global # by configure, since the installation tree may have been relocated. -@@ -101,45 +100,23 @@ datarootdir := @datarootdir@ +@@ -111,45 +110,23 @@ datarootdir := @datarootdir@ bindir := @bindir@ datadir := @datadir@ diff --git a/libpq-10.3-var-run-socket.patch b/libpq-10.3-var-run-socket.patch index 2c5c128..3081c26 100644 --- a/libpq-10.3-var-run-socket.patch +++ b/libpq-10.3-var-run-socket.patch @@ -16,7 +16,7 @@ override it via postgresql.conf.) diff -ur postgresql-16.1/src/backend/utils/misc/guc_tables.c pg_patched/src/backend/utils/misc/guc_tables.c --- postgresql-16.1/src/backend/utils/misc/guc_tables.c 2023-11-06 23:04:27.000000000 +0100 +++ pg_patched/src/backend/utils/misc/guc_tables.c 2023-12-05 12:02:46.000000000 +0100 -@@ -4271,7 +4271,7 @@ +@@ -4648,7 +4648,7 @@ GUC_LIST_INPUT | GUC_LIST_QUOTE | GUC_SUPERUSER_ONLY }, &Unix_socket_directories, @@ -28,7 +28,7 @@ diff -ur postgresql-16.1/src/backend/utils/misc/guc_tables.c pg_patched/src/back diff -ur postgresql-16.1/src/bin/initdb/initdb.c pg_patched/src/bin/initdb/initdb.c --- postgresql-16.1/src/bin/initdb/initdb.c 2023-11-06 23:04:27.000000000 +0100 +++ pg_patched/src/bin/initdb/initdb.c 2023-12-05 12:04:19.000000000 +0100 -@@ -1287,7 +1287,7 @@ +@@ -1368,7 +1368,7 @@ * these are indeed defaults, keep the postgresql.conf lines commented. */ conflines = replace_guc_value(conflines, "unix_socket_directories", @@ -40,7 +40,7 @@ diff -ur postgresql-16.1/src/bin/initdb/initdb.c pg_patched/src/bin/initdb/initd diff -ur postgresql-16.1/src/include/pg_config_manual.h pg_patched/src/include/pg_config_manual.h --- postgresql-16.1/src/include/pg_config_manual.h 2023-11-06 23:04:27.000000000 +0100 +++ pg_patched/src/include/pg_config_manual.h 2023-12-05 11:45:20.000000000 +0100 -@@ -206,7 +206,7 @@ +@@ -190,7 +190,7 @@ * support them yet. */ #ifndef WIN32 diff --git a/libpq-12.1-symbol-versioning.patch b/libpq-12.1-symbol-versioning.patch index 955510c..2bd2525 100644 --- a/libpq-12.1-symbol-versioning.patch +++ b/libpq-12.1-symbol-versioning.patch @@ -20,7 +20,7 @@ diff -ur postgresql-16.1/config/Makefile postgresql_patched/config/Makefile diff -ur postgresql-16.1/src/interfaces/libpq/exports.txt postgresql_patched/src/interfaces/libpq/exports.txt --- postgresql-16.1/src/interfaces/libpq/exports.txt 2023-11-06 23:04:27.000000000 +0100 +++ postgresql_patched/src/interfaces/libpq/exports.txt 2023-12-05 10:48:24.627604638 +0100 -@@ -171,19 +171,19 @@ +@@ -171,23 +171,23 @@ PQsslAttribute 169 PQsetErrorContextVisibility 170 PQresultVerboseErrorMessage 171 @@ -44,12 +44,17 @@ diff -ur postgresql-16.1/src/interfaces/libpq/exports.txt postgresql_patched/src PQmblenBounded 185 PQsendFlushRequest 186 -PQconnectionUsedGSSAPI 187 +-PQclosePrepared 188 +PQconnectionUsedGSSAPI 187 16 ++PQclosePrepared 188 18 + PQclosePortal 189 + PQsendClosePrepared 190 + PQsendClosePortal 191 diff -ur postgresql-16.1/src/Makefile.shlib postgresql_patched/src/Makefile.shlib --- postgresql-16.1/src/Makefile.shlib 2023-11-06 23:04:27.000000000 +0100 +++ postgresql_patched/src/Makefile.shlib 2023-12-05 10:43:19.739634021 +0100 -@@ -185,7 +185,7 @@ - ifdef soname +@@ -176,7 +176,7 @@ + endif LINK.shared += -Wl,-soname,$(soname) endif - BUILD.exports = ( echo '{ global:'; $(AWK) '/^[^\#]/ {printf "%s;\n",$$1}' $<; echo ' local: *; };' ) >$@ diff --git a/libpq.spec b/libpq.spec index bc85739..2419153 100644 --- a/libpq.spec +++ b/libpq.spec @@ -1,16 +1,21 @@ -%global majorversion 16 +%global majorversion 18 %global obsoletes_version %( echo $(( %majorversion + 1 )) ) +%global betaversion 18beta1 Summary: PostgreSQL client library Name: libpq -Version: %{majorversion}.4 -Release: 2%{?dist} +Version: %{majorversion}.0 +Release: 1%{?dist} License: PostgreSQL Url: http://www.postgresql.org/ -Source0: https://ftp.postgresql.org/pub/source/v%{version}/postgresql-%{version}.tar.bz2 -Source1: https://ftp.postgresql.org/pub/source/v%{version}/postgresql-%{version}.tar.bz2.sha256 +# Use this when 18.0 is released +# Source0: https://ftp.postgresql.org/pub/source/v%%{version}/postgresql-%%{version}.tar.bz2 +# Source1: https://ftp.postgresql.org/pub/source/v%%{version}/postgresql-%%{version}.tar.bz2.sha256 + +Source0: https://ftp.postgresql.org/pub/source/v%{betaversion}/postgresql-%{betaversion}.tar.bz2 +Source1: https://ftp.postgresql.org/pub/source/v%{betaversion}/postgresql-%{betaversion}.tar.bz2.sha256 # Comments for these patches are in the patch files. @@ -28,6 +33,7 @@ BuildRequires: gettext BuildRequires: multilib-rpm-config BuildRequires: make BuildRequires: libicu-devel +BuildRequires: perl Obsoletes: postgresql-libs < %obsoletes_version Provides: postgresql-libs = %version-%release @@ -58,7 +64,7 @@ package or any clients that need to connect to a PostgreSQL server. %prep ( cd "$(dirname "%SOURCE1")" ; sha256sum -c "%SOURCE1" ) -%autosetup -n postgresql-%version -p1 +%autosetup -n postgresql-%{betaversion} -p1 # remove .gitignore files to ensure none get into the RPMs (bug #642210) find . -type f -name .gitignore | xargs rm @@ -109,7 +115,6 @@ mv $RPM_BUILD_ROOT%{_includedir}/pgsql/errcodes.h \ %multilib_fix_c_header --file "%_includedir/pg_config.h" -%multilib_fix_c_header --file "%_includedir/pg_config_ext.h" find_lang_bins () { @@ -130,6 +135,8 @@ find_lang_bins %name-devel.lst pg_config %_libdir/libpq.so.5* %dir %_datadir/pgsql %doc %_datadir/pgsql/pg_service.conf.sample +%_datadir/pgsql/postgres.bki +%_datadir/pgsql/system_constraints.sql %files devel -f %name-devel.lst @@ -139,6 +146,9 @@ find_lang_bins %name-devel.lst pg_config %_libdir/pkgconfig/libpq.pc %changelog +* Mon Jun 09 2025 Nikola Davidova - 18.0-1 +- Rebase to upstream release 18.0 + * Fri Jan 17 2025 Fedora Release Engineering - 16.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild diff --git a/sources b/sources index 04b03aa..26803b0 100755 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (postgresql-16.4.tar.bz2) = f2070299f0857a270317ac984f8393374cf00d4f32a082fe3c5481e36c560595ea711fed95e40d1bc90c5089edf8f165649d443d8b9c68614e1c83fc91268e96 -SHA512 (postgresql-16.4.tar.bz2.sha256) = f5a33591b4a0810e2f90d21df471ba086acbd1f97099e38aed46e4d3b45ee72037ef5958c7f155dd9fb7969152599fb6946b792a12d92575bfbc595049b74674 +SHA512 (postgresql-18beta1.tar.bz2) = 881a3442552d282fbe03ea22fab4bdd818cb901f8410485f19867ff64dc577d50cd9f7bb898828aec9783ff7e482798ffae63ff1cbfd19c4e1c64fed9e0a2daf +SHA512 (postgresql-18beta1.tar.bz2.sha256) = fc8fb34666d899dde9bb3c5886dec3ea87241913d47a464f960d1d1b4b105c8b007a36dac6f62ae2c45b9d254fe3c1b1a32fa42693af43d8561a192fee4340d9 From 4f9cf9e4faead9de283dabdb18bab332e0f98299 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 24 Jul 2025 20:12:06 +0000 Subject: [PATCH 2/3] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- libpq.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libpq.spec b/libpq.spec index 2419153..3098ae0 100644 --- a/libpq.spec +++ b/libpq.spec @@ -5,7 +5,7 @@ Summary: PostgreSQL client library Name: libpq Version: %{majorversion}.0 -Release: 1%{?dist} +Release: 2%{?dist} License: PostgreSQL Url: http://www.postgresql.org/ @@ -146,6 +146,9 @@ find_lang_bins %name-devel.lst pg_config %_libdir/pkgconfig/libpq.pc %changelog +* Thu Jul 24 2025 Fedora Release Engineering - 18.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Mon Jun 09 2025 Nikola Davidova - 18.0-1 - Rebase to upstream release 18.0 From ace31f6aa0c5404a3508437c76badafcc77c4af8 Mon Sep 17 00:00:00 2001 From: Filip Janus Date: Wed, 17 Sep 2025 11:49:36 +0000 Subject: [PATCH 3/3] libpq: Remove server-based files from client library package - Remove postgres.bki and system_constraints.sql files from package - These files are server-specific and should not be included in the client library - Fixes issue introduced by previous rebase to PostgreSQL 18.0 Resolves packaging inconsistency where server files were incorrectly included in the client library package. --- libpq.spec | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/libpq.spec b/libpq.spec index 3098ae0..4db4d81 100644 --- a/libpq.spec +++ b/libpq.spec @@ -5,7 +5,7 @@ Summary: PostgreSQL client library Name: libpq Version: %{majorversion}.0 -Release: 2%{?dist} +Release: 3%{?dist} License: PostgreSQL Url: http://www.postgresql.org/ @@ -112,7 +112,8 @@ rm -r $RPM_BUILD_ROOT%_includedir/pgsql/server mkdir -p $RPM_BUILD_ROOT%{_includedir}/pgsql/server/utils mv $RPM_BUILD_ROOT%{_includedir}/pgsql/errcodes.h \ $RPM_BUILD_ROOT%{_includedir}/pgsql/server/utils - +rm $RPM_BUILD_ROOT%_datadir/pgsql/postgres.bki +rm $RPM_BUILD_ROOT%_datadir/pgsql/system_constraints.sql %multilib_fix_c_header --file "%_includedir/pg_config.h" @@ -135,8 +136,6 @@ find_lang_bins %name-devel.lst pg_config %_libdir/libpq.so.5* %dir %_datadir/pgsql %doc %_datadir/pgsql/pg_service.conf.sample -%_datadir/pgsql/postgres.bki -%_datadir/pgsql/system_constraints.sql %files devel -f %name-devel.lst @@ -146,6 +145,9 @@ find_lang_bins %name-devel.lst pg_config %_libdir/pkgconfig/libpq.pc %changelog +* Wed Sep 17 2025 Filip Janus - 18.0-3 +- Removes server based files + * Thu Jul 24 2025 Fedora Release Engineering - 18.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild