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

Side by Side Diff: build/gn_run_binary.py

Issue 2493833002: GN: Don't depend on dart_bootstrap if there is a usable prebuilt sdk (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « build/executable_suffix.gni ('k') | build/prebuilt_dart_sdk.gni » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 """Helper script for GN to run an arbitrary binary. See compiled_action.gni. 5 """Helper script for GN to run an arbitrary binary. See compiled_action.gni.
6 6
7 Run with: 7 Run with:
8 python gn_run_binary.py <binary_name> [args ...] 8 python gn_run_binary.py <binary_name> [args ...]
9 """ 9 """
10 10
11 import os
11 import sys 12 import sys
12 import subprocess 13 import subprocess
13 14
14 # This script is designed to run binaries produced by the current build. We 15 # Run a command, swallowing the output unless there is an error.
15 # always prefix it with "./" to avoid picking up system versions that might 16 def run_command(command):
16 # also be on the path. 17 try:
17 path = './' + sys.argv[1] 18 subprocess.check_output(command, stderr=subprocess.STDOUT)
19 return 0
20 except subprocess.CalledProcessError as e:
21 return ("Command failed: " + ' '.join(command) + "\n" +
22 "output: " + e.output)
23
24 # Unless the path is absolute, this script is designed to run binaries produced
25 # by the current build. We always prefix it with "./" to avoid picking up system
26 # versions that might also be on the path.
27 if os.path.isabs(sys.argv[1]):
28 path = sys.argv[1]
29 else:
30 path = './' + sys.argv[1]
18 31
19 # The rest of the arguements are passed directly to the executable. 32 # The rest of the arguements are passed directly to the executable.
20 args = [path] + sys.argv[2:] 33 args = [path] + sys.argv[2:]
21 34
22 sys.exit(subprocess.call(args)) 35 sys.exit(run_command(args))
OLDNEW
« no previous file with comments | « build/executable_suffix.gni ('k') | build/prebuilt_dart_sdk.gni » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698