Compare commits
72 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
b6b1e57050 | ||
|
3129912180 | ||
|
f14b9933d7 | ||
|
e4c64d9bfe | ||
|
07442b93e9 | ||
|
8b4a2d7268 | ||
|
2e3ea50177 | ||
|
1c40401794 | ||
|
6e41c39e31 | ||
|
a5764a19cc | ||
|
4597c0d813 | ||
|
c5e92b987b | ||
|
5a4a3f126d | ||
|
cad6817e55 | ||
|
22d30cc342 | ||
|
38703687ee | ||
|
fe2e7af350 | ||
|
e3e990e57c | ||
|
371af17e4f | ||
|
260f86c44a | ||
|
20d84beed1 | ||
|
2730106ee4 | ||
|
c924b35122 | ||
|
21b8d7a7d2 | ||
|
f7fb7fc25d | ||
|
07cc19d139 | ||
|
08bdabcf81 | ||
|
24c8fefa2a | ||
|
d34e80cf95 | ||
|
2ed9c8c1b1 | ||
|
8b2a0b66d3 | ||
|
7fb6fc9e9b | ||
|
d12fb440d2 | ||
|
9e2fd57bf2 | ||
|
0eaa9ce333 | ||
|
3ccb5d848e | ||
|
0bf1efb845 | ||
|
43201d5e93 | ||
|
91d03e378a | ||
|
aa29ed6ba9 | ||
|
8d886c8b33 | ||
|
41cd60000b | ||
|
0b7d13d457 | ||
|
34a02d67d8 | ||
|
e084551edd | ||
|
e45b75d670 | ||
|
bd3d5e9d0d | ||
|
8784e334e1 | ||
|
af5a1aa7d2 | ||
|
1091bb36d4 | ||
|
b081e11492 | ||
|
a9fcc54528 | ||
|
08867eaa8f | ||
|
fbf05341c7 | ||
|
6abbbcd611 | ||
|
b43bea6837 | ||
|
0ab52b82e9 | ||
|
dec2de7c0b | ||
|
87b931a1f4 | ||
|
5a34bed68f | ||
|
33d08c0c72 | ||
|
d97a199fef | ||
|
b5c03e5ca6 | ||
|
d45fe7ac0a | ||
|
86232b0ac4 | ||
|
9d4f3560bd | ||
|
db7b88d197 | ||
|
df7acb65ee | ||
|
4611924c2d | ||
|
15682dfd51 | ||
|
8dad51a451 | ||
|
32d2abe945 |
1
.fmf/version
Normal file
1
.fmf/version
Normal file
@ -0,0 +1 @@
|
||||
1
|
0
.gitignore
vendored
Normal file → Executable file
0
.gitignore
vendored
Normal file → Executable file
10
ci.fmf
Normal file
10
ci.fmf
Normal file
@ -0,0 +1,10 @@
|
||||
/test:
|
||||
summary:
|
||||
Basic set of quick tests for postgresql.
|
||||
discover:
|
||||
- name: fedora
|
||||
how: fmf
|
||||
url: "https://src.fedoraproject.org/tests/postgresql.git"
|
||||
ref: main
|
||||
execute:
|
||||
how: tmt
|
13
postgresql-12.5-contrib-dblink-expected-out.patch
Normal file
13
postgresql-12.5-contrib-dblink-expected-out.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/contrib/dblink/expected/dblink.out b/contrib/dblink/expected/dblink.out
|
||||
index 6ceabb453c..6516d4f131 100644
|
||||
--- a/contrib/dblink/expected/dblink.out
|
||||
+++ b/contrib/dblink/expected/dblink.out
|
||||
@@ -879,7 +879,7 @@ $d$;
|
||||
CREATE USER MAPPING FOR public SERVER fdtest
|
||||
OPTIONS (server 'localhost'); -- fail, can't specify server here
|
||||
ERROR: invalid option "server"
|
||||
-HINT: Valid options in this context are: user, password
|
||||
+HINT: Valid options in this context are: user, password, sslpassword
|
||||
CREATE USER MAPPING FOR public SERVER fdtest OPTIONS (user :'USER');
|
||||
GRANT USAGE ON FOREIGN SERVER fdtest TO regress_dblink_user;
|
||||
GRANT EXECUTE ON FUNCTION dblink_connect_u(text, text) TO regress_dblink_user;
|
1096
postgresql-SPI-s-handling-of-errors-during-transaction-comm.patch
Normal file
1096
postgresql-SPI-s-handling-of-errors-during-transaction-comm.patch
Normal file
File diff suppressed because it is too large
Load Diff
99
postgresql-datalayout-mismatch-on-s390.patch
Normal file
99
postgresql-datalayout-mismatch-on-s390.patch
Normal file
@ -0,0 +1,99 @@
|
||||
From 0edaa982336823d4d7af8f10b91579fe0099ef3d Mon Sep 17 00:00:00 2001
|
||||
From: Tom Stellard <tstellar@redhat.com>
|
||||
Date: Tue, 20 Apr 2021 20:14:21 -0700
|
||||
Subject: [PATCH] jit: Workaround potential datalayout mismatch on s390x
|
||||
|
||||
LLVM's s390x target uses a different datalayout for z13 and newer processors.
|
||||
If llvmjit_types.bc is compiled to target a processor older than z13, and
|
||||
then the JIT runs on a z13 or newer processor, then there will be a mismatch
|
||||
in datalayouts between llvmjit_types.bc and the JIT engine. This mismatch
|
||||
causes the JIT to fail at runtime.
|
||||
---
|
||||
src/backend/jit/llvm/llvmjit.c | 46 ++++++++++++++++++++++++++++++++--
|
||||
1 file changed, 44 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/backend/jit/llvm/llvmjit.c b/src/backend/jit/llvm/llvmjit.c
|
||||
index 98a27f08bf..05b6438ba8 100644
|
||||
--- a/src/backend/jit/llvm/llvmjit.c
|
||||
+++ b/src/backend/jit/llvm/llvmjit.c
|
||||
@@ -776,6 +776,35 @@ llvm_compile_module(LLVMJitContext *context)
|
||||
errhidecontext(true)));
|
||||
}
|
||||
|
||||
+/*
|
||||
+ * For the systemz target, LLVM uses a different datalayout for z13 and newer
|
||||
+ * CPUs than it does for older CPUs. This can cause a mismatch in datalayouts
|
||||
+ * in the case where the llvm_types_module is compiled with a pre-z13 CPU
|
||||
+ * and the JIT is running on z13 or newer.
|
||||
+ * See computeDataLayout() function in
|
||||
+ * llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp for information on the
|
||||
+ * datalayout differences.
|
||||
+ */
|
||||
+static bool
|
||||
+needs_systemz_workaround(void)
|
||||
+{
|
||||
+ bool ret = false;
|
||||
+ LLVMContextRef llvm_context;
|
||||
+ LLVMTypeRef vec_type;
|
||||
+ LLVMTargetDataRef llvm_layoutref;
|
||||
+ if (strncmp(LLVMGetTargetName(llvm_targetref), "systemz", strlen("systemz")))
|
||||
+ {
|
||||
+ return false;
|
||||
+ }
|
||||
+
|
||||
+ llvm_context = LLVMGetModuleContext(llvm_types_module);
|
||||
+ vec_type = LLVMVectorType(LLVMIntTypeInContext(llvm_context, 32), 4);
|
||||
+ llvm_layoutref = LLVMCreateTargetData(llvm_layout);
|
||||
+ ret = (LLVMABIAlignmentOfType(llvm_layoutref, vec_type) == 16);
|
||||
+ LLVMDisposeTargetData(llvm_layoutref);
|
||||
+ return ret;
|
||||
+}
|
||||
+
|
||||
/*
|
||||
* Per session initialization.
|
||||
*/
|
||||
@@ -785,6 +814,7 @@ llvm_session_initialize(void)
|
||||
MemoryContext oldcontext;
|
||||
char *error = NULL;
|
||||
char *cpu = NULL;
|
||||
+ char *host_features = NULL;
|
||||
char *features = NULL;
|
||||
LLVMTargetMachineRef opt0_tm;
|
||||
LLVMTargetMachineRef opt3_tm;
|
||||
@@ -816,10 +846,17 @@ llvm_session_initialize(void)
|
||||
* features not all CPUs have (weird, huh).
|
||||
*/
|
||||
cpu = LLVMGetHostCPUName();
|
||||
- features = LLVMGetHostCPUFeatures();
|
||||
+ features = host_features = LLVMGetHostCPUFeatures();
|
||||
elog(DEBUG2, "LLVMJIT detected CPU \"%s\", with features \"%s\"",
|
||||
cpu, features);
|
||||
|
||||
+ if (needs_systemz_workaround())
|
||||
+ {
|
||||
+ const char *no_vector =",-vector";
|
||||
+ features = malloc(sizeof(char) * (strlen(host_features) + strlen(no_vector) + 1));
|
||||
+ sprintf(features, "%s%s", host_features, no_vector);
|
||||
+ }
|
||||
+
|
||||
opt0_tm =
|
||||
LLVMCreateTargetMachine(llvm_targetref, llvm_triple, cpu, features,
|
||||
LLVMCodeGenLevelNone,
|
||||
@@ -833,8 +870,13 @@ llvm_session_initialize(void)
|
||||
|
||||
LLVMDisposeMessage(cpu);
|
||||
cpu = NULL;
|
||||
- LLVMDisposeMessage(features);
|
||||
+ if (features != host_features)
|
||||
+ {
|
||||
+ free(features);
|
||||
+ }
|
||||
features = NULL;
|
||||
+ LLVMDisposeMessage(host_features);
|
||||
+ host_features = NULL;
|
||||
|
||||
/* force symbols in main binary to be loaded */
|
||||
LLVMLoadLibraryPermanently(NULL);
|
||||
--
|
||||
2.27.0
|
||||
|
192
postgresql-llvm-15-compat.patch
Normal file
192
postgresql-llvm-15-compat.patch
Normal file
@ -0,0 +1,192 @@
|
||||
From d033f8f8bea9c7b5c4ae43a95b569ceccdaddd7a Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Munro <tmunro@postgresql.org>
|
||||
Date: Wed, 19 Oct 2022 22:32:14 +1300
|
||||
Subject: [PATCH] Track LLVM 15 changes.
|
||||
|
||||
Per https://llvm.org/docs/OpaquePointers.html, support for non-opaque
|
||||
pointers still exists and we can request that on our context. We have
|
||||
until LLVM 16 to move to opaque pointers, a much larger change.
|
||||
|
||||
Back-patch to 11, where LLVM support arrived.
|
||||
|
||||
Author: Thomas Munro <thomas.munro@gmail.com>
|
||||
Author: Andres Freund <andres@anarazel.de>
|
||||
Discussion: https://postgr.es/m/CAMHz58Sf_xncdyqsekoVsNeKcruKootLtVH6cYXVhhUR1oKPCg%40mail.gmail.com
|
||||
---
|
||||
configure | 89 +++++++++++++++++++++++++
|
||||
configure.ac | 3 +
|
||||
src/backend/jit/llvm/llvmjit.c | 18 +++++
|
||||
src/backend/jit/llvm/llvmjit_inline.cpp | 1 +
|
||||
4 files changed, 111 insertions(+)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 57ec071cf9bd..a15c2253d58c 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -7259,6 +7259,95 @@ if test x"$pgac_cv_prog_CLANGXX_cxxflags__fexcess_precision_standard" = x"yes";
|
||||
fi
|
||||
|
||||
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${CLANG} supports -Xclang -no-opaque-pointers, for BITCODE_CFLAGS" >&5
|
||||
+$as_echo_n "checking whether ${CLANG} supports -Xclang -no-opaque-pointers, for BITCODE_CFLAGS... " >&6; }
|
||||
+if ${pgac_cv_prog_CLANG_cflags__Xclang__no_opaque_pointers+:} false; then :
|
||||
+ $as_echo_n "(cached) " >&6
|
||||
+else
|
||||
+ pgac_save_CFLAGS=$CFLAGS
|
||||
+pgac_save_CC=$CC
|
||||
+CC=${CLANG}
|
||||
+CFLAGS="${BITCODE_CFLAGS} -Xclang -no-opaque-pointers"
|
||||
+ac_save_c_werror_flag=$ac_c_werror_flag
|
||||
+ac_c_werror_flag=yes
|
||||
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
+/* end confdefs.h. */
|
||||
+
|
||||
+int
|
||||
+main ()
|
||||
+{
|
||||
+
|
||||
+ ;
|
||||
+ return 0;
|
||||
+}
|
||||
+_ACEOF
|
||||
+if ac_fn_c_try_compile "$LINENO"; then :
|
||||
+ pgac_cv_prog_CLANG_cflags__Xclang__no_opaque_pointers=yes
|
||||
+else
|
||||
+ pgac_cv_prog_CLANG_cflags__Xclang__no_opaque_pointers=no
|
||||
+fi
|
||||
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||
+ac_c_werror_flag=$ac_save_c_werror_flag
|
||||
+CFLAGS="$pgac_save_CFLAGS"
|
||||
+CC="$pgac_save_CC"
|
||||
+fi
|
||||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $pgac_cv_prog_CLANG_cflags__Xclang__no_opaque_pointers" >&5
|
||||
+$as_echo "$pgac_cv_prog_CLANG_cflags__Xclang__no_opaque_pointers" >&6; }
|
||||
+if test x"$pgac_cv_prog_CLANG_cflags__Xclang__no_opaque_pointers" = x"yes"; then
|
||||
+ BITCODE_CFLAGS="${BITCODE_CFLAGS} -Xclang -no-opaque-pointers"
|
||||
+fi
|
||||
+
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${CLANGXX} supports -Xclang -no-opaque-pointers, for BITCODE_CXXFLAGS" >&5
|
||||
+$as_echo_n "checking whether ${CLANGXX} supports -Xclang -no-opaque-pointers, for BITCODE_CXXFLAGS... " >&6; }
|
||||
+if ${pgac_cv_prog_CLANGXX_cxxflags__Xclang__no_opaque_pointers+:} false; then :
|
||||
+ $as_echo_n "(cached) " >&6
|
||||
+else
|
||||
+ pgac_save_CXXFLAGS=$CXXFLAGS
|
||||
+pgac_save_CXX=$CXX
|
||||
+CXX=${CLANGXX}
|
||||
+CXXFLAGS="${BITCODE_CXXFLAGS} -Xclang -no-opaque-pointers"
|
||||
+ac_save_cxx_werror_flag=$ac_cxx_werror_flag
|
||||
+ac_cxx_werror_flag=yes
|
||||
+ac_ext=cpp
|
||||
+ac_cpp='$CXXCPP $CPPFLAGS'
|
||||
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
||||
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
|
||||
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
|
||||
+
|
||||
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
+/* end confdefs.h. */
|
||||
+
|
||||
+int
|
||||
+main ()
|
||||
+{
|
||||
+
|
||||
+ ;
|
||||
+ return 0;
|
||||
+}
|
||||
+_ACEOF
|
||||
+if ac_fn_cxx_try_compile "$LINENO"; then :
|
||||
+ pgac_cv_prog_CLANGXX_cxxflags__Xclang__no_opaque_pointers=yes
|
||||
+else
|
||||
+ pgac_cv_prog_CLANGXX_cxxflags__Xclang__no_opaque_pointers=no
|
||||
+fi
|
||||
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||
+ac_ext=c
|
||||
+ac_cpp='$CPP $CPPFLAGS'
|
||||
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
||||
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
|
||||
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
||||
+
|
||||
+ac_cxx_werror_flag=$ac_save_cxx_werror_flag
|
||||
+CXXFLAGS="$pgac_save_CXXFLAGS"
|
||||
+CXX="$pgac_save_CXX"
|
||||
+fi
|
||||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $pgac_cv_prog_CLANGXX_cxxflags__Xclang__no_opaque_pointers" >&5
|
||||
+$as_echo "$pgac_cv_prog_CLANGXX_cxxflags__Xclang__no_opaque_pointers" >&6; }
|
||||
+if test x"$pgac_cv_prog_CLANGXX_cxxflags__Xclang__no_opaque_pointers" = x"yes"; then
|
||||
+ BITCODE_CXXFLAGS="${BITCODE_CXXFLAGS} -Xclang -no-opaque-pointers"
|
||||
+fi
|
||||
+
|
||||
+
|
||||
NOT_THE_CFLAGS=""
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${CLANG} supports -Wunused-command-line-argument, for NOT_THE_CFLAGS" >&5
|
||||
$as_echo_n "checking whether ${CLANG} supports -Wunused-command-line-argument, for NOT_THE_CFLAGS... " >&6; }
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 227bc896b69c..6d13ae588892 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -600,6 +600,9 @@ if test "$with_llvm" = yes ; then
|
||||
PGAC_PROG_VARCC_VARFLAGS_OPT(CLANG, BITCODE_CFLAGS, [-fexcess-precision=standard])
|
||||
PGAC_PROG_VARCXX_VARFLAGS_OPT(CLANGXX, BITCODE_CXXFLAGS, [-fexcess-precision=standard])
|
||||
|
||||
+ PGAC_PROG_VARCC_VARFLAGS_OPT(CLANG, BITCODE_CFLAGS, [-Xclang -no-opaque-pointers])
|
||||
+ PGAC_PROG_VARCXX_VARFLAGS_OPT(CLANGXX, BITCODE_CXXFLAGS, [-Xclang -no-opaque-pointers])
|
||||
+
|
||||
NOT_THE_CFLAGS=""
|
||||
PGAC_PROG_VARCC_VARFLAGS_OPT(CLANG, NOT_THE_CFLAGS, [-Wunused-command-line-argument])
|
||||
if test -n "$NOT_THE_CFLAGS"; then
|
||||
diff --git a/src/backend/jit/llvm/llvmjit.c b/src/backend/jit/llvm/llvmjit.c
|
||||
index fb294495737c..199fff4f773c 100644
|
||||
--- a/src/backend/jit/llvm/llvmjit.c
|
||||
+++ b/src/backend/jit/llvm/llvmjit.c
|
||||
@@ -798,6 +798,16 @@ llvm_session_initialize(void)
|
||||
LLVMInitializeNativeAsmPrinter();
|
||||
LLVMInitializeNativeAsmParser();
|
||||
|
||||
+ /*
|
||||
+ * When targeting an LLVM version with opaque pointers enabled by
|
||||
+ * default, turn them off for the context we build our code in. We don't
|
||||
+ * need to do so for other contexts (e.g. llvm_ts_context). Once the IR is
|
||||
+ * generated, it carries the necessary information.
|
||||
+ */
|
||||
+#if LLVM_VERSION_MAJOR > 14
|
||||
+ LLVMContextSetOpaquePointers(LLVMGetGlobalContext(), false);
|
||||
+#endif
|
||||
+
|
||||
/*
|
||||
* Synchronize types early, as that also includes inferring the target
|
||||
* triple.
|
||||
@@ -1112,7 +1122,11 @@ llvm_resolve_symbols(LLVMOrcDefinitionGeneratorRef GeneratorObj, void *Ctx,
|
||||
LLVMOrcJITDylibRef JD, LLVMOrcJITDylibLookupFlags JDLookupFlags,
|
||||
LLVMOrcCLookupSet LookupSet, size_t LookupSetSize)
|
||||
{
|
||||
+#if LLVM_VERSION_MAJOR > 14
|
||||
+ LLVMOrcCSymbolMapPairs symbols = palloc0(sizeof(LLVMOrcCSymbolMapPair) * LookupSetSize);
|
||||
+#else
|
||||
LLVMOrcCSymbolMapPairs symbols = palloc0(sizeof(LLVMJITCSymbolMapPair) * LookupSetSize);
|
||||
+#endif
|
||||
LLVMErrorRef error;
|
||||
LLVMOrcMaterializationUnitRef mu;
|
||||
|
||||
@@ -1230,7 +1244,11 @@ llvm_create_jit_instance(LLVMTargetMachineRef tm)
|
||||
* Symbol resolution support for "special" functions, e.g. a call into an
|
||||
* SQL callable function.
|
||||
*/
|
||||
+#if LLVM_VERSION_MAJOR > 14
|
||||
+ ref_gen = LLVMOrcCreateCustomCAPIDefinitionGenerator(llvm_resolve_symbols, NULL, NULL);
|
||||
+#else
|
||||
ref_gen = LLVMOrcCreateCustomCAPIDefinitionGenerator(llvm_resolve_symbols, NULL);
|
||||
+#endif
|
||||
LLVMOrcJITDylibAddGenerator(LLVMOrcLLJITGetMainJITDylib(lljit), ref_gen);
|
||||
|
||||
return lljit;
|
||||
diff --git a/src/backend/jit/llvm/llvmjit_inline.cpp b/src/backend/jit/llvm/llvmjit_inline.cpp
|
||||
index 9bb4b672a736..774d9e8b66dc 100644
|
||||
--- a/src/backend/jit/llvm/llvmjit_inline.cpp
|
||||
+++ b/src/backend/jit/llvm/llvmjit_inline.cpp
|
||||
@@ -62,6 +62,7 @@ extern "C"
|
||||
#include <llvm/IR/ModuleSummaryIndex.h>
|
||||
#include <llvm/Linker/IRMover.h>
|
||||
#include <llvm/Support/ManagedStatic.h>
|
||||
+#include <llvm/Support/MemoryBuffer.h>
|
||||
|
||||
|
||||
/*
|
@ -1,10 +1,7 @@
|
||||
Default to stderr-based logging with a week's worth of daily logfiles.
|
||||
|
||||
|
||||
diff -Naur postgresql-9.1rc1.orig/src/backend/utils/misc/postgresql.conf.sample postgresql-9.1rc1/src/backend/utils/misc/postgresql.conf.sample
|
||||
--- postgresql-9.1rc1.orig/src/backend/utils/misc/postgresql.conf.sample 2011-08-18 17:23:13.000000000 -0400
|
||||
+++ postgresql-9.1rc1/src/backend/utils/misc/postgresql.conf.sample 2011-08-18 18:39:39.697526799 -0400
|
||||
@@ -279,7 +279,7 @@
|
||||
diff -up postgresql-14beta2/src/backend/utils/misc/postgresql.conf.sample.patch2 postgresql-14beta2/src/backend/utils/misc/postgresql.conf.sample
|
||||
--- postgresql-14beta2/src/backend/utils/misc/postgresql.conf.sample.patch2 2021-06-21 23:07:55.000000000 +0200
|
||||
+++ postgresql-14beta2/src/backend/utils/misc/postgresql.conf.sample 2021-06-25 19:37:21.868632721 +0200
|
||||
@@ -435,7 +435,7 @@
|
||||
# requires logging_collector to be on.
|
||||
|
||||
# This is used when logging to stderr:
|
||||
@ -13,7 +10,7 @@ diff -Naur postgresql-9.1rc1.orig/src/backend/utils/misc/postgresql.conf.sample
|
||||
# into log files. Required to be on for
|
||||
# csvlogs.
|
||||
# (change requires restart)
|
||||
@@ -355,11 +355,11 @@
|
||||
@@ -443,16 +443,16 @@
|
||||
# These are only used if logging_collector is on:
|
||||
#log_directory = 'log' # directory where log files are written,
|
||||
# can be absolute or relative to PGDATA
|
||||
@ -22,15 +19,6 @@ diff -Naur postgresql-9.1rc1.orig/src/backend/utils/misc/postgresql.conf.sample
|
||||
# can include strftime() escapes
|
||||
#log_file_mode = 0600 # creation mode for log files,
|
||||
# begin with 0 to use octal notation
|
||||
-#log_truncate_on_rotation = off # If on, an existing log file with the
|
||||
+log_truncate_on_rotation = on # If on, an existing log file with the
|
||||
# same name as the new log file will be
|
||||
# truncated rather than appended to.
|
||||
# But such truncation only occurs on
|
||||
@@ -367,9 +367,9 @@
|
||||
# or size-driven rotation. Default is
|
||||
# off, meaning append to existing files
|
||||
# in all cases.
|
||||
-#log_rotation_age = 1d # Automatic rotation of logfiles will
|
||||
+log_rotation_age = 1d # Automatic rotation of logfiles will
|
||||
# happen after that time. 0 disables.
|
||||
@ -38,4 +26,8 @@ diff -Naur postgresql-9.1rc1.orig/src/backend/utils/misc/postgresql.conf.sample
|
||||
+log_rotation_size = 0 # Automatic rotation of logfiles will
|
||||
# happen after that much log output.
|
||||
# 0 disables.
|
||||
|
||||
-#log_truncate_on_rotation = off # If on, an existing log file with the
|
||||
+log_truncate_on_rotation = on # If on, an existing log file with the
|
||||
# same name as the new log file will be
|
||||
# truncated rather than appended to.
|
||||
# But such truncation only occurs on
|
||||
|
@ -3,10 +3,10 @@ PostgreSQL ecpg/initdb manual page fixes
|
||||
This was generated based on automatic Red Hat manual page scan (private
|
||||
RHBZ#948933).
|
||||
|
||||
diff -up ./doc/src/sgml/man1/ecpg.1.man948933 ./doc/src/sgml/man1/ecpg.1
|
||||
--- ./doc/src/sgml/man1/ecpg.1.man948933 2014-12-16 02:13:15.000000000 +0100
|
||||
+++ ./doc/src/sgml/man1/ecpg.1 2014-12-23 11:26:37.883644047 +0100
|
||||
@@ -80,6 +80,11 @@ INFORMIX_SE\&.
|
||||
diff -up postgresql-13.1/doc/src/sgml/man1/ecpg.1.patch6 postgresql-13.1/doc/src/sgml/man1/ecpg.1
|
||||
--- postgresql-13.1/doc/src/sgml/man1/ecpg.1.patch6 2020-11-09 23:38:03.000000000 +0100
|
||||
+++ postgresql-13.1/doc/src/sgml/man1/ecpg.1 2020-11-18 09:26:40.547324791 +0100
|
||||
@@ -81,6 +81,11 @@ ORACLE\&.
|
||||
Define a C preprocessor symbol\&.
|
||||
.RE
|
||||
.PP
|
||||
@ -15,10 +15,10 @@ diff -up ./doc/src/sgml/man1/ecpg.1.man948933 ./doc/src/sgml/man1/ecpg.1
|
||||
+Parse a header file, this option includes option \fB\-c\fR\&.
|
||||
+.RE
|
||||
+.PP
|
||||
\fB\-i\fR
|
||||
\fB\-h\fR
|
||||
.RS 4
|
||||
Parse system include files as well\&.
|
||||
@@ -128,6 +133,11 @@ Allow question mark as placeholder for c
|
||||
Process header files\&. When this option is specified, the output file extension becomes
|
||||
@@ -144,6 +149,11 @@ Allow question mark as placeholder for c
|
||||
.RE
|
||||
.RE
|
||||
.PP
|
||||
@ -30,10 +30,10 @@ diff -up ./doc/src/sgml/man1/ecpg.1.man948933 ./doc/src/sgml/man1/ecpg.1
|
||||
\fB\-t\fR
|
||||
.RS 4
|
||||
Turn on autocommit of transactions\&. In this mode, each SQL command is automatically committed unless it is inside an explicit transaction block\&. In the default mode, commands are committed only when
|
||||
diff -up ./doc/src/sgml/man1/initdb.1.man948933 ./doc/src/sgml/man1/initdb.1
|
||||
--- ./doc/src/sgml/man1/initdb.1.man948933 2014-12-16 02:13:21.000000000 +0100
|
||||
+++ ./doc/src/sgml/man1/initdb.1 2014-12-23 11:26:37.883644047 +0100
|
||||
@@ -281,6 +281,13 @@ determines that an error prevented it fr
|
||||
diff -up postgresql-13.1/doc/src/sgml/man1/initdb.1.patch6 postgresql-13.1/doc/src/sgml/man1/initdb.1
|
||||
--- postgresql-13.1/doc/src/sgml/man1/initdb.1.patch6 2020-11-09 23:38:05.000000000 +0100
|
||||
+++ postgresql-13.1/doc/src/sgml/man1/initdb.1 2020-11-18 09:25:05.082348424 +0100
|
||||
@@ -311,6 +311,13 @@ determines that an error prevented it fr
|
||||
.PP
|
||||
Other options:
|
||||
.PP
|
||||
|
12
postgresql-no-libecpg.patch
Normal file
12
postgresql-no-libecpg.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -up postgresql-13.1/src/interfaces/Makefile.patch10 postgresql-13.1/src/interfaces/Makefile
|
||||
--- postgresql-13.1/src/interfaces/Makefile.patch10 2021-02-02 21:33:23.235292305 +0100
|
||||
+++ postgresql-13.1/src/interfaces/Makefile 2021-02-02 21:33:30.281365440 +0100
|
||||
@@ -12,7 +12,7 @@ subdir = src/interfaces
|
||||
top_builddir = ../..
|
||||
include $(top_builddir)/src/Makefile.global
|
||||
|
||||
-SUBDIRS = libpq ecpg
|
||||
+SUBDIRS = libpq
|
||||
|
||||
$(recurse)
|
||||
|
102
postgresql-pgcrypto-openssl3-tests.patch
Normal file
102
postgresql-pgcrypto-openssl3-tests.patch
Normal file
@ -0,0 +1,102 @@
|
||||
diff -ur postgresql-13.4/contrib/pgcrypto/expected/pgp-decrypt.out postgresql-13.4.patched/contrib/pgcrypto/expected/pgp-decrypt.out
|
||||
--- postgresql-13.4/contrib/pgcrypto/expected/pgp-decrypt.out 2021-08-09 16:49:05.000000000 -0400
|
||||
+++ postgresql-13.4.patched/contrib/pgcrypto/expected/pgp-decrypt.out 2021-09-01 08:16:48.138600886 -0400
|
||||
@@ -4,20 +4,6 @@
|
||||
-- Checking ciphers
|
||||
select pgp_sym_decrypt(dearmor('
|
||||
-----BEGIN PGP MESSAGE-----
|
||||
-Comment: dat1.blowfish.sha1.mdc.s2k3.z0
|
||||
-
|
||||
-jA0EBAMCfFNwxnvodX9g0jwB4n4s26/g5VmKzVab1bX1SmwY7gvgvlWdF3jKisvS
|
||||
-yA6Ce1QTMK3KdL2MPfamsTUSAML8huCJMwYQFfE=
|
||||
-=JcP+
|
||||
------END PGP MESSAGE-----
|
||||
-'), 'foobar');
|
||||
- pgp_sym_decrypt
|
||||
------------------
|
||||
- Secret message.
|
||||
-(1 row)
|
||||
-
|
||||
-select pgp_sym_decrypt(dearmor('
|
||||
------BEGIN PGP MESSAGE-----
|
||||
Comment: dat1.aes.sha1.mdc.s2k3.z0
|
||||
|
||||
jA0EBwMCci97v0Q6Z0Zg0kQBsVf5Oe3iC+FBzUmuMV9KxmAyOMyjCc/5i8f1Eest
|
||||
diff -ur postgresql-13.4/contrib/pgcrypto/expected/pgp-pubkey-decrypt.out postgresql-13.4.patched/contrib/pgcrypto/expected/pgp-pubkey-decrypt.out
|
||||
--- postgresql-13.4/contrib/pgcrypto/expected/pgp-pubkey-decrypt.out 2021-08-09 16:49:05.000000000 -0400
|
||||
+++ postgresql-13.4.patched/contrib/pgcrypto/expected/pgp-pubkey-decrypt.out 2021-09-01 08:05:27.750172653 -0400
|
||||
@@ -594,13 +594,6 @@
|
||||
(1 row)
|
||||
|
||||
select pgp_pub_decrypt(dearmor(data), dearmor(seckey))
|
||||
-from keytbl, encdata where keytbl.id=2 and encdata.id=2;
|
||||
- pgp_pub_decrypt
|
||||
------------------
|
||||
- Secret msg
|
||||
-(1 row)
|
||||
-
|
||||
-select pgp_pub_decrypt(dearmor(data), dearmor(seckey))
|
||||
from keytbl, encdata where keytbl.id=3 and encdata.id=3;
|
||||
pgp_pub_decrypt
|
||||
-----------------
|
||||
diff -ur postgresql-13.4/contrib/pgcrypto/Makefile postgresql-13.4.patched/contrib/pgcrypto/Makefile
|
||||
--- postgresql-13.4/contrib/pgcrypto/Makefile 2021-08-09 16:49:05.000000000 -0400
|
||||
+++ postgresql-13.4.patched/contrib/pgcrypto/Makefile 2021-09-01 08:26:47.207164873 -0400
|
||||
@@ -5,7 +5,7 @@
|
||||
INT_TESTS = sha2
|
||||
|
||||
OSSL_SRCS = openssl.c pgp-mpi-openssl.c
|
||||
-OSSL_TESTS = sha2 des 3des cast5
|
||||
+OSSL_TESTS = sha2
|
||||
|
||||
ZLIB_TST = pgp-compression
|
||||
ZLIB_OFF_TST = pgp-zlib-DISABLED
|
||||
@@ -49,12 +49,13 @@
|
||||
pgcrypto--1.0--1.1.sql
|
||||
PGFILEDESC = "pgcrypto - cryptographic functions"
|
||||
|
||||
-REGRESS = init md5 sha1 hmac-md5 hmac-sha1 blowfish rijndael \
|
||||
+REGRESS = init md5 sha1 hmac-md5 hmac-sha1 rijndael \
|
||||
$(CF_TESTS) \
|
||||
- crypt-des crypt-md5 crypt-blowfish crypt-xdes \
|
||||
+ crypt-md5 \
|
||||
pgp-armor pgp-decrypt pgp-encrypt $(CF_PGP_TESTS) \
|
||||
pgp-pubkey-decrypt pgp-pubkey-encrypt pgp-info
|
||||
|
||||
+#REGRESS = init pgp-pubkey-decrypt pgp-decrypt \
|
||||
EXTRA_CLEAN = gen-rtab
|
||||
|
||||
ifdef USE_PGXS
|
||||
diff -ur postgresql-13.4/contrib/pgcrypto/sql/pgp-decrypt.sql postgresql-13.4.patched/contrib/pgcrypto/sql/pgp-decrypt.sql
|
||||
--- postgresql-13.4/contrib/pgcrypto/sql/pgp-decrypt.sql 2021-08-09 16:49:05.000000000 -0400
|
||||
+++ postgresql-13.4.patched/contrib/pgcrypto/sql/pgp-decrypt.sql 2021-09-01 08:16:12.525212175 -0400
|
||||
@@ -5,16 +5,6 @@
|
||||
-- Checking ciphers
|
||||
select pgp_sym_decrypt(dearmor('
|
||||
-----BEGIN PGP MESSAGE-----
|
||||
-Comment: dat1.blowfish.sha1.mdc.s2k3.z0
|
||||
-
|
||||
-jA0EBAMCfFNwxnvodX9g0jwB4n4s26/g5VmKzVab1bX1SmwY7gvgvlWdF3jKisvS
|
||||
-yA6Ce1QTMK3KdL2MPfamsTUSAML8huCJMwYQFfE=
|
||||
-=JcP+
|
||||
------END PGP MESSAGE-----
|
||||
-'), 'foobar');
|
||||
-
|
||||
-select pgp_sym_decrypt(dearmor('
|
||||
------BEGIN PGP MESSAGE-----
|
||||
Comment: dat1.aes.sha1.mdc.s2k3.z0
|
||||
|
||||
jA0EBwMCci97v0Q6Z0Zg0kQBsVf5Oe3iC+FBzUmuMV9KxmAyOMyjCc/5i8f1Eest
|
||||
diff -ur postgresql-13.4/contrib/pgcrypto/sql/pgp-pubkey-decrypt.sql postgresql-13.4.patched/contrib/pgcrypto/sql/pgp-pubkey-decrypt.sql
|
||||
--- postgresql-13.4/contrib/pgcrypto/sql/pgp-pubkey-decrypt.sql 2021-08-09 16:49:05.000000000 -0400
|
||||
+++ postgresql-13.4.patched/contrib/pgcrypto/sql/pgp-pubkey-decrypt.sql 2021-09-01 08:06:18.963732342 -0400
|
||||
@@ -606,9 +606,6 @@
|
||||
from keytbl, encdata where keytbl.id=1 and encdata.id=1;
|
||||
|
||||
select pgp_pub_decrypt(dearmor(data), dearmor(seckey))
|
||||
-from keytbl, encdata where keytbl.id=2 and encdata.id=2;
|
||||
-
|
||||
-select pgp_pub_decrypt(dearmor(data), dearmor(seckey))
|
||||
from keytbl, encdata where keytbl.id=3 and encdata.id=3;
|
||||
|
||||
select pgp_pub_decrypt(dearmor(data), dearmor(seckey))
|
61
postgresql-pl-perl-test-case.patch
Normal file
61
postgresql-pl-perl-test-case.patch
Normal file
@ -0,0 +1,61 @@
|
||||
From eb39610f82679e015dd990a3fbba1c62e399c32a Mon Sep 17 00:00:00 2001
|
||||
From: Tom Lane <tgl@sss.pgh.pa.us>
|
||||
Date: Wed, 1 Jun 2022 16:15:47 -0400
|
||||
Subject: [PATCH] Fix pl/perl test case so it will still work under Perl 5.36.
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Perl 5.36 has reclassified the warning condition that this test
|
||||
case used, so that the expected error fails to appear. Tweak
|
||||
the test so it instead exercises a case that's handled the same
|
||||
way in all Perl versions of interest.
|
||||
|
||||
This appears to meet our standards for back-patching into
|
||||
out-of-support branches: it changes no user-visible behavior
|
||||
but enables testing of old branches with newer tools.
|
||||
Hence, back-patch as far as 9.2.
|
||||
|
||||
Dagfinn Ilmari Mannsåker, per report from Jitka Plesníková.
|
||||
|
||||
Discussion: https://postgr.es/m/564579.1654093326@sss.pgh.pa.us
|
||||
---
|
||||
src/pl/plperl/expected/plperl.out | 6 +++---
|
||||
src/pl/plperl/sql/plperl.sql | 4 ++--
|
||||
2 files changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/pl/plperl/expected/plperl.out b/src/pl/plperl/expected/plperl.out
|
||||
index d8a1ff5dd8..e3d7c8896a 100644
|
||||
--- a/src/pl/plperl/expected/plperl.out
|
||||
+++ b/src/pl/plperl/expected/plperl.out
|
||||
@@ -724,9 +724,9 @@ DO $do$ use strict; my $name = "foo"; my $ref = $$name; $do$ LANGUAGE plperl;
|
||||
ERROR: Can't use string ("foo") as a SCALAR ref while "strict refs" in use at line 1.
|
||||
CONTEXT: PL/Perl anonymous code block
|
||||
-- check that we can "use warnings" (in this case to turn a warn into an error)
|
||||
--- yields "ERROR: Useless use of sort in scalar context."
|
||||
-DO $do$ use warnings FATAL => qw(void) ; my @y; my $x = sort @y; 1; $do$ LANGUAGE plperl;
|
||||
-ERROR: Useless use of sort in scalar context at line 1.
|
||||
+-- yields "ERROR: Useless use of sort in void context."
|
||||
+DO $do$ use warnings FATAL => qw(void) ; my @y; sort @y; 1; $do$ LANGUAGE plperl;
|
||||
+ERROR: Useless use of sort in void context at line 1.
|
||||
CONTEXT: PL/Perl anonymous code block
|
||||
-- make sure functions marked as VOID without an explicit return work
|
||||
CREATE OR REPLACE FUNCTION myfuncs() RETURNS void AS $$
|
||||
diff --git a/src/pl/plperl/sql/plperl.sql b/src/pl/plperl/sql/plperl.sql
|
||||
index b0d950b230..bb0b8ce4cb 100644
|
||||
--- a/src/pl/plperl/sql/plperl.sql
|
||||
+++ b/src/pl/plperl/sql/plperl.sql
|
||||
@@ -469,8 +469,8 @@ DO $$ use blib; $$ LANGUAGE plperl;
|
||||
DO $do$ use strict; my $name = "foo"; my $ref = $$name; $do$ LANGUAGE plperl;
|
||||
|
||||
-- check that we can "use warnings" (in this case to turn a warn into an error)
|
||||
--- yields "ERROR: Useless use of sort in scalar context."
|
||||
-DO $do$ use warnings FATAL => qw(void) ; my @y; my $x = sort @y; 1; $do$ LANGUAGE plperl;
|
||||
+-- yields "ERROR: Useless use of sort in void context."
|
||||
+DO $do$ use warnings FATAL => qw(void) ; my @y; sort @y; 1; $do$ LANGUAGE plperl;
|
||||
|
||||
-- make sure functions marked as VOID without an explicit return work
|
||||
CREATE OR REPLACE FUNCTION myfuncs() RETURNS void AS $$
|
||||
--
|
||||
2.35.1
|
||||
|
@ -6,11 +6,10 @@ rhbz#1618698 change, rather provide pg_server_config binary, which int urn means
|
||||
that we'll have to fix only a minimal set of packages which really build
|
||||
PostgreSQL server modules.
|
||||
|
||||
diff --git a/src/bin/pg_config/Makefile b/src/bin/pg_config/Makefile
|
||||
index 02e6f9d..f7c844f 100644
|
||||
--- a/src/bin/pg_config/Makefile
|
||||
+++ b/src/bin/pg_config/Makefile
|
||||
@@ -11,28 +11,30 @@
|
||||
diff -ur postgresql-14rc1/src/bin/pg_config/Makefile pgsql14/src/bin/pg_config/Makefile
|
||||
--- postgresql-14rc1/src/bin/pg_config/Makefile 2021-09-20 23:33:01.000000000 +0200
|
||||
+++ pgsql14/src/bin/pg_config/Makefile 2021-09-22 10:48:06.484093152 +0200
|
||||
@@ -11,6 +11,8 @@
|
||||
PGFILEDESC = "pg_config - report configuration information"
|
||||
PGAPPICON=win32
|
||||
|
||||
@ -19,8 +18,9 @@ index 02e6f9d..f7c844f 100644
|
||||
subdir = src/bin/pg_config
|
||||
top_builddir = ../../..
|
||||
include $(top_builddir)/src/Makefile.global
|
||||
|
||||
OBJS= pg_config.o $(WIN32RES)
|
||||
@@ -19,22 +21,22 @@
|
||||
$(WIN32RES) \
|
||||
pg_config.o
|
||||
|
||||
-all: pg_config
|
||||
+all: $(PG_CONFIG)
|
||||
@ -43,17 +43,16 @@ index 02e6f9d..f7c844f 100644
|
||||
|
||||
clean distclean maintainer-clean:
|
||||
- rm -f pg_config$(X) $(OBJS)
|
||||
+ rm -f $(PG_CONFIG) $(OBJS)
|
||||
+ rm -f $(PG_CONFIG) $(OBJS)
|
||||
rm -rf tmp_check
|
||||
|
||||
check:
|
||||
diff --git a/src/bin/pg_config/nls.mk b/src/bin/pg_config/nls.mk
|
||||
index 1d41f90..0f34f37 100644
|
||||
--- a/src/bin/pg_config/nls.mk
|
||||
+++ b/src/bin/pg_config/nls.mk
|
||||
diff -ur postgresql-14rc1/src/bin/pg_config/nls.mk pgsql14/src/bin/pg_config/nls.mk
|
||||
--- postgresql-14rc1/src/bin/pg_config/nls.mk 2021-09-20 23:33:01.000000000 +0200
|
||||
+++ pgsql14/src/bin/pg_config/nls.mk 2021-09-22 10:48:51.492460567 +0200
|
||||
@@ -1,4 +1,4 @@
|
||||
# src/bin/pg_config/nls.mk
|
||||
-CATALOG_NAME = pg_config
|
||||
+CATALOG_NAME = pg_server_config
|
||||
AVAIL_LANGUAGES = cs de es fr he it ja ko pl pt_BR ro ru sv tr uk vi zh_CN zh_TW
|
||||
AVAIL_LANGUAGES = cs de el es fr he it ja ko pl pt_BR ru sv tr uk vi zh_CN
|
||||
GETTEXT_FILES = pg_config.c ../../common/config_info.c ../../common/exec.c
|
||||
|
@ -42,12 +42,12 @@ 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.
|
||||
@@ -201,7 +201,7 @@
|
||||
* support them yet.
|
||||
*/
|
||||
#ifndef WIN32
|
||||
-#define DEFAULT_PGSOCKET_DIR "/tmp"
|
||||
+#define DEFAULT_PGSOCKET_DIR "/var/run/postgresql"
|
||||
|
||||
/*
|
||||
* This is the default event source for Windows event log.
|
||||
#else
|
||||
#define DEFAULT_PGSOCKET_DIR ""
|
||||
#endif
|
||||
|
534
postgresql.spec
534
postgresql.spec
@ -33,8 +33,8 @@
|
||||
|
||||
%{!?test:%global test 1}
|
||||
%{!?llvmjit:%global llvmjit 1}
|
||||
%{!?external_libpq:%global external_libpq 0}
|
||||
%{!?upgrade:%global upgrade 1}
|
||||
%{!?plpython:%global plpython 1}
|
||||
%{!?plpython3:%global plpython3 1}
|
||||
%{!?pltcl:%global pltcl 1}
|
||||
%{!?plperl:%global plperl 1}
|
||||
@ -57,11 +57,15 @@
|
||||
# https://fedoraproject.org/wiki/Packaging:Guidelines#Packaging_of_Additional_RPM_Macros
|
||||
%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)
|
||||
|
||||
# Don't create note file, added package_note_flags to linker by redhat-rpm-config
|
||||
# will cause issue during extension build because it'll be inherited.
|
||||
%undefine _package_note_file
|
||||
|
||||
Summary: PostgreSQL client programs
|
||||
Name: postgresql
|
||||
%global majorversion 12
|
||||
Version: %{majorversion}.2
|
||||
Release: 2%{?dist}
|
||||
%global majorversion 14
|
||||
Version: %{majorversion}.3
|
||||
Release: 9%{?dist}
|
||||
|
||||
# The PostgreSQL license is very similar to other MIT licenses, but the OSI
|
||||
# recognizes it as an independent license, so we do as well.
|
||||
@ -72,12 +76,12 @@ Url: http://www.postgresql.org/
|
||||
# in-place upgrade of an old database. In most cases it will not be critical
|
||||
# that this be kept up with the latest minor release of the previous series;
|
||||
# but update when bugs affecting pg_dump output are fixed.
|
||||
%global prevversion 11.7
|
||||
%global prevmajorversion 11
|
||||
%global prevmajorversion 13
|
||||
%global prevversion %{prevmajorversion}.7
|
||||
%global prev_prefix %{_libdir}/pgsql/postgresql-%{prevmajorversion}
|
||||
%global precise_version %{?epoch:%epoch:}%version-%release
|
||||
|
||||
%global setup_version 8.4
|
||||
%global setup_version 8.7
|
||||
|
||||
%global service_name postgresql.service
|
||||
|
||||
@ -106,29 +110,42 @@ Source17: https://ftp.postgresql.org/pub/source/v%{prevversion}/postgresql-%{pre
|
||||
Patch1: rpm-pgsql.patch
|
||||
Patch2: postgresql-logging.patch
|
||||
Patch5: postgresql-var-run-socket.patch
|
||||
Patch6: postgresql-man.patch
|
||||
Patch8: postgresql-external-libpq.patch
|
||||
Patch9: postgresql-server-pg_config.patch
|
||||
# Upstream bug #16971: https://www.postgresql.org/message-id/16971-5d004d34742a3d35%40postgresql.org
|
||||
# rhbz#1940964
|
||||
Patch10: postgresql-datalayout-mismatch-on-s390.patch
|
||||
Patch12: postgresql-no-libecpg.patch
|
||||
# This patch disables deprecated ciphers in the test suite
|
||||
Patch14: postgresql-pgcrypto-openssl3-tests.patch
|
||||
# Fix compatibility with Python 3.11
|
||||
Patch15: postgresql-SPI-s-handling-of-errors-during-transaction-comm.patch
|
||||
# Fix compatibility with Perl 5.36
|
||||
Patch16: postgresql-pl-perl-test-case.patch
|
||||
# Fix compatibility with LLVM 15
|
||||
Patch17: postgresql-llvm-15-compat.patch
|
||||
|
||||
BuildRequires: make
|
||||
BuildRequires: lz4-devel
|
||||
BuildRequires: gcc
|
||||
BuildRequires: perl(ExtUtils::MakeMaker) glibc-devel bison flex gawk
|
||||
BuildRequires: perl(ExtUtils::Embed), perl-devel
|
||||
BuildRequires: perl(Opcode)
|
||||
BuildRequires: perl(FindBin)
|
||||
%if 0%{?fedora} || 0%{?rhel} > 7
|
||||
BuildRequires: perl-generators
|
||||
%endif
|
||||
BuildRequires: readline-devel zlib-devel
|
||||
BuildRequires: systemd systemd-devel util-linux
|
||||
BuildRequires: multilib-rpm-config
|
||||
%if %external_libpq
|
||||
BuildRequires: libpq-devel >= %version
|
||||
%endif
|
||||
BuildRequires: docbook-style-xsl
|
||||
|
||||
# postgresql-setup build requires
|
||||
BuildRequires: m4 elinks docbook-utils help2man
|
||||
|
||||
%if %plpython
|
||||
BuildRequires: python2-devel
|
||||
%endif
|
||||
|
||||
%if %plpython3
|
||||
BuildRequires: python3-devel
|
||||
%endif
|
||||
@ -190,6 +207,37 @@ over a network connection. The PostgreSQL server can be found in the
|
||||
postgresql-server sub-package.
|
||||
|
||||
|
||||
%if ! %external_libpq
|
||||
%package private-libs
|
||||
Summary: The shared libraries required only for this build of PostgreSQL server
|
||||
Group: Applications/Databases
|
||||
# for /sbin/ldconfig
|
||||
Requires(post): glibc
|
||||
Requires(postun): glibc
|
||||
|
||||
%description private-libs
|
||||
The postgresql-private-libs package provides the shared libraries for this
|
||||
build of PostgreSQL server and plugins build with this version of server.
|
||||
For shared libraries used by client packages that need to connect to a
|
||||
PostgreSQL server, install libpq package instead.
|
||||
|
||||
|
||||
%package private-devel
|
||||
Summary: PostgreSQL development header files for this build of PostgreSQL server
|
||||
Group: Development/Libraries
|
||||
Requires: %{name}-private-libs%{?_isa} = %precise_version
|
||||
# Conflict is desired here, a user must pick one or another
|
||||
Conflicts: libpq-devel
|
||||
|
||||
%description private-devel
|
||||
The postgresql-private-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.
|
||||
You need to install this package if you want to develop applications which
|
||||
will interact with a PostgreSQL server.
|
||||
%endif
|
||||
|
||||
|
||||
%package server
|
||||
Summary: The programs needed to create and run a PostgreSQL server
|
||||
Requires: %{name}%{?_isa} = %precise_version
|
||||
@ -198,6 +246,8 @@ Requires(pre): /usr/sbin/useradd
|
||||
Requires: systemd
|
||||
# Make sure it's there when scriptlets run, too
|
||||
%{?systemd_requires}
|
||||
# postgresql setup requires runuser from util-linux package
|
||||
BuildRequires: util-linux
|
||||
# Packages which provide postgresql plugins should build-require
|
||||
# postgresql-server-devel and require
|
||||
# postgresql-server(:MODULE_COMPAT_%%{postgresql_major}).
|
||||
@ -245,6 +295,14 @@ Requires: krb5-devel
|
||||
%if %llvmjit
|
||||
Requires: clang-devel llvm-devel
|
||||
%endif
|
||||
%if %external_libpq
|
||||
# Some extensions require libpq
|
||||
# Do not make them care about whether server uses private or system-wide
|
||||
# libpq, simply let the server pull the correct one
|
||||
Requires: libpq-devel
|
||||
%else
|
||||
Requires: %{name}-private-devel
|
||||
%endif
|
||||
|
||||
%description server-devel
|
||||
The postgresql-server-devel package contains the header files and configuration
|
||||
@ -298,6 +356,7 @@ Summary: The Perl procedural language for PostgreSQL
|
||||
Requires: %{name}-server%{?_isa} = %precise_version
|
||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||
%if %runselftest
|
||||
BuildRequires: perl(Opcode)
|
||||
BuildRequires: perl(Data::Dumper)
|
||||
%endif
|
||||
|
||||
@ -308,19 +367,6 @@ Install this if you want to write database functions in Perl.
|
||||
%endif
|
||||
|
||||
|
||||
%if %plpython
|
||||
%package plpython
|
||||
Summary: The Python2 procedural language for PostgreSQL
|
||||
Requires: %{name}-server%{?_isa} = %precise_version
|
||||
Provides: %{name}-plpython2 = %precise_version
|
||||
|
||||
%description plpython
|
||||
The postgresql-plpython package contains the PL/Python procedural language,
|
||||
which is an extension to the PostgreSQL database server.
|
||||
Install this if you want to write database functions in Python 2.
|
||||
%endif
|
||||
|
||||
|
||||
%if %plpython3
|
||||
%package plpython3
|
||||
Summary: The Python3 procedural language for PostgreSQL
|
||||
@ -368,11 +414,6 @@ Requires: llvm => 5.0
|
||||
%endif
|
||||
Provides: postgresql-llvmjit >= %{version}-%{release}
|
||||
|
||||
%ifarch ppc64 ppc64le
|
||||
AutoReq: 0
|
||||
Requires: advance-toolchain-%{atstring}-runtime
|
||||
%endif
|
||||
|
||||
BuildRequires: llvm-devel >= 5.0 clang-devel >= 5.0
|
||||
|
||||
%description llvmjit
|
||||
@ -394,18 +435,36 @@ goal of accelerating analytics queries.
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%if %external_libpq
|
||||
%patch8 -p1
|
||||
%else
|
||||
%patch12 -p1
|
||||
%endif
|
||||
%patch9 -p1
|
||||
|
||||
%patch10 -p1
|
||||
%patch14 -p1
|
||||
%patch15 -p1
|
||||
%patch16 -p1
|
||||
%patch17 -p1
|
||||
# We used to run autoconf here, but there's no longer any real need to,
|
||||
# since Postgres ships with a reasonably modern configure script.
|
||||
|
||||
cp -p %{SOURCE1} .
|
||||
|
||||
%if ! %external_libpq
|
||||
%global private_soname private%{majorversion}
|
||||
find . -type f -name Makefile -exec sed -i -e "s/SO_MAJOR_VERSION=\s\?\([0-9]\+\)/SO_MAJOR_VERSION= %{private_soname}-\1/" {} \;
|
||||
%endif
|
||||
|
||||
%if %upgrade
|
||||
tar xfj %{SOURCE3}
|
||||
|
||||
# libpq from this upgrade-only build is dropped and the libpq from the main
|
||||
# version is used. Use the same major hack therefore.
|
||||
%if ! %external_libpq
|
||||
find . -type f -name Makefile -exec sed -i -e "s/SO_MAJOR_VERSION=\s\?\([0-9]\+\)/SO_MAJOR_VERSION= %{private_soname}-\1/" {} \;
|
||||
%endif
|
||||
|
||||
# apply once SOURCE3 is extracted
|
||||
%endif
|
||||
|
||||
@ -414,6 +473,10 @@ find . -type f -name .gitignore | xargs rm
|
||||
|
||||
|
||||
%build
|
||||
# Avoid LTO on armv7hl as it runs out of memory
|
||||
%ifarch armv7hl s390x
|
||||
%define _lto_cflags %{nil}
|
||||
%endif
|
||||
# fail quickly and obviously if user tries to build as root
|
||||
%if %runselftest
|
||||
if [ x"`id -u`" = x0 ]; then
|
||||
@ -440,19 +503,10 @@ cd ..
|
||||
# Fiddling with CFLAGS.
|
||||
|
||||
CFLAGS="${CFLAGS:-%optflags}"
|
||||
%ifarch %{power64}
|
||||
# See the bug #1051075, ppc64 should benefit from -O3
|
||||
CFLAGS=`echo $CFLAGS | xargs -n 1 | sed 's|-O2|-O3|g' | xargs -n 100`
|
||||
%endif
|
||||
# Strip out -ffast-math from CFLAGS....
|
||||
CFLAGS=`echo $CFLAGS|xargs -n 1|grep -v ffast-math|xargs -n 100`
|
||||
export CFLAGS
|
||||
|
||||
# plpython requires separate configure/build runs to build against python 2
|
||||
# versus python 3. Our strategy is to do the python 3 run first, then make
|
||||
# distclean and do it again for the "normal" build. Note that the installed
|
||||
# Makefile.global will reflect the python 2 build, which seems appropriate
|
||||
# since that's still considered the default plpython version.
|
||||
common_configure_options='
|
||||
--disable-rpath
|
||||
%if %beta
|
||||
@ -497,55 +551,22 @@ common_configure_options='
|
||||
--with-system-tzdata=%_datadir/zoneinfo
|
||||
--datadir=%_datadir/pgsql
|
||||
--with-systemd
|
||||
--with-lz4
|
||||
%if %icu
|
||||
--with-icu
|
||||
%endif
|
||||
%if %llvmjit
|
||||
--with-llvm
|
||||
%endif
|
||||
'
|
||||
|
||||
%if %plpython3
|
||||
--with-python
|
||||
%endif
|
||||
'
|
||||
|
||||
export PYTHON=/usr/bin/python3
|
||||
|
||||
# These configure options must match main build
|
||||
%configure $common_configure_options \
|
||||
--with-python
|
||||
|
||||
# Fortunately we don't need to build much except plpython itself.
|
||||
%global python_subdirs \\\
|
||||
src/pl/plpython \\\
|
||||
contrib/hstore_plpython \\\
|
||||
contrib/jsonb_plpython \\\
|
||||
contrib/ltree_plpython
|
||||
|
||||
for dir in %python_subdirs; do
|
||||
%make_build -C "$dir" all
|
||||
done
|
||||
|
||||
# save built form in a directory that "make distclean" won't touch
|
||||
for dir in %python_subdirs; do
|
||||
rm -rf "${dir}3" # shouldn't exist, unless --short-circuit
|
||||
cp -a "$dir" "${dir}3"
|
||||
done
|
||||
|
||||
# must also save this version of Makefile.global for later
|
||||
cp src/Makefile.global src/Makefile.global.python3
|
||||
|
||||
make distclean
|
||||
|
||||
%endif # %%plpython3
|
||||
|
||||
PYTHON=/usr/bin/python2
|
||||
|
||||
# Normal (python2) build begins here
|
||||
%configure $common_configure_options \
|
||||
%if %plpython
|
||||
--with-python
|
||||
%endif
|
||||
|
||||
unset PYTHON
|
||||
%configure $common_configure_options
|
||||
|
||||
%make_build world
|
||||
|
||||
@ -582,32 +603,6 @@ test_failure=0
|
||||
run_testsuite "src/test/regress"
|
||||
make clean -C "src/test/regress"
|
||||
run_testsuite "src/pl"
|
||||
%if %plpython3
|
||||
# must install Makefile.global that selects python3
|
||||
mv src/Makefile.global src/Makefile.global.save
|
||||
cp src/Makefile.global.python3 src/Makefile.global
|
||||
touch -r src/Makefile.global.save src/Makefile.global
|
||||
|
||||
for dir in %python_subdirs; do
|
||||
# because "make check" does "make install" on the whole tree,
|
||||
# we must temporarily install *plpython3 dir as *plpython,
|
||||
# since that is the subdirectory src/pl/Makefile knows about
|
||||
mv "$dir" "${dir}2"
|
||||
mv "${dir}3" "$dir"
|
||||
done
|
||||
|
||||
for dir in %python_subdirs; do
|
||||
run_testsuite "$dir"
|
||||
done
|
||||
|
||||
for dir in %python_subdirs; do
|
||||
# and clean up our mess
|
||||
mv "$dir" "${dir}3"
|
||||
mv "${dir}2" "${dir}"
|
||||
done
|
||||
|
||||
mv -f src/Makefile.global.save src/Makefile.global
|
||||
%endif
|
||||
run_testsuite "contrib"
|
||||
%endif
|
||||
|
||||
@ -638,12 +633,12 @@ upgrade_configure ()
|
||||
# its ideas about installation paths.
|
||||
|
||||
# The -fno-aggressive-loop-optimizations is hack for #993532
|
||||
PYTHON="${PYTHON-/usr/bin/python2}" \
|
||||
CFLAGS="$CFLAGS -fno-aggressive-loop-optimizations" ./configure \
|
||||
--build=%{_build} \
|
||||
--host=%{_host} \
|
||||
--prefix=%prev_prefix \
|
||||
--disable-rpath \
|
||||
--with-lz4 \
|
||||
%if %beta
|
||||
--enable-debug \
|
||||
--enable-cassert \
|
||||
@ -656,36 +651,47 @@ upgrade_configure ()
|
||||
%endif
|
||||
%if %pltcl
|
||||
--with-tcl \
|
||||
%endif
|
||||
%if %ldap
|
||||
--with-ldap \
|
||||
%endif
|
||||
%if %pam
|
||||
--with-pam \
|
||||
%endif
|
||||
%if %kerberos
|
||||
--with-gssapi \
|
||||
%endif
|
||||
%if %uuid
|
||||
--with-ossp-uuid \
|
||||
%endif
|
||||
%if %xml
|
||||
--with-libxml \
|
||||
--with-libxslt \
|
||||
%endif
|
||||
%if %nls
|
||||
--enable-nls \
|
||||
%endif
|
||||
%if %sdt
|
||||
--enable-dtrace \
|
||||
%endif
|
||||
%if %selinux
|
||||
--with-selinux \
|
||||
%endif
|
||||
%if %plpython3
|
||||
--with-python \
|
||||
%endif
|
||||
--with-tclconfig=%_libdir \
|
||||
--with-system-tzdata=/usr/share/zoneinfo \
|
||||
"$@"
|
||||
}
|
||||
|
||||
%if %plpython3
|
||||
export PYTHON=/usr/bin/python3
|
||||
upgrade_configure --with-python
|
||||
for dir in %python_subdirs; do
|
||||
# Previous version doesn't necessarily have this.
|
||||
test -d "$dir" || continue
|
||||
%make_build -C "$dir" all
|
||||
|
||||
# save aside the only one file which we are interested here
|
||||
cp "$dir"/*plpython3.so ./
|
||||
done
|
||||
unset PYTHON
|
||||
make distclean
|
||||
%endif
|
||||
|
||||
upgrade_configure \
|
||||
%if %plpython
|
||||
--with-python
|
||||
%endif
|
||||
|
||||
make %{?_smp_mflags} all
|
||||
make -C contrib %{?_smp_mflags} all
|
||||
popd
|
||||
%endif # %%upgrade
|
||||
# endif upgrade
|
||||
%endif
|
||||
|
||||
|
||||
%install
|
||||
@ -711,19 +717,14 @@ make DESTDIR=$RPM_BUILD_ROOT install-world
|
||||
|
||||
# We ship pg_config through libpq-devel
|
||||
mv $RPM_BUILD_ROOT/%_mandir/man1/pg_{,server_}config.1
|
||||
%if %external_libpq
|
||||
rm $RPM_BUILD_ROOT/%_includedir/pg_config*.h
|
||||
rm $RPM_BUILD_ROOT/%_includedir/libpq/libpq-fs.h
|
||||
rm $RPM_BUILD_ROOT/%_includedir/postgres_ext.h
|
||||
rm -r $RPM_BUILD_ROOT/%_includedir/pgsql/internal/
|
||||
|
||||
%if %plpython3
|
||||
mv src/Makefile.global src/Makefile.global.save
|
||||
cp src/Makefile.global.python3 src/Makefile.global
|
||||
touch -r src/Makefile.global.save src/Makefile.global
|
||||
for dir in %python_subdirs; do
|
||||
%make_install -C "${dir}3"
|
||||
done
|
||||
mv -f src/Makefile.global.save src/Makefile.global
|
||||
%else
|
||||
ln -s pg_server_config $RPM_BUILD_ROOT/%_bindir/pg_config
|
||||
rm $RPM_BUILD_ROOT/%{_libdir}/libpq.a
|
||||
%endif
|
||||
|
||||
# make sure these directories exist even if we suppressed all contrib modules
|
||||
@ -768,12 +769,6 @@ rm $RPM_BUILD_ROOT/%{_datadir}/man/man1/ecpg.1
|
||||
pushd postgresql-%{prevversion}
|
||||
make DESTDIR=$RPM_BUILD_ROOT install
|
||||
make -C contrib DESTDIR=$RPM_BUILD_ROOT install
|
||||
%if %plpython3
|
||||
for file in *plpython3.so; do
|
||||
install -m 755 "$file" \
|
||||
$RPM_BUILD_ROOT/%_libdir/pgsql/postgresql-%prevmajorversion/lib
|
||||
done
|
||||
%endif
|
||||
popd
|
||||
|
||||
# remove stuff we don't actually need for upgrade purposes
|
||||
@ -803,7 +798,6 @@ rm $RPM_BUILD_ROOT/%{_datadir}/man/man1/ecpg.1
|
||||
# Drop libraries.
|
||||
rm lib/lib{ecpg,ecpg_compat,pgtypes}.so*
|
||||
rm share/*.bki
|
||||
rm share/*description
|
||||
rm share/*.sample
|
||||
rm share/*.sql
|
||||
rm share/*.txt
|
||||
@ -815,6 +809,10 @@ rm $RPM_BUILD_ROOT/%{_datadir}/man/man1/ecpg.1
|
||||
EOF
|
||||
%endif
|
||||
|
||||
# Let plugins use the same llvmjit settings as server has
|
||||
cat <<EOF >> $RPM_BUILD_ROOT%macrosdir/macros.%name
|
||||
%%postgresql_server_llvmjit %llvmjit
|
||||
EOF
|
||||
|
||||
%if %test
|
||||
# tests. There are many files included here that are unnecessary,
|
||||
@ -847,9 +845,9 @@ rm $RPM_BUILD_ROOT%{_libdir}/libpgfeutils.a
|
||||
rm -f $RPM_BUILD_ROOT%{_bindir}/pgsql/hstore_plperl.so
|
||||
%endif
|
||||
|
||||
%if !%plpython
|
||||
rm -f $RPM_BUILD_ROOT%{_bindir}/pgsql/hstore_plpython2.so
|
||||
%endif
|
||||
# no python2, yet installed, remove
|
||||
rm -f $RPM_BUILD_ROOT%{_datadir}/pgsql/extension/*_plpythonu*
|
||||
rm -f $RPM_BUILD_ROOT%{_datadir}/pgsql/extension/*_plpython2u*
|
||||
|
||||
%if %nls
|
||||
find_lang_bins ()
|
||||
@ -864,19 +862,19 @@ find_lang_bins ()
|
||||
find_lang_bins devel.lst pg_server_config
|
||||
find_lang_bins server.lst \
|
||||
initdb pg_basebackup pg_controldata pg_ctl pg_resetwal pg_rewind plpgsql \
|
||||
postgres pg_checksums
|
||||
postgres pg_checksums pg_verifybackup
|
||||
find_lang_bins contrib.lst \
|
||||
pg_archivecleanup pg_test_fsync pg_test_timing pg_waldump
|
||||
pg_amcheck pg_archivecleanup pg_test_fsync pg_test_timing pg_waldump
|
||||
find_lang_bins main.lst \
|
||||
pg_dump pg_upgrade pgscripts psql
|
||||
pg_dump pg_upgrade pgscripts psql \
|
||||
%if ! %external_libpq
|
||||
libpq%{private_soname}-5
|
||||
%endif
|
||||
|
||||
%if %plperl
|
||||
find_lang_bins plperl.lst plperl
|
||||
%endif
|
||||
%if %plpython
|
||||
find_lang_bins plpython.lst plpython
|
||||
%endif
|
||||
%if %plpython3
|
||||
# plpython3 shares message files with plpython
|
||||
find_lang_bins plpython3.lst plpython
|
||||
%endif
|
||||
%if %pltcl
|
||||
@ -945,6 +943,12 @@ make -C postgresql-setup-%{setup_version} check
|
||||
%endif
|
||||
|
||||
|
||||
%if ! %external_libpq
|
||||
%files private-libs
|
||||
%{_libdir}/libpq.so.*
|
||||
%endif
|
||||
|
||||
|
||||
%files docs
|
||||
%doc *-US.pdf
|
||||
%doc doc/html
|
||||
@ -954,8 +958,8 @@ make -C postgresql-setup-%{setup_version} check
|
||||
%files contrib -f contrib.lst
|
||||
%doc contrib/spi/*.example
|
||||
%{_bindir}/oid2name
|
||||
%{_bindir}/pg_amcheck
|
||||
%{_bindir}/pg_archivecleanup
|
||||
%{_bindir}/pg_standby
|
||||
%{_bindir}/pg_test_fsync
|
||||
%{_bindir}/pg_test_timing
|
||||
%{_bindir}/pg_waldump
|
||||
@ -983,21 +987,19 @@ make -C postgresql-setup-%{setup_version} check
|
||||
%if %{plperl}
|
||||
%{_datadir}/pgsql/extension/jsonb_plperl*
|
||||
%endif
|
||||
%if %{plpython}
|
||||
%{_datadir}/pgsql/extension/jsonb_plpythonu*
|
||||
%{_datadir}/pgsql/extension/jsonb_plpython2u*
|
||||
%endif
|
||||
%if %{plpython3}
|
||||
%{_datadir}/pgsql/extension/jsonb_plpython3u*
|
||||
%endif
|
||||
%{_datadir}/pgsql/extension/lo*
|
||||
%{_datadir}/pgsql/extension/ltree*
|
||||
%{_datadir}/pgsql/extension/moddatetime*
|
||||
%{_datadir}/pgsql/extension/old_snapshot*
|
||||
%{_datadir}/pgsql/extension/pageinspect*
|
||||
%{_datadir}/pgsql/extension/pg_buffercache*
|
||||
%{_datadir}/pgsql/extension/pg_freespacemap*
|
||||
%{_datadir}/pgsql/extension/pg_prewarm*
|
||||
%{_datadir}/pgsql/extension/pg_stat_statements*
|
||||
%{_datadir}/pgsql/extension/pg_surgery*
|
||||
%{_datadir}/pgsql/extension/pg_trgm*
|
||||
%{_datadir}/pgsql/extension/pg_visibility*
|
||||
%{_datadir}/pgsql/extension/pgcrypto*
|
||||
@ -1032,9 +1034,6 @@ make -C postgresql-setup-%{setup_version} check
|
||||
%if %plperl
|
||||
%{_libdir}/pgsql/hstore_plperl.so
|
||||
%endif
|
||||
%if %plpython
|
||||
%{_libdir}/pgsql/hstore_plpython2.so
|
||||
%endif
|
||||
%if %plpython3
|
||||
%{_libdir}/pgsql/hstore_plpython3.so
|
||||
%endif
|
||||
@ -1043,26 +1042,22 @@ make -C postgresql-setup-%{setup_version} check
|
||||
%if %plperl
|
||||
%{_libdir}/pgsql/jsonb_plperl.so
|
||||
%endif
|
||||
%if %plpython
|
||||
%{_libdir}/pgsql/jsonb_plpython2.so
|
||||
%endif
|
||||
%if %plpython3
|
||||
%{_libdir}/pgsql/jsonb_plpython3.so
|
||||
%endif
|
||||
%{_libdir}/pgsql/lo.so
|
||||
%{_libdir}/pgsql/ltree.so
|
||||
%if %plpython
|
||||
%{_libdir}/pgsql/ltree_plpython2.so
|
||||
%endif
|
||||
%if %plpython3
|
||||
%{_libdir}/pgsql/ltree_plpython3.so
|
||||
%endif
|
||||
%{_libdir}/pgsql/moddatetime.so
|
||||
%{_libdir}/pgsql/old_snapshot.so
|
||||
%{_libdir}/pgsql/pageinspect.so
|
||||
%{_libdir}/pgsql/passwordcheck.so
|
||||
%{_libdir}/pgsql/pg_buffercache.so
|
||||
%{_libdir}/pgsql/pg_freespacemap.so
|
||||
%{_libdir}/pgsql/pg_stat_statements.so
|
||||
%{_libdir}/pgsql/pg_surgery.so
|
||||
%{_libdir}/pgsql/pg_trgm.so
|
||||
%{_libdir}/pgsql/pg_visibility.so
|
||||
%{_libdir}/pgsql/pgcrypto.so
|
||||
@ -1078,9 +1073,9 @@ make -C postgresql-setup-%{setup_version} check
|
||||
%{_libdir}/pgsql/tsm_system_time.so
|
||||
%{_libdir}/pgsql/unaccent.so
|
||||
%{_mandir}/man1/oid2name.*
|
||||
%{_mandir}/man1/pg_amcheck.*
|
||||
%{_mandir}/man1/pg_archivecleanup.*
|
||||
%{_mandir}/man1/pg_recvlogical.*
|
||||
%{_mandir}/man1/pg_standby.*
|
||||
%{_mandir}/man1/pg_test_fsync.*
|
||||
%{_mandir}/man1/pg_test_timing.*
|
||||
%{_mandir}/man1/pg_waldump.*
|
||||
@ -1114,8 +1109,10 @@ make -C postgresql-setup-%{setup_version} check
|
||||
%{_bindir}/pg_resetwal
|
||||
%{_bindir}/pg_rewind
|
||||
%{_bindir}/pg_checksums
|
||||
%{_bindir}/pg_verifybackup
|
||||
%{_bindir}/postgres
|
||||
%{_bindir}/postgresql-setup
|
||||
%{_bindir}/postgresql-upgrade
|
||||
%{_bindir}/postmaster
|
||||
%dir %{_datadir}/pgsql
|
||||
%{_datadir}/pgsql/*.sample
|
||||
@ -1124,10 +1121,10 @@ make -C postgresql-setup-%{setup_version} check
|
||||
%{_datadir}/pgsql/extension/plpgsql*
|
||||
%{_datadir}/pgsql/information_schema.sql
|
||||
%{_datadir}/pgsql/postgres.bki
|
||||
%{_datadir}/pgsql/postgres.description
|
||||
%{_datadir}/pgsql/postgres.shdescription
|
||||
%{_datadir}/pgsql/snowball_create.sql
|
||||
%{_datadir}/pgsql/sql_features.txt
|
||||
%{_datadir}/pgsql/system_constraints.sql
|
||||
%{_datadir}/pgsql/system_functions.sql
|
||||
%{_datadir}/pgsql/system_views.sql
|
||||
%{_datadir}/pgsql/timezonesets/
|
||||
%{_datadir}/pgsql/tsearch_data/
|
||||
@ -1155,9 +1152,11 @@ make -C postgresql-setup-%{setup_version} check
|
||||
%{_mandir}/man1/pg_resetwal.*
|
||||
%{_mandir}/man1/pg_rewind.*
|
||||
%{_mandir}/man1/pg_checksums.*
|
||||
%{_mandir}/man1/pg_verifybackup.*
|
||||
%{_mandir}/man1/postgres.*
|
||||
%{_mandir}/man1/postgresql-new-systemd-unit.*
|
||||
%{_mandir}/man1/postgresql-setup.*
|
||||
%{_mandir}/man1/postgresql-upgrade.*
|
||||
%{_mandir}/man1/postmaster.*
|
||||
%{_sbindir}/postgresql-new-systemd-unit
|
||||
%{_tmpfilesdir}/postgresql.conf
|
||||
@ -1184,6 +1183,21 @@ make -C postgresql-setup-%{setup_version} check
|
||||
%{macrosdir}/macros.%name
|
||||
|
||||
|
||||
%if ! %external_libpq
|
||||
%files private-devel
|
||||
%{_bindir}/pg_config
|
||||
%{_includedir}/libpq-events.h
|
||||
%{_includedir}/libpq-fe.h
|
||||
%{_includedir}/postgres_ext.h
|
||||
%{_includedir}/pgsql/internal/*.h
|
||||
%{_includedir}/pgsql/internal/libpq/pqcomm.h
|
||||
%{_includedir}/libpq/*.h
|
||||
%{_libdir}/pkgconfig/*.pc
|
||||
%{_libdir}/libpq.so
|
||||
%{_includedir}/pg_config*.h
|
||||
%endif
|
||||
|
||||
|
||||
%files test-rpm-macros
|
||||
%{_datadir}/postgresql-setup/postgresql_pkg_tests.sh
|
||||
%{macrosdir}/macros.%name-test
|
||||
@ -1224,7 +1238,9 @@ make -C postgresql-setup-%{setup_version} check
|
||||
|
||||
%if %plperl
|
||||
%files plperl -f plperl.lst
|
||||
%{_datadir}/pgsql/extension/bool_plperl*
|
||||
%{_datadir}/pgsql/extension/plperl*
|
||||
%{_libdir}/pgsql/bool_plperl.so
|
||||
%{_libdir}/pgsql/plperl.so
|
||||
%endif
|
||||
|
||||
@ -1236,14 +1252,6 @@ make -C postgresql-setup-%{setup_version} check
|
||||
%endif
|
||||
|
||||
|
||||
%if %plpython
|
||||
%files plpython -f plpython.lst
|
||||
%{_datadir}/pgsql/extension/plpython2*
|
||||
%{_datadir}/pgsql/extension/plpythonu*
|
||||
%{_libdir}/pgsql/plpython2.so
|
||||
%endif
|
||||
|
||||
|
||||
%if %plpython3
|
||||
%files plpython3 -f plpython3.lst
|
||||
%{_datadir}/pgsql/extension/plpython3*
|
||||
@ -1258,6 +1266,180 @@ make -C postgresql-setup-%{setup_version} check
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Oct 20 2022 Daan De Meyer <daan.j.demeyer@gmail.com> - 14.3.11
|
||||
- Backport commit to fix builds with LLVM 15
|
||||
- Add missing perl FindBin BuildRequires
|
||||
|
||||
* Mon Aug 01 2022 Frantisek Zatloukal <fzatlouk@redhat.com> - 14.3-8
|
||||
- Rebuilt for ICU 71.1
|
||||
|
||||
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 14.3-7
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Thu Jul 07 2022 Filip Januš <fjanus@redhat.com> - 14.3-6
|
||||
- enable lz4
|
||||
|
||||
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 14.3-5
|
||||
- Rebuilt for Python 3.11
|
||||
|
||||
* Mon Jun 06 2022 Honza Horak <hhorak@redhat.com> - 14.3-4
|
||||
- Fix compatibility with Perl 5.36
|
||||
Resolves: #2092426
|
||||
|
||||
* Mon Jun 06 2022 Honza Horak <hhorak@redhat.com> - 14.3-3
|
||||
- Fix handling of errors during transaction with Python 3.11
|
||||
Resolves: #2023272
|
||||
|
||||
* Wed Jun 01 2022 Jitka Plesnikova <jplesnik@redhat.com> - 14.3-2
|
||||
- Perl 5.36 rebuild
|
||||
|
||||
* Tue May 31 2022 Honza Horak <hhorak@redhat.com> - 14.3-1
|
||||
- Update to 14.3
|
||||
Also fixes: CVE-2022-1552
|
||||
|
||||
* Mon Apr 04 2022 Filip Janus <fjanus@redhat.com> - 14.2-3
|
||||
- Add build requirement util-linux
|
||||
|
||||
* Wed Feb 23 2022 Marek Kulik <mkulik@redhat.com> - 14.2-2
|
||||
- Disable package note generation due to extension build issue.
|
||||
|
||||
* Wed Feb 09 2022 Filip Janus <fjanus@redhat.com> - 14.2-1
|
||||
- Update to 14.2
|
||||
|
||||
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 14.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Wed Jan 05 2022 Filip Januš <fjanus@redhat.com> - 14.1-1
|
||||
- Update to 14.1
|
||||
- Update postgresql-setup to v8.7
|
||||
- Resolves: https://fedoraproject.org/wiki/Changes/PostgreSQL_14
|
||||
|
||||
* Mon Dec 13 2021 Marek Kulik <mkulik@redhat.com> - 13.5-1
|
||||
- Update to 13.5
|
||||
Remove patch postgresql-pgcrypto-openssl3-init.patch - already in upstream
|
||||
|
||||
* Thu Nov 18 2021 Marek Kulik <mkulik@redhat.com> - 13.4-5
|
||||
- Update postgresql-setup to v8.6
|
||||
|
||||
* Tue Oct 19 2021 Filip Januš <fjanus@redhat.com> - 13.4-4
|
||||
- rebuild after llvm .so name chnage
|
||||
|
||||
* Wed Oct 06 2021 Filip Januš <fjanus@redhat.com> - 13.4-3
|
||||
- Add patch 13 - corrects initialization of ciphers
|
||||
- Add patch 14 - disable unsupported ciphers in test suite
|
||||
|
||||
* 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
|
||||
- Disable postgresql-subtransaction-test.patch
|
||||
now succeeds without patch
|
||||
|
||||
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 13.3-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Tue Jul 20 2021 Filip Januš <fjanus@redhat.com> - 13.3-4
|
||||
- Enable ssl and other features for upgrade server
|
||||
|
||||
* Fri Jun 04 2021 Honza Horak <hhorak@redhat.com> - 13.3-3
|
||||
- Build with a private libpq
|
||||
Resolves: #1905584
|
||||
|
||||
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 13.3-2
|
||||
- Rebuilt for Python 3.10
|
||||
|
||||
* Fri May 21 2021 Filip Januš <fjanus@redhat.com> - 13.3-1
|
||||
- Update to 13.3
|
||||
|
||||
* Fri May 21 2021 Jitka Plesnikova <jplesnik@redhat.com> - 13.2-9
|
||||
- Perl 5.34 rebuild
|
||||
|
||||
* Thu May 20 2021 Pete Walter <pwalter@fedoraproject.org> - 13.2-8
|
||||
- Rebuild for ICU 69
|
||||
|
||||
* Tue May 11 2021 Honza Horak <hhorak@redhat.com> - 13.2-7
|
||||
- Fix subtransaction test for Python 3.10
|
||||
Resolves: #1959080
|
||||
|
||||
* Thu Apr 22 2021 Honza Horak <hhorak@redhat.com> - 13.2-6
|
||||
- Fix jit failure on s390x
|
||||
Thanks to Tom Stellard
|
||||
Related: #1940964
|
||||
|
||||
* Tue Apr 20 2021 Honza Horak <hhorak@redhat.com> - 13.2-5
|
||||
- Add macro for llvmjit settings
|
||||
|
||||
* Wed Mar 17 2021 Honza Horak <hhorak@redhat.com> - 13.2-4
|
||||
- Remove plpython2 entirely, same as upstream did
|
||||
Resolves: #1913681
|
||||
- Disable llvmjit in order to build at all
|
||||
Related: #1940964
|
||||
|
||||
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 13.2-3
|
||||
- Rebuilt for updated systemd-rpm-macros
|
||||
See https://pagure.io/fesco/issue/2583.
|
||||
|
||||
* Wed Feb 17 2021 Honza Horak <hhorak@redhat.com> - 13.2-2
|
||||
- Do not build plpython on RHEL > 8
|
||||
Related: #1913681
|
||||
|
||||
* Tue Feb 16 2021 Honza Horak <hhorak@redhat.com> - 13.2-1
|
||||
- Update to 13.2
|
||||
|
||||
* Fri Feb 12 2021 Michal Schorm <mschorm@redhat.com> - 13.1-2
|
||||
- Remove ancient PPC64 hack
|
||||
|
||||
* Wed Jan 13 2021 Honza Horak <hhorak@redhat.com> - 13.1-1
|
||||
- Rebase to usptream release 13.1
|
||||
|
||||
* Wed Jan 13 2021 Patrik Novotný <panovotn@redhat.com> - 12.5-1
|
||||
- Rebase to upstream release 12.5
|
||||
Patch for libpq 13.x build time compatibility
|
||||
Fixes CVE-2020-25694
|
||||
Fixes CVE-2020-25695
|
||||
Fixes CVE-2020-25696
|
||||
|
||||
* Wed Jan 06 2021 Fedora Release Engineering <releng@fedoraproject.org> - 12.4-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Mon Nov 16 2020 Honza Horak <hhorak@redhat.com> - 12.4-4
|
||||
- Update postgresql-setup to v8.5
|
||||
|
||||
* Fri Oct 09 2020 Honza Horak <hhorak@redhat.com> - 12.4-3
|
||||
- Removing problematic requirements on ppc64 arch
|
||||
Resolves: #1882642
|
||||
|
||||
* Fri Aug 21 2020 Jeff Law <law@redhat.com> - 12.4-2
|
||||
- Re-enable LTO
|
||||
|
||||
* Tue Aug 18 2020 Patrik Novotný <panovotn@redhat.com> - 12.4-1
|
||||
- Rebase to upstream release 12.4
|
||||
|
||||
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 12.3-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Fri Jul 24 2020 Jeff Law <law@redhat.com> - 12.3-5
|
||||
- Disable LTO
|
||||
|
||||
* Tue Jun 23 2020 Jitka Plesnikova <jplesnik@redhat.com> - 12.3-4
|
||||
- Perl 5.32 rebuild
|
||||
|
||||
* Sat Jun 06 2020 Pavel Raiskup <praiskup@redhat.com> - 12.3-3
|
||||
- add docbook-style-xsl to BuildRequires
|
||||
|
||||
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 12.3-2
|
||||
- Rebuilt for Python 3.9
|
||||
|
||||
* Tue May 19 2020 Patrik Novotný <panovotn@redhat.com> - 12.3-2
|
||||
- Drop postgresql-man.patch
|
||||
|
||||
* Mon May 18 2020 Patrik Novotný <panovotn@redhat.com> - 12.3-1
|
||||
- Rebase to upstream release 12.3
|
||||
|
||||
* Fri May 15 2020 Pete Walter <pwalter@fedoraproject.org> - 12.2-3
|
||||
- Rebuild for ICU 67
|
||||
|
||||
* Thu Mar 12 2020 Patrik Novotný <panovotn@redhat.com> - 12.2-2
|
||||
- Fix requirements for JIT in postgresql-server-devel
|
||||
- Fix build issues regarding new perl update
|
||||
|
@ -1 +1 @@
|
||||
d /var/run/postgresql 0755 postgres postgres -
|
||||
d /run/postgresql 0755 postgres postgres -
|
||||
|
21
rpminspect.yaml
Normal file
21
rpminspect.yaml
Normal file
@ -0,0 +1,21 @@
|
||||
---
|
||||
# Forbidden function symbols found:
|
||||
# inet_net_ntop
|
||||
# inet_net_pton
|
||||
# This is not a problem because the older version is only used for upgrade
|
||||
# purposes and communicates through unix socket only
|
||||
badfuncs:
|
||||
ignore:
|
||||
- /usr/lib*/pgsql/postgresql-*/bin/postgres
|
||||
|
||||
# Invalid XML for HTML doc is ok
|
||||
xml:
|
||||
ignore:
|
||||
- /usr/share/doc/postgresql-docs/html/*.html
|
||||
|
||||
# Wacky guess on file type that we do not need to care
|
||||
# Message: MIME type on <file> was text/plain and became text/x-c
|
||||
types:
|
||||
ignore:
|
||||
- /usr/lib64/pgsql/postgresql-*/include/server/port/freebsd.h
|
||||
- /usr/include/pgsql/server/port/freebsd.h
|
12
sources
12
sources
@ -1,6 +1,6 @@
|
||||
SHA512 (postgresql-12.2.tar.bz2) = 0e0ce8e21856e8f43e58b840c10c4e3ffae6d5207e0d778e9176e36f8e20e34633cbb06f0030a7c963c3491bb7e941456d91b55444c561cfc6f283fba76f33ee
|
||||
SHA512 (postgresql-12.2.tar.bz2.sha256) = 8f94163228bb7d854d6fe4924a8a2ded00f90af662dd4a7c39b415be0826d9395e55f9b8e3b472baf7c19550e7c35198a650604a28756ad85d096bcfbaa5d1fd
|
||||
SHA512 (postgresql-12.2-US.pdf) = f086fead2c094e0f1148bcadaf13e240a84b53be289aa0a323295f65879699e81041b4bbc6cc3ce2744aac3fcb15083fa1cab583cd86fdc8ef626499e3cb3e71
|
||||
SHA512 (postgresql-11.7.tar.bz2) = 32c7ace228f9895241ce0d925fbfc60c0cd39f4cd35368fb10dc7db046151ffd59a9895b4c30a529627f0103051e84b4992ed60312cccd292489f3037076ca1e
|
||||
SHA512 (postgresql-11.7.tar.bz2.sha256) = 1c8bc319da6bc49000f14e4636f4410b3eb52ab41b0698e7f3ee945efe8e93b6f1758e3f60d8658b0ea6836ea0f271a61031554a10e64c61d2c670e97c63812c
|
||||
SHA512 (postgresql-setup-8.4.tar.gz) = eb73767d5c676481598aeb545e15027a29a438aa29480ad414f6af31c9df61138a51f5425999b4b35e776a3dbbb28c887790ea9771abc3328158dd1d34b1dce1
|
||||
SHA512 (postgresql-13.7.tar.bz2) = 9254f21519c8d4e926f70082503bb5593c91064a3d2a4ea18ac503dfd9aa94751d6f01ce00fca9fec9b2b7af40caf8d0951b661dd8be4d6aa87c1e35b6fa7a41
|
||||
SHA512 (postgresql-13.7.tar.bz2.sha256) = a6e3601c6f8370318631820cb0f9858e49ea7d672652fe68ca0c0603e4fd28851fe1966a0825c8dafab11e15a0856486d82406f5b2d033917da0328089ca3f37
|
||||
SHA512 (postgresql-14.3.tar.bz2) = 70e6f67b5729a23f80b92b04e3fad2e09596b939660e3ddebf499d06af946459a45a019279e05413673e7b65d09a28a0440ed3c2ae565068466ed37e2d4f6f17
|
||||
SHA512 (postgresql-14.3.tar.bz2.sha256) = 29a4b501bdd17ad36e6b7c8c8e7c2f418b72c70811317409ad067d2d059e6adaf511efa367393d6837dcab458537fb3f297e9046bfc38072dc5d1af6338404f5
|
||||
SHA512 (postgresql-setup-8.7.tar.gz) = 741f036be517e7d9725e4f146ca7dac8b8a16b6a93d045a64ef268487f48faad6b08317b58e07ad16a31002d2a10de0ac32513a4935c3f22f48ec768a742d1fc
|
||||
SHA512 (postgresql-14.3-US.pdf) = 5069ff8030f8bf780dfa026ee968aeb56f93e2f3625af63f145db83d879dd2a332a0994e184391ed502be9ec8a015ba895f098b4aa64cd56c9466d5cfde6b7fd
|
||||
|
@ -1,16 +0,0 @@
|
||||
# This package uses external repositories for maintaining CI test cases.
|
||||
# Please don't edit this file if possible.
|
||||
|
||||
- hosts: localhost
|
||||
roles:
|
||||
- role: standard-test-beakerlib
|
||||
repositories:
|
||||
- repo: https://src.fedoraproject.org/tests/postgresql.git
|
||||
dest: postgresql
|
||||
# TODO: minimize: https://pagure.io/standard-test-roles/issue/294
|
||||
fmf_filter: "tier: 1"
|
||||
# TODO: minimize: https://pagure.io/standard-test-roles/issue/294
|
||||
tags:
|
||||
- classic
|
||||
- container
|
||||
- atomic
|
Loading…
Reference in New Issue
Block a user