Compare commits

..

2 commits

Author SHA1 Message Date
Honza Horak
2ad60b9f38 Update to 12.6 2021-02-16 21:38:22 +01:00
Honza Horak
3252b465fa Rebase to 12.5 2021-01-13 17:02:06 +01:00
8 changed files with 98 additions and 256 deletions

View file

@ -1 +0,0 @@
1

1
.gitignore vendored Executable file → Normal file
View file

@ -1,2 +1 @@
/postgresql-*.tar.bz2*
/rpms

12
ci.fmf
View file

@ -1,12 +0,0 @@
/test:
summary:
Basic set of quick tests for libpq. Since libpq is client library and
part of postgresql. Postgresql testsuite is used.
discover:
- name: fedora
how: fmf
url: "https://src.fedoraproject.org/tests/postgresql.git"
ref: main
filter: tag:libpq
execute:
how: tmt

View file

@ -7,11 +7,11 @@ directory whose path happens to include "postgres" or "pgsql" already.
However, datadir and sysconfdir are already set up in the specfile's
configure call, so we do not have to append anything to them.
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index 9a6265b3a0..c9371a07c4 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -82,8 +82,7 @@ vpathsearch = `for f in $(addsuffix /$(1),$(subst :, ,. $(VPATH))); do test -r $
diff -Naur postgresql-9.0.1.orig/src/Makefile.global.in postgresql-9.0.1/src/Makefile.global.in
--- postgresql-9.0.1.orig/src/Makefile.global.in 2010-10-01 10:25:44.000000000 -0400
+++ postgresql-9.0.1/src/Makefile.global.in 2010-10-11 11:52:05.224975308 -0400
@@ -55,8 +55,7 @@
# Installation directories
#
# These are set by the equivalent --xxxdir configure options. We
@ -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.
@@ -111,45 +110,23 @@ datarootdir := @datarootdir@
@@ -74,45 +73,23 @@
bindir := @bindir@
datadir := @datadir@

View file

@ -1,4 +1,3 @@
Change the built-in default socket directory to be /var/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
@ -13,39 +12,42 @@ server package update, without requiring any existing postgresql.conf
to be updated. (Of course, a user who dislikes this behavior can still
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
@@ -4648,7 +4648,7 @@
GUC_LIST_INPUT | GUC_LIST_QUOTE | GUC_SUPERUSER_ONLY
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index 9481f2d..75532c7 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -3196,7 +3196,7 @@ static struct config_string ConfigureNamesString[] =
},
&Unix_socket_directories,
#ifdef HAVE_UNIX_SOCKETS
- DEFAULT_PGSOCKET_DIR,
+ DEFAULT_PGSOCKET_DIR ", /tmp",
NULL, NULL, NULL
},
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
@@ -1368,7 +1368,7 @@
* these are indeed defaults, keep the postgresql.conf lines commented.
*/
conflines = replace_guc_value(conflines, "unix_socket_directories",
- DEFAULT_PGSOCKET_DIR, true);
+ DEFAULT_PGSOCKET_DIR ", /tmp", true);
conflines = replace_guc_value(conflines, "port",
DEF_PGPORT_STR, true);
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
@@ -190,7 +190,7 @@
* support them yet.
#else
"",
#endif
diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c
index feeff9e..3e3d784 100644
--- a/src/bin/initdb/initdb.c
+++ b/src/bin/initdb/initdb.c
@@ -1234,7 +1234,7 @@ setup_config(void)
#ifdef HAVE_UNIX_SOCKETS
snprintf(repltok, sizeof(repltok), "#unix_socket_directories = '%s'",
- DEFAULT_PGSOCKET_DIR);
+ DEFAULT_PGSOCKET_DIR ", /tmp");
#else
snprintf(repltok, sizeof(repltok), "#unix_socket_directories = ''");
#endif
diff --git a/src/include/pg_config_manual.h b/src/include/pg_config_manual.h
index e278fa0..9ee15d4 100644
--- a/src/include/pg_config_manual.h
+++ b/src/include/pg_config_manual.h
@@ -169,7 +169,7 @@
* here's where to twiddle it. You can also override this at runtime
* with the postmaster's -k switch.
*/
#ifndef WIN32
-#define DEFAULT_PGSOCKET_DIR "/tmp"
+#define DEFAULT_PGSOCKET_DIR "/var/run/postgresql"
#else
#define DEFAULT_PGSOCKET_DIR ""
#endif
/*
* This is the default event source for Windows event log.

View file

@ -1,67 +1,15 @@
commit 75040c3388d9a7dd5ad2bee53cbcc8bf3d35cd17
Author: Honza Horak <hhorak@redhat.com>
Date: Fri Oct 30 20:16:50 2020 +0100
The libpq package is supposed to be used for all the PostgreSQL modules
available in RHEL 8, and ABI versioning will guarantee us that modular RPMs will
depend on appropriate libpq ABI version (picked at build-time).
diff -ur postgresql-16.1/config/Makefile postgresql_patched/config/Makefile
--- postgresql-16.1/config/Makefile 2023-11-06 23:04:27.000000000 +0100
+++ postgresql_patched/config/Makefile 2023-12-05 10:43:19.733619095 +0100
@@ -8,6 +8,7 @@
diff --git a/config/Makefile b/config/Makefile
index 67e7998f55..86612a42c3 100644
--- a/config/Makefile
+++ b/config/Makefile
@@ -8,6 +8,7 @@ include $(top_builddir)/src/Makefile.global
install: all installdirs
$(INSTALL_SCRIPT) $(srcdir)/install-sh '$(DESTDIR)$(pgxsdir)/config/install-sh'
$(INSTALL_SCRIPT) $(srcdir)/missing '$(DESTDIR)$(pgxsdir)/config/missing'
+ $(INSTALL_SCRIPT) $(srcdir)/build-exports-gnu-ld '$(DESTDIR)$(pgxsdir)/config/build-exports-gnu-ld'
installdirs:
$(MKDIR_P) '$(DESTDIR)$(pgxsdir)/config'
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,23 +171,23 @@
PQsslAttribute 169
PQsetErrorContextVisibility 170
PQresultVerboseErrorMessage 171
-PQencryptPasswordConn 172
-PQresultMemorySize 173
+PQencryptPasswordConn 172 10
+PQresultMemorySize 173 12
PQhostaddr 174
PQgssEncInUse 175
PQgetgssctx 176
-PQsetSSLKeyPassHook_OpenSSL 177
+PQsetSSLKeyPassHook_OpenSSL 177 13
PQgetSSLKeyPassHook_OpenSSL 178
PQdefaultSSLKeyPassHook_OpenSSL 179
-PQenterPipelineMode 180
+PQenterPipelineMode 180 14
PQexitPipelineMode 181
PQpipelineSync 182
PQpipelineStatus 183
PQsetTraceFlags 184
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
@@ -176,7 +176,7 @@
endif
LINK.shared += -Wl,-soname,$(soname)
endif
- BUILD.exports = ( echo '{ global:'; $(AWK) '/^[^\#]/ {printf "%s;\n",$$1}' $<; echo ' local: *; };' ) >$@
+ BUILD.exports = $(SHELL) $(top_srcdir)/config/build-exports-gnu-ld < $< > $@
exports_file = $(SHLIB_EXPORTS:%.txt=%.list)
ifneq (,$(exports_file))
LINK.shared += -Wl,--version-script=$(exports_file)
diff --git a/config/build-exports-gnu-ld b/config/build-exports-gnu-ld
new file mode 100755
index 0000000000..84c48e3ade
@ -82,30 +30,56 @@ index 0000000000..84c48e3ade
+
+open_block ()
+{
+ $first || echo
+ first=false
+ echo "${SYMBOL_VERSION_PREFIX}$version {"
+ echo "global:"
+ $first || echo
+ first=false
+ echo "${SYMBOL_VERSION_PREFIX}$version {"
+ echo "global:"
+}
+
+close_block ()
+{
+ echo "}${version_prev:+ $SYMBOL_VERSION_PREFIX$version_prev};"
+ version_prev=$version
+ version=$1
+ echo "}${version_prev:+ $SYMBOL_VERSION_PREFIX$version_prev};"
+ version_prev=$version
+ version=$1
+}
+
+open_block
+while read -r symbol _ new_version
+do
+ case $symbol in '#'*) continue ;; esac
+ if test -n "$new_version" && test "$new_version" != "$version"; then
+ close_block "$new_version"
+ open_block
+ fi
+ echo " $symbol;"
+ case $symbol in '#'*) continue ;; esac
+ if test -n "$new_version" && test "$new_version" != "$version"; then
+ close_block "$new_version"
+ open_block
+ fi
+ echo " $symbol;"
+done
+
+echo "local:"
+echo " *;"
+echo " *;"
+close_block
diff --git a/src/Makefile.shlib b/src/Makefile.shlib
index 373d73caef..d5bd5468cd 100644
--- a/src/Makefile.shlib
+++ b/src/Makefile.shlib
@@ -231,7 +231,7 @@ ifeq ($(PORTNAME), linux)
ifdef soname
LINK.shared += -Wl,-soname,$(soname)
endif
- BUILD.exports = ( echo '{ global:'; $(AWK) '/^[^\#]/ {printf "%s;\n",$$1}' $<; echo ' local: *; };' ) >$@
+ BUILD.exports = $(SHELL) $(top_srcdir)/config/build-exports-gnu-ld < $< > $@
exports_file = $(SHLIB_EXPORTS:%.txt=%.list)
ifneq (,$(exports_file))
LINK.shared += -Wl,--version-script=$(exports_file)
diff --git a/src/interfaces/libpq/exports.txt b/src/interfaces/libpq/exports.txt
index 7c808e5215..3631340b23 100644
--- a/src/interfaces/libpq/exports.txt
+++ b/src/interfaces/libpq/exports.txt
@@ -171,7 +171,7 @@ PQsslAttributeNames 168
PQsslAttribute 169
PQsetErrorContextVisibility 170
PQresultVerboseErrorMessage 171
-PQencryptPasswordConn 172
+PQencryptPasswordConn 172 10
PQresultMemorySize 173
PQhostaddr 174
PQgssEncInUse 175

View file

@ -1,21 +1,16 @@
%global majorversion 18
%global majorversion 12
%global obsoletes_version %( echo $(( %majorversion + 1 )) )
%global betaversion 18beta1
Summary: PostgreSQL client library
Name: libpq
Version: %{majorversion}.0
Release: 3%{?dist}
Version: %{majorversion}.6
Release: 1%{?dist}
License: PostgreSQL
Url: http://www.postgresql.org/
# 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
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
# Comments for these patches are in the patch files.
@ -31,9 +26,6 @@ BuildRequires: krb5-devel
BuildRequires: openldap-devel
BuildRequires: gettext
BuildRequires: multilib-rpm-config
BuildRequires: make
BuildRequires: libicu-devel
BuildRequires: perl
Obsoletes: postgresql-libs < %obsoletes_version
Provides: postgresql-libs = %version-%release
@ -64,7 +56,7 @@ package or any clients that need to connect to a PostgreSQL server.
%prep
( cd "$(dirname "%SOURCE1")" ; sha256sum -c "%SOURCE1" )
%autosetup -n postgresql-%{betaversion} -p1
%autosetup -n postgresql-%version -p1
# remove .gitignore files to ensure none get into the RPMs (bug #642210)
find . -type f -name .gitignore | xargs rm
@ -74,7 +66,6 @@ find . -type f -name .gitignore | xargs rm
# complements symbol-versioning patch
export SYMBOL_VERSION_PREFIX=RHPG_
export CFLAGS="$CFLAGS -DOPENSSL_NO_ENGINE -std=c17"
# We don't build server nor client (e.g. /bin/psql) binaries in this package, so
# we can disable some configure options.
%configure \
@ -105,17 +96,10 @@ done
# remove files not to be packaged
find $RPM_BUILD_ROOT -name '*.a' -delete
# preserve just errcodes.h
mv $RPM_BUILD_ROOT%{_includedir}/pgsql/server/utils/errcodes.h \
$RPM_BUILD_ROOT%{_includedir}/pgsql
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"
%multilib_fix_c_header --file "%_includedir/pg_config_ext.h"
find_lang_bins ()
{
@ -144,117 +128,13 @@ find_lang_bins %name-devel.lst pg_config
%_libdir/libpq.so
%_libdir/pkgconfig/libpq.pc
%changelog
* Wed Sep 17 2025 Filip Janus <fjanus@redhat.com> - 18.0-3
- Removes server based files
* Tue Feb 16 2021 Honza Horak <hhorak@redhat.com> - 12.6-1
- Update to 12.6
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 18.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Mon Jun 09 2025 Nikola Davidova <ndavidov@redhat.com> - 18.0-1
- Rebase to upstream release 18.0
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 16.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Wed Aug 21 2024 Ales Nezbeda <anezbeda@redhat.com> - 16.4-1
- Update to 16.4
* Tue Jul 30 2024 Ales Nezbeda <anezbeda@redhat.com> - 16.3-5
- Disable openssl ENGINE_API
- Fedora change: https://fedoraproject.org/wiki/Changes/OpensslDeprecateEngine
- BZ: 2300910
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 16.3-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Tue Jun 18 2024 Filip Janus <fjanus@redhat.com> - 16.3-3
- Move errcodes.h to usr/include/pgsql/server/utils/
- to be consistent with upstream
* Tue Jun 18 2024 Filip Janus <fjanus@redhat.com> - 16.3-2
- Ship errcodes.h in -devel package (kea package requires errorcodes)
* Mon May 27 2024 Ales Nezbeda <anezbeda@redhat.com> - 16.3-1
- Update to 16.3
- Remove backported OpenSSL fix
* Tue Feb 20 2024 Yaakov Selkowitz <yselkowi@redhat.com> - 16.1-4
- Backport OpenSSL 3.2 fix from upstream master
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 16.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 16.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Tue Dec 5 2023 Filip Janus <fjanus@redhat.com> - 16.1-1
- Update to 16.1
- Build with ICU by default - new upstream feature
* Wed Aug 2 2023 Filip Janus <fjanus@redhat.com> - 15.3-1
- Update to the latest upstream version
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 15.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 15.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Mon Dec 05 2022 Filip Janus <fjansu@redhat.com> - 15.0-2
- Revert versioning patch
- There are no new symbols in libpq 15
* Tue Sep 27 2022 Ondrej Sloup <osloup@redhat.com> - 15.0-1
- Update to v15
- Update patches
- Resolves: https://fedoraproject.org/wiki/Changes/PostgreSQL_15
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 14.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Tue Jun 14 2022 Filip Januš <fjanus@redhat.com> - 14.3-1
- Update to 14.3
* Tue Feb 22 2022 Filip Januš <fjanus@redhat.com> - 14.2-1
- Update to 14.2
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 14.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Mon Jan 03 2022 Filip Januš <fjanus@redhat.com> - 14.1-1
- Update to v14
- Resolves: https://fedoraproject.org/wiki/Changes/PostgreSQL_14
* Tue Sep 14 2021 Sahana Prasad <sahana@redhat.com> - 13.4-2
- Rebuilt with OpenSSL 3.0.0
* Thu Aug 12 2021 Filip Januš <fjanus@rehdat.com> - 13.4-1
- Update to 13.4
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 13.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon May 17 2021 Filip Januš <fjanus@redhat.com> - 13.3-1
- Update to 13.3
* Tue Feb 16 2021 Honza Horak <hhorak@redhat.com> - 13.2-1
- Update to 13.2
* Mon Feb 08 2021 Patrik Novotný <panovotn@redhat.com> - 13.1-3
- Fix symbol versioning
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 13.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Nov 16 2020 Patrik Novotný <panovotn@redhat.com> - 13.1-1
- Rebase to upstream release 13.1
* Mon Nov 02 2020 Patrik Novotný <panovotn@redhat.com> - 13.0-2
- Rebuild for symbol versioning fix
* Wed Oct 14 2020 Patrik Novotný <panovotn@redhat.com> - 13.0-1
- Rebase to upstream release 13.0
* Wed Jan 13 2021 Honza Horak <hhorak@redhat.com> - 12.5-1
- Rebase to 12.5
* Tue Aug 18 2020 Patrik Novotný <panovotn@redhat.com> - 12.4-1
- Rebase to upstream release 12.4

4
sources Executable file → Normal file
View file

@ -1,2 +1,2 @@
SHA512 (postgresql-18beta1.tar.bz2) = 881a3442552d282fbe03ea22fab4bdd818cb901f8410485f19867ff64dc577d50cd9f7bb898828aec9783ff7e482798ffae63ff1cbfd19c4e1c64fed9e0a2daf
SHA512 (postgresql-18beta1.tar.bz2.sha256) = fc8fb34666d899dde9bb3c5886dec3ea87241913d47a464f960d1d1b4b105c8b007a36dac6f62ae2c45b9d254fe3c1b1a32fa42693af43d8561a192fee4340d9
SHA512 (postgresql-12.6.tar.bz2) = 5742c9d861c53bbdd032972e63b706d24ccb39492474c446cf4edac235d57357f036e48727027819004177003c4328123148e3d767d2b3d7866a52f333f8d68d
SHA512 (postgresql-12.6.tar.bz2.sha256) = 9eb88cdbe1c42fd460dbe766a1f15ed4191cedb503417fea9901c2e3c53f000e52ee5ff0c0042f32f0bba1e57f199ef16a4d9fff7474d45ae2d8362114f01ad4