difos/toolchain/glibc/common.mk
Konstantin Demin 8a40ccac37 toolchain: glibc: Update glibc 2.41 to recent HEAD
9f48a8abb2b2 Remove advisories from release branch
0a7c7a3e283a NEWS: start new section
bdccbfbc52d3 math: Fix log10p1f internal table value (BZ 32626)
d85a7719536f math: Fix sinhf for some inputs (BZ 32627)
cb7f20653724 nptl: Correct stack size attribute when stack grows up [BZ #32574]
cf88351b685d math: Fix tanf for some inputs (BZ 32630)
69fda28279b4 assert: Add test for CVE-2025-0395
1e0e33e1b19a Fix tst-aarch64-pkey to handle ENOSPC as not supported
a900dbaf70f0 x86 (__HAVE_FLOAT128): Defined to 0 for Intel SYCL compiler [BZ #32723]
2cb04444b934 math: Fix `unknown type name '__float128'` for clang 3.4 to 3.8.1 (bug 32694)
07288c7445bb math: Add optimization barrier to ensure a1 + u.d is not reused [BZ #30664]
30992cb5e9d7 RISC-V: Fix IFUNC resolver cannot access gp pointer
7c9a0868077c Aarch64: Improve codegen in SVE asinh
94859e86807a Aarch64: Improve codegen in SVE exp and users, and update expf_inline
f3d9c116cb0a AArch64: Improve codegen for SVE erfcf
2025e27a817f AArch64: Improve codegen for SVE pow
7774a9d07ab2 AArch64: Improve codegen for SVE powf
6d1f97bb0667 aarch64: Add configure checks for GCS support
fda5730898bc aarch64: Add tests for Guarded Control Stack
61ba3cdfa9e9 aarch64: Add GCS tests for transitive dependencies
8d98ee8d70cd aarch64: Add GCS tests for dlopen
009c5a2dca7c aarch64: Add GCS test with signal handler
e0bc5f64eaf7 math: Improve layout of exp/exp10 data
c47c3890f15e AArch64: Add SVE memset
89be78704ed8 AArch64: Use prefer_sve_ifuncs for SVE memset
56609f8df1fa Pass -Wl,--no-error-execstack for tests where -Wl,-z,execstack is used [PR32717]
746ef8e93964 static-pie: Skip the empty PT_LOAD segment at offset 0 [BZ #32763]
fd202462c5f8 elf: Check if __attribute__ ((aligned (65536))) is supported
91f8cff2c48f configure: Fix spelling of -Wl,--no-error-execstack option
1a3083b99992 posix: Move environ helper variables next to environ definition (bug 32541)
66fc3bd75871 math: Remove an extra semicolon in math function declarations
33bfd9020fda Linux: Remove attribute access from sched_getattr (bug 32781)
e22c132484ea nptl: clear the whole rseq area before registration
98c712855d66 nptl: PTHREAD_COND_INITIALIZER compatibility with pre-2.41 versions (bug 32786)
ce9b765522f0 nptl: Check if thread is already terminated in sigcancel_handler (BZ 32782)
6a3a4a5e583a x86_64: Add tanh with FMA
7e72fa7577f2 x86_64: Add sinh with FMA
bcd4cf9d5ff2 x86_64: Add atanh with FMA
a282e2c0aee8 x86: Skip XSAVE state size reset if ISA level requires XSAVE
80cd6566496e x86: Use separate variable for TLSDESC XSAVE/XSAVEC state size (bug 32810)
200d20123cb8 x86: Link tst-gnu2-tls2-x86-noxsave{,c,xsavec} with libpthread
b861755a84ee elf: Extend glibc.rtld.execstack tunable to force executable stack (BZ 32653)
d6d56af6e78c elf: Fix arm-linux-gnueabihf build break from b861755a84
f68b407d4bc5 x86: Optimize xstate size calculation
aca31d27123d x86: Add ARL/PTL/CWF model detection support
a53e76465791 x86: Handle unknown Intel processor with default tuning
046b33800c3e x86: Detect Intel Diamond Rapids
5cb575ca9a3d elf: tst-audit10: split AVX512F code into dedicated functions [BZ #32882]
5b4c4617016d nptl: Fix pthread_getattr_np when modules with execstack are allowed (BZ 32897)
5cf17ebc659c hurd: Fix tst-stack2 test build on Hurd
dab44a3b2bb5 elf: Keep using minimal malloc after early DTV resize (bug 32412)
2ca34d76270d support: Use const char * argument in support_capture_subprogram_self_sgid
624285af3bfc elf: Test case for bug 32976 (CVE-2025-4802)
899dd3ab2fc2 x86_64: Fix typo in ifunc-impl-list.c.
515d4166f4db elf: Fix subprocess status handling for tst-dlopen-sgid (bug 32987)
d952c6efaa87 sparc: Fix argument passing to __libc_start_main (BZ 32981)
84bdbf8a6f2f ppc64le: Revert "powerpc: Optimized strncmp for power10" (CVE-2025-5745)
55cdcadf7306 ppc64le: Revert "powerpc: Fix performance issues of strcmp power10" (CVE-2025-5702)
b48d7ab03643 ppc64le: Revert "powerpc : Add optimized memchr for POWER10" (Bug 33059)
0c76c951620f ppc64le: Revert "powerpc: Optimized strcmp for power10" (CVE-2025-5702)
61e461ed0c16 sparc: Fix sparc32 Fix argument passing to __libc_start_main (BZ 32981)
11e634ccf32e support: Pick group in support_capture_subprogram_self_sgid if UID == 0
6e489c17f827 Fix error reporting (false negatives) in SGID tests

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19293
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-07-12 23:38:18 +02:00

101 lines
3.2 KiB
Makefile

#
# Copyright (C) 2006-2020 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=glibc
PKG_VERSION:=2.41
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_VERSION:=6e489c17f827317bcf8544efefa65f13b5a079dc
PKG_MIRROR_HASH:=37527af9a3cbc41201b8a8bead3e6ec973e922e11639ff1762de50c46cf4913e
PKG_SOURCE_URL:=https://sourceware.org/git/glibc.git
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)
CUR_BUILD_DIR:=$(HOST_BUILD_DIR)-$(VARIANT)
PATCH_DIR:=$(PATH_PREFIX)/patches
include $(INCLUDE_DIR)/toolchain-build.mk
HOST_STAMP_PREPARED:=$(HOST_BUILD_DIR)/.prepared
HOST_STAMP_CONFIGURED:=$(CUR_BUILD_DIR)/.configured
HOST_STAMP_BUILT:=$(CUR_BUILD_DIR)/.built
HOST_STAMP_INSTALLED:=$(TOOLCHAIN_DIR)/stamp/.glibc_$(VARIANT)_installed
ifeq ($(ARCH),mips64)
ifdef CONFIG_MIPS64_ABI_N64
TARGET_CFLAGS += -mabi=64
endif
ifdef CONFIG_MIPS64_ABI_N32
TARGET_CFLAGS += -mabi=n32
endif
ifdef CONFIG_MIPS64_ABI_O32
TARGET_CFLAGS += -mabi=32
endif
endif
# -Os miscompiles w. 2.24 gcc5/gcc6
# only -O2 tested by upstream changeset
# "Optimize i386 syscall inlining for GCC 5"
GLIBC_CONFIGURE:= \
unset LD_LIBRARY_PATH; \
BUILD_CC="$(HOSTCC)" \
$(TARGET_CONFIGURE_OPTS) \
CFLAGS="-O2 $(filter-out -Os,$(call qstrip,$(TARGET_CFLAGS)))" \
libc_cv_slibdir="/lib" \
use_ldconfig=no \
$(HOST_BUILD_DIR)/$(GLIBC_PATH)configure \
--prefix= \
--build=$(GNU_HOST_NAME) \
--host=$(REAL_GNU_TARGET_NAME) \
--with-headers=$(TOOLCHAIN_DIR)/include \
--disable-profile \
--disable-werror \
--without-gd \
--without-cvs \
--enable-add-ons \
--$(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=6.6.0
export libc_cv_ssp=no
export libc_cv_ssp_strong=no
export ac_cv_header_cpuid_h=yes
export HOST_CFLAGS := $(HOST_CFLAGS) -idirafter $(CURDIR)/$(PATH_PREFIX)/include
define Host/SetToolchainInfo
$(SED) 's,^\(LIBC_TYPE\)=.*,\1=$(PKG_NAME),' $(TOOLCHAIN_DIR)/info.mk
$(SED) 's,^\(LIBC_URL\)=.*,\1=http://www.gnu.org/software/libc/,' $(TOOLCHAIN_DIR)/info.mk
$(SED) 's,^\(LIBC_VERSION\)=.*,\1=$(PKG_VERSION),' $(TOOLCHAIN_DIR)/info.mk
$(SED) 's,^\(LIBC_SO_VERSION\)=.*,\1=$(PKG_VERSION),' $(TOOLCHAIN_DIR)/info.mk
endef
define Host/Configure
mkdir -p $(CUR_BUILD_DIR)
( cd $(CUR_BUILD_DIR); rm -f config.cache; \
$(GLIBC_CONFIGURE) \
);
endef
define Host/Prepare
$(call Host/Prepare/Default)
ln -snf $(PKG_SOURCE_SUBDIR) $(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME)
endef
define Host/Clean
rm -rf $(CUR_BUILD_DIR)* \
$(BUILD_DIR_TOOLCHAIN)/$(LIBC)-dev \
$(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME)
endef