Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(580)

Issue 5244001: [crosutils] Add script to help build incrementally (Closed)

Created:
10 years, 1 month ago by Chris Masone
Modified:
9 years, 7 months ago
Reviewers:
rochberg, kliegs, rtc, anush
CC:
chromium-os-reviews_chromium.org, Mandeep Singh Baines, anush, sosa
Visibility:
Public.

Description

[crosutils] Add script to help build incrementally cros_workon_make provides a make-style interface to incrementally building cros_workon-enabled packages, appropriately setting up the toolchain for the target board beforehand. To incrementally build your package: cros_workon_make --board <board> <package> To re-run your package's configure steps and compile: cros_workon_make --board <board> <package> --reconf To incrementally build your package and tests, and run the tests: cros_workon_make --board <board> <package> --tests To incrementally build and install your package: cros_workon_make --board <board> <package> --install To remove ALL files in your package repo not known by git: cros_workon_make --board <board> <package> --scrub With the exception of --scrub, these flags all compose BUG=6843 TEST=build workon packages in place Change-Id: Ie219074127549e1e29adad6d6a03142ab74e0172 Committed: http://chrome-svn/viewvc/chromeos?view=rev&revision=5c5a95e

Patch Set 1 #

Patch Set 2 : lint #

Patch Set 3 : add 'scrub' #

Patch Set 4 : added --install #

Total comments: 11
Unified diffs Side-by-side diffs Delta from patch set Stats (+93 lines, -0 lines) Patch
A bin/cros_workon_make View 1 chunk +93 lines, -0 lines 11 comments Download

Messages

Total messages: 12 (0 generated)
Chris Masone
10 years, 1 month ago (2010-11-19 21:01:19 UTC) #1
Chris Masone
On 2010/11/19 21:01:19, Chris Masone wrote: ping?
10 years, 1 month ago (2010-11-22 18:15:48 UTC) #2
Chris Masone
On 2010/11/22 18:15:48, Chris Masone wrote: > On 2010/11/19 21:01:19, Chris Masone wrote: > > ...
10 years, 1 month ago (2010-11-23 06:46:43 UTC) #3
anush
Thanks for the update according to our conversation. High level question : Should these options ...
10 years, 1 month ago (2010-11-23 16:04:59 UTC) #4
Chris Masone
I'm against merging this into cros_workon for a couple reasons...one is personal preference, the other ...
10 years, 1 month ago (2010-11-23 19:42:21 UTC) #5
anush
Ok. LGTM to make it an incremental only script. On Tue, Nov 23, 2010 at ...
10 years, 1 month ago (2010-11-23 20:24:00 UTC) #6
rochberg
I've been using CROS_WORKON_INPLACE and ran into trouble because nothing cleaned up the .compiled file; ...
10 years ago (2010-11-29 21:04:05 UTC) #7
Chris Masone
On Mon, Nov 29, 2010 at 1:04 PM, <rochberg@chromium.org> wrote: > I've been using CROS_WORKON_INPLACE ...
10 years ago (2010-11-29 21:22:59 UTC) #8
rochberg
On Mon, Nov 29, 2010 at 4:22 PM, Chris Masone <cmasone@chromium.org> wrote: > > > ...
10 years ago (2010-11-30 02:44:52 UTC) #9
Chris Masone
On Mon, Nov 29, 2010 at 6:44 PM, David Rochberg <rochberg@chromium.org>wrote: > On Mon, Nov ...
10 years ago (2010-11-30 02:51:04 UTC) #10
kliegs
On Mon, Nov 29, 2010 at 9:50 PM, Chris Masone <cmasone@chromium.org> wrote: > > > ...
10 years ago (2010-11-30 14:45:49 UTC) #11
Chris Masone
10 years ago (2010-11-30 16:22:19 UTC) #12
On Tue, Nov 30, 2010 at 6:45 AM, Jonathan Kliegman <kliegs@chromium.org>wrote:

>
>
> On Mon, Nov 29, 2010 at 9:50 PM, Chris Masone <cmasone@chromium.org>wrote:
>
>>
>>
>> On Mon, Nov 29, 2010 at 6:44 PM, David Rochberg <rochberg@chromium.org>wrote:
>>
>>> On Mon, Nov 29, 2010 at 4:22 PM, Chris Masone <cmasone@chromium.org>wrote:
>>>
>>>>
>>>>
>>>> On Mon, Nov 29, 2010 at 1:04 PM, <rochberg@chromium.org> wrote:
>>>>
>>>>> I've been using CROS_WORKON_INPLACE and ran into trouble because
>>>>> nothing cleaned
>>>>> up the .compiled file; ebuild ran into that and my build silently
>>>>> succeeded.
>>>>> I'm not sure I see where this script fixes that.
>>>>>
>>>>>
>>>> in line 90, where it rm's the .compiled file.
>>>>
>>>
>>> Perhaps I should learn to read.   Sorry.
>>>
>>>>
>>>>>
>>>> I'm strongly against the swiss army approach, where one tool gets an
>>>> option to support each individual's workflow.  This tool has a command to
>>>> incrementally build and install your package, though, which seems like it'd
>>>> get you most of what you need.
>>>>
>>>
>>> I totally agree that supporting every weird individual workflow is bad.
>>> But I think there should be a "standard" fast way to get your bits to your
>>> machine.  Once we have that, we can talk about where it belongs.  I'll start
>>> a separate discussion about that.
>>>
>>
>>>
>>
>> Don't we already have two?  gmerge and gmergefs?
>>
>> I also think that, if one is installing onto the device so much that the
>> time it takes is a significant impediment to getting work done, the cycles
>> need to be spent to enable better unit testing, so more work can be done on
>> the workstation -- not on doing something that's just incrementally faster
>> than gmerge.
>>
>
>
> I agree this would work for many tools.  But all the work on kernel
> drivers, boot sequences and other random hardware bits will likely require
> testing on the actual board.
>

Absolutely.  And the two tools we have for installing software (gmerge,
gmergefs) certainly already support boot script work and all normal
packages.  If they don't work for the kernel or drivers, that sounds like
the place to add fixes.


> And I'm sure some other areas I've forgotten or weren't aware of.  VM's
> only go so far for some instances
>

I don't think VMs are in the discussion here...you'd need to gmerge stuff
onto them too, so it's the same as real devices in terms of
edit/compile/test.


> and while being able to unit test everything from host is a great goal, we
> don't want to ignore improvements to other areas because "they should just
> unit test better".
>
> I understand the reluctance to have one tool crammed full of so many
> features its unmaintainable.  But we need to watch out for the other extreme
> of having so many tools that we make the workflow too complex.
>
>

Everyone's already familiar with gmerge.  If that doesn't work for some use
cases, then let's make it work.

Powered by Google App Engine
This is Rietveld 408576698