patches/gcc/4.4.4/150-default-fortify-source.patch
author Anthony Foiani <anthony.foiani@gmail.com>
Thu Oct 07 22:37:06 2010 +0200 (2010-10-07)
changeset 2138 2242d87c5404
child 2148 ada9128c98b8
permissions -rw-r--r--
scripts: always create lib32 and lib64 symlinks

Unconditionally create the lib32 -> lib/ and lib64 -> lib/ symlinks.

This is reportedly a fix to build a toolchain for a 32-bit target on
a 'pure' 64-bit host (eg. on Fedora FC12, host libs are in lib64/,
and there is no lib -> lib64 symlink, as we can see on other distors,
as Debian). As gcc only puts static host lib in lib64/ (along with
target files in subdirs), we can safely create the symlinks.

Also note that the symlinks are summarily removed at the end
of the build.

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