###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2021 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 2.28
+VER = 2.39
THISAPP = glibc-$(VER)
DL_FILE = $(THISAPP).tar.xz
--host=$(CROSSTARGET) \
--build=$(BUILDTARGET) \
--prefix=$(TOOLS_DIR) \
- --with-headers=$(TOOLS_DIR)/include \
- libc_cv_forced_unwind=yes \
- libc_cv_c_cleanup=yes
+ --with-headers=$(TOOLS_DIR)/include
endif
-# Enable some extra optimization for the glibc code
-CFLAGS = -O3 -DNDEBUG -fasynchronous-unwind-tables -fPIC -DPIC
-
-ifeq "$(BUILD_ARCH)" "armv7hl"
- CFLAGS += -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard
-endif
-
-ifeq "$(BUILD_ARCH)" "i586"
- CFLAGS += -march=i586 -mtune=generic -mindirect-branch=thunk -mfunction-return=thunk -mno-tls-direct-seg-refs
-endif
-
-ifeq "$(BUILD_ARCH)" "x86_64"
- CFLAGS += -mindirect-branch=thunk -mfunction-return=thunk
-endif
-
-# Disable hardware FP for armv5tel
-ifeq "$(BUILD_ARCH)" "armv5tel"
- EXTRA_CONFIG += \
- --without-fp
+ifeq "$(BUILD_ARCH)" "aarch64"
+ CFLAGS += -Wno-error=maybe-uninitialized
endif
# Add some general configuration flags
EXTRA_CONFIG += \
- --enable-obsolete-rpc \
--disable-profile \
- --enable-kernel=3.2 \
+ --enable-kernel=5.4.0 \
--enable-add-ons \
--without-selinux \
--enable-experimental-malloc \
--enable-bind-now \
- --enable-obsolete-rpc \
- --enable-obsolete-nsl \
- --disable-nss-crypt
+ --enable-fortify-source \
+ --disable-crypt \
+ --disable-build-nscd \
+ --disable-nscd
+
+ifeq "$(BUILD_ARCH)" "x86_64"
+ EXTRA_CONFIG += --enable-cet
+endif
+
+ifeq "$(BUILD_ARCH)" "aarch64"
+ EXTRA_CONFIG += --enable-memory-tagging
+endif
###############################################################################
# Top-level Rules
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = c81d2388896379997bc359d4f2084239
+$(DL_FILE)_BLAKE2 = 9d98459a2d58401e07c081e0d841935b23998da75a7eb5a7ebd23a1f9ebab99dee623fe166397c1b6c926960c570f62dbca5cb3b5ce84a918adff6b7a15e16bb
install : $(TARGET)
download :$(patsubst %,$(DIR_DL)/%,$(objects))
-md5 : $(subst %,%_MD5,$(objects))
+b2 : $(subst %,%_BLAKE2,$(objects))
###############################################################################
-# Downloading, checking, md5sum
+# Downloading, checking, b2sum
###############################################################################
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
$(patsubst %,$(DIR_DL)/%,$(objects)) :
@$(LOAD)
-$(subst %,%_MD5,$(objects)) :
- @$(MD5)
+$(subst %,%_BLAKE2,$(objects)) :
+ @$(B2SUM)
###############################################################################
# Installation Details
cd $(DIR_APP) && sed -i 's|libs -o|libs -L/usr/lib64 -Wl,-dynamic-linker=/lib64/ld-linux-x86-64.so.2 -o|' \
scripts/test-installation.pl
endif
-
- ifeq "$(BUILD_ARCH)" "i586"
- cd $(DIR_APP) && sed -i 's|libs -o|libs -L/usr/lib -Wl,-dynamic-linker=/lib/ld-linux.so.2 -o|' \
- scripts/test-installation.pl
- endif
-
- ifeq "$(BUILD_ARCH)" "armv5tel"
- cd $(DIR_APP) && sed -i 's|libs -o|libs -L/usr/lib -Wl,-dynamic-linker=/lib/ld-linux.so.3 -o|' \
- scripts/test-installation.pl
- endif
endif
cd $(DIR_SRC)/glibc-build && \
ifneq "$(TOOLCHAIN)" "1"
# Creating the locales
mkdir -p /usr/lib/locale
- cd $(DIR_SRC)/glibc-build && make localedata/install-locales
+ cd $(DIR_SRC)/glibc-build && make localedata/install-locales $(MAKETUNING)
# Timezone data will be shipped by tzdata.
rm -rfv /usr/share/zoneinfo