kernel: fix sanity check
[minix.git] / external / gpl3 / gcc / patches / 0001-minix.patch
blob91a53acc9bf2da8f592c47def86d44e4a851af88
1 diff -r -x CVS -N -U 3 dist.orig/gcc/config.gcc dist/gcc/config.gcc
2 --- dist.orig/gcc/config.gcc 2012-10-31 15:54:54.495969517 +0100
3 +++ dist/gcc/config.gcc 2012-10-31 16:05:31.749213764 +0100
4 @@ -799,7 +799,7 @@
5 tmake_file="arm/t-arm arm/t-arm-elf"
6 tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp"
7 ;;
8 -arm*-*-eabi* | arm*-*-symbianelf* )
9 +arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-minix*)
10 # The BPABI long long divmod functions return a 128-bit value in
11 # registers r0-r3. Correctly modeling that requires the use of
12 # TImode.
13 @@ -814,6 +814,12 @@
14 extra_options="${extra_options} arm/eabi.opt"
15 use_gcc_stdint=wrap
17 + arm*-*-minix*)
18 + tm_file="$tm_file arm/eabi.h newlib-stdint.h minix-spec.h minix.h arm/minix.h"
19 + tmake_file="${tmake_file} arm/t-bpabi"
20 + extra_options="${extra_options} arm/eabi.opt"
21 + use_gcc_stdint=wrap
22 + ;;
23 arm*-*-symbianelf*)
24 tm_file="${tm_file} arm/symbian.h"
25 # We do not include t-bpabi for Symbian OS because the system
26 @@ -1148,6 +1154,12 @@
27 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/x86-64.h i386/freebsd.h i386/freebsd64.h"
28 tmake_file="${tmake_file} i386/t-crtstuff"
30 +i[34567]86-*-minix)
31 + tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h minix-spec.h minix.h i386/minix.h"
32 + gas=yes
33 + gnu_ld=yes
34 + extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
35 + ;;
36 i[34567]86-*-netbsdelf*)
37 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h"
38 tmake_file="${tmake_file} i386/t-crtstuff"
39 diff -r -x CVS -N -U 3 dist.orig/gcc/gcov.c dist/gcc/gcov.c
40 --- dist.orig/gcc/gcov.c 2012-10-31 15:54:55.279319194 +0100
41 +++ dist/gcc/gcov.c 2012-10-31 15:56:07.347483995 +0100
42 @@ -58,6 +58,10 @@
44 #define STRING_SIZE 200
46 +#ifdef _MINIX
47 +#define block_t gcc_block_t
48 +#endif
50 struct function_info;
51 struct block_info;
52 struct source_info;
53 diff -r -x CVS -N -U 3 dist.orig/gcc/ginclude/stddef.h dist/gcc/ginclude/stddef.h
54 --- dist.orig/gcc/ginclude/stddef.h 2012-10-31 15:54:54.629305630 +0100
55 +++ dist/gcc/ginclude/stddef.h 2012-10-31 15:57:32.195913746 +0100
56 @@ -60,6 +60,9 @@
57 #if defined (__FreeBSD__) && (__FreeBSD__ >= 5)
58 #include <sys/_types.h>
59 #endif
60 +#if defined (__minix)
61 +#include <sys/types.h>
62 +#endif
64 /* In 4.3bsd-net2, machine/ansi.h defines these symbols, which are
65 defined if the corresponding type is *not* defined.
66 diff -r -x CVS -N -U 3 dist.orig/gcc/libgcov.c dist/gcc/libgcov.c
67 --- dist.orig/gcc/libgcov.c 2012-10-31 15:54:54.629305630 +0100
68 +++ dist/gcc/libgcov.c 2012-10-31 16:07:58.948939980 +0100
69 @@ -40,6 +40,11 @@
70 #define GCOV_LINKAGE /* nothing */
71 #endif
72 #endif
74 +#ifndef L_gcov_merge_add
75 +#include "gcov-minix-fs-wrapper.h"
76 +#endif
78 #include "gcov-io.h"
80 #if defined(inhibit_libc)
81 @@ -152,7 +157,7 @@
82 in two separate programs, and we must keep the two program
83 summaries separate. */
85 -static void
86 +void
87 gcov_exit (void)
89 struct gcov_info *gi_ptr;
90 @@ -564,7 +569,7 @@
91 gcov_crc32 = crc32;
93 if (!gcov_list)
94 - atexit (gcov_exit);
95 + atexit (gcov_exit_wrapper);
97 info->next = gcov_list;
98 gcov_list = info;
99 diff -r -x CVS -N -U 3 dist.orig/libgcc/config.host dist/libgcc/config.host
100 --- dist.orig/libgcc/config.host 2012-10-31 15:54:55.649326910 +0100
101 +++ dist/libgcc/config.host 2012-10-31 16:00:43.116548293 +0100
102 @@ -203,6 +203,8 @@
104 arm*-*-freebsd*)
106 +arm*-*-minix*)
107 + ;;
108 arm*-*-netbsdelf*)
110 arm*-*-netbsd*)
111 @@ -280,6 +282,8 @@
113 x86_64-*-elf*)
115 +i[34567]86-*-minix*)
116 + ;;
117 i[34567]86-*-freebsd*)
119 x86_64-*-freebsd*)