<feed xmlns='http://www.w3.org/2005/Atom'>
<title>staging/hauke/toolchain, branch v19.07.3</title>
<subtitle>Hauke Mehrtens staging tree</subtitle>
<id>https://git.openwrt.org/openwrt/staging/hauke/atom?h=v19.07.3</id>
<link rel='self' href='https://git.openwrt.org/openwrt/staging/hauke/atom?h=v19.07.3'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/'/>
<updated>2019-12-22T23:31:20Z</updated>
<entry>
<title>toolchain/gcc: Backport patch to fix unconditional MULTIARCH_DIRNAME</title>
<updated>2019-12-22T23:31:20Z</updated>
<author>
<name>Jeffery To</name>
</author>
<published>2019-11-18T22:04:59Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=d2e87c780089a74b6c0ad84e21f73021fb5ec27a'/>
<id>urn:sha1:d2e87c780089a74b6c0ad84e21f73021fb5ec27a</id>
<content type='text'>
This backports the patch for GCC PR target/89587 (gcc's rs6000
configuration unconditionally sets MULTIARCH_DIRNAME, even when
multiarch is disabled).

This currently affects apm821xx and may cause issues when
cross-compiling packages, e.g. Python 3[1].

This includes patches for GCC 8 (with the changelog diff removed);
this change is already included in GCC 9.2 and 7.5.

[1]: https://github.com/openwrt/packages/issues/10552

Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
[Removed patch for GCC 7.4.0, GCC 7.5.0 already contains this]
Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
(cherry picked from commit c102f702e7dc976c2ad2c04c0ce4462373e62365)
</content>
</entry>
<entry>
<title>toolchain/gcc: correct the check expr for newer clang</title>
<updated>2019-12-22T23:31:13Z</updated>
<author>
<name>Yorkie Liu</name>
</author>
<published>2019-11-19T05:41:10Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=a7d880e830cf786941c14f5fd410a7e918ffcb5d'/>
<id>urn:sha1:a7d880e830cf786941c14f5fd410a7e918ffcb5d</id>
<content type='text'>
This fixes gcc build error within clang 11.0, it tweaks the version
string from LLVM to clang.

Signed-off-by: Yorkie Liu &lt;yorkiefixer@gmail.com&gt;
(cherry picked from commit 65a561fd0919eafff2363ae8324db64be2a57f77)
</content>
</entry>
<entry>
<title>glibc: update to latest 2.27 commit (BZ #2503, BZ #2504)</title>
<updated>2019-12-14T13:06:33Z</updated>
<author>
<name>Hans Dedecker</name>
</author>
<published>2019-12-11T21:27:26Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=3959f11005965eb536396a8c258f0ab944eb598d'/>
<id>urn:sha1:3959f11005965eb536396a8c258f0ab944eb598d</id>
<content type='text'>
bef0b1cb31 libio: Disable vtable validation for pre-2.1 interposed handles [BZ #25203]
4d5cfeb510 rtld: Check __libc_enable_secure before honoring LD_PREFER_MAP_32BIT_EXEC (CVE-2019-19126) [BZ #25204]
92f04eedb5 mips: Force RWX stack for hard-float builds that can run on pre-4.8 kernels

Signed-off-by: Hans Dedecker &lt;dedeckeh@gmail.com&gt;
</content>
</entry>
<entry>
<title>glibc: backport fix for regexec buffer read overrun</title>
<updated>2019-12-14T13:06:22Z</updated>
<author>
<name>Alin Nastac</name>
</author>
<published>2019-11-21T13:06:18Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=a50c2190d31d2d95755d55183e9f420dc0a82869'/>
<id>urn:sha1:a50c2190d31d2d95755d55183e9f420dc0a82869</id>
<content type='text'>
Problem found by AddressSanitizer[1]:

 Latest `grep` (git commit 1019e6e) compiled with asan may cause a
 heap-buffer-overflow when `-i` is specified.

     ./grep -i '\(\(\)*.\)*\(\)\(\)\1' /bin/chvt

 =================================================================
 ==16206==ERROR: AddressSanitizer: heap-buffer-overflow on address

1. https://debbugs.gnu.org/34140

Ref: https://sourceware.org/bugzilla/show_bug.cgi?id=24114
Signed-off-by: Alin Nastac &lt;alin.nastac@gmail.com&gt;
[commit title and description facelift]
Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>glibc: update to latest 2.27 commit (BZ#23637)</title>
<updated>2019-12-14T13:06:03Z</updated>
<author>
<name>Hans Dedecker</name>
</author>
<published>2019-09-17T20:11:26Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=929c6d733a05a8dd137de13b026812d13476181a'/>
<id>urn:sha1:929c6d733a05a8dd137de13b026812d13476181a</id>
<content type='text'>
5b4f7382af Add undef to fix test failure.
9456483fb2 Improve performance of memmem
373f8b06a3 Improve performance of strstr
4ec1b9e913 Fix strstr bug with huge needles (bug 23637)
ecd6271ed8 Speedup first memmem match
bba6b9288f Simplify and speedup strstr/strcasestr first match
7a4da6ef7a Improve strstr performance

Signed-off-by: Hans Dedecker &lt;dedeckeh@gmail.com&gt;
</content>
</entry>
<entry>
<title>glibc: update to latest 2.27 commit (BZ #24228, BZ #24744, BZ #24699)</title>
<updated>2019-12-14T13:05:41Z</updated>
<author>
<name>Hans Dedecker</name>
</author>
<published>2019-09-08T19:13:59Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=e8e09c58935de145d07c51a7db1ee30bb446ab0a'/>
<id>urn:sha1:e8e09c58935de145d07c51a7db1ee30bb446ab0a</id>
<content type='text'>
5f0d2e0491 [AArch64] Add ifunc support for Ares
e6b7252040 aarch64,falkor: Use vector registers for memcpy
c74b884f70 aarch64,falkor: Ignore prefetcher tagging for smaller copies
0fc5934ebd aarch64/strncmp: Use lsr instead of mov+lsr
e0a0bd3acc aarch64/strncmp: Unbreak builds with old binutils
638caf3000 aarch64: Improve strncmp for mutually misaligned inputs
d5f45a29ff aarch64/strcmp: fix misaligned loop jump target
7f690fafad aarch64: Improve strcmp unaligned performance
40df047b3b aarch64: Fix branch target to loop16
062139f233 aarch64: Optimized memcmp for medium to large sizes
f3e2add213 aarch64: Use the L() macro for labels in memcmp
22bd3ab40e posix: Fix large mmap64 offset for mips64n32 (BZ#24699)
bdd16894aa aarch64: handle STO_AARCH64_VARIANT_PCS
0b48caab9a aarch64: add STO_AARCH64_VARIANT_PCS and DT_AARCH64_VARIANT_PCS
949da7f2fd io: Remove copy_file_range emulation [BZ #24744]
f056ac8363 libio: do not attempt to free wide buffers of legacy streams [BZ #24228]
5f90e009b1 NEWS: add entries for bugs 22964, 24180, and 24531

Signed-off-by: Hans Dedecker &lt;dedeckeh@gmail.com&gt;
</content>
</entry>
<entry>
<title>toolchain/gcc: bump to 7.5.0</title>
<updated>2019-11-19T14:02:22Z</updated>
<author>
<name>Koen Vandeputte</name>
</author>
<published>2019-11-19T10:08:45Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=dd284c6c57f7b242e9626ecf5455b8f8e9f3f569'/>
<id>urn:sha1:dd284c6c57f7b242e9626ecf5455b8f8e9f3f569</id>
<content type='text'>
This updates the GCC to the next minor release which fixes +213 bugs.
Tested on ARMv6, ARMv7, MIPS R2, x86

Signed-off-by: Koen Vandeputte &lt;koen.vandeputte@ncentric.com&gt;
</content>
</entry>
<entry>
<title>toolchain/gdb: bump to 8.3.1</title>
<updated>2019-10-15T14:13:06Z</updated>
<author>
<name>Koen Vandeputte</name>
</author>
<published>2019-10-14T14:09:08Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=04c81498dfe15c556cc31442f3f0bc473384a1e8'/>
<id>urn:sha1:04c81498dfe15c556cc31442f3f0bc473384a1e8</id>
<content type='text'>
GDB 8.3.1 brings the following fixes and enhancements over GDB 8.3:

PR c++/20020 (GDB segfault on printing objects)
PR gdb/24454 (nat/x86-linux-dregs.c failed assertion)
PR breakpoints/24541 (Incorrect evaluation of systemtap probes due to register being signed and probe expression assuming unsigned)
PR symtab/24545 (Symbol loading performance regression with cc1)
PR gdb/24592 (amd64-&gt;i386 linux syscall restart problem)
PR gdb/25009 (terminate called after throwing an instance of 'srchilite::ParserException')
PR gdb/25010 (Calls to error () can cause SIGTTOU to send gdb to the background)
PR breakpoints/25011 (Breakpoints on file reloads broken for PIE binaries)

This corrective release also brings the following testsuite fixes and
enhancements:

PR testsuite/25005 (gdb-caching-proc.exp takes a lot of time on skip_opencl_tests)
PR testsuite/25016 (Test-case failures for -pie)

GDB 8.3 includes the following changes and enhancements:

* Support for new native configurations (also available as a target configuration):
     - RISC-V GNU/Linux (riscv*-*-linux*)
     - RISC-V FreeBSD (riscv*-*-freebsd*)

* Support for new target configurations:
     - CSKY ELF (csky*-*-elf)
     - CSKY GNU/Linux (csky*-*-linux)
     - NXP S12Z ELF (s12z-*-elf)
     - OpenRISC GNU/Linux (or1k*-*-linux*)

* Native Windows debugging is only supported on Windows XP or later.

* The Python API in GDB now requires Python 2.6 or later.

* GDB now supports terminal styling for the CLI and TUI.
  Source highlighting is also supported by building GDB with GNU
  Highlight.

* Experimental support for compilation and injection of C++ source
  code into the inferior (requires GCC 7.1 or higher, built with
  libcp1.so).

* GDB and GDBserver now support IPv6 connections.

* Target description support on RISC-V targets.

* Various enhancements to several commands:
     - "frame", "select-frame" and "info frame" commands
     - "info functions", "info types", "info variables"
     - "info thread"
     - "info proc"
     - System call alias catchpoint support on FreeBSD
     - "target remote" support for Unix Domain sockets.

* Support for displaying all files opened by a process

* DWARF index cache: GDB can now automatically save indices of DWARF
  symbols on disk to speed up further loading of the same binaries.

* Various GDB/MI enhancements.

* GDBserver on PowerPC GNU/Linux now supports access to the PPR,
  DSCR, TAR, EBB/PMU, and HTM registers.

* Ada task switching support when debugging programs built with
  the Ravenscar profile added to aarch64-elf.

* GDB in batch mode now exits with status 1 if the last executed
  command failed.

* Support for building GDB with GCC's Undefined Behavior Sanitizer.

Signed-off-by: Koen Vandeputte &lt;koen.vandeputte@ncentric.com&gt;
(cherry picked from commit 942f020bf4d0f49e4c5586a59ddf21c00e9d8bbe)
</content>
</entry>
<entry>
<title>toolchain/musl: bump to version 1.1.24</title>
<updated>2019-10-15T14:13:06Z</updated>
<author>
<name>Koen Vandeputte</name>
</author>
<published>2019-10-14T12:51:23Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=00f96dcddb7717a8cd30e75ef38e7ec03adb0f6b'/>
<id>urn:sha1:00f96dcddb7717a8cd30e75ef38e7ec03adb0f6b</id>
<content type='text'>
1.1.24 release notes

new features:
- GLOB_TILDE extension to glob
- non-stub catgets localization API, using netbsd binary catalog format
- posix_spawn file actions for [f]chdir (extension, pending future standard)
- secure_getenv function (extension)
- copy_file_range syscall wrapper (Linux extension)
- header-level support for new linux features in 5.2

performance:
- new fast path for lrint (generic C version) on 32-bit archs

major internal changes:
- functions involving time are overhauled to be time64-ready in 32-bit archs
- x32 uses the new time64 code paths to replace nasty hacks in syscall glue

compatibility &amp; conformance:
- support for powerpc[64] unaligned relocation types
- powerpc[64] and sh sys/user.h no longer clash with kernel asm/ptrace.h
- select no longer modifies timeout on failure (or at all)
- mips64 stat results are no longer limited to 32-bit time range
- optreset (BSD extension) now has a public declaration
- support for clang inconsistencies in wchar_t type vs some 32-bit archs
- mips r6 syscall asm no longer has invalid lo/hi register clobbers
- vestigial asm declarations of __tls_get_new are removed (broke some tooling)
- riscv64 mcontext_t mismatch glibc's member naming is corrected

bugs fixed:
- glob failed to match broken symlinks consistently
- invalid use of interposed calloc to allocate initial TLS
- various dlsym symbol resolution logic errors
- semctl with SEM_STAT_ANY didn't work
- pthread_create with explicit scheduling was subject to priority inversion
- pthread_create failure path had data race for thread count
- timer_create with SIGEV_THREAD notification had data race getting timer id
- wide printf family failed to support l modifier for float formats

arch-specific bugs fixed:
- x87 floating point stack imbalance in math asm (i386-only CVE-2019-14697)
- x32 clock_adjtime, getrusage, wait3, wait4 produced junk (struct mismatches)
- lseek broken on x32 and mipsn32 with large file offsets
- riscv64 atomics weren't compiler barriers
- riscv64 atomics had broken asm constraints (missing earlyclobber flag)
- arm clone() was broken when compiled as thumb if start function returned
- mipsr6 setjmp/longjmp did not preserve fpu register state correctly

Refreshed all patches.
Removed upstreamed.

Signed-off-by: Koen Vandeputte &lt;koen.vandeputte@ncentric.com&gt;
</content>
</entry>
<entry>
<title>toolchain: fix gcc depends on kernel headers</title>
<updated>2019-09-04T11:35:53Z</updated>
<author>
<name>Hauke Mehrtens</name>
</author>
<published>2019-07-23T14:53:51Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=930c141b69c7dd19e474586290573a19f69aa5a2'/>
<id>urn:sha1:930c141b69c7dd19e474586290573a19f69aa5a2</id>
<content type='text'>
GCC needs the kernel headers to compile.
Some GCC file includes asm/unistd.h which is provided by the kernel headers.
Normally the kernel headers build is very fast and ready before the gcc uses
it, but if it clones the kernel from a slow git repository it takes longer
and then it could be that the gcc already wants to use the kernel headers
before they are available. This patch fixes this problem by adding the
missing dependency.

Signed-off-by: Hauke Mehrtens &lt;hauke.mehrtens@intel.com&gt;
(cherry picked from commit b20156ba704ed8e03d030b2f294d8d19bebd2f71)
</content>
</entry>
</feed>
