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 <mgo...@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 <mgo...@gentoo.org> llvm-3.3-r1.ebuild, llvm-3.3-r3.ebuild, llvm-3.4.ebuild: