-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy path_load_vars.py
76 lines (62 loc) · 2 KB
/
_load_vars.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#!/usr/bin/env python3
'''
This script will parse arguments for configuring scripts
'''
import os
import argparse
CURRENT_FOLDER = os.path.dirname(__file__)
DEFAULT_BROMITE = os.path.abspath(os.path.join(CURRENT_FOLDER, './bromite'))
DEFAULT_CHROMIUM = os.path.abspath(
os.path.join(CURRENT_FOLDER, './chromium/src'))
DEFAULT_DEPOT_TOOLS = os.path.abspath(
os.path.join(CURRENT_FOLDER, './depot_tools'))
def load_vars(existing_parser=None):
"""
This function will load common CLI arguments
You can optionally specify an existing argparse parser
"""
if existing_parser is not None:
parser = existing_parser
else:
parser = argparse.ArgumentParser(
description='Load variables'
)
parser.add_argument(
'--depot_tools',
default=DEFAULT_DEPOT_TOOLS,
help="The folder for chrome depot_tools"
)
parser.add_argument(
'--bromite',
default=DEFAULT_BROMITE,
help="The bromite folder to get patches from"
)
parser.add_argument(
'--chromium',
default=DEFAULT_CHROMIUM,
help="The chromium/src folder to do builds within"
)
parser.add_argument(
'--build_name',
default="Default",
help="The name within the chromium/src/out folder to use for the build"
)
args = parser.parse_args()
arg_dict = vars(args)
chromium = args.chromium
chromium_root = os.path.abspath(os.path.join(chromium, "../"))
build_name = args.build_name
build_path = "out/" + build_name
bromite = args.bromite
bromite_build_folder = os.path.abspath(os.path.join(bromite, 'build'))
depot_tools = os.path.abspath(args.depot_tools)
env = os.environ.copy()
env["PATH"] = env["PATH"] + ":" + depot_tools
final_args = dict(arg_dict, **{
"chromium_root": chromium_root,
"bromite_build_folder": bromite_build_folder,
"build_path": build_path,
"root": CURRENT_FOLDER,
"env": env
})
return final_args