patches/gcc/4.4.4/150-default-fortify-source.patch
author Remy Bohmer <linux@bohmer.net>
Thu May 27 23:18:19 2010 +0200 (2010-05-27)
changeset 2060 51e4597b07fc
child 2148 ada9128c98b8
permissions -rw-r--r--
scripts: add option to strip all toolchain executables

To reduce filesizes of the toolchain and even improve build times
of projects to be build with this toolchain it is usefull to strip
the delivered toolchain executables. Since it is not likely that we
will debug the toolchain executables itself we do not need the
debug information inside the executables itself.

Signed-off-by: Remy Bohmer <linux@bohmer.net>
yann@1948
     1
diff -durN gcc-4.4.0.orig/gcc/doc/invoke.texi gcc-4.4.0/gcc/doc/invoke.texi
yann@1948
     2
yann@1948
     3
diff -durN gcc-4.4.4.orig/gcc/doc/invoke.texi gcc-4.4.4/gcc/doc/invoke.texi
yann@1948
     4
--- gcc-4.4.4.orig/gcc/doc/invoke.texi	2010-05-16 19:11:21.000000000 +0200
yann@1948
     5
+++ gcc-4.4.4/gcc/doc/invoke.texi	2010-05-16 19:11:30.000000000 +0200
yann@1948
     6
@@ -5432,6 +5432,11 @@
yann@1948
     7
 Please note the warning under @option{-fgcse} about
yann@1948
     8
 invoking @option{-O2} on programs that use computed gotos.
yann@1948
     9
 
yann@1948
    10
+NOTE: In Gentoo, @option{-D_FORTIFY_SOURCE=2} is set by default, and is
yann@1948
    11
+activated when @option{-O} is set to 2 or higher.  This enables additional
yann@1948
    12
+compile-time and run-time checks for several libc functions.  To disable,
yann@1948
    13
+specify either @option{-U_FORTIFY_SOURCE} or @option{-D_FORTIFY_SOURCE=0}.
yann@1948
    14
+
yann@1948
    15
 @item -O3
yann@1948
    16
 @opindex O3
yann@1948
    17
 Optimize yet more.  @option{-O3} turns on all optimizations specified
yann@1948
    18
diff -durN gcc-4.4.4.orig/gcc/gcc.c gcc-4.4.4/gcc/gcc.c
yann@1948
    19
--- gcc-4.4.4.orig/gcc/gcc.c	2010-01-09 01:05:06.000000000 +0100
yann@1948
    20
+++ gcc-4.4.4/gcc/gcc.c	2010-05-16 19:11:30.000000000 +0200
yann@1948
    21
@@ -807,6 +807,7 @@
yann@1948
    22
  %{H} %C %{D*&U*&A*} %{i*} %Z %i\
yann@1948
    23
  %{fmudflap:-D_MUDFLAP -include mf-runtime.h}\
yann@1948
    24
  %{fmudflapth:-D_MUDFLAP -D_MUDFLAPTH -include mf-runtime.h}\
yann@1948
    25
+ %{!D_FORTIFY_SOURCE:%{!D_FORTIFY_SOURCE=*:%{!U_FORTIFY_SOURCE:-D_FORTIFY_SOURCE=2}}}\
yann@1948
    26
  %{E|M|MM:%W{o*}}";
yann@1948
    27
 
yann@1948
    28
 /* This contains cpp options which are common with cc1_options and are passed