Age | Commit message (Collapse) | Author | Files | Lines |
|
Based-ish on Chimera's patches, but a bit more thorough.
* 32-bit ports don't have liblsan or libtsan.
* We can't dep on utmps-dev for utmpx, so hard-code size.
The size is the same on all six arches per my testing.
|
|
0012-static-pie and 201-ada were forward-ported by my own paws.
Three digit 0xx underscore patches are from Gentoo. This is also the
source of the insn-split and match-split patches, which significantly
increase performance on build. They are also the source of the new
configure option --with-matchpd-partitions. On systems with very many
cores/threads, a number higher than 32 would probably perform even
better, but 32 should give decent perf on 8+ threads, and runs quite
nicely on the 64-thread Talos II I ran the testbuild on.
202 is from Void. The 300s are originally written by me.
The Ada patch now includes an improvement to use posix_openpt instead
of getpt, which fixes link errors later on.
We also now use STAGE1_CFLAGS and BOOT_CFLAGS to improve build times.
Improvement was clocked from 40m to 32m (-8m, or 20%) on gwyn.
The patch for Go name mangling is needed to build packages that use
reflect2, which includes user/gitlab-runner.
|
|
On 32-bit ARM, -Bsymbolic isn't enough. -Bstatic should be correct on
all platforms, and should fix static PIE linking on armv7.
Ref: #1070
|
|
|
|
We add more functions to the unwind string comparisons, and pull in the
symbols for libucontext.
Fixes: 0dd86764 ("system/gcc: Ensure gccgo doesn't run off the stack")
Refs: #832
|
|
libucontext doesn't clear the stack frame below makecontext. This
caused us to end up crashing like Solaris[1].
Fixes: #832
[1]: https://gcc.gnu.org/PR52583#c21
|
|
This workaround is already needed upstream for FreeBSD. Let's go ahead
and use the same workaround for musl. We also ensure they are not
declared `inline` so that they are available as library functions.
We also have a hack in place for the stage1 Ada driver due to their own
hack pulling in the Arm unwind functions directly without linking.
Fixes: #866 (and probably more as we continue building packages)
|
|
|
|
|
|
|
|
1. IBM long double ABI fix in libgcc for static builds
2. time64 support on 32-bit arches in std::chrono (libstdc++)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
These patches have been forward-ported to 8:
002_all_default-relro.patch
005_all_default-as-needed.patch
011_all_default-warn-format-security.patch
012_all_default-warn-trampolines.patch
We are no longer using fortify-headers, so these patches are no longer needed:
003_all_default-fortify-source.patch
050_all_libiberty-asprintf.patch
053_all_libitm-no-fortify-source.patch
These patches no longer appear necessary:
067_all_gcc-poison-system-directories.patch
090_all_pr55930-dependency-tracking.patch
201-cilkrts.patch
203-libgcc_s.patch
207-static-pie.patch
These patches have already been applied upstream:
204-linux_libc_has_function.patch
332-gccgo-remove-ustat.patch
ada-aarch64-multiarch.patch
ada-fixes.patch
boehm-gc-musl.patch
fix-rs6000-pie.patch
gcc-4.8-build-args.patch
lra-pentium.patch
These patches are no longer necessary because GCJ has been removed:
310-build-gcj-s390x.patch
fix-gcj-iconv-musl.patch
fix-gcj-musl.patch
fix-gcj-stdgnu14-link.patch
The rest of the changes are updates from nsz's patchset.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|