You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
106 lines
3.4 KiB
106 lines
3.4 KiB
2 years ago
|
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 --git a/config/Makefile b/config/Makefile
|
||
|
index 67e7998..86612a4 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 --git a/config/build-exports-gnu-ld b/config/build-exports-gnu-ld
|
||
|
new file mode 100755
|
||
|
index 0000000000..84c48e3ade
|
||
|
--- /dev/null
|
||
|
+++ b/config/build-exports-gnu-ld
|
||
|
@@ -0,0 +1,41 @@
|
||
|
+#! /bin/sh
|
||
|
+
|
||
|
+# by default use PG_ prefix
|
||
|
+: "${SYMBOL_VERSION_PREFIX=PG_}"
|
||
|
+
|
||
|
+# we started symbol versioning since v10
|
||
|
+: "${SYMBOL_VERSION_START=9.6}"
|
||
|
+
|
||
|
+version=$SYMBOL_VERSION_START
|
||
|
+version_prev=
|
||
|
+first=:
|
||
|
+
|
||
|
+open_block ()
|
||
|
+{
|
||
|
+ $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
|
||
|
+}
|
||
|
+
|
||
|
+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;"
|
||
|
+done
|
||
|
+
|
||
|
+echo "local:"
|
||
|
+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 -ur postgresql-15.0_original/src/interfaces/libpq/exports.txt postgresql-15.0/src/interfaces/libpq/exports.txt
|
||
|
--- postgresql-15.0_original/src/interfaces/libpq/exports.txt 2022-10-10 22:57:37.000000000 +0200
|
||
|
+++ postgresql-15.0/src/interfaces/libpq/exports.txt 2022-10-19 15:07:19.733908438 +0200
|
||
|
@@ -171,16 +171,16 @@
|
||
|
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
|
||
|
-PQexitPipelineMode 181
|
||
|
+PQenterPipelineMode 180 14
|
||
|
+PQexitPipelineMode 181 15
|
||
|
PQpipelineSync 182
|
||
|
PQpipelineStatus 183
|
||
|
PQsetTraceFlags 184
|
||
|
|