Patch ebuild.sh to not nuke the WORKDIR if FEATURES="keepwork".
authorChristopher Covington <cov@codeaurora.org>
Thu, 8 Jul 2010 14:46:00 +0000 (07:46 -0700)
committerZac Medico <zmedico@gentoo.org>
Fri, 9 Jul 2010 02:52:42 +0000 (19:52 -0700)
commit960efaf44e550808815ed4c8f1513df9d5b9eb71
treea0e7eea25a2f1ffe13303bf7ef2c95ffdb1dfb60
parent3a58eab382f5b31378030ea547ce0811e4b7d6a0
Patch ebuild.sh to not nuke the WORKDIR if FEATURES="keepwork".

This allows make to do its thing when using Portage in a development
workflow, although the change also exposes how ebuild clean doesn't
clear out the WORKDIR.

TEST=`rm -rf /build/$board/tmp/portage/chromeos-base/kernel-0.0.1 &&
[ -e /build/$board/tmp/portage/chromeos-base/kernel-0.0.1/.unpacked ] &&
rm /build/$board/tmp/portage/chromeos-base/kernel-0.0.1/.unpacked &&
FEATURES=keepwork ebuild-$board kernel-0.0.1.ebuild install`

Then modify some of the source (preferably in the git repository rather
than the WORKDIR).

`[ -e /build/$board/tmp/portage/chromeos-base/kernel-0.0.1/.unpacked ] &&
rm /build/$board/tmp/portage/chromeos-base/kernel-0.0.1/.unpacked &&
FEATURES=keepwork ebuild-$board kernel-0.0.1.ebuild install &&`

On the second ebuild operation, make should be able to tell what
exactly, or if nothing at all, has changed, and rebuild only the
necessary object files.

http://codereview.chromium.org/2922001
bin/ebuild.sh