Using rpm -i may not work as expected if $HOME/rpmbuild is not
empty. Recommend to use mock or build directly out of dist-git
instead.
RPM-Changelog: -
RPM-Skip-Release: yes
Related: RHEL-111490
After this, patch order follows commit order. As a result,
some early patches get reordered from
Patch4: glibc-fedora-linux-tcsetattr.patch
Patch8: glibc-fedora-manual-dircategory.patch
Patch9: glibc-rh827510.patch
Patch13: glibc-fedora-localedata-rh61908.patch
Patch17: glibc-cs-path.patch
Patch23: glibc-python3.patch
Patch24: glibc-upstream-2.39-1.patch
to:
Patch1: glibc-rh827510.patch
Patch2: glibc-fedora-linux-tcsetattr.patch
Patch3: glibc-fedora-localedata-rh61908.patch
Patch4: glibc-fedora-manual-dircategory.patch
Patch5: glibc-cs-path.patch
Patch6: glibc-python3.patch
Patch7: glibc-upstream-2.39-1.patch
This still produces the same tree, so the reordering is harmless.
Resolves: RHEL-111490
Parent: 92dfd986b2
Patch-Git-Version: 1
RPM-Version: 2.39
RPM-Release: 60%{?dist}
RPM-Changelog-Stop: yes
Upstream commit: fffc2df8a3e2c8cda2991063d23086360268b777
- i386: Provide GLIBC_ABI_GNU_TLS symbol version [BZ #33221]
- i386: Update ___tls_get_addr to preserve vector registers
- Extend struct r_debug to support multiple namespaces (RHEL-101985)
- Fix a potential crash in the dynamic loader when processing specific
symbol versions (RHEL-109683)
- Signal la_objopen for ld.so with dlmopen (RHEL-109693)
- Switch to main malloc after final ld.so self-relocation (RHEL-109703)
- Prevent ld.so from asserting and crashing during audited library loads
(RHEL-109702)
- x86-64: Provide GLIBC_ABI_DT_X86_64_PLT symbol version (RHEL-109621)
- x86-64, i386: Provide GLIBC_ABI_GNU2_TLS symbol version (RHEL-109625)
- Ensure fallback initialization of ctype TLS data pointers to fix segfaults in
programs using dlmopen or auditors (RHEL-72018)
- Handle load segment gaps in _dl_find_object (RHEL-104854)
- AArch64: Improve codegen in SVE log1p
- AArch64: Optimize inverse trig functions
- AArch64: Avoid memset ifunc in cpu-features.c [BZ #33112]
Resolves: RHEL-109536
Resolves: RHEL-72018
Resolves: RHEL-101985
Resolves: RHEL-104854
Resolves: RHEL-109621
Resolves: RHEL-109625
Resolves: RHEL-109683
Resolves: RHEL-109693
Resolves: RHEL-109702
Resolves: RHEL-109703
- Backport: Remove memory leak in fdopen (bug 31840)
- Backport: libio: Test for fdopen memory leak without SEEK_END
support (bug 31840)
Resolves: RHEL-108475
- Backport: Update syscall lists for Linux 6.8
- Backport: Update kernel version to 6.8 in header constant tests
- Backport: Update syscall lists for Linux 6.9
- Backport: Update PIDFD_* constants for Linux 6.9
- Backport: Update kernel version to 6.9 in header constant tests
- Backport: linux: add definitions for hugetlb page size encodings
- Backport: Update syscall lists for Linux 6.10
- Backport: Update kernel version to 6.10 in header constant tests
- Backport: Linux: Add missing scheduler constants to <sched.h>
- Backport: Update syscall lists for Linux 6.11
- Backport: Update PIDFD_* constants for Linux 6.11
- Backport: linux: Add MAP_DROPPABLE from Linux 6.11
- Backport: Update kernel version to 6.11 in header constant tests
- Backport: Update syscall lists for Linux 6.12
- Backport: Update kernel version to 6.12 in header constant tests
- Backport: Add SCHED_EXT from Linux 6.12 to bits/sched.h
- Backport: Update syscall lists for Linux 6.13
- Backport: Update kernel version to 6.13 in header constant tests
- Backport: Update syscall lists for Linux 6.14
- Backport: Update syscall lists for Linux 6.15
Resolves: RHEL-107695
- Backport: stdlib: Do not use GLIBC_PRIVATE ABI for errno in libc_nonshared.a
- Backport: manual: Extract the @manpageurl{func,sec} macro
- Backport: Linux: Add the sched_setattr and sched_getattr functions
Note: The patch has been adapted downstream to avoid ABI changes
- Backport: Linux: Add missing scheduler constants to <sched.h>
- Backport: Linux: Do not check unused bytes after sched_getattr in tst-sched_setattr
- Backport: Linux: Add the pthread_gettid_np function (bug 27880)
Note: The patch has been adapted downstream to avoid ABI changes
- Backport: Linux: Remove attribute access from sched_getattr (bug 32781)
- Backport: Linux: Add new test misc/tst-sched_setattr-thread
- Backport: nptl: Include <stdbool.h> in tst-pthread_gettid_np.c
- Backport: Makefile: Clean up pthread_atfork integration
- Backport: manual: fix typo for sched_[sg]etattr
Resolves: RHEL-58357
- Backport: S390: Add new s390 platform z17.
- Add downstream patch for legacy hwcap/platform mechanism
- Acknowledge `struct cpu_features` layout change: the size of the
structure didn't change, members where renamed.
Resolves: RHEL-72564
Introduce `verify-ldso-abi.sh` script and architecture-specific baseline
files to the build.
This new verification step is integrated into the `%check` phase of the
glibc build process. It uses `gdb` to dump the internal ABI layout of
critical dynamic linker data structures (`_rtld_global_ro`,
`_rtld_global`, `struct link_map`, `struct pthread`) and compares them
against a predefined baseline.
This ensures that unintentional ABI breaks in `ld.so` are detected
early, maintaining stability for internal glibc components. The script
also supports generating new baselines when changes are intentional.
Resolves: RHEL-72564
The /usr/lib64/lp64d symlink is part of the filesystem package
starting with version 3.18-39, so we no longer need (or want)
to handle it here. This means that we can drop all existing
symlink handling and replace it with a file move operation.
Thanks: David Abdurachmanov <davidlt@rivosinc.com>
Signed-off-by: Andrea Bolognani <abologna@redhat.com>
Upstream commit: dcaf51b41e259387602774829c45222d0507f90a
- elf: Change ldconfig auxcache magic number (bug 32231)
- Make tst-strtod-underflow type-generic
- Add crt1-2.0.o for glibc 2.0 compatibility tests
- Add tests of more strtod special cases
- Add more tests of strtod end pointer
- Make tst-strtod2 and tst-strtod5 type-generic
- powerpc64le: Build new strtod tests with long double ABI flags (bug 32145)
- Do not set errno for overflowing NaN payload in strtod/nan (bug 32045)
- Improve NaN payload testing
- Make __strtod_internal tests type-generic
- Fix strtod subnormal rounding (bug 30220)
- More thoroughly test underflow / errno in tst-strtod-round
- Test errno setting on strtod overflow in tst-strtod-round
- Add tests of fread
- stdio-common: Add new test for fdopen
- libio: Attempt wide backup free only for non-legacy code
- debug: Fix read error handling in pcprofiledump
- elf: Fix tst-dlopen-tlsreinit1.out test dependency
- elf: Avoid re-initializing already allocated TLS in dlopen (bug 31717)
- elf: Clarify and invert second argument of _dl_allocate_tls_init
- elf: Support recursive use of dynamic TLS in interposed malloc
- nptl: Use <support/check.h> facilities in tst-setuid3
- posix: Use <support/check.h> facilities in tst-truncate and tst-truncate64
- ungetc: Fix backup buffer leak on program exit [BZ #27821]
- ungetc: Fix uninitialized read when putting into unused streams [BZ #27821]
- Make tst-ungetc use libsupport
- stdio-common: Add test for vfscanf with matches longer than INT_MAX [BZ #27650]
- support: Add FAIL test failure helper
- string: strerror, strsignal cannot use buffer after dlmopen (bug 32026)
- Define __libc_initial for the static libc
- x86: Fix bug in strchrnul-evex512 [BZ #32078]
- Adjust check-local-headers test for libaudit 4.0
- x32/cet: Support shadow stack during startup for Linux 6.10
- x86-64: Remove sysdeps/x86_64/x32/dl-machine.h
- support: Add options list terminator to the test driver
- manual/stdio: Further clarify putc, putwc, getc, and getwc
- Fix name space violation in fortify wrappers (bug 32052)
- resolv: Fix tst-resolv-short-response for older GCC (bug 32042)
- Add mremap tests
- mremap: Update manual entry
- linux: Update the mremap C implementation [BZ #31968]
- Enhanced test coverage for strncmp, wcsncmp
- Enhance test coverage for strnlen, wcsnlen
Resolves: RHEL-57776
Resolves: RHEL-57777
Resolves: RHEL-61392
The headers are identical except for <gnu/lib-names-*.h> and
<gnu/stubs-*.h>, which are specific to the arch-full glibc-devel
packages.
RPM is expected to handle the identical files shared between
glibc-devel.x86_64 and glibc-devel.i686 because it's needed
for pretty much every other -devel package.
(This version of this change preserves the glibc-devel.x86_64
contents.)
This commit updates most occurrences of /%{_lib} to %{_libdir}.
The glibc build process is not changed, instead the symbolic links
are created right before installing the files, to redirect them
to their final locations. The symbolic links are removed again
so that they do not end up in the shipped packages.
Eliminate most pattern matching and list files explicitly. Two
common exceptions are modeled explicitly: libmvec (additional shared
object and static library), libnldbl (additional shared object).
To implement glibc-headers-* and glibc-gconv-extra, pattern matching
is still used, but with helper shell functions that allow splitting
the matching and non-matching files into separate list files. Some
complications arise because the build for glibc32.x86_64 installs
header files into /usr/include that shouldn't land in the regular
development packages.
The remaining differences are bug fixes for directory ownership.
/usr/libexec/glibc-benchtests is now owned by glibc-benchtests.
/lib64/glibc-hwcaps is now owned by glibc.ppc64le.
Differences can be checked with this script:
mkdir -p filelist
for x in "$@" ; do
target="$(rpm -qp --qf 'filelist/%{name}.%{arch}.txt' "$x")"
rpm -qp --qf '[%{filenames} %{filemodes:perms} (%{fileflags:fflags})(%{fileverifyflags:hex}) \{%{filecaps}\} %{fileusername} %{filegroupname}\n]' "$x" > "$target"
done
Note: Delete the *.src.rpm files because %{arch} has unexpected
results for them.
Backport the upstream changes that allow us to build the xtests
without running them during the build. They can be very slow,
so this saves a bit of build time.