diff options
Diffstat (limited to 'packages/gcc/gcc-4.3.1/debian/multiarch-include.dpatch')
-rw-r--r-- | packages/gcc/gcc-4.3.1/debian/multiarch-include.dpatch | 138 |
1 files changed, 0 insertions, 138 deletions
diff --git a/packages/gcc/gcc-4.3.1/debian/multiarch-include.dpatch b/packages/gcc/gcc-4.3.1/debian/multiarch-include.dpatch deleted file mode 100644 index 2580444e7d..0000000000 --- a/packages/gcc/gcc-4.3.1/debian/multiarch-include.dpatch +++ /dev/null @@ -1,138 +0,0 @@ -#! /bin/sh -e - -# DP: biarch-include.dpatch -# DP: -# DP: Adds biarch include directories -# DP: /usr/local/include/<arch>-linux-gnu -# DP: /usr/include/<arch>-linux-gnu -# DP: to the system include paths, depending on 32/64 bit mode. - -dir= -if [ $# -eq 3 -a "$2" = '-d' ]; then - pdir="-d $3" - dir="$3/" -elif [ $# -ne 1 ]; then - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -fi -case "$1" in - -patch) - patch $pdir -f --no-backup-if-mismatch -p0 < $0 - ;; - -unpatch) - patch $pdir -f --no-backup-if-mismatch -R -p0 < $0 - ;; - *) - echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" - exit 1 -esac -exit 0 - -Index: gcc/cppdefault.c -=================================================================== ---- gcc/cppdefault.c (revision 112832) -+++ gcc/cppdefault.c (working copy) -@@ -60,6 +60,7 @@ - #endif - #ifdef LOCAL_INCLUDE_DIR - /* /usr/local/include comes before the fixincluded header files. */ -+ { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 2 }, - { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 0 }, - #endif - #ifdef PREFIX_INCLUDE_DIR -@@ -83,6 +84,7 @@ - #endif - #ifdef STANDARD_INCLUDE_DIR - /* /usr/include comes dead last. */ -+ { STANDARD_INCLUDE_DIR, STANDARD_INCLUDE_COMPONENT, 0, 0, 1, 2 }, - { STANDARD_INCLUDE_DIR, STANDARD_INCLUDE_COMPONENT, 0, 0, 1, 0 }, - #endif - { 0, 0, 0, 0, 0, 0 } -Index: gcc/c-incpath.c -=================================================================== ---- gcc/c-incpath.c (revision 112832) -+++ gcc/c-incpath.c (working copy) -@@ -30,6 +30,7 @@ - #include "intl.h" - #include "c-incpath.h" - #include "cppdefault.h" -+#include "errors.h" - - /* Windows does not natively support inodes, and neither does MSDOS. - Cygwin's emulation can generate non-unique inodes, so don't use it. -@@ -121,6 +121,31 @@ - } - } - -+struct multiarch_mapping -+{ -+ const char *const multilib; -+ const char *const multiarch; -+}; -+ -+const struct multiarch_mapping multiarch_mappings[] -+= { -+#include "multiarch.inc" -+ { 0, 0 } -+}; -+ -+static const char* -+multilib_to_multiarch (const char *imultilib) -+{ -+ const struct multiarch_mapping *p; -+ -+ for (p = multiarch_mappings; p->multiarch; p++) -+ { -+ if (!strcmp(p->multilib, imultilib ? imultilib : "")) -+ return p->multiarch; -+ } -+ internal_error("no multiarch mapping for multilib (%s)\n", imultilib); -+} -+ - /* Append the standard include chain defined in cppdefault.c. */ - static void - add_standard_paths (const char *sysroot, const char *iprefix, -@@ -128,6 +153,7 @@ - { - const struct default_include *p; - size_t len; -+ const char *multiarch; - - if (iprefix && (len = cpp_GCC_INCLUDE_DIR_len) != 0) - { -@@ -146,8 +172,15 @@ - if (!strncmp (p->fname, cpp_GCC_INCLUDE_DIR, len)) - { - char *str = concat (iprefix, p->fname + len, NULL); -- if (p->multilib && imultilib) -+ if (p->multilib == 1 && imultilib) - str = concat (str, dir_separator_str, imultilib, NULL); -+ if (p->multilib == 2) -+ { -+ multiarch = multilib_to_multiarch (imultilib); -+ if (!multiarch) -+ continue; -+ str = concat (str, dir_separator_str, multiarch, NULL); -+ } - add_path (str, SYSTEM, p->cxx_aware, false); - } - } -@@ -166,9 +199,17 @@ - else - str = update_path (p->fname, p->component); - -- if (p->multilib && imultilib) -+ if (p->multilib == 1 && imultilib) - str = concat (str, dir_separator_str, imultilib, NULL); - -+ if (p->multilib == 2) -+ { -+ multiarch = multilib_to_multiarch (imultilib); -+ if (!multiarch) -+ continue; -+ str = concat (str, dir_separator_str, multiarch, NULL); -+ } -+ - add_path (str, SYSTEM, p->cxx_aware, false); - } - } |