* [gentoo-dev] Re: [gentoo-commits] gentoo-x86 commit in sys-devel/llvm: llvm-3.4.ebuild llvm-9999.ebuild ChangeLog
[not found] <20140401172402.597B22005E@flycatcher.gentoo.org>
@ 2014-04-02 23:33 ` hasufell
0 siblings, 0 replies; only message in thread
From: hasufell @ 2014-04-02 23:33 UTC (permalink / raw
To: gentoo-dev; +Cc: mgorny, clang, multilib
Maybe it is just me, but I take the chance and responsibility.
This commit caused /usr/bin/clang being 32bit on my amd64 system. I
compiled it 3 times.
I have reverted the commit for the live ebuild, reverted it for 3.4-r1
and hardmasked 3.4 to ensure that people who unmasked 3.4 on stable arch
will get the fix as well.
The breakage is not immediate, depending on what you compiled. I noticed
it only after a chain of 3-4 packages that failed to link at some point.
Michal Gorny (mgorny):
> mgorny 14/04/01 17:24:02
>
> Modified: llvm-3.4.ebuild llvm-9999.ebuild ChangeLog
> Log:
> 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.
>
> (Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key EFB4464E!)
>
> Revision Changes Path
> 1.10 sys-devel/llvm/llvm-3.4.ebuild
>
> file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/llvm-3.4.ebuild?rev=1.10&view=markup
> plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/llvm-3.4.ebuild?rev=1.10&content-type=text/plain
> diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/llvm-3.4.ebuild?r1=1.9&r2=1.10
>
> Index: llvm-3.4.ebuild
> ===================================================================
> RCS file: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-3.4.ebuild,v
> retrieving revision 1.9
> retrieving revision 1.10
> diff -u -r1.9 -r1.10
> --- llvm-3.4.ebuild 31 Mar 2014 21:21:24 -0000 1.9
> +++ llvm-3.4.ebuild 1 Apr 2014 17:24:02 -0000 1.10
> @@ -1,13 +1,13 @@
> # Copyright 1999-2014 Gentoo Foundation
> # Distributed under the terms of the GNU General Public License v2
> -# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-3.4.ebuild,v 1.9 2014/03/31 21:21:24 mgorny Exp $
> +# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-3.4.ebuild,v 1.10 2014/04/01 17:24:02 mgorny Exp $
>
> EAPI=5
>
> PYTHON_COMPAT=( python{2_6,2_7} pypy pypy2_0 )
>
> -inherit cmake-utils eutils flag-o-matic multilib multilib-minimal \
> - python-r1 toolchain-funcs pax-utils check-reqs
> +inherit cmake-utils eutils flag-o-matic multibuild multilib \
> + multilib-minimal python-r1 toolchain-funcs pax-utils check-reqs
>
> DESCRIPTION="Low Level Virtual Machine"
> HOMEPAGE="http://llvm.org/"
> @@ -69,6 +69,10 @@
> # so why did it call itself ninja in the first place?
> CMAKE_MAKEFILE_GENERATOR=emake
>
> +MULTILIB_CHOST_TOOLS=(
> + /usr/bin/llvm-config
> +)
> +
> pkg_pretend() {
> # in megs
> # !clang !debug !multitarget -O2 400
> @@ -387,25 +391,15 @@
> local MAKEARGS
> set_makeargs
>
> - emake "${MAKEARGS[@]}" DESTDIR="${D}" install
> + local root=${D}/_${ABI}
>
> - # Preserve ABI-variant of llvm-config.
> - dodir /tmp
> - mv "${ED}"/usr/bin/llvm-config "${ED}"/tmp/"${CHOST}"-llvm-config || die
> + emake "${MAKEARGS[@]}" DESTDIR="${root}" install
> + multibuild_merge_root "${root}" "${D}"
>
> if ! multilib_build_binaries; then
> - # Drop all the executables since LLVM doesn't like to
> - # clobber when installing.
> - rm -r "${ED}"/usr/bin || die
> -
> # Backwards compat, will be happily removed someday.
> - dosym "${CHOST}"-llvm-config /tmp/llvm-config.${ABI}
> + dosym "${CHOST}"-llvm-config /usr/bin/llvm-config.${ABI}
> else
> - # Move files back.
> - mv "${ED}"/tmp/*llvm-config* "${ED}"/usr/bin || die
> - # Create a symlink for host's llvm-config.
> - dosym "${CHOST}"-llvm-config /usr/bin/llvm-config
> -
> # Install docs.
> if use doc; then
> doman "${S}"/docs/_build/man/*.1
>
>
>
> 1.80 sys-devel/llvm/llvm-9999.ebuild
>
> file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/llvm-9999.ebuild?rev=1.80&view=markup
> plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/llvm-9999.ebuild?rev=1.80&content-type=text/plain
> diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/llvm-9999.ebuild?r1=1.79&r2=1.80
>
> Index: llvm-9999.ebuild
> ===================================================================
> RCS file: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-9999.ebuild,v
> retrieving revision 1.79
> retrieving revision 1.80
> diff -u -r1.79 -r1.80
> --- llvm-9999.ebuild 11 Mar 2014 18:40:17 -0000 1.79
> +++ llvm-9999.ebuild 1 Apr 2014 17:24:02 -0000 1.80
> @@ -1,13 +1,13 @@
> # Copyright 1999-2014 Gentoo Foundation
> # Distributed under the terms of the GNU General Public License v2
> -# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-9999.ebuild,v 1.79 2014/03/11 18:40:17 mgorny Exp $
> +# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-9999.ebuild,v 1.80 2014/04/01 17:24:02 mgorny Exp $
>
> EAPI=5
>
> PYTHON_COMPAT=( python{2_5,2_6,2_7} pypy{1_9,2_0} )
>
> -inherit cmake-utils eutils flag-o-matic git-r3 multilib multilib-minimal \
> - python-r1 toolchain-funcs pax-utils check-reqs
> +inherit cmake-utils eutils flag-o-matic git-r3 multibuild multilib \
> + multilib-minimal python-r1 toolchain-funcs pax-utils check-reqs
>
> DESCRIPTION="Low Level Virtual Machine"
> HOMEPAGE="http://llvm.org/"
> @@ -65,6 +65,10 @@
> # so why did it call itself ninja in the first place?
> CMAKE_MAKEFILE_GENERATOR=emake
>
> +MULTILIB_CHOST_TOOLS=(
> + /usr/bin/llvm-config
> +)
> +
> pkg_pretend() {
> # in megs
> # !clang !debug !multitarget -O2 400
> @@ -371,25 +375,15 @@
> local MAKEARGS
> set_makeargs
>
> - emake "${MAKEARGS[@]}" DESTDIR="${D}" install
> + local root=${D}/_${ABI}
>
> - # Preserve ABI-variant of llvm-config.
> - dodir /tmp
> - mv "${ED}"/usr/bin/llvm-config "${ED}"/tmp/"${CHOST}"-llvm-config || die
> + emake "${MAKEARGS[@]}" DESTDIR="${root}" install
> + multibuild_merge_root "${root}" "${D}"
>
> if ! multilib_build_binaries; then
> - # Drop all the executables since LLVM doesn't like to
> - # clobber when installing.
> - rm -r "${ED}"/usr/bin || die
> -
> # Backwards compat, will be happily removed someday.
> - dosym "${CHOST}"-llvm-config /tmp/llvm-config.${ABI}
> + dosym "${CHOST}"-llvm-config /usr/bin/llvm-config.${ABI}
> else
> - # Move files back.
> - mv "${ED}"/tmp/*llvm-config* "${ED}"/usr/bin || die
> - # Create a symlink for host's llvm-config.
> - dosym "${CHOST}"-llvm-config /usr/bin/llvm-config
> -
> # Install docs.
> doman "${S}"/docs/_build/man/*.1
> use clang && doman "${T}"/clang.1
>
>
>
> 1.184 sys-devel/llvm/ChangeLog
>
> file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/ChangeLog?rev=1.184&view=markup
> plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/ChangeLog?rev=1.184&content-type=text/plain
> diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-devel/llvm/ChangeLog?r1=1.183&r2=1.184
>
> Index: ChangeLog
> ===================================================================
> RCS file: /var/cvsroot/gentoo-x86/sys-devel/llvm/ChangeLog,v
> retrieving revision 1.183
> retrieving revision 1.184
> diff -u -r1.183 -r1.184
> --- ChangeLog 31 Mar 2014 21:21:24 -0000 1.183
> +++ ChangeLog 1 Apr 2014 17:24:02 -0000 1.184
> @@ -1,6 +1,12 @@
> # ChangeLog for sys-devel/llvm
> # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
> -# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/ChangeLog,v 1.183 2014/03/31 21:21:24 mgorny Exp $
> +# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/ChangeLog,v 1.184 2014/04/01 17:24:02 mgorny Exp $
> +
> + 01 Apr 2014; Michał Górny <mgorny@gentoo.org> llvm-3.4.ebuild,
> + llvm-9999.ebuild:
> + 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.
>
> 31 Mar 2014; Michał Górny <mgorny@gentoo.org> llvm-3.3-r1.ebuild,
> llvm-3.3-r3.ebuild, llvm-3.4.ebuild:
>
>
>
>
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2014-04-02 23:33 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20140401172402.597B22005E@flycatcher.gentoo.org>
2014-04-02 23:33 ` [gentoo-dev] Re: [gentoo-commits] gentoo-x86 commit in sys-devel/llvm: llvm-3.4.ebuild llvm-9999.ebuild ChangeLog hasufell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox