diff options
Diffstat (limited to 'toolchain-layer/recipes-devtools/gcc/gcc-4.5/GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch')
-rw-r--r-- | toolchain-layer/recipes-devtools/gcc/gcc-4.5/GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch | 178 |
1 files changed, 0 insertions, 178 deletions
diff --git a/toolchain-layer/recipes-devtools/gcc/gcc-4.5/GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch b/toolchain-layer/recipes-devtools/gcc/gcc-4.5/GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch deleted file mode 100644 index 5c7b346ca5..0000000000 --- a/toolchain-layer/recipes-devtools/gcc/gcc-4.5/GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch +++ /dev/null @@ -1,178 +0,0 @@ -source: http://patchwork.ozlabs.org/patch/129800/ -Upstream-Status: Submitted - -ChangeLog - * Makefile.in (gcc_gxx_include_dir_add_sysroot): New. - (PREPROCESSOR_DEFINES): Define GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT. - - * cppdefault.c (cpp_include_defaults): replace hard coded "1" with - GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT for "add_sysroot" field. - - * configure.ac (AC_SUBST): Add gcc_gxx_include_dir_add_sysroot to - control whether sysroot should be prepended to gxx include dir. - - * configure: Regenerate. - -Hi, this is a follow up for issue "http://codereview.appspot.com/4641076". - -The rationale for the patch copied from previous thread: -======================================= -The setup: - -Configuring a toolchain targeting x86-64 GNU Linux (Ubuntu Lucid), as a -cross-compiler. Using a sysroot to provide the Lucid headers+libraries, -with the sysroot path being within the GCC install tree. Want to use the -Lucid system libstdc++ and headers, which means that I'm not -building/installing libstdc++-v3. - -So, configuring with: - --with-sysroot="$SYSROOT" - --disable-libstdc++-v3 \ - --with-gxx-include-dir="$SYSROOT/usr/include/c++/4.4" \ -(among other options). - -Hoping to support two usage models with this configuration, w.r.t. use of -the sysroot: - -(1) somebody installs the sysroot in the normal location relative to the -GCC install, and relocates the whole bundle (sysroot+GCC). This works -great AFAICT, GCC finds its includes (including the C++ includes) thanks -to the add_standard_paths iprefix handling. - -(2) somebody installs the sysroot in a non-standard location, and uses ---sysroot to try to access it. This works fine for the C headers, but -doesn't work. - -For the C headers, add_standard_paths prepends the sysroot location to -the /usr/include path (since that's what's specified in cppdefault.c for -that path). It doesn't do the same for the C++ include path, though -(again, as specified in cppdefault.c). - -add_standard_paths doesn't attempt to relocate built-in include paths that -start with the compiled-in sysroot location (e.g., the g++ include dir, in -this case). This isn't surprising really: normally you either prepend the -sysroot location or you don't (as specified by cppdefault.c); none of the -built-in paths normally *start* with the sysroot location and need to be -relocated. However, in this odd-ball case of trying to use the C++ headers -from the sysroot, one of the paths *does* need to be relocated in this way. -=========================== ---- a/gcc/Makefile.in -+++ b/gcc/Makefile.in -@@ -585,6 +585,7 @@ slibdir = @slibdir@ - build_tooldir = $(exec_prefix)/$(target_noncanonical) - # Directory in which the compiler finds target-independent g++ includes. - gcc_gxx_include_dir = @gcc_gxx_include_dir@ -+gcc_gxx_include_dir_add_sysroot = @gcc_gxx_include_dir_add_sysroot@ - # Directory to search for site-specific includes. - local_includedir = $(local_prefix)/include - includedir = $(prefix)/include -@@ -3788,6 +3789,7 @@ PREPROCESSOR_DEFINES = \ - -DGCC_INCLUDE_DIR=\"$(libsubdir)/include\" \ - -DFIXED_INCLUDE_DIR=\"$(libsubdir)/include-fixed\" \ - -DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \ -+ -DGPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT=$(gcc_gxx_include_dir_add_sysroot) \ - -DGPLUSPLUS_TOOL_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/$(target_noncanonical)\" \ - -DGPLUSPLUS_BACKWARD_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/backward\" \ - -DLOCAL_INCLUDE_DIR=\"$(local_includedir)\" \ ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -144,6 +144,15 @@ if test x${gcc_gxx_include_dir} = x; the - fi - fi - -+gcc_gxx_include_dir_add_sysroot=0 -+if test "${with_sysroot+set}" = set; then : -+ gcc_gxx_without_sysroot=`expr "${gcc_gxx_include_dir}" : "${with_sysroot}"'\(.*\)'` -+ if test "${gcc_gxx_without_sysroot}"; then : -+ gcc_gxx_include_dir="${gcc_gxx_without_sysroot}" -+ gcc_gxx_include_dir_add_sysroot=1 -+ fi -+fi -+ - AC_ARG_WITH(cpp_install_dir, - [ --with-cpp-install-dir=DIR - install the user visible C preprocessor in DIR -@@ -4492,6 +4501,7 @@ AC_SUBST(extra_programs) - AC_SUBST(float_h_file) - AC_SUBST(gcc_config_arguments) - AC_SUBST(gcc_gxx_include_dir) -+AC_SUBST(gcc_gxx_include_dir_add_sysroot) - AC_SUBST(host_exeext) - AC_SUBST(host_xm_file_list) - AC_SUBST(host_xm_include_list) ---- a/gcc/cppdefault.c -+++ b/gcc/cppdefault.c -@@ -48,15 +48,18 @@ const struct default_include cpp_include - = { - #ifdef GPLUSPLUS_INCLUDE_DIR - /* Pick up GNU C++ generic include files. */ -- { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1, 0, 0 }, -+ { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1, -+ GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 0 }, - #endif - #ifdef GPLUSPLUS_TOOL_INCLUDE_DIR - /* Pick up GNU C++ target-dependent include files. */ -- { GPLUSPLUS_TOOL_INCLUDE_DIR, "G++", 1, 1, 0, 1 }, -+ { GPLUSPLUS_TOOL_INCLUDE_DIR, "G++", 1, 1, -+ GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 1 }, - #endif - #ifdef GPLUSPLUS_BACKWARD_INCLUDE_DIR - /* Pick up GNU C++ backward and deprecated include files. */ -- { GPLUSPLUS_BACKWARD_INCLUDE_DIR, "G++", 1, 1, 0, 0 }, -+ { GPLUSPLUS_BACKWARD_INCLUDE_DIR, "G++", 1, 1, -+ GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 0 }, - #endif - #ifdef LOCAL_INCLUDE_DIR - /* /usr/local/include comes before the fixincluded header files. */ ---- a/gcc/configure -+++ b/gcc/configure -@@ -639,6 +639,7 @@ host_xm_defines - host_xm_include_list - host_xm_file_list - host_exeext -+gcc_gxx_include_dir_add_sysroot - gcc_gxx_include_dir - gcc_config_arguments - float_h_file -@@ -3282,6 +3283,15 @@ if test x${gcc_gxx_include_dir} = x; the - fi - fi - -+gcc_gxx_include_dir_add_sysroot=0 -+if test "${with_sysroot+set}" = set; then : -+ gcc_gxx_without_sysroot=`expr "${gcc_gxx_include_dir}" : "${with_sysroot}"'\(.*\)'` -+ if test "${gcc_gxx_without_sysroot}"; then : -+ gcc_gxx_include_dir="${gcc_gxx_without_sysroot}" -+ gcc_gxx_include_dir_add_sysroot=1 -+ fi -+fi -+ - - # Check whether --with-cpp_install_dir was given. - if test "${with_cpp_install_dir+set}" = set; then : -@@ -17118,7 +17128,7 @@ else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF --#line 17121 "configure" -+#line 17131 "configure" - #include "confdefs.h" - - #if HAVE_DLFCN_H -@@ -17224,7 +17234,7 @@ else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF --#line 17227 "configure" -+#line 17237 "configure" - #include "confdefs.h" - - #if HAVE_DLFCN_H -@@ -25381,6 +25391,7 @@ fi - - - -+ - - - |