~ubuntu-branches/debian/sid/gcc-4.8/sid

« back to all changes in this revision

Viewing changes to .svn/pristine/44/4439705de0becf5e2a4487d5868f0cdf02ada20c.svn-base

  • Committer: Package Import Robot
  • Author(s): Matthias Klose
  • Date: 2014-12-19 19:48:34 UTC
  • Revision ID: package-import@ubuntu.com-20141219194834-4dz1q7rrn5pad823
Tags: 4.8.4-1
* GCC 4.8.4 release.
  - Fix PR target/61407 (darwin), PR middle-end/58624 (ice),
    PR sanitizer/64265 (wrong code).
* Require recent binutils to pass go test failures.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# DP: - Disable some biarch libraries for biarch builds.
 
2
# DP: - Fix multilib builds on kernels which don't support all multilibs.
 
3
 
 
4
Index: b/src/config-ml.in
 
5
===================================================================
 
6
--- a/src/config-ml.in
 
7
+++ b/src/config-ml.in
 
8
@@ -467,6 +467,25 @@
 
9
        ;;
 
10
 esac
 
11
 
 
12
+if [ -z "$biarch_multidir_names" ]; then
 
13
+  biarch_multidir_names="libiberty libstdc++-v3 libgfortran libmudflap libssp libffi libobjc libgomp"
 
14
+  echo "WARNING: biarch_multidir_names is unset. Use default value:"
 
15
+  echo "  $biarch_multidir_names"
 
16
+fi
 
17
+ml_srcbase=`basename $ml_realsrcdir`
 
18
+old_multidirs="${multidirs}"
 
19
+multidirs=""
 
20
+for x in ${old_multidirs}; do
 
21
+    case " $x " in
 
22
+       " 32 "|" n32 "|" x32 "|" 64 "|" hf "|" sf ")
 
23
+       case "$biarch_multidir_names" in
 
24
+           *"$ml_srcbase"*) multidirs="${multidirs} ${x}" ;;
 
25
+       esac
 
26
+       ;;
 
27
+       *) multidirs="${multidirs} ${x}" ;;
 
28
+    esac
 
29
+done
 
30
+
 
31
 # Remove extraneous blanks from multidirs.
 
32
 # Tests like `if [ -n "$multidirs" ]' require it.
 
33
 multidirs=`echo "$multidirs" | sed -e 's/^[ ][ ]*//' -e 's/[ ][ ]*$//' -e 's/[ ][ ]*/ /g'`
 
34
@@ -654,6 +673,35 @@
 
35
 
 
36
   for ml_dir in ${multidirs}; do
 
37
 
 
38
+    # a native build fails if the running kernel doesn't support the multilib
 
39
+    # variant; force cross compilation for these cases.
 
40
+    ml_host_arg=
 
41
+    case "${host}" in
 
42
+    i[34567]86-*-linux*)
 
43
+        case "${ml_dir}" in
 
44
+         64) ml_host_arg="--host=x86_64-linux-gnu";;
 
45
+         x32) ml_host_arg="--host=x86_64-linux-gnux32";;
 
46
+       esac
 
47
+       ;;
 
48
+    powerpc-*-linux*)
 
49
+       case "${ml_dir}" in
 
50
+         64) ml_host_arg="--host=powerpc64-linux-gnu"
 
51
+       esac
 
52
+       ;;
 
53
+    s390-*-linux*)
 
54
+       case "${ml_dir}" in
 
55
+         64) ml_host_arg="--host=s390x-linux-gnu"
 
56
+       esac
 
57
+       ;;
 
58
+    x86_64-*-linux*)
 
59
+       case "${ml_dir}" in
 
60
+         x32) ml_host_arg="--host=x86_64-linux-gnux32"
 
61
+       esac
 
62
+    esac
 
63
+    if [ -n "${ml_host_arg}" ]; then
 
64
+       ml_host_arg="${ml_host_arg} --with-default-host-alias=${host_alias}"
 
65
+    fi
 
66
+
 
67
     if [ "${ml_verbose}" = --verbose ]; then
 
68
       echo "Running configure in multilib subdir ${ml_dir}"
 
69
       echo "pwd: `${PWDCMD-pwd}`"
 
70
@@ -858,9 +906,20 @@
 
71
        fi
 
72
     fi
 
73
 
 
74
+    ml_configure_args=
 
75
+    for arg in ${ac_configure_args}
 
76
+    do
 
77
+      case $arg in
 
78
+      *CC=*)  ml_configure_args=${ml_config_env} ;;
 
79
+      *CXX=*) ml_configure_args=${ml_config_env} ;;
 
80
+      *GCJ=*) ml_configure_args=${ml_config_env} ;;
 
81
+      *) ;;
 
82
+      esac
 
83
+    done
 
84
+
 
85
     if eval ${ml_config_env} ${ml_config_shell} ${ml_recprog} \
 
86
        --with-multisubdir=${ml_dir} --with-multisrctop=${multisrctop} \
 
87
-       ${ac_configure_args} ${ml_config_env} ${ml_srcdiroption} ; then
 
88
+       ${ac_configure_args} ${ml_configure_args} ${ml_host_arg} ${ml_srcdiroption} ; then
 
89
       true
 
90
     else
 
91
       exit 1
 
92
Index: b/src/libstdc++-v3/include/Makefile.am
 
93
===================================================================
 
94
--- a/src/libstdc++-v3/include/Makefile.am
 
95
+++ b/src/libstdc++-v3/include/Makefile.am
 
96
@@ -826,8 +826,9 @@
 
97
 endif
 
98
 
 
99
 host_srcdir = ${glibcxx_srcdir}/$(OS_INC_SRCDIR)
 
100
-host_builddir = ./${host_alias}/bits
 
101
-host_installdir = ${gxx_include_dir}/${host_alias}$(MULTISUBDIR)/bits
 
102
+default_host_alias = @default_host_alias@
 
103
+host_builddir = ./${default_host_alias}/bits
 
104
+host_installdir = ${gxx_include_dir}/${default_host_alias}$(MULTISUBDIR)/bits
 
105
 host_headers = \
 
106
        ${host_srcdir}/ctype_base.h \
 
107
        ${host_srcdir}/ctype_inline.h \
 
108
@@ -1047,6 +1048,7 @@
 
109
 
 
110
 stamp-${host_alias}:
 
111
        @-mkdir -p ${host_builddir}
 
112
+       @test ${default_host_alias} = ${host_alias} || ln -sf ${default_host_alias} ${host_alias}
 
113
        @$(STAMP) stamp-${host_alias}
 
114
 
 
115
 # Host includes static.
 
116
Index: b/src/libstdc++-v3/include/Makefile.in
 
117
===================================================================
 
118
--- a/src/libstdc++-v3/include/Makefile.in
 
119
+++ b/src/libstdc++-v3/include/Makefile.in
 
120
@@ -1103,8 +1103,9 @@
 
121
 # For --enable-cheaders=c_std
 
122
 @GLIBCXX_C_HEADERS_COMPATIBILITY_TRUE@c_compatibility_headers_extra = ${c_compatibility_headers}
 
123
 host_srcdir = ${glibcxx_srcdir}/$(OS_INC_SRCDIR)
 
124
-host_builddir = ./${host_alias}/bits
 
125
-host_installdir = ${gxx_include_dir}/${host_alias}$(MULTISUBDIR)/bits
 
126
+default_host_alias = @default_host_alias@
 
127
+host_builddir = ./${default_host_alias}/bits
 
128
+host_installdir = ${gxx_include_dir}/${default_host_alias}$(MULTISUBDIR)/bits
 
129
 host_headers = \
 
130
        ${host_srcdir}/ctype_base.h \
 
131
        ${host_srcdir}/ctype_inline.h \
 
132
@@ -1488,6 +1489,7 @@
 
133
 
 
134
 stamp-${host_alias}:
 
135
        @-mkdir -p ${host_builddir}
 
136
+       @test ${default_host_alias} = ${host_alias} || ln -sf ${default_host_alias} ${host_alias}
 
137
        @$(STAMP) stamp-${host_alias}
 
138
 
 
139
 # Host includes static.
 
140
Index: b/src/libstdc++-v3/configure.ac
 
141
===================================================================
 
142
--- a/src/libstdc++-v3/configure.ac
 
143
+++ b/src/libstdc++-v3/configure.ac
 
144
@@ -460,6 +460,16 @@
 
145
   multilib_arg=
 
146
 fi
 
147
 
 
148
+AC_ARG_WITH(default-host-alias,
 
149
+[AS_HELP_STRING([--with-default-host-alias=TRIPLET],
 
150
+                [specifies host triplet used for the default multilib build])],
 
151
+[case "${withval}" in
 
152
+yes)    AC_MSG_ERROR(bad value ${withval} given for default host triplet) ;;
 
153
+no)     default_host_alias='${host_alias}' ;;
 
154
+*)      default_host_alias=${withval} ;;
 
155
+esac],[default_host_alias='${host_alias}'])
 
156
+AC_SUBST(default_host_alias)
 
157
+
 
158
 # Export all the install information.
 
159
 GLIBCXX_EXPORT_INSTALL_INFO
 
160