925b78ae16
* Fix hardcoded `armhf` in pmb/aportgen/binutils.py * Generate aports: `binutils-aarch64`, `musl-aarch64`, `gcc-aarch64` * Distccd: Remember the cross-compiler architecture (currently armhf or aarch64), that the current distccd is running as, and restart distccd with the correct architecture, in case a different arch is needed than what it is currently running as. (Depending on the cross-compiler arch, the PATH variable gets adjusted before starting distccd) * Testcases: add aport generation for aarch64, add cross-compiling to aarch64 * pmb/parse/arch.py: Add aarch64 to the mapping
40 lines
1.6 KiB
Diff
40 lines
1.6 KiB
Diff
# DP: Turn on -D_FORTIFY_SOURCE=2 by default for C, C++, ObjC, ObjC++,
|
|
# DP: if the optimization level is > 0
|
|
|
|
---
|
|
gcc/doc/invoke.texi | 6 ++++++
|
|
gcc/c-family/c-cppbuiltin.c | 3 +
|
|
2 files changed, 9 insertions(+), 0 deletions(-)
|
|
|
|
Index: b/gcc/doc/invoke.texi
|
|
===================================================================
|
|
--- a/gcc/doc/invoke.texi
|
|
+++ b/gcc/doc/invoke.texi
|
|
@@ -7840,6 +7840,12 @@ also turns on the following optimization
|
|
Please note the warning under @option{-fgcse} about
|
|
invoking @option{-O2} on programs that use computed gotos.
|
|
|
|
+NOTE: In Alpine Linux, @option{-D_FORTIFY_SOURCE=2} is
|
|
+set by default, and is activated when @option{-O} is set to 2 or higher.
|
|
+This enables additional compile-time and run-time checks for several libc
|
|
+functions. To disable, specify either @option{-U_FORTIFY_SOURCE} or
|
|
+@option{-D_FORTIFY_SOURCE=0}.
|
|
+
|
|
@item -O3
|
|
@opindex O3
|
|
Optimize yet more. @option{-O3} turns on all optimizations specified
|
|
Index: b/gcc/c-family/c-cppbuiltin.c
|
|
===================================================================
|
|
--- a/gcc/c-family/c-cppbuiltin.c
|
|
+++ b/gcc/c-family/c-cppbuiltin.c
|
|
@@ -1176,6 +1176,10 @@ c_cpp_builtins (cpp_reader *pfile)
|
|
builtin_define_with_value ("__REGISTER_PREFIX__", REGISTER_PREFIX, 0);
|
|
builtin_define_with_value ("__USER_LABEL_PREFIX__", user_label_prefix, 0);
|
|
|
|
+ /* Fortify Source enabled by default for optimization levels > 0 */
|
|
+ if (optimize)
|
|
+ builtin_define_with_int_value ("_FORTIFY_SOURCE", 2);
|
|
+
|
|
/* Misc. */
|
|
if (flag_gnu89_inline)
|
|
cpp_define (pfile, "__GNUC_GNU_INLINE__");
|