summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gcc/gcc-4.5.1/gcc-poison-system-directories.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-4.5.1/gcc-poison-system-directories.patch')
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.5.1/gcc-poison-system-directories.patch203
1 files changed, 0 insertions, 203 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.5.1/gcc-poison-system-directories.patch b/meta/recipes-devtools/gcc/gcc-4.5.1/gcc-poison-system-directories.patch
deleted file mode 100644
index 59047126a3..0000000000
--- a/meta/recipes-devtools/gcc/gcc-4.5.1/gcc-poison-system-directories.patch
+++ /dev/null
@@ -1,203 +0,0 @@
1Upstream-Status: Inappropriate [distribution: codesourcery]
2
3 gcc/
4 2008-07-02 Joseph Myers <joseph@codesourcery.com>
5 * c-incpath.c: Include toplev.h.
6 (merge_include_chains): Use warning instead of cpp_error for
7 system directory poisoning diagnostic.
8 * Makefile.in (c-incpath.o): Depend on toplev.h.
9 * gcc.c (LINK_COMMAND_SPEC): Pass
10 --error-poison-system-directories if
11 -Werror=poison-system-directories.
12
13 2007-06-13 Joseph Myers <joseph@codesourcery.com>
14 * common.opt (--Wno-poison-system-directories): New.
15 * doc/invoke.texi (-Wno-poison-system-directories): Document.
16 * c-incpath.c: Include flags.h.
17 (merge_include_chains): Check flag_poison_system_directories.
18 * gcc.c (LINK_COMMAND_SPEC): Pass --no-poison-system-directories
19 to linker if -Wno-poison-system-directories.
20 * Makefile.in (c-incpath.o): Depend on $(FLAGS_H).
21
22 2007-03-20 Daniel Jacobowitz <dan@codesourcery.com>
23 Joseph Myers <joseph@codesourcery.com>
24 * configure.ac (--enable-poison-system-directories): New option.
25 * configure, config.in: Regenerate.
26 * c-incpath.c (merge_include_chains): If
27 ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of
28 /usr/include, /usr/local/include or /usr/X11R6/include.
29
30Index: gcc-4.5.0/gcc/common.opt
31===================================================================
32--- gcc-4.5.0.orig/gcc/common.opt 2010-03-17 20:01:09.000000000 -0700
33+++ gcc-4.5.0/gcc/common.opt 2010-06-25 11:35:39.965383734 -0700
34@@ -152,6 +152,10 @@
35 Common Var(warn_padded) Warning
36 Warn when padding is required to align structure members
37
38+Wpoison-system-directories
39+Common Var(flag_poison_system_directories) Init(1) Warning
40+Warn for -I and -L options using system directories if cross compiling
41+
42 Wshadow
43 Common Var(warn_shadow) Warning
44 Warn when one local variable shadows another
45Index: gcc-4.5.0/gcc/config.in
46===================================================================
47--- gcc-4.5.0.orig/gcc/config.in 2010-04-14 02:30:07.000000000 -0700
48+++ gcc-4.5.0/gcc/config.in 2010-06-25 11:35:39.969383588 -0700
49@@ -132,6 +132,12 @@
50 #endif
51
52
53+/* Define to warn for use of native system header directories */
54+#ifndef USED_FOR_TARGET
55+#undef ENABLE_POISON_SYSTEM_DIRECTORIES
56+#endif
57+
58+
59 /* Define if you want all operations on RTL (the basic data structure of the
60 optimizer and back end) to be checked for dynamic type safety at runtime.
61 This is quite expensive. */
62Index: gcc-4.5.0/gcc/configure.ac
63===================================================================
64--- gcc-4.5.0.orig/gcc/configure.ac 2010-06-25 11:34:01.433382161 -0700
65+++ gcc-4.5.0/gcc/configure.ac 2010-06-25 11:35:39.969383588 -0700
66@@ -4276,6 +4276,16 @@
67 fi)
68 AC_SUBST(slibdir)
69
70+AC_ARG_ENABLE([poison-system-directories],
71+ AS_HELP_STRING([--enable-poison-system-directories],
72+ [warn for use of native system header directories]),,
73+ [enable_poison_system_directories=no])
74+if test "x${enable_poison_system_directories}" = "xyes"; then
75+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES],
76+ [1],
77+ [Define to warn for use of native system header directories])
78+fi
79+
80 # Substitute configuration variables
81 AC_SUBST(subdirs)
82 AC_SUBST(srcdir)
83Index: gcc-4.5.0/gcc/doc/invoke.texi
84===================================================================
85--- gcc-4.5.0.orig/gcc/doc/invoke.texi 2010-04-06 07:02:22.000000000 -0700
86+++ gcc-4.5.0/gcc/doc/invoke.texi 2010-06-25 11:35:39.992666345 -0700
87@@ -252,6 +252,7 @@
88 -Woverlength-strings -Wpacked -Wpacked-bitfield-compat -Wpadded @gol
89 -Wparentheses -Wpedantic-ms-format -Wno-pedantic-ms-format @gol
90 -Wpointer-arith -Wno-pointer-to-int-cast @gol
91+-Wno-poison-system-directories @gol
92 -Wredundant-decls @gol
93 -Wreturn-type -Wsequence-point -Wshadow @gol
94 -Wsign-compare -Wsign-conversion -Wstack-protector @gol
95@@ -3603,6 +3604,14 @@
96 option will @emph{not} warn about unknown pragmas in system
97 headers---for that, @option{-Wunknown-pragmas} must also be used.
98
99+@item -Wno-poison-system-directories
100+@opindex Wno-poison-system-directories
101+Do not warn for @option{-I} or @option{-L} options using system
102+directories such as @file{/usr/include} when cross compiling. This
103+option is intended for use in chroot environments when such
104+directories contain the correct headers and libraries for the target
105+system rather than the host.
106+
107 @item -Wfloat-equal
108 @opindex Wfloat-equal
109 @opindex Wno-float-equal
110Index: gcc-4.5.0/gcc/gcc.c
111===================================================================
112--- gcc-4.5.0.orig/gcc/gcc.c 2010-02-11 04:23:08.000000000 -0800
113+++ gcc-4.5.0/gcc/gcc.c 2010-06-25 11:35:40.009381858 -0700
114@@ -792,6 +792,8 @@
115 %{flto} %{fwhopr} %l " LINK_PIE_SPEC \
116 "%X %{o*} %{A} %{d} %{e*} %{m} %{N} %{n} %{r}\
117 %{s} %{t} %{u*} %{x} %{z} %{Z} %{!A:%{!nostdlib:%{!nostartfiles:%S}}}\
118+ %{Wno-poison-system-directories:--no-poison-system-directories}\
119+ %{Werror=poison-system-directories:--error-poison-system-directories}\
120 %{static:} %{L*} %(mfwrap) %(link_libgcc) %o\
121 %{fopenmp|ftree-parallelize-loops=*:%:include(libgomp.spec)%(link_gomp)} %(mflib)\
122 %{fprofile-arcs|fprofile-generate*|coverage:-lgcov}\
123Index: gcc-4.5.0/gcc/incpath.c
124===================================================================
125--- gcc-4.5.0.orig/gcc/incpath.c 2009-11-25 02:55:54.000000000 -0800
126+++ gcc-4.5.0/gcc/incpath.c 2010-06-25 11:35:40.017209818 -0700
127@@ -353,6 +353,24 @@
128 }
129 fprintf (stderr, _("End of search list.\n"));
130 }
131+
132+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES
133+ if (flag_poison_system_directories)
134+ {
135+ struct cpp_dir *p;
136+
137+ for (p = heads[QUOTE]; p; p = p->next)
138+ {
139+ if ((!strncmp (p->name, "/usr/include", 12))
140+ || (!strncmp (p->name, "/usr/local/include", 18))
141+ || (!strncmp (p->name, "/usr/X11R6/include", 18)))
142+ warning (OPT_Wpoison_system_directories,
143+ "include location \"%s\" is unsafe for "
144+ "cross-compilation",
145+ p->name);
146+ }
147+ }
148+#endif
149 }
150
151 /* Use given -I paths for #include "..." but not #include <...>, and
152diff -ur gcc-4.5.0.orig/gcc/Makefile.in gcc-4.5.0/gcc/Makefile.in
153--- gcc-4.5.0.orig/gcc/Makefile.in 2010-09-29 17:13:49.164088845 -0500
154+++ gcc-4.5.0/gcc/Makefile.in 2010-09-29 18:48:19.300178501 -0500
155@@ -1965,7 +1965,7 @@
156
157 incpath.o: incpath.c incpath.h $(CONFIG_H) $(SYSTEM_H) $(CPPLIB_H) \
158 intl.h prefix.h coretypes.h $(TM_H) cppdefault.h $(TARGET_H) \
159- $(MACHMODE_H)
160+ $(MACHMODE_H) $(FLAGS_H) toplev.h
161
162 c-decl.o : c-decl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
163 $(RTL_H) $(C_TREE_H) $(GGC_H) $(TARGET_H) $(FLAGS_H) $(FUNCTION_H) output.h \
164diff -ur gcc-4.5.0.orig/gcc/configure gcc-4.5.0/gcc/configure
165--- gcc-4.5.0.orig/gcc/configure 2010-09-29 14:58:31.702054881 -0500
166+++ gcc-4.5.0/gcc/configure 2010-09-29 18:46:31.486068500 -0500
167@@ -913,6 +913,7 @@
168 enable_maintainer_mode
169 enable_version_specific_runtime_libs
170 with_slibdir
171+enable_poison_system_directories
172 enable_plugin
173 enable_target_optspace
174 '
175@@ -1621,6 +1622,8 @@
176 --enable-version-specific-runtime-libs
177 specify that runtime libraries should be
178 installed in a compiler-specific directory
179+ --enable-poison-system-directories
180+ warn for use of native system header directories
181 --enable-plugin enable plugin support
182
183 Optional Packages:
184@@ -25339,6 +25377,19 @@
185
186
187
188+# Check whether --enable-poison-system-directories was given.
189+if test "${enable_poison_system_directories+set}" = set; then :
190+ enableval=$enable_poison_system_directories;
191+else
192+ enable_poison_system_directories=no
193+fi
194+
195+if test "x${enable_poison_system_directories}" = "xyes"; then
196+
197+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h
198+
199+fi
200+
201 # Substitute configuration variables
202
203