1 |
Maybe it is just me, but I take the chance and responsibility. |
2 |
|
3 |
This commit caused /usr/bin/clang being 32bit on my amd64 system. I |
4 |
compiled it 3 times. |
5 |
|
6 |
I have reverted the commit for the live ebuild, reverted it for 3.4-r1 |
7 |
and hardmasked 3.4 to ensure that people who unmasked 3.4 on stable arch |
8 |
will get the fix as well. |
9 |
|
10 |
The breakage is not immediate, depending on what you compiled. I noticed |
11 |
it only after a chain of 3-4 packages that failed to link at some point. |
12 |
|
13 |
|
14 |
|
15 |
Michal Gorny (mgorny): |
16 |
> mgorny 14/04/01 17:24:02 |
17 |
> |
18 |
> Modified: llvm-3.4.ebuild llvm-9999.ebuild ChangeLog |
19 |
> Log: |
20 |
> Use alternate root install instead of dumb removal to work-around non-clobber install target. Use MULTILIB_CHOST_TOOLS rather than inline code to handle llvm-config, bug #506398. |
21 |
> |
22 |
> (Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key EFB4464E!) |
23 |
> |
24 |
> Revision Changes Path |
25 |
> 1.10 sys-devel/llvm/llvm-3.4.ebuild |
26 |
> |
27 |
> file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/llvm-3.4.ebuild?rev=1.10&view=markup |
28 |
> plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/llvm-3.4.ebuild?rev=1.10&content-type=text/plain |
29 |
> diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/llvm-3.4.ebuild?r1=1.9&r2=1.10 |
30 |
> |
31 |
> Index: llvm-3.4.ebuild |
32 |
> =================================================================== |
33 |
> RCS file: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-3.4.ebuild,v |
34 |
> retrieving revision 1.9 |
35 |
> retrieving revision 1.10 |
36 |
> diff -u -r1.9 -r1.10 |
37 |
> --- llvm-3.4.ebuild 31 Mar 2014 21:21:24 -0000 1.9 |
38 |
> +++ llvm-3.4.ebuild 1 Apr 2014 17:24:02 -0000 1.10 |
39 |
> @@ -1,13 +1,13 @@ |
40 |
> # Copyright 1999-2014 Gentoo Foundation |
41 |
> # Distributed under the terms of the GNU General Public License v2 |
42 |
> -# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-3.4.ebuild,v 1.9 2014/03/31 21:21:24 mgorny Exp $ |
43 |
> +# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-3.4.ebuild,v 1.10 2014/04/01 17:24:02 mgorny Exp $ |
44 |
> |
45 |
> EAPI=5 |
46 |
> |
47 |
> PYTHON_COMPAT=( python{2_6,2_7} pypy pypy2_0 ) |
48 |
> |
49 |
> -inherit cmake-utils eutils flag-o-matic multilib multilib-minimal \ |
50 |
> - python-r1 toolchain-funcs pax-utils check-reqs |
51 |
> +inherit cmake-utils eutils flag-o-matic multibuild multilib \ |
52 |
> + multilib-minimal python-r1 toolchain-funcs pax-utils check-reqs |
53 |
> |
54 |
> DESCRIPTION="Low Level Virtual Machine" |
55 |
> HOMEPAGE="http://llvm.org/" |
56 |
> @@ -69,6 +69,10 @@ |
57 |
> # so why did it call itself ninja in the first place? |
58 |
> CMAKE_MAKEFILE_GENERATOR=emake |
59 |
> |
60 |
> +MULTILIB_CHOST_TOOLS=( |
61 |
> + /usr/bin/llvm-config |
62 |
> +) |
63 |
> + |
64 |
> pkg_pretend() { |
65 |
> # in megs |
66 |
> # !clang !debug !multitarget -O2 400 |
67 |
> @@ -387,25 +391,15 @@ |
68 |
> local MAKEARGS |
69 |
> set_makeargs |
70 |
> |
71 |
> - emake "${MAKEARGS[@]}" DESTDIR="${D}" install |
72 |
> + local root=${D}/_${ABI} |
73 |
> |
74 |
> - # Preserve ABI-variant of llvm-config. |
75 |
> - dodir /tmp |
76 |
> - mv "${ED}"/usr/bin/llvm-config "${ED}"/tmp/"${CHOST}"-llvm-config || die |
77 |
> + emake "${MAKEARGS[@]}" DESTDIR="${root}" install |
78 |
> + multibuild_merge_root "${root}" "${D}" |
79 |
> |
80 |
> if ! multilib_build_binaries; then |
81 |
> - # Drop all the executables since LLVM doesn't like to |
82 |
> - # clobber when installing. |
83 |
> - rm -r "${ED}"/usr/bin || die |
84 |
> - |
85 |
> # Backwards compat, will be happily removed someday. |
86 |
> - dosym "${CHOST}"-llvm-config /tmp/llvm-config.${ABI} |
87 |
> + dosym "${CHOST}"-llvm-config /usr/bin/llvm-config.${ABI} |
88 |
> else |
89 |
> - # Move files back. |
90 |
> - mv "${ED}"/tmp/*llvm-config* "${ED}"/usr/bin || die |
91 |
> - # Create a symlink for host's llvm-config. |
92 |
> - dosym "${CHOST}"-llvm-config /usr/bin/llvm-config |
93 |
> - |
94 |
> # Install docs. |
95 |
> if use doc; then |
96 |
> doman "${S}"/docs/_build/man/*.1 |
97 |
> |
98 |
> |
99 |
> |
100 |
> 1.80 sys-devel/llvm/llvm-9999.ebuild |
101 |
> |
102 |
> file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/llvm-9999.ebuild?rev=1.80&view=markup |
103 |
> plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/llvm-9999.ebuild?rev=1.80&content-type=text/plain |
104 |
> diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/llvm-9999.ebuild?r1=1.79&r2=1.80 |
105 |
> |
106 |
> Index: llvm-9999.ebuild |
107 |
> =================================================================== |
108 |
> RCS file: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-9999.ebuild,v |
109 |
> retrieving revision 1.79 |
110 |
> retrieving revision 1.80 |
111 |
> diff -u -r1.79 -r1.80 |
112 |
> --- llvm-9999.ebuild 11 Mar 2014 18:40:17 -0000 1.79 |
113 |
> +++ llvm-9999.ebuild 1 Apr 2014 17:24:02 -0000 1.80 |
114 |
> @@ -1,13 +1,13 @@ |
115 |
> # Copyright 1999-2014 Gentoo Foundation |
116 |
> # Distributed under the terms of the GNU General Public License v2 |
117 |
> -# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-9999.ebuild,v 1.79 2014/03/11 18:40:17 mgorny Exp $ |
118 |
> +# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-9999.ebuild,v 1.80 2014/04/01 17:24:02 mgorny Exp $ |
119 |
> |
120 |
> EAPI=5 |
121 |
> |
122 |
> PYTHON_COMPAT=( python{2_5,2_6,2_7} pypy{1_9,2_0} ) |
123 |
> |
124 |
> -inherit cmake-utils eutils flag-o-matic git-r3 multilib multilib-minimal \ |
125 |
> - python-r1 toolchain-funcs pax-utils check-reqs |
126 |
> +inherit cmake-utils eutils flag-o-matic git-r3 multibuild multilib \ |
127 |
> + multilib-minimal python-r1 toolchain-funcs pax-utils check-reqs |
128 |
> |
129 |
> DESCRIPTION="Low Level Virtual Machine" |
130 |
> HOMEPAGE="http://llvm.org/" |
131 |
> @@ -65,6 +65,10 @@ |
132 |
> # so why did it call itself ninja in the first place? |
133 |
> CMAKE_MAKEFILE_GENERATOR=emake |
134 |
> |
135 |
> +MULTILIB_CHOST_TOOLS=( |
136 |
> + /usr/bin/llvm-config |
137 |
> +) |
138 |
> + |
139 |
> pkg_pretend() { |
140 |
> # in megs |
141 |
> # !clang !debug !multitarget -O2 400 |
142 |
> @@ -371,25 +375,15 @@ |
143 |
> local MAKEARGS |
144 |
> set_makeargs |
145 |
> |
146 |
> - emake "${MAKEARGS[@]}" DESTDIR="${D}" install |
147 |
> + local root=${D}/_${ABI} |
148 |
> |
149 |
> - # Preserve ABI-variant of llvm-config. |
150 |
> - dodir /tmp |
151 |
> - mv "${ED}"/usr/bin/llvm-config "${ED}"/tmp/"${CHOST}"-llvm-config || die |
152 |
> + emake "${MAKEARGS[@]}" DESTDIR="${root}" install |
153 |
> + multibuild_merge_root "${root}" "${D}" |
154 |
> |
155 |
> if ! multilib_build_binaries; then |
156 |
> - # Drop all the executables since LLVM doesn't like to |
157 |
> - # clobber when installing. |
158 |
> - rm -r "${ED}"/usr/bin || die |
159 |
> - |
160 |
> # Backwards compat, will be happily removed someday. |
161 |
> - dosym "${CHOST}"-llvm-config /tmp/llvm-config.${ABI} |
162 |
> + dosym "${CHOST}"-llvm-config /usr/bin/llvm-config.${ABI} |
163 |
> else |
164 |
> - # Move files back. |
165 |
> - mv "${ED}"/tmp/*llvm-config* "${ED}"/usr/bin || die |
166 |
> - # Create a symlink for host's llvm-config. |
167 |
> - dosym "${CHOST}"-llvm-config /usr/bin/llvm-config |
168 |
> - |
169 |
> # Install docs. |
170 |
> doman "${S}"/docs/_build/man/*.1 |
171 |
> use clang && doman "${T}"/clang.1 |
172 |
> |
173 |
> |
174 |
> |
175 |
> 1.184 sys-devel/llvm/ChangeLog |
176 |
> |
177 |
> file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/ChangeLog?rev=1.184&view=markup |
178 |
> plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/ChangeLog?rev=1.184&content-type=text/plain |
179 |
> diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/ChangeLog?r1=1.183&r2=1.184 |
180 |
> |
181 |
> Index: ChangeLog |
182 |
> =================================================================== |
183 |
> RCS file: /var/cvsroot/gentoo-x86/sys-devel/llvm/ChangeLog,v |
184 |
> retrieving revision 1.183 |
185 |
> retrieving revision 1.184 |
186 |
> diff -u -r1.183 -r1.184 |
187 |
> --- ChangeLog 31 Mar 2014 21:21:24 -0000 1.183 |
188 |
> +++ ChangeLog 1 Apr 2014 17:24:02 -0000 1.184 |
189 |
> @@ -1,6 +1,12 @@ |
190 |
> # ChangeLog for sys-devel/llvm |
191 |
> # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 |
192 |
> -# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/ChangeLog,v 1.183 2014/03/31 21:21:24 mgorny Exp $ |
193 |
> +# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/ChangeLog,v 1.184 2014/04/01 17:24:02 mgorny Exp $ |
194 |
> + |
195 |
> + 01 Apr 2014; Michał Górny <mgorny@g.o> llvm-3.4.ebuild, |
196 |
> + llvm-9999.ebuild: |
197 |
> + Use alternate root install instead of dumb removal to work-around non-clobber |
198 |
> + install target. Use MULTILIB_CHOST_TOOLS rather than inline code to handle |
199 |
> + llvm-config, bug #506398. |
200 |
> |
201 |
> 31 Mar 2014; Michał Górny <mgorny@g.o> llvm-3.3-r1.ebuild, |
202 |
> llvm-3.3-r3.ebuild, llvm-3.4.ebuild: |
203 |
> |
204 |
> |
205 |
> |
206 |
> |