<feed xmlns='http://www.w3.org/2005/Atom'>
<title>staging/ldir/toolchain, branch master</title>
<subtitle>Kevin D-Bs staging tree</subtitle>
<id>https://git.openwrt.org/openwrt/staging/ldir/atom?h=master</id>
<link rel='self' href='https://git.openwrt.org/openwrt/staging/ldir/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/ldir/'/>
<updated>2023-05-18T16:55:27Z</updated>
<entry>
<title>toolchain: glibc: Fix build with autoconf 2.71</title>
<updated>2023-05-18T16:55:27Z</updated>
<author>
<name>Hauke Mehrtens</name>
</author>
<published>2023-05-17T22:31:21Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/ldir/commit/?id=76f241ad57da585d24f5fe56508f26780b8d885e'/>
<id>urn:sha1:76f241ad57da585d24f5fe56508f26780b8d885e</id>
<content type='text'>
The glibc build was failing with this error message:
  aclocal.m4:6: error: Exactly version 2.69 of Autoconf is required but you have 2.71
  aclocal.m4:6: the top level

The autoconf run on glibc is not needed, just remove it.

Fixes: #12631
Fixes: 030447b8f4c7 ("tools/autoconf: bump to 2.71")
Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
</content>
</entry>
<entry>
<title>toolchain: glibc: Update glibc 2.37 to recent HEAD</title>
<updated>2023-05-18T16:55:27Z</updated>
<author>
<name>Hauke Mehrtens</name>
</author>
<published>2023-05-17T22:27:22Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/ldir/commit/?id=2b51688f358f965db7fae5308d1c677d9aad91e0'/>
<id>urn:sha1:2b51688f358f965db7fae5308d1c677d9aad91e0</id>
<content type='text'>
This adds the following changes:
790e504a17 stdlib: Undo post review change to 16adc58e73f3 [BZ #27749]
590d0e089b elf: Restore ldconfig libc6 implicit soname logic [BZ #30125]
1d63573f81 stdio-common: tests: don't double-define _FORTIFY_SOURCE
97ad4c64b9 gshadow: Matching sgetsgent, sgetsgent_r ERANGE handling (bug 30151)
9cc2f41e52 x86_64: Fix asm constraints in feraiseexcept (bug 30305)
78ab913eab posix: Fix system blocks SIGCHLD erroneously [BZ #30163]
5d750495db gmon: Fix allocated buffer overflow (bug 29444)
d230623264 gmon: improve mcount overflow handling [BZ# 27576]
ff3a71ec1f gmon: fix memory corruption issues [BZ# 30101]
a908c18d47 gmon: Revert addition of tunables to preserve GLIBC_PRIVATE ABI
7c32cb7dd8 gmon: Revert addition of tunables to the manual

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
</content>
</entry>
<entry>
<title>toolchain/musl: update to 1.2.4</title>
<updated>2023-05-15T18:39:17Z</updated>
<author>
<name>Linhui Liu</name>
</author>
<published>2023-05-07T08:05:45Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/ldir/commit/?id=fff878c5bcda6dea337c97a95721bf8cf73e4560'/>
<id>urn:sha1:fff878c5bcda6dea337c97a95721bf8cf73e4560</id>
<content type='text'>
Release notes:

new features:
- large dns record lookups via tcp fallback
- new getaddrinfo EAI_NODATA result to distinguish NODATA/NxDomain
- support for new RELR compressed format for relative relocations
- sysconf keys for querying signal stack size requirements
- real vfork on riscv64

performance:
- mallocng no longer uses MADV_FREE (high performance cost, little gain)
- vdso clock_gettime is supported once again on 32-bit arm

compatibility:
- gethostbyname family now distinguishes NO_DATA from HOST_NOT_FOUND
- res_send now works with caller-provided edns0 queries
- arpa/nameser.h RR types list is now up-to-date
- previously-missing POSIX confstr keys have been added
- mntent interfaces now accept missing fields
- alt signal stack, if any, is now used for internal signals
- the LFS64 macros are no longer exposed without _LARGEFILE64_SOURCE
- memmem (POSIX-future) is now exposed in default feature profile
- pthread_atfork now admits calls from an application-provided malloc
- debugger tracking of shared libraries now works on MIPS PIE binaries
- sendmsg now supports up to SCM_MAX_FD fds in SCM_RIGHTS messages

bugs fixed:
- gethostbyname[2]_r wrongly returned nonzero (error) on negative result
- parallel v4/v6 address queries could fail on query id collisions
- spurious getaddrinfo/AI_ADDRCONFIG failures due to errno clobbering
- dns search domains ending in dot (including lone dot) broke lookups
- ipv6 servers in resolv.conf broke lookups on systems with v6 disabled
- systems with bindv6only failed to query both v4 and v6 nameservers
- res_mkquery mishandled consecutive final dots in name
- res_send could malfunction for very small answer buffer sizes
- resolver dns backend accepted answers with wrong (A vs AAAA) RR type
- getservbyport_r returned junk or ENOENT (vs ERANGE) on buffer size errors
- dns result parsing of malformed responses could process uninitialized data
- freopen didn't reset stream orientation (byte/wide) &amp; encoding rule
- fwprintf didn't print most fields on open_wmemstream FILEs
- wide printf %lc ignored field width
- wide printf erroneously processed %n after encoding errors
- use of wide printf %9$ argument slot overflowed undersized buffer
- swprintf malfunctioned on nul character in output
- strverscmp ordered digit sequences vs nondigits incorrectly
- timer_create/SIGEV_THREAD failure leaked the thread
- semaphores were subject to missed-wake under certain usage patterns
- several possible rare deadlocks with lock handling at thread exit
- several possible rare deadlocks with aio and multithreaded fork
- dynamic linker relro processing was broken on archs w/variable pagesize
- async cancellation could run cancellation handlers in invalid context
- pthread_detach was wrongly a cancellation point in rare race code path
- use-after-close/double-close errors in mq_notify error paths
- mq_notify event thread wrongly ran with signals unmasked
- wcs{,n}cmp, wmemcmp returned wrong results when difference overflowed
- accept4, pipe2, and dup3 handled unknown flags wrong in fallback cases
- CPU_SETSIZE macro had wrong unit
- select fallback for pre-time64 kernels truncated timeout (vs clamping)

arch-specific bugs fixed:
- x32 new socketcalls took fallback path due to pointer sign extension
- x32 wait4 didn't fill rusage structure (time64 regression)
- x32 semtimedop mismatched timespec ABI with kernel (time64 regression)
- sigaction signal mask was bogus on or1k, microblaze, mips, and riscv
- powerpc-sf longjmp asm clobbered value argument
- or1k poll function passed timeout to syscall in wrong form

Removed upstreamed:
- 800-mips_pie_debug.patch
Manually rebased:
- 600-nftw-support-common-gnu-extension.patch

Signed-off-by: Linhui Liu &lt;liulinhui36@gmail.com&gt;
</content>
</entry>
<entry>
<title>fortify-headers: fix build error when _REDIR_TIME64 is not defined</title>
<updated>2023-05-13T12:09:53Z</updated>
<author>
<name>Georgi Valkov</name>
</author>
<published>2023-05-12T23:22:12Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/ldir/commit/?id=9145c4fbcb655b2f56c76012da85cb203fdbc72b'/>
<id>urn:sha1:9145c4fbcb655b2f56c76012da85cb203fdbc72b</id>
<content type='text'>
some targets do not define the _REDIR_TIME64 macro resulting in a
build error regression since ddfe5678a448ac8875e94f2fb4ddca67416fa14a
fix by checking if the macro is defined

[1] https://github.com/openwrt/openwrt/issues/12587

Fixes: #12587
Fixes: ddfe5678a448 ("fortify-headers: fix inconsistent time_t version of ppoll")
Signed-off-by: Georgi Valkov &lt;gvalkov@gmail.com&gt;
</content>
</entry>
<entry>
<title>toolchain: glibc: increase min kernel version to 5.15</title>
<updated>2023-05-12T11:02:43Z</updated>
<author>
<name>Nick Hainke</name>
</author>
<published>2023-05-04T19:34:21Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/ldir/commit/?id=5bd7f04806d07a82e247220f2b825f4fcc43da9f'/>
<id>urn:sha1:5bd7f04806d07a82e247220f2b825f4fcc43da9f</id>
<content type='text'>
The purpose of this is to remove all of the compatibility code that is
normally compiled into glibc for kernels &lt; 5.15 from our build. Only
Linux kernels &gt;= 5.15 will be supported.

Signed-off-by: Nick Hainke &lt;vincent@systemli.org&gt;
</content>
</entry>
<entry>
<title>fortify-headers: fix inconsistent time_t version of ppoll</title>
<updated>2023-05-12T10:16:11Z</updated>
<author>
<name>Georgi Valkov</name>
</author>
<published>2023-05-10T00:02:29Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/ldir/commit/?id=ddfe5678a448ac8875e94f2fb4ddca67416fa14a'/>
<id>urn:sha1:ddfe5678a448ac8875e94f2fb4ddca67416fa14a</id>
<content type='text'>
Bug:
fortify/poll.h includes poll.h, which redirects ppoll to __ppoll_time64
if the _REDIR_TIME64 macro is 1. Then fortify/poll.h will #undef ppoll
and use the 32 bit version.

Fix: we should not do this when _REDIR_TIME64 is 1.

[1] https://forum.openwrt.org/t/idle-cpu-usage-of-usbmuxd/140331/15
[2] https://github.com/openwrt/openwrt/issues/12574

Signed-off-by: Georgi Valkov &lt;gvalkov@gmail.com&gt;
</content>
</entry>
<entry>
<title>toolchain: gcc: update to 12.3.0</title>
<updated>2023-05-12T10:11:20Z</updated>
<author>
<name>Nick Hainke</name>
</author>
<published>2023-05-09T21:47:01Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/ldir/commit/?id=8d2ab0fac666b9d2f39f517594b414466ff85818'/>
<id>urn:sha1:8d2ab0fac666b9d2f39f517594b414466ff85818</id>
<content type='text'>
Release notes:
https://gcc.gnu.org/gcc-12/changes.html

Refresh patches:
- 230-musl_libssp.patch
- 910-mbsd_multi.patch
- 920-specs_nonfatal_getenv.patch
- 970-macos_arm64-building-fix.patch

Signed-off-by: Nick Hainke &lt;vincent@systemli.org&gt;
</content>
</entry>
<entry>
<title>toolchain: gcc: backport patch for gcc 13 fixing access path analysis</title>
<updated>2023-05-05T13:46:38Z</updated>
<author>
<name>Nick Hainke</name>
</author>
<published>2023-05-03T14:46:52Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/ldir/commit/?id=a6d689632c5326e4869937c0ff5f9c72f6190729'/>
<id>urn:sha1:a6d689632c5326e4869937c0ff5f9c72f6190729</id>
<content type='text'>
While improving access path analysis a typo happened. Now it can happen
that gcc misscompiles. The patch is fixing the issue. However, also
other gcc versions 10.2+ are affected. They also should be bumped or the
fix should be backported.

For more bug information have a look at:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109585

Signed-off-by: Nick Hainke &lt;vincent@systemli.org&gt;
</content>
</entry>
<entry>
<title>toolchain: gcc: add support for GCC 13</title>
<updated>2023-05-05T13:46:37Z</updated>
<author>
<name>Nick Hainke</name>
</author>
<published>2023-04-27T21:03:14Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/ldir/commit/?id=29128b0bd43532404d965d22338554fce624db6a'/>
<id>urn:sha1:29128b0bd43532404d965d22338554fce624db6a</id>
<content type='text'>
Release Notes:
https://gcc.gnu.org/pipermail/gcc-announce/2023/000175.html

Manually Refreshed:
- 910-mbsd_multi.patch
- 970-macos_arm64-building-fix.patch

Automatically Refreshed:
- 010-documentation.patch
- 230-musl_libssp.patch
- 300-mips_Os_cpu_rtx_cost_model.patch
- 820-libgcc_pic.patch
- 840-armv4_pass_fix-v4bx_to_ld.patch
- 850-use_shared_libgcc.patch
- 870-ppc_no_crtsavres.patch
- 920-specs_nonfatal_getenv.patch

Signed-off-by: Nick Hainke &lt;vincent@systemli.org&gt;
</content>
</entry>
<entry>
<title>toolchain: gcc: copy patches from 12.x to 13.x</title>
<updated>2023-05-05T13:46:34Z</updated>
<author>
<name>Nick Hainke</name>
</author>
<published>2023-04-27T21:00:30Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/ldir/commit/?id=1e88a16248601da03d78da7939d412588ad0ea52'/>
<id>urn:sha1:1e88a16248601da03d78da7939d412588ad0ea52</id>
<content type='text'>
This simplifies the gcc bump patch review.

Signed-off-by: Nick Hainke &lt;vincent@systemli.org&gt;
</content>
</entry>
</feed>
