28
28
from tools .options import extract_profile , list_profiles , extract_mcus
29
29
from tools .notifier .term import TerminalNotifier
30
30
31
+ EXPORTER_ALIASES = {
32
+ u'gcc_arm' : u'make_gcc_arm' ,
33
+ u'uvision' : u'uvision5' ,
34
+ }
35
+
36
+
37
+ def resolve_exporter_alias (ide ):
38
+ if ide in EXPORTER_ALIASES :
39
+ return EXPORTER_ALIASES [ide ]
40
+ else :
41
+ return ide
42
+
43
+
31
44
def setup_project (ide , target , program = None , source_dir = None , build = None , export_path = None ):
32
45
"""Generate a name, if not provided, and find dependencies
33
46
@@ -109,7 +122,7 @@ def main():
109
122
110
123
targetnames = TARGET_NAMES
111
124
targetnames .sort ()
112
- toolchainlist = list (EXPORTERS .keys ())
125
+ toolchainlist = list (EXPORTERS .keys () + EXPORTER_ALIASES . keys () )
113
126
toolchainlist .sort ()
114
127
115
128
parser .add_argument ("-m" , "--mcu" ,
@@ -256,10 +269,11 @@ def main():
256
269
257
270
if (options .program is None ) and (not options .source_dir ):
258
271
args_error (parser , "one of -p, -n, or --source is required" )
259
- exporter , toolchain_name = get_exporter_toolchain (options .ide )
272
+ ide = resolve_exporter_alias (options .ide )
273
+ exporter , toolchain_name = get_exporter_toolchain (ide )
260
274
mcu = extract_mcus (parser , options )[0 ]
261
275
if not exporter .is_target_supported (mcu ):
262
- args_error (parser , "%s not supported by %s" % (mcu ,options . ide ))
276
+ args_error (parser , "%s not supported by %s" % (mcu , ide ))
263
277
profile = extract_profile (parser , options , toolchain_name , fallback = "debug" )
264
278
if options .clean :
265
279
for cls in EXPORTERS .values ():
@@ -273,7 +287,7 @@ def main():
273
287
except (IOError , OSError ):
274
288
pass
275
289
try :
276
- export (mcu , options . ide , build = options .build ,
290
+ export (mcu , ide , build = options .build ,
277
291
src = options .source_dir , macros = options .macros ,
278
292
project_id = options .program , zip_proj = zip_proj ,
279
293
build_profile = profile , app_config = options .app_config ,
0 commit comments