This is the first part of an effort to allow bootstrapping openjdk without downloading any binaries. The next part will be an openjdk7 package that will be used to bootstrap openjdk8. After that, we can proceed to add the missing parts to go all the way up to 11. [ci skip]
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__");
|