Release e-mail:
https://inbox.sourceware.org/libc-alpha/5906001.DvuYhMxLoT@pinacolada/
Major new features:
* The following ISO C23 function families (introduced in TS
18661-4:2015) are now supported in <math.h>. Each family includes
functions for float, double, long double, _FloatN and _FloatNx, and a
type-generic macro in <tgmath.h>.
- Power and absolute-value functions: compoundn, pown, powr, rootn,
rsqrt.
* On Linux, the pthread_gettid_np function has been added.
* The ISO C2Y family of unsigned abs functions, i.e. uabs, ulabs,
ullabs, and uimaxabs, is now supported.
* On Linux, the <termios.h> interface now supports arbitrary baud rates;
speed_t is redefined to simply be the baud rate specified as an
unsigned int, which matches the kernel interface.
* The thread-local cache in malloc (tcache) now supports caching of
large blocks. This feature can be enabled by setting the tunable
glibc.malloc.tcache_max to a larger value (max 4194304). Tcache is
also significantly faster for small sizes.
* A new configure option, "--enable-sframe", can be used to enable
SFrame support of the GNU C Libraries. SFrame is a new stack trace
information format which can be used by backtrace. It requires
binutils with a minimum version of 2.45.
* Support for lightweight stack guard pages via madvise and the
MADV_GUARD_INSTALL flag has been added to pthread_create.
* Additional optimized and correctly rounded mathematical functions have
been imported from the CORE-MATH project, in particular acospif,
asinpif, atanpif, atan2pif, cospif, sinpif, tanpif.
* The testsuite has been significantly extended, including coverage of
the functionality of the printf and scanf function families in many
variants.
* The manual has been significantly extended and updated, particularly
the threads, terminal, filesystem, resource, and math chapters.
* Code has been added to detect the x86-64 Intel Arrow Lake, Panther
Lake, Clearwater Forest, and Diamond Rapids microarchitectures.
* Regarding S390, support for the new z17 platform has been added.
Deprecated and removed features, and other changes affecting compatibility:
* The glibc.rtld.execstack tunable now supports a compatibility mode to
allow programs that require an executable stack through dynamically
loaded shared libraries.
* On Linux, the <termio.h> header and the definition of struct termio
in <sys/ioctl.h> have been removed. The termio interface has been
obsolete since the very first version of POSIX.1 in 1988, replaced
with <termios.h>.
* The support for TX lock elision of pthread mutexes has been deprecated
on all architectures and will be removed in the next release.
* On AArch64 Linux targets supporting the Scalable Matrix Extension
(SME), setjmp and sigsetjmp will disable the ZA state of SME.
Changes to build and runtime requirements:
* GCC 12.1 or later is now required to build the GNU C Library.
* GNU Binutils 2.39 or later is now required to build the GNU C Library.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
[Julien: resolve conflict with commit feaf53585a]
Signed-off-by: Julien Olivain <ju.o@free.fr>
57 lines
1.8 KiB
Makefile
57 lines
1.8 KiB
Makefile
################################################################################
|
|
#
|
|
# localedef
|
|
#
|
|
################################################################################
|
|
|
|
# Use the same VERSION and SITE as target glibc
|
|
# As in glibc.mk, generate version string using:
|
|
# git describe --match 'glibc-*' --abbrev=40 origin/release/MAJOR.MINOR/master | cut -d '-' -f 2-
|
|
LOCALEDEF_VERSION = 2.42-3-gbc13db73937730401d592b33092db6df806d193e
|
|
LOCALEDEF_SOURCE = glibc-$(LOCALEDEF_VERSION).tar.gz
|
|
LOCALEDEF_SITE = $(call github,bminor,glibc,$(LOCALEDEF_VERSION))
|
|
HOST_LOCALEDEF_DL_SUBDIR = glibc
|
|
|
|
HOST_LOCALEDEF_DEPENDENCIES = \
|
|
$(BR2_MAKE_HOST_DEPENDENCY) \
|
|
$(BR2_PYTHON3_HOST_DEPENDENCY) \
|
|
host-bison \
|
|
host-gawk
|
|
|
|
HOST_LOCALEDEF_CONF_ENV += ac_cv_prog_MAKE="$(BR2_MAKE)"
|
|
|
|
# Even though we use the autotools-package infrastructure, we have to override
|
|
# the default configure commands for since we have to build out-of-tree, but we
|
|
# can't use the same 'symbolic link to configure' used with the gcc packages.
|
|
define HOST_LOCALEDEF_CONFIGURE_CMDS
|
|
mkdir -p $(@D)/build
|
|
# Do the configuration
|
|
(cd $(@D)/build; \
|
|
$(HOST_LOCALEDEF_CONF_ENV) \
|
|
$(HOST_CONFIGURE_OPTS) \
|
|
$(SHELL) $(@D)/configure \
|
|
libc_cv_forced_unwind=yes \
|
|
libc_cv_ssp=no \
|
|
--target=$(GNU_HOST_NAME) \
|
|
--host=$(GNU_HOST_NAME) \
|
|
--build=$(GNU_HOST_NAME) \
|
|
--prefix=/usr \
|
|
--with-pkgversion="Buildroot" \
|
|
--without-cvs \
|
|
--disable-profile \
|
|
--without-gd \
|
|
--enable-obsolete-rpc)
|
|
endef
|
|
|
|
define HOST_LOCALEDEF_BUILD_CMDS
|
|
$(HOST_MAKE_ENV) $(BR2_MAKE1) $(HOST_LOCALEDEF_MAKE_OPTS) \
|
|
-C $(@D)/build locale/others
|
|
endef
|
|
|
|
# The makefile does not implement an install target for localedef
|
|
define HOST_LOCALEDEF_INSTALL_CMDS
|
|
$(INSTALL) -D -m 0755 $(@D)/build/locale/localedef $(HOST_DIR)/bin/localedef
|
|
endef
|
|
|
|
$(eval $(host-autotools-package))
|