This implements https://fedoraproject.org/wiki/Changes/Unify_bin_and_sbin
and https://pagure.io/packaging-committee/pull-request/1355.
Since %{_sbindir} will point to /usr/bin, ldconfig is moved first
to /usr/sbin, but then when the merge is implemented, to /usr/bin.
Adjust the handling of zic and iconvconfig. Previously, they were
sorted into the right subpackage based on the location, but now all
files are in /usr/bin, so that doesn't work anymore.
Before the merge, /sbin/ldconfig and /usr/sbin/ldconfig point
to the same file, so both paths work. Virtual Provides:/sbin/ldconfig
allows other rpms to refer to either path. After sbin-merge,
the /usr/sbin/ symlink needs to be created by filesystem, so
add the appropriate Requires.
Upstream commit: e7ac92e6ca9784b397189df0b2e1fb34f425bab8
- <stdio.h>: Acknowledge that getdelim/getline are in POSIX
- localedata: Lowercase day and abday in cs_CZ
- x86: Properly set MINIMUM_X86_ISA_LEVEL for i386 [BZ #31867]
- x86: Enable non-temporal memset tunable for AMD
- hurd: Fix getxattr/listxattr returning ERANGE
- hurd: Fix setxattr return value on replacing
- hurd: Fix getxattr("gnu.translator") returning ENODATA
- hurd: Fix lsetxattr return value
- localedata: add new locales scn_IT
- support: Fix typo in xgetsockname error message
- getconf: Add NPROCESSORS_{CONF,ONLN} [BZ #31661]
- Linux: Add epoll ioctls
- Improve doc for time_t range (BZ 31808)
- difftime can throw exceptions
- malloc: New test to check malloc alternate path using memory obstruction
- math: Fix exp10 undefined left shift
- libio: Test for fdopen memory leak without SEEK_END support (bug 31840)
- Remove memory leak in fdopen (bug 31840)
- Add new AArch64 HWCAP2 definitions from Linux 6.9 to bits/hwcap.h
- Add more NT_ARM_* constants from Linux kernel to elf.h
- stdlib: Describe __cxa_finalize usage in function comment
- elf: Avoid some free (NULL) calls in _dl_update_slotinfo
- x86: Add seperate non-temporal tunable for memset
- x86: Improve large memset perf with non-temporal stores [RHEL-29312]
- elf: add note identifier for dlopen metadata
- elf: update NT_FDO_PACKAGING_METADATA spec URL
This is necessary because %{baserelease} < %{release}, so the
previous Obsoletes: clause did not match an installed glibc32
package from the same build.
Upstream commit: 8d7b6b4cb27d4dec1dd5f7960298c1699275f962
- socket: Use may_alias on sockaddr structs (bug 19622)
- Use a doubly-linked list for _IO_list_all (bug 27777)
- powerpc64: Fix by using the configure value $libc_cv_cc_submachine [BZ #31629]
- aarch64/fpu: Add vector variants of cbrt
- aarch64/fpu: Add vector variants of hypot
- Use Linux 6.9 in build-many-glibcs.py
- localedata: Fix several issues with the set of characters considered 0-width [BZ #31370]
- math: Add GLIBC_TEST_LIBM_VERBOSE environment variable support.
- malloc: Improve aligned_alloc and calloc test coverage.
- Unify output from backtrace_symbols_fd with backtrace_symbols (bug 31730)
- manual: add dup3
- Force DT_RPATH for --enable-hardcoded-path-in-tests
- powerpc: Fix __fesetround_inline_nocheck on POWER9+ (BZ 31682)
- localedata: add mdf_RU locale
- elf: Make glibc.rtld.enable_secure ignore alias environment variables
- elf: Remove glibc.rtld.enable_secure check from parse_tunables_string
- elf: Only process multiple tunable once (BZ 31686)
Commit 2d5af83031 moved libc_malloc_debug.so.0 to glibc-utils, but
this made it impossible to install the 32-bit version of the library on
x86_64.
libmemusage.so is a similar tracing library that is currently shipped in
glibc but should also (with the exception of i686) be moved to
glibc-utils.
This commit fixes that by:
1. Moving libc_malloc_debug.so.0 back to glibc on i686.
2. Moving libmemusage.so to glibc-utils, again, except on i686.
libc_malloc_debug is a debugging library and therefore should not be
installed by default. Since it is needed in order to enable mtrace
functionality, it belongs in glibc-utils along with the mtrace log
interpreter.
Upstream commit: 5f245f3bfbe61b2182964dafb94907e38284b806.
- Add crt1-2.0.o for glibc 2.0 compatibility tests
- powerpc: Optimized strncmp for power10
- build-many-glibcs.py: Add openrisc hard float glibc variant
- or1k: Add hard float support
- or1k: Add hard float libm-test-ulps
- nscd: Use time_t for return type of addgetnetgrentX
- Add a test to check for duplicate definitions in the static library
- i686: Fix multiple definitions of __memmove_chk and __memset_chk
- i586: Fix multiple definitions of __memcpy_chk and __mempcpy_chk
- nscd: Typo inside comment in netgroup cache
Upstream commit: 91695ee4598b39d181ab8df579b888a8863c4cab
- Update License tag to match upstream.
- time: Allow later version licensing.
- hurd: Stop mapping AT_NO_AUTOMOUNT to O_NOTRANS
- libio: Sort test variables in Makefile
- AArch64: Remove unused defines of CPU names
- Make sure INSTALL is ASCII plaintext again
- x86: In ld.so, diagnose missing APX support in APX-only builds
- elf: Also compile dl-misc.os with $(rtld-early-cflags)
- CVE-2024-33601, CVE-2024-33602: nscd: netgroup: Use two buffers in addgetnetgrentX (bug 31680)
- CVE-2024-33600: nscd: Avoid null pointer crashes after notfound response (bug 31678)
- CVE-2024-33600: nscd: Do not send missing not-found response in addgetnetgrentX (bug 31678)
- CVE-2024-33599: nscd: Stack-based buffer overflow in netgroup cache (bug 31677)
- i386: ulp update for SSE2 --disable-multi-arch configurations
This supports multiple ld.so files in a cleaner way. Also
forward-port multiple libc.so.6 file handling in
wrap-find-debuginfo.sh from downstream. This also incorporates
the “nm --format=posix“ change from #2115831 downstream.
Co-authored-by: Tulio Magno Quites Machado Filho <tuliom@redhat.com>
Upstream commit: 42e48e720c78ab75eb8def9e866da52b0ac278df
- nptl: Add tst-pthread-key1-static for BZ #21777
- elf: Add ld.so test with non-existing program name
- elf: Check objname before calling fatal_error
- Use crtbeginT.o and crtend.o for non-PIE static executables
- aarch64: Enhanced CPU diagnostics for ld.so
- x86: Add generic CPUID data dumper to ld.so --list-diagnostics
- elf: Add CPU iteration support for future use in ld.so diagnostics
- timezone: sync to TZDB 2024a
- Fix bsearch, qsort doc to match POSIX better
- x86-64: Exclude FMA4 IFUNC functions for -mapxf
- Reinstate generic features-time64.h
- Cleanup __tls_get_addr on alpha/microblaze localplt.data
- arm: Remove ld.so __tls_get_addr plt usage
- aarch64: Remove ld.so __tls_get_addr plt usage
- math: x86 trunc traps when FE_INEXACT is enabled (BZ 31603)
- math: x86 floor traps when FE_INEXACT is enabled (BZ 31601)
- math: x86 ceill traps when FE_INEXACT is enabled (BZ 31600)
- aarch64/fpu: Add vector variants of erfc
- aarch64/fpu: Add vector variants of tanh
- aarch64/fpu: Add vector variants of sinh
- aarch64/fpu: Add vector variants of atanh
- aarch64/fpu: Add vector variants of asinh
- aarch64/fpu: Add vector variants of acosh
- aarch64/fpu: Add vector variants of cosh
- aarch64/fpu: Add vector variants of erf
- misc: Add support for Linux uio.h RWF_NOAPPEND flag
- manual: significand() uses FLT_RADIX, not 2
- manual: Clarify return value of cbrt(3)
- manual: floor(log2(fabs(x))) has rounding errors
- manual: logb(x) is floor(log2(fabs(x)))
- powerpc: Add missing arch flags on rounding ifunc variants
- math: Reformat Makefile.
- Always define __USE_TIME_BITS64 when 64 bit time_t is used
- benchtests: Improve benchtests for strstr
- x86_64: Remove avx512 strstr implementation
- signal: Avoid system signal disposition to interfere with tests
Upstream commit: 96d1b9ac2321b565f340ba8f3674597141e3450d
- RISC-V: Fix the static-PIE non-relocated object check
- htl: Implement some support for TLS_DTV_AT_TP
- htl: Respect GL(dl_stack_flags) when allocating stacks
- hurd: Use the RETURN_ADDRESS macro
- hurd: Disable Prefer_MAP_32BIT_EXEC on non-x86_64 for now
- Allow glibc to be compiled without EXEC_PAGESIZE
- hurd: Stop relying on VM_MAX_ADDRESS
- hurd: Move internal functions to internal header
- stdlib: Fix tst-makecontext2 log when swapcontext fails
- or1k: Add prctl wrapper to unwrap variadic args
- or1k: Only define fpu rouding and exceptions with hard-float
- or1k: Update libm test ulps
- AArch64: Check kernel version for SVE ifuncs
Upstream commit: 1ea051145612f199d8716ecdf78b084b00b5a727
- Drop glibc-rh2269799.patch, fixed differently upstream.
-powerpc: Placeholder and infrastructure/build support to add Power11 related changes.
- powerpc: Add HWCAP3/HWCAP4 data to TCB for Power Architecture.
- elf: Enable TLS descriptor tests on aarch64
- arm: Update _dl_tlsdesc_dynamic to preserve caller-saved registers (BZ 31372)
- Ignore undefined symbols for -mtls-dialect=gnu2
- Add tst-gnu2-tls2mod1 to test-internal-extras
- x86-64: Allocate state buffer space for RDI, RSI and RBX (#2269799)
- riscv: Update nofpu libm test ulps
- Add STATX_MNT_ID_UNIQUE from Linux 6.8 to bits/statx-generic.h
- linux: Use rseq area unconditionally in sched_getcpu (bug 31479)
- aarch64: fix check for SVE support in assembler
- Update kernel version to 6.8 in header constant tests
- Update syscall lists for Linux 6.8
- Use Linux 6.8 in build-many-glibcs.py
- powerpc: Remove power8 strcasestr optimization
- riscv: Fix alignment-ignorant memcpy implementation
- linux/sigsetops: fix type confusion (bug 31468)
- LoongArch: Correct {__ieee754, _}_scalb -> {__ieee754, _}_scalbf
- duplocale: protect use of global locale (bug 23970)
GCC for x86_64 includes 32-bit multilib support, requiring a 32-bit
glibc to be present when GCC is built. That 32-bit glibc cannot come
from an i686 RPM because of limitations in Koji, so there is a hack
including a glibc32 "source" package that actually contains binaries
from an i686 build (and thus needs additional manual update steps).
Set up glibc.spec to build a glibc32 binary package directly when
building for x86_64, so avoiding the need for the separate glibc32
source package. This improvement is tracked in
<https://fedoraproject.org/wiki/Changes/glibc32_Build_Adjustments> and
<https://bugzilla.redhat.com/show_bug.cgi?id=1598524>.
The list of files in the glibc32 package has been compared to that in
the previous package (the gnu/lib-names-32.h header is added, as its
previous omission appears to be a bug). And the lists of files in the
other packages built from glibc.spec have also been compared before
and after this change, to make sure there aren't inappropriate changes
to those lists.
Upstream commit: b881f1efcd1b30c2afab3599b41ce9cd4864c823
- elf: Add new LoongArch reloc types (110 to 126) into elf.h
- build-many-glibcs.py: Add s390 --disable-multi-arch / multi-arch configurations.
- sparc: Treat the version field in the FPU control word as reserved
- Implement setcontext/getcontext/makecontext/swapcontext for Hurd x86_64
- Use proc_getchildren_rusage when available in getrusage and times.
- Linux: Switch back to assembly syscall wrapper for prctl (bug 29770)
- i386: Use generic memrchr in libc (bug 31316)
Upstream commit: ef7f4b1fef67430a8f3cfc77fa6aada2add851d7
- Apply the Makefile sorting fix
- sysdeps/x86_64/Makefile (tests): Add the end marker
- sort-makefile-lines.py: Allow '_' in name and "^# name"
- trivial doc fix: remove weird phrase "syscall takes zero to five arguments"
- mips: Use builtins for ffs and ffsll
- x86: Expand the comment on when REP STOSB is used on memset
- x86: Do not prefer ERMS for memset on Zen3+
- x86: Fix Zen3/Zen4 ERMS selection (BZ 30994)
- x86/cet: fix shadow stack test scripts
- test_printers_common.py: Remove invalid escape sequence
- elf: Remove attempt at env handling in elf/tst-rtld-list-diagnostics.py
- Add SOL_VSOCK from Linux 6.7 to bits/socket.h
- localedata: ssy_ER: Fix syntax error
- localedata: hr_HR: change currency to EUR/€
- Change lv_LV collation to agree with the recent change in CLDR
- Add new AArch64 HWCAP2 definitions from Linux 6.7 to bits/hwcap.h
- string: Add hidden builtin definition for __strcpy_chk.
- arm: Remove wrong ldr from _dl_start_user (BZ 31339)
- LoongArch: Use builtins for ffs and ffsll
- Remove sysdeps/ia64/math-use-builtins-ffs.h
- Fix stringop-overflow warning in tst-strlcat2.
- mips: FIx clone3 implementation (BZ 31325)
- stdlib: fix qsort example in manual
- soft-fp: Add brain format support
- Rename c2x / gnu2x tests to c23 / gnu23
- manual: Fix up stdbit.texi
- string: Use builtins for ffs and ffsll
- misc: tst-poll: Proper synchronize with child before sending the signal
- math: Remove bogus math implementations
- Refer to C23 in place of C2X in glibc
- elf: Remove _dl_sysdep_open_object hook function
- build-many-glibcs: relax version check to allow non-digit characters
- Use gcc __builtin_stdc_* builtins in stdbit.h if possible
- Open master branch for glibc 2.40 development
Exclude the /sys-root/ tree in various places and prevent
debuginfo extract and dependency generation.
Forward-port of the feature from Fedora 35, with subsequent fixes:
Add kernel header files, and do not use = in linker scripts.
Upstream commit: ae49a7b29acc184b03c2a6bd6ac01b5e08efd54f
- Relicense IBM portions of resolv/base64.c resolv/res_debug.c.
- localedata: Use consistent values for grouping and mon_grouping
- manual: fix order of arguments of memalign and aligned_alloc (Bug 27547)
Upstream commit: 709fbd3ec3595f2d1076b4fec09a739327459288
- stdlib: Reinstate stable mergesort implementation on qsort
- x86-64: Check if mprotect works before rewriting PLT
- aarch64: Add NEWS entry about libmvec for 2.39
- Add new locales for kv_RU, su_ID, tok, and zgh_MA.
- Drop glibc-rh2255506.patch; fix applied upstream.
- Enable Intel CET only on x86_64.
Upstream commit: 064c708c78cc2a6b5802dce73108fc0c1c6bfc80
- localedata/unicode-gen/utf8_gen.py: fix Hangul syllable name
- x86_64: Optimize ffsll function code size.
- localedata: Remove redundant comments
- RISC-V: Enable static-pie.
- linux: Fix fstat64 on alpha and sparc64
- math: remove exp10 wrappers
- Benchtests: Increase benchmark iterations
- debug/getwd_chk.c: warning should be emitted for the __getwd_chk symbol.
- Make __getrandom_nocancel set errno and add a _nostatus version
- x86-64/cet: Make CET feature check specific to Linux/x86
- Incorporate translations (zh_CN)
- Define ISO 639-3 "glk" (Gilaki)
- resolv: Fix endless loop in __res_context_query
- localedata: revert all the remaining locale sources to UTF-8
- localedata: am_ET ber_DZ en_GB en_PH en_US fil_PH kab_DZ om_ET om_KE ti_ET tl_PH: convert to UTF-8
- localedata: resolve cyclic dependencies
- localedata: kv_RU: convert to UTF-8
- localedata: add new locale kv_RU
- elf: Fix tst-nodeps2 test failure.
- localedata: Sort Makefile variables.
- locale: Sort Makefile variables.
- i386: Remove CET support bits
- x86-64/cet: Move check-cet.awk to x86_64
- x86-64/cet: Move dl-cet.[ch] to x86_64 directories
- x86: Move x86-64 shadow stack startup codes
- Fix deprecated utcnow() usage in build-many-glibcs.py
- Fix invalid escape sequence in build-many-glibcs.py
- math: Fix test-fenv.c feupdateenv tests
- Remove installed header rule on $(..)include/%.h
- i386: Fail if configured with --enable-cet
- i386: Remove CET support
- x86: Move CET infrastructure to x86_64
- localedata: su_ID: make lang_name agree with CLDR
- localedata: add new locale su_ID
- localedata: add new locale zgh_MA
- INSTALL: regenerate
- localedata: add tok/UTF-8 to SUPPORTED
- localedata: tok: add yY and nN to yesexpr and noexpr
- localedata: tok: convert to UTF-8
- localedata: add data for tok (Toki Pona)
- Remove ia64-linux-gnu
- localedata: dz_BT, bo_CN: convert to UTF-8
- localedata: dz_BT, bo_CN: Fix spelling of "phur bu" in both Tibetan and Dzongkha
- localedata: bo_CN: Fix spelling errors in Tibetan data
- localedata: bo_CN: Fix incomplete edit in Tibetan yesexpr
- localedata: dz_BT: Fix spelling errors in Dzongha data
- localedata: unicode-gen: Remove redundant \s* from regexp, fix comments
- localedata: convert the remaining *_RU locales to UTF-8
- Incorporate translations
- x32: Handle displacement overflow in PLT rewrite [BZ #31218]
- x86: Fixup some nits in longjmp asm implementation
- stdlib: Fix stdbit.h with -Wconversion for clang
- stdlib: Fix stdbit.h with -Wconversion for older gcc
- elf: Add ELF_DYNAMIC_AFTER_RELOC to rewrite PLT
- aarch64: Make cpu-features definitions not Linux-specific
- hurd: Initializy _dl_pagesize early in static builds
- hurd: Only init early static TLS if it's used to store stack or pointer guards
- hurd: Make init-first.c no longer x86-specific
- hurd: Drop x86-specific assembly from init-first.c
- hurd: Pass the data pointer to _hurd_stack_setup explicitly
- x86-64/cet: Check the restore token in longjmp
- localedata: ru_RU, ru_UA: convert to UTF-8
- localedata: es_??: convert to UTF-8
- localedata: miq_NI: convert to UTF-8
- i386: Ignore --enable-cet
- mach: Drop SNARF_ARGS macro
- mach: Drop some unnecessary vm_param.h includes
- hurd: Declare _hurd_intr_rpc_msg* with protected visibility
- hurd: Add some missing includes
- localedata: fy_DE: make this "Western Frisian" to agree with the language code "fy"
- localedata: fy_DE, fy_NL: convert to UTF-8
- localedata: ast_ES: convert to UTF-8
- localedata: ast_ES: Remove wrong copyright text
- localedata: de_{AT,BE,CH,IT,LU}: convert to UTF-8
- localedata: lv_LV, it_IT, it_CH: convert to UTF-8
- localedata: it_IT, lv_LV: currency symbol should follow the amount
- Implement C23 <stdbit.h>
- localedata: ms_MY should not use 12-hour format
- localedata: es_ES: convert to UTF-8
- localedata: es_ES: Add am_pm strings
- aarch64: Add longjmp test for SME
- aarch64: Add setcontext support for SME
- aarch64: Add longjmp support for SME
- aarch64: Add SME runtime support
- localedata: convert uz_UZ and uz_UZ@cyrillic to UTF-8
- localedata: uz_UZ and uz_UZ@cyrillic: Fix decimal point and thousands separator
- libio: Check remaining buffer size in _IO_wdo_write (bug 31183)
- getaddrinfo: translate ENOMEM to EAI_MEMORY (bug 31163)
- string: Add additional output in test-strchr failure
- Add a setjmp/longjmp test between user contexts
- x86/cet: Add -fcf-protection=none before -fcf-protection=branch
- Regenerate libc.pot
- Omit regex.c pragmas no longer needed
- Update copyright dates not handled by scripts/update-copyrights
- Update copyright in generated files by running "make"
- Update copyright dates with scripts/update-copyrights
- x86/cet: Run some CET tests with shadow stack
- x86/cet: Don't set CET active by default
- x86/cet: Check feature_1 in TCB for active IBT and SHSTK
- x86/cet: Enable shadow stack during startup
- elf: Always provide _dl_get_dl_main_map in libc.a
- x86/cet: Sync with Linux kernel 6.6 shadow stack interface
- RISC-V: Add support for dl_runtime_profile (BZ #31151)
- debug: Add fortify wprintf tests
- debug: Add fortify syslog tests
- debug: Add fortify dprintf tests
- debug: Increase tst-fortify checks for compiler without __va_arg_pack support
- debug: Adapt fortify tests to libsupport
- localedata: yo_NT: remove redundant comments
- localedata: convert en_AU, en_NZ, mi_NZ, niu_NZ to UTF-8
- localedata: First day of the week in AU is Monday, LC_TIME in en_NZ is identical to LC_TIME in en_AU then
- localedata: convert yo_NG to UTF-8, check that language name in Yoruba agrees with CLDR
- x86-64: Fix the tcb field load for x32 [BZ #31185]
- x86-64: Fix the dtv field load for x32 [BZ #31184]