Mercurial > hg > aboriginal
annotate sources/patches/gcc-core-musl.patch @ 1682:64316ca2bc9b
Remove redundant list assignment in ccwrap that screws up ordering and puts the -L entries in the wrong order.
author | Rob Landley <rob@landley.net> |
---|---|
date | Fri, 05 Sep 2014 23:54:01 -0500 |
parents | b74df510d10d |
children |
rev | line source |
---|---|
1667
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
1 Build against musl (or current glibc) using the standard name instead of the random implementation detail leakage. |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
2 |
1669
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
3 And on powerpc gcc assumes the existence of a nonstandard symbol (__libc_stack_end) which musl hasn't got. |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
4 |
1667
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
5 diff -ruN gcc-core/gcc/config/i386/linux-unwind.h gcc-core.bak/gcc/config/i386/linux-unwind.h |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
6 --- gcc-core/gcc/config/i386/linux-unwind.h 2006-02-27 11:26:26.000000000 -0600 |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
7 +++ gcc-core.bak/gcc/config/i386/linux-unwind.h 2014-07-02 18:27:17.931529601 -0500 |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
8 @@ -137,9 +137,9 @@ |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
9 { |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
10 struct rt_sigframe { |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
11 int sig; |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
12 - struct siginfo *pinfo; |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
13 + siginfo_t *pinfo; |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
14 void *puc; |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
15 - struct siginfo info; |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
16 + siginfo_t info; |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
17 struct ucontext uc; |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
18 } *rt_ = context->cfa; |
edffac13b5f2
Make gcc use the documented type for signal info instead of implementation detail leakage that musl doesn't do.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
19 /* The void * cast is necessary to avoid an aliasing warning. |
1669
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
20 diff -ru gcc-core.bak/gcc/config/alpha/linux-unwind.h gcc-core/gcc/config/alpha/linux-unwind.h |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
21 --- gcc-core.bak/gcc/config/alpha/linux-unwind.h 2014-07-02 13:51:18.938839448 -0500 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
22 +++ gcc-core/gcc/config/alpha/linux-unwind.h 2014-07-04 12:27:31.215361161 -0500 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
23 @@ -54,7 +54,7 @@ |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
24 else if (pc[1] == 0x201f015f) /* lda $0,NR_rt_sigreturn */ |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
25 { |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
26 struct rt_sigframe { |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
27 - struct siginfo info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
28 + siginfo_t info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
29 struct ucontext uc; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
30 } *rt_ = context->cfa; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
31 sc = &rt_->uc.uc_mcontext; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
32 diff -ru gcc-core.bak/gcc/config/ia64/linux-unwind.h gcc-core/gcc/config/ia64/linux-unwind.h |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
33 --- gcc-core.bak/gcc/config/ia64/linux-unwind.h 2005-06-24 20:22:41.000000000 -0500 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
34 +++ gcc-core/gcc/config/ia64/linux-unwind.h 2014-07-04 12:27:31.215361161 -0500 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
35 @@ -51,7 +51,7 @@ |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
36 struct sigframe { |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
37 char scratch[16]; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
38 unsigned long sig_number; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
39 - struct siginfo *info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
40 + siginfo_t *info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
41 struct sigcontext *sc; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
42 } *frame_ = (struct sigframe *)context->psp; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
43 struct sigcontext *sc = frame_->sc; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
44 @@ -130,7 +130,7 @@ |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
45 struct sigframe { |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
46 char scratch[16]; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
47 unsigned long sig_number; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
48 - struct siginfo *info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
49 + siginfo_t *info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
50 struct sigcontext *sc; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
51 } *frame = (struct sigframe *)context->psp; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
52 struct sigcontext *sc = frame->sc; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
53 diff -ru gcc-core.bak/gcc/config/mips/linux-unwind.h gcc-core/gcc/config/mips/linux-unwind.h |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
54 --- gcc-core.bak/gcc/config/mips/linux-unwind.h 2006-05-19 07:52:26.000000000 -0500 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
55 +++ gcc-core/gcc/config/mips/linux-unwind.h 2014-07-04 12:27:31.211361161 -0500 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
56 @@ -77,7 +77,7 @@ |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
57 { |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
58 struct rt_sigframe { |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
59 u_int32_t trampoline[2]; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
60 - struct siginfo info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
61 + siginfo_t info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
62 _sig_ucontext_t uc; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
63 } *rt_ = context->ra; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
64 sc = &rt_->uc.uc_mcontext; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
65 diff -ru gcc-core.bak/gcc/config/pa/linux-unwind.h gcc-core/gcc/config/pa/linux-unwind.h |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
66 --- gcc-core.bak/gcc/config/pa/linux-unwind.h 2005-11-17 21:22:18.000000000 -0600 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
67 +++ gcc-core/gcc/config/pa/linux-unwind.h 2014-07-04 12:27:31.195361161 -0500 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
68 @@ -63,7 +63,7 @@ |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
69 int i; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
70 struct sigcontext *sc; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
71 struct rt_sigframe { |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
72 - struct siginfo info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
73 + siginfo_t info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
74 struct ucontext uc; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
75 } *frame; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
76 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
77 diff -ru gcc-core.bak/gcc/config/sh/linux-unwind.h gcc-core/gcc/config/sh/linux-unwind.h |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
78 --- gcc-core.bak/gcc/config/sh/linux-unwind.h 2014-07-02 13:51:18.930839444 -0500 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
79 +++ gcc-core/gcc/config/sh/linux-unwind.h 2014-07-04 12:27:31.207361161 -0500 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
80 @@ -82,9 +82,9 @@ |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
81 && (*(unsigned long *) (pc+11) == 0x6ff0fff0)) |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
82 { |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
83 struct rt_sigframe { |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
84 - struct siginfo *pinfo; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
85 + siginfo_t *pinfo; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
86 void *puc; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
87 - struct siginfo info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
88 + siginfo_t info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
89 struct ucontext uc; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
90 } *rt_ = context->cfa; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
91 /* The void * cast is necessary to avoid an aliasing warning. |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
92 @@ -181,7 +181,7 @@ |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
93 && (*(unsigned short *) (pc+14) == 0x00ad)))) |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
94 { |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
95 struct rt_sigframe { |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
96 - struct siginfo info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
97 + siginfo_t info; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
98 struct ucontext uc; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
99 } *rt_ = context->cfa; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
100 /* The void * cast is necessary to avoid an aliasing warning. |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
101 diff -ru gcc-core/gcc/config/rs6000/linux-unwind.h gcc-core.bak/gcc/config/rs6000/linux-unwind.h |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
102 --- gcc-core/gcc/config/rs6000/linux-unwind.h 2007-01-03 17:47:14.000000000 -0600 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
103 +++ gcc-core.bak/gcc/config/rs6000/linux-unwind.h 2014-07-04 18:15:48.935951119 -0500 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
104 @@ -188,6 +188,7 @@ |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
105 static long |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
106 ppc_linux_aux_vector (long which) |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
107 { |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
108 +#ifdef __GLIBC__ |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
109 /* __libc_stack_end holds the original stack passed to a process. */ |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
110 extern long *__libc_stack_end; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
111 long argc; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
112 @@ -212,6 +213,10 @@ |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
113 if (auxp->a_type == which) |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
114 return auxp->a_val; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
115 return 0; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
116 +#else |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
117 + /* pretend we have everything, save it all */ |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
118 + return -1; |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
119 +#endif |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
120 } |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
121 |
b74df510d10d
Update gcc-core musl support patches.
Rob Landley <rob@landley.net>
parents:
1667
diff
changeset
|
122 /* Do code reading to identify a signal frame, and set the frame |