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

Issue 1477033002: Make gclient_utils.GetBuildtoolsPath() work in a build-spec checkout (Closed)

Created:
5 years ago by agrieve
Modified:
5 years ago
Reviewers:
Dirk Pranke
CC:
chromium-reviews, dpranke+depot_tools_chromium.org, iannucci+depot_tools_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/tools/depot_tools.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Make gclient_utils.GetBuildtoolsPath() work in a build-spec checkout This is required for gn.py to work properly on the Android official builders. BUG=552040

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+35 lines, -7 lines) Patch
M gclient_utils.py View 3 chunks +35 lines, -7 lines 0 comments Download

Depends on Patchset:

Messages

Total messages: 6 (1 generated)
agrieve
Not crazy about having to parse DEPS in a non-standard way, but don't see a ...
5 years ago (2015-11-25 21:04:36 UTC) #2
Dirk Pranke
why do you need to invoke gn.py directly? i.e., why aren't you invoking MB instead?
5 years ago (2015-11-25 21:42:05 UTC) #3
agrieve
On 2015/11/25 21:42:05, Dirk Pranke wrote: > why do you need to invoke gn.py directly? ...
5 years ago (2015-11-26 02:50:13 UTC) #4
dpranke
On 2015/11/26 02:50:13, agrieve wrote: > On 2015/11/25 21:42:05, Dirk Pranke wrote: > > why ...
5 years ago (2015-11-30 01:36:55 UTC) #5
agrieve
5 years ago (2015-12-02 19:13:16 UTC) #6
Message was sent while issue was closed.
On 2015/11/30 01:36:55, dpranke wrote:
> On 2015/11/26 02:50:13, agrieve wrote:
> > On 2015/11/25 21:42:05, Dirk Pranke wrote:
> > > why do you need to invoke gn.py directly? i.e., why aren't you invoking MB
> > > instead?
> > 
> > Well, primarily because I hadn't considered using mb.
> > 
> > The two parts in the script where it's used are: http://shortn/_JaThx4LAKL
and
> > http://shortn/_V3gCkK4VmL
> 
> Okay, if you were actually going to invoke GN directly in those scripts, I'd
> just set the path to buildtools/linux64/gn ; it's not like we're going to move

> it any time soon.
> 
> > With some quick testing, I couldn't see how to pass arbitrary gn args to mb
> > (seems like by design it doesn't want you to). But might be a bit weird to
> > encode build machine paths within config.mbl (e.g. for the whitelist
> generation
> > / usage)
> 
> You're right that you can't pass arbitrary gn args to MB (and that is by
> design),
> though there is an exception, for the goma_dir . We could add more if
> need be, though. 
> 
> It looks like the only things that are passed in as arbitrary strings are 
> repack_whitelist and android_channel; is that right? 
> 
> Is repack_whitelist used in anything other than the official builds? If it
> isn't, I'd be tempted to just hardcode the string if is_official_build==true.
> 
> android_channel probably can't be handled that way, though, and it's
> not clear to me that there is a good way to handle it statically if we
continue
> to do multiple different types of builds from a single builder, but presumably
> that's a much larger conversation.
> 
> To sum up: just invoke the binary directly from the scripts, and don't do
> this change. Later, we need a different conversation about this script
> as a whole (that you probably don't need to worry about too much).

I think I came to the same conclusion last weekend and updated the script to
just use path/to/buildtools/linxu64/gn directly. Wrapper script probably needs
to be re-thought.

Powered by Google App Engine
This is Rietveld 408576698