postgresql: update to version 17.2
authorDaniel Golle <daniel@makrotopia.org>
Mon, 10 Feb 2025 05:14:13 +0000 (05:14 +0000)
committerDaniel Golle <daniel@makrotopia.org>
Mon, 10 Feb 2025 11:47:32 +0000 (11:47 +0000)
Update PostgreSQL to new (major) version 17.2
See https://www.postgresql.org/docs/release/17.2/ for more details.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
libs/postgresql/Makefile
libs/postgresql/patches/200-ranlib.patch [deleted file]
libs/postgresql/patches/300-fix-includes.patch
libs/postgresql/patches/700-no-arm-crc-march-change.patch
libs/postgresql/patches/900-pg_ctl-setuid.patch

index f0cd1b2c75100eca368c208859b2d35e7f0986c8..51dca9ad55922cd0258a796bbc4001f4ecd8c0f8 100644 (file)
@@ -5,7 +5,7 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=postgresql
-PKG_VERSION:=15.6
+PKG_VERSION:=17.2
 PKG_RELEASE:=1
 PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
 PKG_LICENSE:=PostgreSQL
@@ -17,7 +17,7 @@ PKG_SOURCE_URL:=\
        http://ftp.postgresql.org/pub/source/v$(PKG_VERSION) \
        ftp://ftp.postgresql.org/pub/source/v$(PKG_VERSION)
 
-PKG_HASH:=8455146ed9c69c93a57de954aead0302cafad035c2b242175d6aa1e17ebcb2fb
+PKG_HASH:=82ef27c0af3751695d7f64e2d963583005fbb6a0c3df63d0e4b42211d7021164
 
 PKG_BUILD_FLAGS:=no-mips16
 PKG_FIXUP:=autoreconf
@@ -137,6 +137,7 @@ HOST_CONFIGURE_ARGS += \
                        --disable-rpath \
                        --without-bonjour \
                        --without-gssapi \
+                       --without-icu \
                        --without-ldap \
                        --without-openssl \
                        --without-pam \
@@ -153,6 +154,7 @@ CONFIGURE_ARGS += \
                        --disable-rpath \
                        --without-bonjour \
                        --without-gssapi \
+                       --without-icu \
                        --without-ldap \
                        --without-openssl \
                        --without-pam \
diff --git a/libs/postgresql/patches/200-ranlib.patch b/libs/postgresql/patches/200-ranlib.patch
deleted file mode 100644 (file)
index d4184a3..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/port/Makefile
-+++ b/src/port/Makefile
-@@ -83,6 +83,7 @@ uninstall:
- libpgport.a: $(OBJS)
-       rm -f $@
-       $(AR) $(AROPT) $@ $^
-+      $(RANLIB) libpgport.a
- # getaddrinfo.o and getaddrinfo_shlib.o need PTHREAD_CFLAGS (but getaddrinfo_srv.o does not)
- getaddrinfo.o: CFLAGS+=$(PTHREAD_CFLAGS)
index 3611c8e00a3dc88605200ee9a5ab75921c4f27a6..4109f2d7690ed96cde356a940e6289b1b149b4fa 100644 (file)
@@ -1,13 +1,15 @@
 --- a/src/bin/pg_ctl/pg_ctl.c
 +++ b/src/bin/pg_ctl/pg_ctl.c
-@@ -12,9 +12,11 @@
+@@ -12,11 +12,13 @@
  #include "postgres_fe.h"
  
  #include <fcntl.h>
 +#include <pwd.h>
  #include <signal.h>
  #include <time.h>
+ #include <sys/resource.h>
  #include <sys/stat.h>
+ #include <sys/time.h>
 +#include <sys/types.h>
  #include <sys/wait.h>
  #include <unistd.h>
index 33637f5d5920da0d61c441b26cbd6fec25452996..cc0ad7f3569eb608ad20bc54458c8232d73ac901 100644 (file)
@@ -1,15 +1,17 @@
 --- a/configure.ac
 +++ b/configure.ac
-@@ -2239,9 +2239,9 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [
+@@ -2137,10 +2137,10 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [
+ # First check if __crc32c* intrinsics can be used with the default compiler
  # flags. If not, check if adding -march=armv8-a+crc flag helps.
- # CFLAGS_ARMV8_CRC32C is set if the extra flag is required.
- PGAC_ARMV8_CRC32C_INTRINSICS([])
+ # CFLAGS_CRC is set if the extra flag is required.
+-PGAC_ARMV8_CRC32C_INTRINSICS([])
 -if test x"$pgac_armv8_crc32c_intrinsics" != x"yes"; then
 -  PGAC_ARMV8_CRC32C_INTRINSICS([-march=armv8-a+crc])
 -fi
++#PGAC_ARMV8_CRC32C_INTRINSICS([])
 +#if test x"$pgac_armv8_crc32c_intrinsics" != x"yes"; then
 +#  PGAC_ARMV8_CRC32C_INTRINSICS([-march=armv8-a+crc])
 +#fi
- AC_SUBST(CFLAGS_ARMV8_CRC32C)
  
- # Select CRC-32C implementation.
+ # Check for LoongArch CRC intrinsics to do CRC calculations.
+ #
index 64d558fcc03cf6971a7f2aa4a64a3917acdf7acc..ea21639ff8026e43234777f811f10055de5aceae 100644 (file)
@@ -1,6 +1,6 @@
 --- a/src/bin/pg_ctl/pg_ctl.c
 +++ b/src/bin/pg_ctl/pg_ctl.c
-@@ -96,6 +96,7 @@ static char *event_source = NULL;
+@@ -91,6 +91,7 @@ static char *event_source = NULL;
  static char *register_servicename = "PostgreSQL";     /* FIXME: + version ID? */
  static char *register_username = NULL;
  static char *register_password = NULL;
@@ -8,7 +8,7 @@
  static char *argv0 = NULL;
  static bool allow_core_files = false;
  static time_t start_time;
-@@ -2086,6 +2087,9 @@ do_help(void)
+@@ -1988,6 +1989,9 @@ do_help(void)
  #endif
        printf(_("  -s, --silent           only print errors, no informational messages\n"));
        printf(_("  -t, --timeout=SECS     seconds to wait when using -w option\n"));
@@ -18,7 +18,7 @@
        printf(_("  -V, --version          output version information, then exit\n"));
        printf(_("  -w, --wait             wait until operation completes (default)\n"));
        printf(_("  -W, --no-wait          do not wait until operation completes\n"));
-@@ -2298,6 +2302,7 @@ main(int argc, char **argv)
+@@ -2200,6 +2204,7 @@ main(int argc, char **argv)
                {"options", required_argument, NULL, 'o'},
                {"silent", no_argument, NULL, 's'},
                {"timeout", required_argument, NULL, 't'},
@@ -26,7 +26,7 @@
                {"core-files", no_argument, NULL, 'c'},
                {"wait", no_argument, NULL, 'w'},
                {"no-wait", no_argument, NULL, 'W'},
-@@ -2338,20 +2343,6 @@ main(int argc, char **argv)
+@@ -2240,20 +2245,6 @@ main(int argc, char **argv)
                }
        }
  
  
        env_wait = getenv("PGCTLTIMEOUT");
        if (env_wait != NULL)
-@@ -2437,11 +2428,15 @@ main(int argc, char **argv)
-                                       wait_seconds_arg = true;
-                                       break;
-                               case 'U':
+@@ -2328,11 +2319,15 @@ main(int argc, char **argv)
+                               wait_seconds_arg = true;
+                               break;
+                       case 'U':
 +#if defined(WIN32) || defined(__CYGWIN__)
-                                       if (strchr(optarg, '\\'))
-                                               register_username = pg_strdup(optarg);
-                                       else
-                                               /* Prepend .\ for local accounts */
-                                               register_username = psprintf(".\\%s", optarg);
+                               if (strchr(optarg, '\\'))
+                                       register_username = pg_strdup(optarg);
+                               else
+                                       /* Prepend .\ for local accounts */
+                                       register_username = psprintf(".\\%s", optarg);
 +#else
 +                                      username = pg_strdup(optarg);
 +#endif
-                                       break;
-                               case 'w':
-                                       do_wait = true;
-@@ -2523,6 +2518,41 @@ main(int argc, char **argv)
+                               break;
+                       case 'w':
+                               do_wait = true;
+@@ -2413,6 +2408,41 @@ main(int argc, char **argv)
                exit(1);
        }