patches/gcc/4.4.4/140-default-format-security.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Tue Jul 31 22:27:29 2012 +0200 (2012-07-31)
changeset 3018 7776e8369284
parent 1948 d341be24dc68
permissions -rw-r--r--
complibs/cloog: create missing m4 dir

Because we now patch configure.in and configure, the Makefile quicks
in a re-build rule as the source files are now more recent than the
bundled generated files, and that fails because the m4 directory
is missing, although on some systems where aclocal is not installed,
the re-build rule does nothing (except a warning).

Always create tht directory.

Reported-by: Per Arnold Blaasmo <per-arnold.blaasmo@atmel.com>
[Also thanks to Thomas De Schampheleire <patrickdepinguin@gmail.com>
for some digging works on this issue]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
yann@1948
     1
diff -durN gcc-4.4.4.orig/gcc/c-common.c gcc-4.4.4/gcc/c-common.c
yann@1948
     2
--- gcc-4.4.4.orig/gcc/c-common.c	2009-11-05 15:57:57.000000000 +0100
yann@1948
     3
+++ gcc-4.4.4/gcc/c-common.c	2010-05-16 19:11:21.000000000 +0200
yann@1948
     4
@@ -301,7 +301,7 @@
yann@1948
     5
 /* Warn about format/argument anomalies in calls to formatted I/O functions
yann@1948
     6
    (*printf, *scanf, strftime, strfmon, etc.).  */
yann@1948
     7
 
yann@1948
     8
-int warn_format;
yann@1948
     9
+int warn_format = 1;
yann@1948
    10
 
yann@1948
    11
 /* Warn about using __null (as NULL in C++) as sentinel.  For code compiled
yann@1948
    12
    with GCC this doesn't matter as __null is guaranteed to have the right
yann@1948
    13
diff -durN gcc-4.4.4.orig/gcc/c.opt gcc-4.4.4/gcc/c.opt
yann@1948
    14
--- gcc-4.4.4.orig/gcc/c.opt	2009-09-18 23:53:23.000000000 +0200
yann@1948
    15
+++ gcc-4.4.4/gcc/c.opt	2010-05-16 19:11:21.000000000 +0200
yann@1948
    16
@@ -236,7 +236,7 @@
yann@1948
    17
 Warn about format strings that contain NUL bytes
yann@1948
    18
 
yann@1948
    19
 Wformat-security
yann@1948
    20
-C ObjC C++ ObjC++ Var(warn_format_security) Warning
yann@1948
    21
+C ObjC C++ ObjC++ Var(warn_format_security) Init(1) Warning
yann@1948
    22
 Warn about possible security problems with format functions
yann@1948
    23
 
yann@1948
    24
 Wformat-y2k
yann@1948
    25
diff -durN gcc-4.4.4.orig/gcc/doc/invoke.texi gcc-4.4.4/gcc/doc/invoke.texi
yann@1948
    26
--- gcc-4.4.4.orig/gcc/doc/invoke.texi	2010-04-08 12:46:46.000000000 +0200
yann@1948
    27
+++ gcc-4.4.4/gcc/doc/invoke.texi	2010-05-16 19:11:21.000000000 +0200
yann@1948
    28
@@ -2888,6 +2888,9 @@
yann@1948
    29
 @option{-Wformat-nonliteral}, @option{-Wformat-security}, and
yann@1948
    30
 @option{-Wformat=2} are available, but are not included in @option{-Wall}.
yann@1948
    31
 
yann@1948
    32
+NOTE: In Gentoo, this option is enabled by default for C, C++, ObjC, ObjC++.
yann@1948
    33
+To disable, use @option{-Wformat=0}.
yann@1948
    34
+
yann@1948
    35
 @item -Wformat-y2k
yann@1948
    36
 @opindex Wformat-y2k
yann@1948
    37
 @opindex Wno-format-y2k
yann@1948
    38
@@ -2941,6 +2944,11 @@
yann@1948
    39
 in future warnings may be added to @option{-Wformat-security} that are not
yann@1948
    40
 included in @option{-Wformat-nonliteral}.)
yann@1948
    41
 
yann@1948
    42
+NOTE: In Gentoo, this option is enabled by default for C, C++, ObjC, ObjC++.
yann@1948
    43
+To disable, use @option{-Wno-format-security}, or disable all format warnings
yann@1948
    44
+with @option{-Wformat=0}.  To make format security warnings fatal, specify
yann@1948
    45
+@option{-Werror=format-security}.
yann@1948
    46
+
yann@1948
    47
 @item -Wformat=2
yann@1948
    48
 @opindex Wformat=2
yann@1948
    49
 @opindex Wno-format=2