toolchain: glibc: update to glibc 2.38
authorKazuki H <kazukih0205@gmail.com>
Fri, 22 Dec 2023 14:58:16 +0000 (23:58 +0900)
committerChristian Marangi <ansuelsmth@gmail.com>
Mon, 29 Apr 2024 20:55:02 +0000 (22:55 +0200)
This updates glibc to version 2.38.

Add --enable-crypt since the crypt function got disabled in 2.38, but we
still need it.
Also add the newly introduced --enable-fortify-source flag and hook it up
to the build system.

Switch to .zst archive while at it.

Signed-off-by: Kazuki H <kazukih0205@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/14259
[ switch to .zst and fix mirror HASH ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
toolchain/glibc/common.mk
toolchain/glibc/patches/050-Revert-Disallow-use-of-DES-encryption-functions-in-n.patch
toolchain/glibc/patches/200-add-dl-search-paths.patch

index 65e9e0c3240659c0ae08041cbdea2c856e1eefe1..79a7a0131df34fb3d78cdb8c8db2160ca8ccce2d 100644 (file)
@@ -7,15 +7,15 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=glibc
-PKG_VERSION:=2.37
+PKG_VERSION:=2.38
 PKG_RELEASE:=1
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
-PKG_SOURCE_VERSION:=eee7525d35ec16bbe81435e41079ab72519d825c
-PKG_MIRROR_HASH:=fad5a67d9622b75bce5e3e8c91b07a6df0bf8b21cb001a6d06019a6ce4cff31f
+PKG_SOURCE_VERSION:=cfe121910013a46e2477562282c56ae8062089aa
+PKG_MIRROR_HASH:=99b9beb283d644caacea12fe87dd7f0a0141ff26349ee500a78047aba3f5be5c
 PKG_SOURCE_URL:=https://sourceware.org/git/glibc.git
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.xz
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.zst
 PKG_CPE_ID:=cpe:/a:gnu:glibc
 
 HOST_BUILD_DIR:=$(BUILD_DIR_TOOLCHAIN)/$(PKG_SOURCE_SUBDIR)
@@ -61,11 +61,14 @@ GLIBC_CONFIGURE:= \
                --without-gd \
                --without-cvs \
                --enable-add-ons \
+               --enable-crypt \
                --$(if $(CONFIG_SOFT_FLOAT),without,with)-fp \
                  $(if $(CONFIG_PKG_CC_STACKPROTECTOR_REGULAR),--enable-stack-protector=yes) \
                  $(if $(CONFIG_PKG_CC_STACKPROTECTOR_STRONG),--enable-stack-protector=strong) \
                  $(if $(CONFIG_PKG_CC_STACKPROTECTOR_ALL),--enable-stack-protector=all) \
                  $(if $(CONFIG_PKG_RELRO_FULL),--enable-bind-now) \
+                 $(if $(CONFIG_PKG_FORTIFY_SOURCE_1),--enable-fortify-source=1) \
+                 $(if $(CONFIG_PKG_FORTIFY_SOURCE_2),--enable-fortify-source=2) \
                --enable-kernel=5.15.0
 
 export libc_cv_ssp=no
index c9db703938a26fe1dc7894117a7ef293c010a9ce..771cb4c3746438d69bb2dd068f3f3bdcc7d49174 100644 (file)
@@ -82,7 +82,7 @@ provides them.
  int totfails = 0;
  
  int main (int argc, char *argv[]);
-@@ -119,13 +103,3 @@ put8 (char *cp)
+@@ -123,13 +107,3 @@ put8 (char *cp)
          printf("%02x", t);
        }
  }
@@ -469,7 +469,7 @@ provides them.
  * Encode Binary Data::          Encoding and Decoding of Binary Data.
  * Argz and Envz Vectors::       Null-separated string vectors.
  @end menu
-@@ -2423,73 +2423,73 @@ functionality under a different name, su
+@@ -2512,73 +2512,73 @@ functionality under a different name, su
  systems it may be in @file{strings.h} instead.
  @end deftypefun
  
@@ -627,7 +627,7 @@ provides them.
     range [FROM - N + 1, FROM - 1].  If N is odd the first byte in FROM
 --- a/stdlib/stdlib.h
 +++ b/stdlib/stdlib.h
-@@ -984,6 +984,12 @@ extern int getsubopt (char **__restrict
+@@ -1103,6 +1103,12 @@ extern int getsubopt (char **__restrict
  #endif
  
  
index e927d86f2350b8b36d6299d2b91b7c2fc14cf7e4..15106541ca51fc55399257ddee8a08f12f38e66f 100644 (file)
@@ -2,7 +2,7 @@ add /usr/lib to default search path for the dynamic linker
 
 --- a/Makeconfig
 +++ b/Makeconfig
-@@ -631,6 +631,9 @@ else
+@@ -632,6 +632,9 @@ else
  default-rpath = $(libdir)
  endif