@@ -25,11 +25,19 @@ class IAR(Exporter):
25
25
with open (def_loc , 'r' ) as f :
26
26
IAR_DEFS = json .load (f )
27
27
28
- #supported targets have a device name and corresponding definition in
29
- #iar_definitions.json
30
- TARGETS = [target for target , obj in TARGET_MAP .iteritems ()
31
- if hasattr (obj , 'device_name' ) and
32
- obj .device_name in IAR_DEFS .keys () and "IAR" in obj .supported_toolchains ]
28
+ def _iar_support (tgt , iar_targets ):
29
+ if "IAR" not in tgt .supported_toolchains :
30
+ return False
31
+ if hasattr (tgt , 'device_name' ) and tgt .device_name in iar_targets :
32
+ return True
33
+ if tgt .name in iar_targets :
34
+ return True
35
+ return False
36
+
37
+ #supported targets have a name or device_name which maps to a definition
38
+ #in iar_definitions.json
39
+ TARGETS = [target for target , obj in TARGET_MAP .iteritems () if
40
+ _iar_support (obj , IAR_DEFS .keys ())]
33
41
34
42
def iar_groups (self , grouped_src ):
35
43
"""Return a namedtuple of group info
@@ -56,7 +64,9 @@ def iar_groups(self, grouped_src):
56
64
57
65
def iar_device (self ):
58
66
"""Retrieve info from iar_definitions.json"""
59
- device_name = TARGET_MAP [self .target ].device_name
67
+ tgt = TARGET_MAP [self .target ]
68
+ device_name = (tgt .device_name if hasattr (tgt , "device_name" ) else
69
+ tgt .name )
60
70
device_info = self .IAR_DEFS [device_name ]
61
71
iar_defaults = {
62
72
"OGChipSelectEditMenu" : "" ,
0 commit comments