kernel: fix sanity check
[minix.git] / external / gpl3 / binutils / patches / 0001-minix.patch
blob8f69b79d6f8b6fecca2f3e3cfab6e17e4af22d9e
1 diff -r -x CVS -N -U 3 dist.orig/bfd/config.bfd dist/bfd/config.bfd
2 --- dist.orig/bfd/config.bfd 2012-10-31 17:08:07.757323090 +0100
3 +++ dist/bfd/config.bfd 2012-10-31 17:47:37.039900295 +0100
4 @@ -281,7 +281,7 @@
5 ;;
6 arm-*-elf | arm-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \
7 arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \
8 - arm*-*-eabi* )
9 + arm*-*-eabi* | arm*-*-minix*)
10 targ_defvec=bfd_elf32_littlearm_vec
11 targ_selvecs=bfd_elf32_bigarm_vec
13 @@ -697,6 +697,9 @@
14 i[3-7]86-none-*)
15 targ_defvec=i386coff_vec
17 + i[3-7]86-*-minix)
18 + targ_defvec=bfd_elf32_i386_minix_vec
19 + ;;
20 i[3-7]86-*-aout* | i[3-7]86*-*-vsta*)
21 targ_defvec=i386aout_vec
23 diff -r -x CVS -N -U 3 dist.orig/bfd/configure dist/bfd/configure
24 --- dist.orig/bfd/configure 2012-10-31 17:08:07.763989894 +0100
25 +++ dist/bfd/configure 2012-10-31 18:01:20.947045411 +0100
26 @@ -15219,6 +15219,7 @@
27 bfd_elf32_i370_vec) tb="$tb elf32-i370.lo elf32.lo $elf" ;;
28 bfd_elf32_i386_sol2_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
29 bfd_elf32_i386_freebsd_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
30 + bfd_elf32_i386_minix_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
31 bfd_elf32_i386_vxworks_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
32 bfd_elf32_i386_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
33 bfd_elf32_i860_little_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;;
34 diff -r -x CVS -N -U 3 dist.orig/bfd/configure.in dist/bfd/configure.in
35 --- dist.orig/bfd/configure.in 2012-10-31 17:08:07.743989476 +0100
36 +++ dist/bfd/configure.in 2012-10-31 17:47:37.039900295 +0100
37 @@ -710,6 +710,7 @@
38 bfd_elf32_i370_vec) tb="$tb elf32-i370.lo elf32.lo $elf" ;;
39 bfd_elf32_i386_sol2_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
40 bfd_elf32_i386_freebsd_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
41 + bfd_elf32_i386_minix_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
42 bfd_elf32_i386_vxworks_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
43 bfd_elf32_i386_vec) tb="$tb elf32-i386.lo elf-ifunc.lo elf-vxworks.lo elf32.lo $elf" ;;
44 bfd_elf32_i860_little_vec) tb="$tb elf32-i860.lo elf32.lo $elf" ;;
45 diff -r -x CVS -N -U 3 dist.orig/bfd/elf32-i386.c dist/bfd/elf32-i386.c
46 --- dist.orig/bfd/elf32-i386.c 2012-10-31 17:08:07.743989476 +0100
47 +++ dist/bfd/elf32-i386.c 2012-10-31 17:47:37.039900295 +0100
48 @@ -4761,6 +4761,18 @@
50 #include "elf32-target.h"
52 +/* MINIX3 support. */
54 +#undef TARGET_LITTLE_SYM
55 +#define TARGET_LITTLE_SYM bfd_elf32_i386_minix_vec
56 +#undef TARGET_LITTLE_NAME
57 +#define TARGET_LITTLE_NAME "elf32-i386-minix"
59 +#undef elf32_bed
60 +#define elf32_bed elf32_i386_minix_bed
62 +#include "elf32-target.h"
64 /* FreeBSD support. */
66 #undef TARGET_LITTLE_SYM
67 diff -r -x CVS -N -U 3 dist.orig/bfd/targets.c dist/bfd/targets.c
68 --- dist.orig/bfd/targets.c 2012-10-31 17:08:07.767323296 +0100
69 +++ dist/bfd/targets.c 2012-10-31 17:47:37.039900295 +0100
70 @@ -605,6 +605,7 @@
71 extern const bfd_target bfd_elf32_hppa_vec;
72 extern const bfd_target bfd_elf32_i370_vec;
73 extern const bfd_target bfd_elf32_i386_freebsd_vec;
74 +extern const bfd_target bfd_elf32_i386_minix_vec;
75 extern const bfd_target bfd_elf32_i386_sol2_vec;
76 extern const bfd_target bfd_elf32_i386_vxworks_vec;
77 extern const bfd_target bfd_elf32_i386_vec;
78 diff -r -x CVS -N -U 3 dist.orig/config.guess dist/config.guess
79 --- dist.orig/config.guess 2012-10-31 17:08:07.770656699 +0100
80 +++ dist/config.guess 2012-10-31 17:47:37.039900295 +0100
81 @@ -855,8 +855,8 @@
82 # other systems with GNU libc and userland
83 echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
84 exit ;;
85 - i*86:Minix:*:*)
86 - echo ${UNAME_MACHINE}-pc-minix
87 + *:Minix:*:*)
88 + echo ${UNAME_MACHINE}-elf32-minix
89 exit ;;
90 alpha:Linux:*:*)
91 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
92 diff -r -x CVS -N -U 3 dist.orig/gas/config/tc-i386.h dist/gas/config/tc-i386.h
93 --- dist.orig/gas/config/tc-i386.h 2012-10-31 17:08:07.493984261 +0100
94 +++ dist/gas/config/tc-i386.h 2012-10-31 17:47:37.086567936 +0100
95 @@ -68,6 +68,10 @@
96 #define ELF_TARGET_FORMAT64 "elf64-x86-64-sol2"
97 #endif
99 +#ifdef TE_MINIX
100 +#define ELF_TARGET_FORMAT "elf32-i386-minix"
101 +#endif
103 #ifndef ELF_TARGET_FORMAT
104 #define ELF_TARGET_FORMAT "elf32-i386"
105 #endif
106 diff -r -x CVS -N -U 3 dist.orig/gas/config/te-minix.h dist/gas/config/te-minix.h
107 --- dist.orig/gas/config/te-minix.h 1970-01-01 01:00:00.000000000 +0100
108 +++ dist/gas/config/te-minix.h 2012-10-31 17:47:37.086567936 +0100
109 @@ -0,0 +1,9 @@
110 +#define TE_MINIX 1
112 +/* Added these, because if we don't know what we're targeting we may
113 + need an assembler version of libgcc, and that will use local
114 + labels. */
115 +#define LOCAL_LABELS_DOLLAR 1
116 +#define LOCAL_LABELS_FB 1
118 +#include "obj-format.h"
119 diff -r -x CVS -N -U 3 dist.orig/gas/configure dist/gas/configure
120 --- dist.orig/gas/configure 2012-10-31 17:08:07.507317870 +0100
121 +++ dist/gas/configure 2012-10-31 17:47:37.089901339 +0100
122 @@ -6127,6 +6127,10 @@
126 +minix*)
127 + lt_cv_deplibs_check_method=pass_all
128 + ;;
130 gnu*)
131 lt_cv_deplibs_check_method=pass_all
133 diff -r -x CVS -N -U 3 dist.orig/gas/configure.tgt dist/gas/configure.tgt
134 --- dist.orig/gas/configure.tgt 2012-10-31 17:08:07.507317870 +0100
135 +++ dist/gas/configure.tgt 2012-10-31 17:47:37.683247033 +0100
136 @@ -428,6 +428,7 @@
137 *-*-elf | *-*-sysv4*) fmt=elf ;;
138 *-*-solaris*) fmt=elf em=solaris ;;
139 *-*-aros*) fmt=elf em=linux ;;
140 + *-*-minix*) fmt=elf em=minix ;;
141 *-*-vxworks* | *-*-windiss) fmt=elf em=vxworks ;;
142 *-*-netware) fmt=elf em=netware ;;
143 esac
144 diff -r -x CVS -N -U 3 dist.orig/ld/configure.tgt dist/ld/configure.tgt
145 --- dist.orig/ld/configure.tgt 2012-10-31 17:08:07.663987808 +0100
146 +++ dist/ld/configure.tgt 2012-10-31 17:47:37.869917589 +0100
147 @@ -73,6 +73,8 @@
148 armeb-*-elf) targ_emul=armelfb ;;
149 arm-*-elf | arm*-*-eabi*)
150 targ_emul=armelf ;;
151 +arm*-*-minix*) targ_emul=armelf_minix
152 + targ_extra_emuls="armelf" ;;
153 arm*-*-symbianelf*) targ_emul=armsymbian;;
154 arm-*-kaos*) targ_emul=armelf ;;
155 arm9e-*-elf) targ_emul=armelf ;;
156 @@ -198,6 +200,8 @@
157 i[3-7]86-*-bsd386) targ_emul=i386bsd ;;
158 i[3-7]86-*-bsdi*) targ_emul=i386bsd ;;
159 i[3-7]86-*-aout) targ_emul=i386aout ;;
160 +i[3-7]86-*-minix) targ_emul=elf_i386_minix
161 + targ_extra_emuls="elf_i386" ;;
162 i[3-7]86-*-linux*aout*) targ_emul=i386linux
163 targ_extra_emuls=elf_i386
164 tdir_elf_i386=`echo ${targ_alias} | sed -e 's/aout//'` ;;
165 diff -r -x CVS -N -U 3 dist.orig/ld/emulparams/armelf_minix.sh dist/ld/emulparams/armelf_minix.sh
166 --- dist.orig/ld/emulparams/armelf_minix.sh 1970-01-01 01:00:00.000000000 +0100
167 +++ dist/ld/emulparams/armelf_minix.sh 2012-10-31 17:47:37.869917589 +0100
168 @@ -0,0 +1,3 @@
169 +. ${srcdir}/emulparams/armelf.sh
170 +. ${srcdir}/emulparams/elf_minix.sh
171 +OUTPUT_FORMAT="elf32-littlearm"
172 diff -r -x CVS -N -U 3 dist.orig/ld/emulparams/elf_i386_minix.sh dist/ld/emulparams/elf_i386_minix.sh
173 --- dist.orig/ld/emulparams/elf_i386_minix.sh 1970-01-01 01:00:00.000000000 +0100
174 +++ dist/ld/emulparams/elf_i386_minix.sh 2012-10-31 17:47:37.869917589 +0100
175 @@ -0,0 +1,3 @@
176 +. ${srcdir}/emulparams/elf_i386.sh
177 +. ${srcdir}/emulparams/elf_minix.sh
178 +OUTPUT_FORMAT="elf32-i386-minix"
179 diff -r -x CVS -N -U 3 dist.orig/ld/emulparams/elf_minix.sh dist/ld/emulparams/elf_minix.sh
180 --- dist.orig/ld/emulparams/elf_minix.sh 1970-01-01 01:00:00.000000000 +0100
181 +++ dist/ld/emulparams/elf_minix.sh 2012-10-31 17:47:37.869917589 +0100
182 @@ -0,0 +1 @@
183 +ELF_INTERPRETER_NAME=\"/libexec/ld-elf.so.1\"
184 diff -r -x CVS -N -U 3 dist.orig/ld/Makefile.in dist/ld/Makefile.in
185 --- dist.orig/ld/Makefile.in 2012-10-31 17:08:07.663987808 +0100
186 +++ dist/ld/Makefile.in 2012-10-31 17:47:37.869917589 +0100
187 @@ -448,6 +448,7 @@
188 earmelf_fbsd.c \
189 earmelf_linux.c \
190 earmelf_linux_eabi.c \
191 + earmelf_minix.c \
192 earmelf_nbsd.c \
193 earmelf_nbsd_eabi.c \
194 earmelf_vxworks.c \
195 @@ -549,6 +550,7 @@
196 eelf_i386_chaos.c \
197 eelf_i386_fbsd.c \
198 eelf_i386_ldso.c \
199 + eelf_i386_minix.c \
200 eelf_i386_sol2.c \
201 eelf_i386_vxworks.c \
202 eelf_s390.c \
203 @@ -2120,6 +2122,10 @@
204 $(ELF_DEPS) $(srcdir)/emultempl/armelf.em \
205 $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
206 ${GENSCRIPTS} armelf_linux_eabi "$(tdir_armelf_linux_abi)"
207 +earmelf_minix.c: $(srcdir)/emulparams/armelf_minix.sh \
208 + $(srcdir)/emulparams/armelf.sh \
209 + $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
210 + ${GENSCRIPTS} armelf_minix "$(tdir_armelf_minix)"
211 earmelf_nbsd.c: $(srcdir)/emulparams/armelf_nbsd.sh \
212 $(srcdir)/emulparams/armelf.sh \
213 $(ELF_DEPS) $(srcdir)/emultempl/armelf.em \
214 @@ -2538,6 +2544,10 @@
215 eelf_i386_ldso.c: $(srcdir)/emulparams/elf_i386_ldso.sh \
216 $(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
217 ${GENSCRIPTS} elf_i386_ldso "$(tdir_elf_i386_ldso)"
218 +eelf_i386_minix.c: $(srcdir)/emulparams/elf_i386_minix.sh \
219 + $(srcdir)/emulparams/elf_i386.sh \
220 + $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
221 + ${GENSCRIPTS} elf_i386_minix "$(tdir_elf_i386_minix)"
222 eelf_i386_sol2.c: $(srcdir)/emulparams/elf_i386_sol2.sh \
223 $(srcdir)/emulparams/solaris2.sh \
224 $(srcdir)/emultempl/solaris2.em \