Fail legacy interfaces if the position is too large for them to represent
[helenos.git] / tools / toolchain-binutils-2.23.1.patch
blob48990a8401c224c680b2d16f0c46c882f0163c0d
1 diff -ud -rud binutils-2.23.1/bfd/config.bfd binutils-2.23.1/bfd/config.bfd
2 --- binutils-2.23.1/bfd/config.bfd 2012-09-04 16:14:59.000000000 +0200
3 +++ binutils-2.23.1/bfd/config.bfd 2013-07-25 09:47:45.116719403 +0200
4 @@ -203,7 +203,7 @@
5 targ_defvec=ecoffalpha_little_vec
6 want64=true
7 ;;
8 - ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
9 + ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu | ia64*-*-helenos)
10 targ_defvec=bfd_elf64_ia64_little_vec
11 targ_selvecs="bfd_elf64_ia64_big_vec bfd_pei_ia64_vec"
12 want64=true
13 @@ -315,6 +315,7 @@
15 arm-*-elf | arm-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \
16 arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \
17 + arm-helenos-gnueabi | \
18 arm*-*-eabi* )
19 targ_defvec=bfd_elf32_littlearm_vec
20 targ_selvecs=bfd_elf32_bigarm_vec
21 @@ -600,7 +601,7 @@
22 targ_selvecs=bfd_elf32_i386_vec
23 targ_underscore=yes
25 - i[3-7]86-*-linux-*)
26 + i[3-7]86-*-linux-* | i[3-7]86-*-helenos*)
27 targ_defvec=bfd_elf32_i386_vec
28 targ_selvecs="i386linux_vec i386pei_vec"
29 targ64_selvecs="bfd_elf64_x86_64_vec bfd_elf32_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
30 @@ -643,7 +644,7 @@
31 targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec i386pei_vec x86_64pei_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
32 want64=true
34 - x86_64-*-linux-*)
35 + x86_64-*-linux-* | x86_64-*-helenos*)
36 targ_defvec=bfd_elf64_x86_64_vec
37 targ_selvecs="bfd_elf32_i386_vec bfd_elf32_x86_64_vec i386linux_vec i386pei_vec x86_64pei_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
38 want64=true
39 @@ -1016,7 +1017,7 @@
40 targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_big_vec ecoff_little_vec"
42 #ifdef BFD64
43 - mips64*el-*-linux*)
44 + mips64*el-*-linux* | mips64el-*-helenos*)
45 targ_defvec=bfd_elf32_ntradlittlemips_vec
46 targ_selvecs="bfd_elf32_ntradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec bfd_elf64_tradbigmips_vec"
47 want64=true
48 @@ -1026,12 +1027,12 @@
49 targ_selvecs="bfd_elf32_ntradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
50 want64=true
52 - mips*el-*-linux*)
53 + mips*el-*-linux* | mipsel-*-helenos*)
54 targ_defvec=bfd_elf32_tradlittlemips_vec
55 targ_selvecs="bfd_elf32_tradbigmips_vec ecoff_little_vec ecoff_big_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec"
56 want64=true
58 - mips*-*-linux*)
59 + mips*-*-linux* | mips-*-helenos*)
60 targ_defvec=bfd_elf32_tradbigmips_vec
61 targ_selvecs="bfd_elf32_tradlittlemips_vec ecoff_big_vec ecoff_little_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec"
62 want64=true
63 @@ -1179,6 +1180,7 @@
64 want64=true
66 powerpc64-*-elf* | powerpc-*-elf64* | powerpc64-*-linux* | \
67 + powerpc64-*-helenos* | \
68 powerpc64-*-*bsd*)
69 targ_defvec=bfd_elf64_powerpc_vec
70 targ_selvecs="bfd_elf64_powerpcle_vec bfd_elf32_powerpc_vec bfd_elf32_powerpcle_vec rs6000coff_vec rs6000coff64_vec aix5coff64_vec"
71 @@ -1197,6 +1199,7 @@
73 powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \
74 powerpc-*-solaris2* | powerpc-*-linux-* | powerpc-*-rtems* | \
75 + powerpc-*-helenos* | \
76 powerpc-*-chorus*)
77 targ_defvec=bfd_elf32_powerpc_vec
78 targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec"
79 @@ -1495,7 +1498,7 @@
80 targ_underscore=yes
81 want64=true
83 - sparc64*-*-linux-*)
84 + sparc64*-*-linux-* | sparc64-*-helenos*)
85 targ_defvec=bfd_elf64_sparc_vec
86 targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec"
87 want64=true
88 diff -ud -rud binutils-2.23.1/config.sub binutils-2.23.1/config.sub
89 --- binutils-2.23.1/config.sub 2012-04-25 17:53:25.000000000 +0200
90 +++ binutils-2.23.1/config.sub 2013-07-25 09:36:54.354122235 +0200
91 @@ -1359,6 +1359,7 @@
92 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
93 | -chorusos* | -chorusrdb* | -cegcc* \
94 | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
95 + | -helenos* \
96 | -mingw32* | -linux-gnu* | -linux-android* \
97 | -linux-newlib* | -linux-uclibc* \
98 | -uxpv* | -beos* | -mpeix* | -udk* \
99 diff -ud -rud binutils-2.23.1/gas/configure.tgt binutils-2.23.1/gas/configure.tgt
100 --- binutils-2.23.1/gas/configure.tgt 2012-09-04 14:53:45.000000000 +0200
101 +++ binutils-2.23.1/gas/configure.tgt 2013-07-25 09:53:00.181319734 +0200
102 @@ -119,7 +119,8 @@
103 arm-*-kaos*) fmt=elf ;;
104 arm-*-conix*) fmt=elf ;;
105 arm-*-linux*aout*) fmt=aout em=linux ;;
106 - arm-*-linux-*eabi*) fmt=elf em=armlinuxeabi ;;
107 + arm-*-linux-*eabi* | arm-helenos-*eabi*)
108 + fmt=elf em=armlinuxeabi ;;
109 arm-*-linux-*) fmt=elf em=linux ;;
110 arm-*-uclinux*eabi*) fmt=elf em=armlinuxeabi ;;
111 arm-*-uclinux*) fmt=elf em=linux ;;
112 @@ -210,7 +211,7 @@
113 i386-*-linux*aout*) fmt=aout em=linux ;;
114 i386-*-linux*oldld) fmt=aout em=linux ;;
115 i386-*-linux*coff*) fmt=coff em=linux ;;
116 - i386-*-linux-*) fmt=elf em=linux
117 + i386-*-linux-* | i386-*-helenos*) fmt=elf em=linux
118 case ${cpu}-${os} in
119 x86_64*-linux-gnux32) arch=x86_64:32 ;;
120 esac ;;
121 @@ -256,7 +257,7 @@
122 ia64-*-elf*) fmt=elf ;;
123 ia64-*-*vms*) fmt=elf em=vms ;;
124 ia64-*-aix*) fmt=elf em=ia64aix ;;
125 - ia64-*-linux-*) fmt=elf em=linux ;;
126 + ia64-*-linux-* | ia64-*-helenos*) fmt=elf em=linux ;;
127 ia64-*-hpux*) fmt=elf em=hpux ;;
128 ia64-*-netbsd*) fmt=elf em=nbsd ;;
130 @@ -304,7 +305,7 @@
131 mips-*-irix*) fmt=ecoff em=irix ;;
132 mips-*-lnews*) fmt=ecoff em=lnews ;;
133 mips-*-riscos*) fmt=ecoff ;;
134 - mips*-*-linux*) fmt=elf em=tmips ;;
135 + mips*-*-linux* | mips*-*-helenos*) fmt=elf em=tmips ;;
136 mips*-*-freebsd* | mips*-*-kfreebsd*-gnu)
137 fmt=elf em=freebsd ;;
138 mips-*-sysv4*MP* | mips-*-gnu*) fmt=elf em=tmips ;;
139 @@ -349,7 +350,7 @@
140 ppc-*-beos*) fmt=coff ;;
141 ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;;
142 ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;;
143 - ppc-*-linux-*) fmt=elf em=linux ;;
144 + ppc-*-linux-* | ppc-*-helenos) fmt=elf em=linux ;;
145 ppc-*-solaris*) fmt=elf em=solaris ;;
146 ppc-*-rtems*) fmt=elf ;;
147 ppc-*-macos*) fmt=coff em=macos ;;
148 @@ -392,7 +393,7 @@
149 sparc-*-aout) fmt=aout em=sparcaout ;;
150 sparc-*-coff) fmt=coff ;;
151 sparc-*-linux*aout*) fmt=aout em=linux ;;
152 - sparc-*-linux-*) fmt=elf em=linux ;;
153 + sparc-*-linux-* | sparc-*-helenos*) fmt=elf em=linux ;;
154 sparc-fujitsu-none) fmt=aout ;;
155 sparc-*-elf) fmt=elf ;;
156 sparc-*-sysv4*) fmt=elf ;;
157 diff -ud -rud binutils-2.23.1/ld/configure.tgt binutils-2.23.1/ld/configure.tgt
158 --- binutils-2.23.1/ld/configure.tgt 2012-09-04 14:53:47.000000000 +0200
159 +++ binutils-2.23.1/ld/configure.tgt 2013-07-25 09:56:05.498734292 +0200
160 @@ -87,7 +87,8 @@
161 targ_extra_emuls="armelfb armelf armelf_linux"
162 targ_extra_libpath="armelf_linux"
164 -arm*-*-linux-*eabi*) targ_emul=armelf_linux_eabi
165 +arm*-*-linux-*eabi* | arm-helenos-*eabi*)
166 + targ_emul=armelf_linux_eabi
167 targ_extra_emuls=armelfb_linux_eabi
168 targ_extra_libpath=$targ_extra_emuls
170 @@ -206,7 +207,8 @@
171 targ_extra_emuls=elf_i386
172 tdir_elf_i386=`echo ${targ_alias} | sed -e 's/aout//'` ;;
173 i[3-7]86-*-linux*oldld) targ_emul=i386linux; targ_extra_emuls=elf_i386 ;;
174 -i[3-7]86-*-linux-*) targ_emul=elf_i386
175 +i[3-7]86-*-linux-* | i[3-7]86-*-helenos*)
176 + targ_emul=elf_i386
177 targ_extra_emuls=i386linux
178 targ64_extra_emuls="elf_x86_64 elf32_x86_64 elf_l1om elf_k1om"
179 targ64_extra_libpath=elf_x86_64
180 @@ -217,7 +219,8 @@
181 targ_extra_libpath="elf_i386 elf_x86_64 elf_l1om elf_k1om"
182 tdir_i386linux=`echo ${targ_alias}aout | sed -e 's/x86_64/i386/' -e 's/-linux-gnux32/-linux-gnu/'`
183 tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/' -e 's/-linux-gnux32/-linux-gnu/'` ;;
184 -x86_64-*-linux-*) targ_emul=elf_x86_64
185 +x86_64-*-linux-* | x86_64-*-helenos*)
186 + targ_emul=elf_x86_64
187 targ_extra_emuls="elf32_x86_64 elf_i386 i386linux elf_l1om elf_k1om"
188 targ_extra_libpath="elf_i386 elf32_x86_64 elf_l1om elf_k1om"
189 tdir_i386linux=`echo ${targ_alias}aout | sed -e 's/x86_64/i386/'`
190 @@ -334,7 +337,8 @@
191 targ_emul=elf64_ia64_fbsd
192 targ_extra_emuls="elf64_ia64" ;;
193 ia64-*-netbsd*) targ_emul=elf64_ia64 ;;
194 -ia64-*-linux*) targ_emul=elf64_ia64 ;;
195 +ia64-*-linux* | ia64-*-helenos*)
196 + targ_emul=elf64_ia64 ;;
197 ia64-*-*vms*) targ_emul=elf64_ia64_vms ;;
198 ia64-*-aix*) targ_emul=elf64_aix
200 @@ -434,16 +438,19 @@
201 mips*-*-vxworks*) targ_emul=elf32ebmipvxworks
202 targ_extra_emuls="elf32elmipvxworks" ;;
203 mips*-*-windiss) targ_emul=elf32mipswindiss ;;
204 -mips64*el-*-linux-*) targ_emul=elf32ltsmipn32
205 +mips64*el-*-linux-* | mips64*el-*-helenos*)
206 + targ_emul=elf32ltsmipn32
207 targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip"
208 targ_extra_libpath=$targ_extra_emuls ;;
209 mips64*-*-linux-*) targ_emul=elf32btsmipn32
210 targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
211 targ_extra_libpath=$targ_extra_emuls ;;
212 -mips*el-*-linux-*) targ_emul=elf32ltsmip
213 +mips*el-*-linux-* | mipsel-*-helenos*)
214 + targ_emul=elf32ltsmip
215 targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
216 targ_extra_libpath=$targ_extra_emuls ;;
217 -mips*-*-linux-*) targ_emul=elf32btsmip
218 +mips*-*-linux-* | mips-*-helenos*)
219 + targ_emul=elf32btsmip
220 targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip"
221 targ_extra_libpath=$targ_extra_emuls ;;
222 mips64*el-*-freebsd* | mips64*el-*-kfreebsd*-gnu)
223 @@ -503,7 +510,8 @@
224 tdir_elf32ppc=`echo "${targ_alias}" | sed -e 's/64//'`
225 tdir_elf32ppc_fbsd=$tdir_elf32ppc
227 -powerpc*-*-linux*) case "${targ}" in
228 +powerpc*-*-linux* | powerpc*-*-helenos*)
229 + case "${targ}" in
230 *64*) targ_emul=elf64ppc
231 targ_extra_emuls="elf32ppclinux elf32ppc elf32ppcsim"
232 targ_extra_libpath="elf32ppclinux elf32ppc"
233 @@ -642,7 +650,8 @@
234 targ_extra_emuls="elf32_sparc sun4"
235 tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/aout//'`
236 tdir_sun4=sparc-sun-sunos4 ;;
237 -sparc64-*-linux-*) targ_emul=elf64_sparc
238 +sparc64-*-linux-* | sparc64-*-helenos*)
239 + targ_emul=elf64_sparc
240 targ_extra_emuls="elf32_sparc sparclinux sun4"
241 targ_extra_libpath=elf32_sparc
242 tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'`