download.lst | 4 external/postgresql/0001-Assume-that-stdbool.h-conforms-to-the-C-standard.patch.1 | 429 ---------- external/postgresql/UnpackedTarball_postgresql.mk | 1 3 files changed, 2 insertions(+), 432 deletions(-)
New commits: commit 83b418744478b7e864f2262243836781b6c3b8bb Author: Xisco Fauli <xiscofa...@libreoffice.org> AuthorDate: Thu Feb 13 18:21:26 2025 +0100 Commit: Michael Weghorn <m.wegh...@posteo.de> CommitDate: Thu Feb 20 15:48:23 2025 +0100 postgresql: upgrade to 14.16 * external/postgresql/0001-Assume-that-stdbool.h-conforms-to-the-C-standard.patch.1 has been fixed upstream Downloaded from https://ftp.postgresql.org/pub/source/v14.16/postgresql-14.16.tar.bz2 Change-Id: I48eb460ea141385b3335b11e21e818ffd02a15e0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181644 Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> Tested-by: Jenkins (cherry picked from commit 4f0a9a00f75527166f0fb077614d2538764c2f7b) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181654 Reviewed-by: Hossein <hoss...@libreoffice.org> Tested-by: Michael Weghorn <m.wegh...@posteo.de> Reviewed-by: Christian Lohmaier <lohmaier+libreoff...@googlemail.com> Reviewed-by: Michael Weghorn <m.wegh...@posteo.de> diff --git a/download.lst b/download.lst index 76fa222f66ed..cb838eb6edf7 100644 --- a/download.lst +++ b/download.lst @@ -585,8 +585,8 @@ POPPLER_DATA_TARBALL := poppler-data-0.4.12.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -POSTGRESQL_SHA256SUM := 02e891e314b4e9ee24cbd78028dab7c73f9c1ba3e30835bcbef71fe220401fc5 -POSTGRESQL_TARBALL := postgresql-14.15.tar.bz2 +POSTGRESQL_SHA256SUM := 673c26f15ebb14306ad0ea051d8acfb3915dd342de942f5b502e5354a0ab760c +POSTGRESQL_TARBALL := postgresql-14.16.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts diff --git a/external/postgresql/0001-Assume-that-stdbool.h-conforms-to-the-C-standard.patch.1 b/external/postgresql/0001-Assume-that-stdbool.h-conforms-to-the-C-standard.patch.1 deleted file mode 100644 index 73c6461033cc..000000000000 --- a/external/postgresql/0001-Assume-that-stdbool.h-conforms-to-the-C-standard.patch.1 +++ /dev/null @@ -1,429 +0,0 @@ -From d5fb5a35816df670d329600e44fe22617b578415 Mon Sep 17 00:00:00 2001 -From: Thomas Munro <tmu...@postgresql.org> -Date: Mon, 25 Nov 2024 13:11:28 +1300 -Subject: Assume that <stdbool.h> conforms to the C standard. - -Previously we checked "for <stdbool.h> that conforms to C99" using -autoconf's AC_HEADER_STDBOOL macro. We've required C99 since PostgreSQL -12, so the test was redundant, and under C23 it was broken: autoconf -2.69's implementation doesn't understand C23's new empty header (the -macros it's looking for went away, replaced by language keywords). -Later autoconf versions fixed that, but let's just remove the -anachronistic test. - -HAVE_STDBOOL_H and HAVE__BOOL will no longer be defined, but they -weren't directly tested in core or likely extensions (except in 11, see -below). PG_USE_STDBOOL (or USE_STDBOOL in 11 and 12) is still defined -when sizeof(bool) is 1, which should be true on all modern systems. -Otherwise we define our own bool type and values of size 1, which would -fail to compile under C23 as revealed by the broken test. (We'll -probably clean that dead code up in master, but here we want a minimal -back-patchable change.) - -This came to our attention when GCC 15 recently started using using C23 -by default and failed to compile the replacement code, as reported by -Sam James and build farm animal alligator. - -Back-patch to all supported releases, and then two older versions that -also know about <stdbool.h>, per the recently-out-of-support policy[1]. -12 requires C99 so it's much like the supported releases, but 11 only -assumes C89 so it now uses AC_CHECK_HEADERS instead of the overly picky -AC_HEADER_STDBOOL. (I could find no discussion of which historical -systems had <stdbool.h> but failed the conformance test; if they ever -existed, they surely aren't relevant to that policy's goals.) - -[1] https://wiki.postgresql.org/wiki/Committing_checklist#Policies - -Reported-by: Sam James <s...@gentoo.org> -Reviewed-by: Peter Eisentraut <pe...@eisentraut.org> (master version) -Reviewed-by: Tom Lane <t...@sss.pgh.pa.us> (approach) -Discussion: https://www.postgresql.org/message-id/flat/87o72eo9iu.fsf%40gentoo.org -(cherry picked from commit bc5a4dfcf7390145dc3ba3c1c18c5ce561b778cd) -Conflicts: - configure - meson.build - src/include/pg_config.h.in - src/tools/msvc/Solution.pm ---- - configure | 182 +++++++++---------------------------- - configure.ac | 13 +-- - src/include/c.h | 2 +- - src/include/pg_config.h.in | 6 -- - src/tools/msvc/Solution.pm | 2 - - 5 files changed, 48 insertions(+), 157 deletions(-) - -diff --git a/configure b/configure -index 7e6030e9e1..7a5bdeddbd 100755 ---- a/configure -+++ b/configure -@@ -2085,116 +2085,116 @@ $as_echo "$ac_res" >&6; } - - } # ac_fn_c_check_func - --# ac_fn_c_check_type LINENO TYPE VAR INCLUDES --# ------------------------------------------- --# Tests whether TYPE exists after having included INCLUDES, setting cache --# variable VAR accordingly. --ac_fn_c_check_type () -+# ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES -+# ---------------------------------------------------- -+# Tries to find if the field MEMBER exists in type AGGR, after including -+# INCLUDES, setting cache variable VAR accordingly. -+ac_fn_c_check_member () - { - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack -- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 --$as_echo_n "checking for $2... " >&6; } --if eval \${$3+:} false; then : -+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5 -+$as_echo_n "checking for $2.$3... " >&6; } -+if eval \${$4+:} false; then : - $as_echo_n "(cached) " >&6 - else -- eval "$3=no" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ --$4 -+$5 - int - main () - { --if (sizeof ($2)) -- return 0; -+static $2 ac_aggr; -+if (ac_aggr.$3) -+return 0; - ; - return 0; - } - _ACEOF - if ac_fn_c_try_compile "$LINENO"; then : -+ eval "$4=yes" -+else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ --$4 -+$5 - int - main () - { --if (sizeof (($2))) -- return 0; -+static $2 ac_aggr; -+if (sizeof ac_aggr.$3) -+return 0; - ; - return 0; - } - _ACEOF - if ac_fn_c_try_compile "$LINENO"; then : -- -+ eval "$4=yes" - else -- eval "$3=yes" -+ eval "$4=no" - fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi --eval ac_res=\$$3 -+eval ac_res=\$$4 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 - $as_echo "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - --} # ac_fn_c_check_type -+} # ac_fn_c_check_member - --# ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES --# ---------------------------------------------------- --# Tries to find if the field MEMBER exists in type AGGR, after including --# INCLUDES, setting cache variable VAR accordingly. --ac_fn_c_check_member () -+# ac_fn_c_check_type LINENO TYPE VAR INCLUDES -+# ------------------------------------------- -+# Tests whether TYPE exists after having included INCLUDES, setting cache -+# variable VAR accordingly. -+ac_fn_c_check_type () - { - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack -- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5 --$as_echo_n "checking for $2.$3... " >&6; } --if eval \${$4+:} false; then : -+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -+$as_echo_n "checking for $2... " >&6; } -+if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 - else -+ eval "$3=no" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ --$5 -+$4 - int - main () - { --static $2 ac_aggr; --if (ac_aggr.$3) --return 0; -+if (sizeof ($2)) -+ return 0; - ; - return 0; - } - _ACEOF - if ac_fn_c_try_compile "$LINENO"; then : -- eval "$4=yes" --else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ --$5 -+$4 - int - main () - { --static $2 ac_aggr; --if (sizeof ac_aggr.$3) --return 0; -+if (sizeof (($2))) -+ return 0; - ; - return 0; - } - _ACEOF - if ac_fn_c_try_compile "$LINENO"; then : -- eval "$4=yes" -+ - else -- eval "$4=no" -+ eval "$3=yes" - fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi --eval ac_res=\$$4 -+eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 - $as_echo "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - --} # ac_fn_c_check_member -+} # ac_fn_c_check_type - - # ac_fn_c_compute_int LINENO EXPR VAR INCLUDES - # -------------------------------------------- -@@ -13746,100 +13746,6 @@ fi - ## Header files - ## - --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdbool.h that conforms to C99" >&5 --$as_echo_n "checking for stdbool.h that conforms to C99... " >&6; } --if ${ac_cv_header_stdbool_h+:} false; then : -- $as_echo_n "(cached) " >&6 --else -- cat confdefs.h - <<_ACEOF >conftest.$ac_ext --/* end confdefs.h. */ -- -- #include <stdbool.h> -- #ifndef bool -- "error: bool is not defined" -- #endif -- #ifndef false -- "error: false is not defined" -- #endif -- #if false -- "error: false is not 0" -- #endif -- #ifndef true -- "error: true is not defined" -- #endif -- #if true != 1 -- "error: true is not 1" -- #endif -- #ifndef __bool_true_false_are_defined -- "error: __bool_true_false_are_defined is not defined" -- #endif -- -- struct s { _Bool s: 1; _Bool t; } s; -- -- char a[true == 1 ? 1 : -1]; -- char b[false == 0 ? 1 : -1]; -- char c[__bool_true_false_are_defined == 1 ? 1 : -1]; -- char d[(bool) 0.5 == true ? 1 : -1]; -- /* See body of main program for 'e'. */ -- char f[(_Bool) 0.0 == false ? 1 : -1]; -- char g[true]; -- char h[sizeof (_Bool)]; -- char i[sizeof s.t]; -- enum { j = false, k = true, l = false * true, m = true * 256 }; -- /* The following fails for -- HP aC++/ANSI C B3910B A.05.55 [Dec 04 2003]. */ -- _Bool n[m]; -- char o[sizeof n == m * sizeof n[0] ? 1 : -1]; -- char p[-1 - (_Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; -- /* Catch a bug in an HP-UX C compiler. See -- http://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html -- http://lists.gnu.org/archive/html/bug-coreutils/2005-11/msg00161.html -- */ -- _Bool q = true; -- _Bool *pq = &q; -- --int --main () --{ -- -- bool e = &s; -- *pq |= q; -- *pq |= ! q; -- /* Refer to every declared value, to avoid compiler optimizations. */ -- return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l -- + !m + !n + !o + !p + !q + !pq); -- -- ; -- return 0; --} --_ACEOF --if ac_fn_c_try_compile "$LINENO"; then : -- ac_cv_header_stdbool_h=yes --else -- ac_cv_header_stdbool_h=no --fi --rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext --fi --{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdbool_h" >&5 --$as_echo "$ac_cv_header_stdbool_h" >&6; } -- ac_fn_c_check_type "$LINENO" "_Bool" "ac_cv_type__Bool" "$ac_includes_default" --if test "x$ac_cv_type__Bool" = xyes; then : -- --cat >>confdefs.h <<_ACEOF --#define HAVE__BOOL 1 --_ACEOF -- -- --fi -- -- --if test $ac_cv_header_stdbool_h = yes; then -- --$as_echo "#define HAVE_STDBOOL_H 1" >>confdefs.h -- --fi -- -- - for ac_header in atomic.h copyfile.h execinfo.h getopt.h ifaddrs.h langinfo.h mbarrier.h poll.h sys/epoll.h sys/event.h sys/ipc.h sys/personality.h sys/prctl.h sys/procctl.h sys/pstat.h sys/resource.h sys/select.h sys/sem.h sys/shm.h sys/signalfd.h sys/sockio.h sys/tas.h sys/uio.h sys/un.h termios.h ucred.h wctype.h - do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -@@ -15711,9 +15617,7 @@ $as_echo_n "checking size of bool... " >&6; } - if ${ac_cv_sizeof_bool+:} false; then : - $as_echo_n "(cached) " >&6 - else -- if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (bool))" "ac_cv_sizeof_bool" "#ifdef HAVE_STDBOOL_H --#include <stdbool.h> --#endif -+ if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (bool))" "ac_cv_sizeof_bool" "#include <stdbool.h> - "; then : - - else -@@ -15739,7 +15643,7 @@ _ACEOF - - - --if test "$ac_cv_header_stdbool_h" = yes -a "$ac_cv_sizeof_bool" = 1; then -+if test "$ac_cv_sizeof_bool" = 1; then - - $as_echo "#define PG_USE_STDBOOL 1" >>confdefs.h - -diff --git a/configure.ac b/configure.ac -index 7a75d6e37c..5484c910f6 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1418,8 +1418,6 @@ AC_SUBST(UUID_LIBS) - ## Header files - ## - --AC_HEADER_STDBOOL -- - AC_CHECK_HEADERS(m4_normalize([ - atomic.h - copyfile.h -@@ -1734,14 +1732,11 @@ if test "$ac_cv_sizeof_off_t" -lt 8 -a "$segsize" != "1"; then - AC_MSG_ERROR([Large file support is not enabled. Segment size cannot be larger than 1GB.]) - fi - --AC_CHECK_SIZEOF([bool], [], --[#ifdef HAVE_STDBOOL_H --#include <stdbool.h> --#endif]) -+AC_CHECK_SIZEOF([bool], [], [#include <stdbool.h>]) - --dnl We use <stdbool.h> if we have it and it declares type bool as having --dnl size 1. Otherwise, c.h will fall back to declaring bool as unsigned char. --if test "$ac_cv_header_stdbool_h" = yes -a "$ac_cv_sizeof_bool" = 1; then -+dnl We use <stdbool.h> if bool has size 1 after including it. Otherwise, c.h -+dnl will fall back to declaring bool as unsigned char. -+if test "$ac_cv_sizeof_bool" = 1; then - AC_DEFINE([PG_USE_STDBOOL], 1, - [Define to 1 to use <stdbool.h> to define type bool.]) - fi -diff --git a/src/include/c.h b/src/include/c.h -index dd2e3b0f3e..cc19c23fb6 100644 ---- a/src/include/c.h -+++ b/src/include/c.h -@@ -398,7 +398,7 @@ typedef void (*pg_funcptr_t) (void); - * bool - * Boolean value, either true or false. - * -- * We use stdbool.h if available and its bool has size 1. That's useful for -+ * We use stdbool.h if bool has size 1 after including it. That's useful for - * better compiler and debugger output and for compatibility with third-party - * libraries. But PostgreSQL currently cannot deal with bool of other sizes; - * there are static assertions around the code to prevent that. -diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in -index 99e3731813..d9ef9a41bf 100644 ---- a/src/include/pg_config.h.in -+++ b/src/include/pg_config.h.in -@@ -517,9 +517,6 @@ - /* Define to 1 if you have the `SSL_CTX_set_num_tickets' function. */ - #undef HAVE_SSL_CTX_SET_NUM_TICKETS - --/* Define to 1 if stdbool.h conforms to C99. */ --#undef HAVE_STDBOOL_H -- - /* Define to 1 if you have the <stdint.h> header file. */ - #undef HAVE_STDINT_H - -@@ -730,9 +727,6 @@ - /* Define to 1 if the assembler supports X86_64's POPCNTQ instruction. */ - #undef HAVE_X86_64_POPCNTQ - --/* Define to 1 if the system has the type `_Bool'. */ --#undef HAVE__BOOL -- - /* Define to 1 if your compiler understands __builtin_bswap16. */ - #undef HAVE__BUILTIN_BSWAP16 - -diff --git a/src/tools/msvc/Solution.pm b/src/tools/msvc/Solution.pm -index 07cc7b7ba2..f0ce2ac804 100644 ---- a/src/tools/msvc/Solution.pm -+++ b/src/tools/msvc/Solution.pm -@@ -365,7 +365,6 @@ sub GenerateFiles - HAVE_SPINLOCKS => 1, - HAVE_SSL_CTX_SET_NUM_TICKETS => undef, - HAVE_SRANDOM => undef, -- HAVE_STDBOOL_H => 1, - HAVE_STDINT_H => 1, - HAVE_STDLIB_H => 1, - HAVE_STRCHRNUL => undef, -@@ -436,7 +435,6 @@ sub GenerateFiles - HAVE_X509_GET_SIGNATURE_NID => 1, - HAVE_X509_GET_SIGNATURE_INFO => undef, - HAVE_X86_64_POPCNTQ => undef, -- HAVE__BOOL => undef, - HAVE__BUILTIN_BSWAP16 => undef, - HAVE__BUILTIN_BSWAP32 => undef, - HAVE__BUILTIN_BSWAP64 => undef, --- -2.47.0 - diff --git a/external/postgresql/UnpackedTarball_postgresql.mk b/external/postgresql/UnpackedTarball_postgresql.mk index 44528b78d26f..11fb603ef34f 100644 --- a/external/postgresql/UnpackedTarball_postgresql.mk +++ b/external/postgresql/UnpackedTarball_postgresql.mk @@ -17,7 +17,6 @@ $(eval $(call gb_UnpackedTarball_add_patches,postgresql, \ external/postgresql/windows.patch.0 \ external/postgresql/postgresql.exit.patch.0 \ external/postgresql/postgres-msvc-build.patch.1 \ - external/postgresql/0001-Assume-that-stdbool.h-conforms-to-the-C-standard.patch.1 \ $(if $(filter WNT_AARCH64,$(OS)_$(CPUNAME)), external/postgresql/arm64.patch.1) \ ))