@@ -78,15 +78,14 @@ def __init__(self, tool_path, platform):
78
78
self .sdk + '/System/Library/Frameworks/' ,
79
79
os .path .realpath (self .sdk + '/../../Library/Frameworks/' )]
80
80
81
- def run (self , output , module , swift_ver , abi , verbose ):
81
+ def run (self , output , module , swift_ver , opts , verbose ):
82
82
cmd = [self .tool_path , '-o' , output , '-sdk' , self .sdk , '-target' ,
83
83
self .target , '-dump-sdk' , '-module-cache-path' ,
84
84
'/tmp/ModuleCache' , '-swift-version' ,
85
85
swift_ver , '-abort-on-module-fail' ]
86
86
for path in self .frameworks :
87
87
cmd .extend (['-iframework' , path ])
88
- if abi :
89
- cmd .extend (['-abi' ])
88
+ cmd .extend (['-' + o for o in opts ])
90
89
if verbose :
91
90
cmd .extend (['-v' ])
92
91
if module :
@@ -103,13 +102,12 @@ class DiagnoseConfig:
103
102
def __init__ (self , tool_path ):
104
103
self .tool_path = get_api_digester_path (tool_path )
105
104
106
- def run (self , abi , before , after , output , verbose ):
105
+ def run (self , opts , before , after , output , verbose ):
107
106
cmd = [self .tool_path , '-diagnose-sdk' , '-input-paths' , before ,
108
107
'-input-paths' , after ]
109
108
if output :
110
109
cmd .extend (['-o' , output ])
111
- if abi :
112
- cmd .extend (['-abi' ])
110
+ cmd .extend (['-' + o for o in opts ])
113
111
if verbose :
114
112
cmd .extend (['-v' ])
115
113
check_call (cmd , verbose = verbose )
@@ -149,9 +147,9 @@ def main():
149
147
name of the module/framework to generate baseline, e.g. Foundation
150
148
''' )
151
149
152
- basic_group .add_argument ('--abi' ,
153
- action = 'store_true' ,
154
- help = 'Whether we are jsonizing for abi ' )
150
+ basic_group .add_argument ('--opts' , nargs = '+' , default = [], help = '''
151
+ additional flags to pass to swift-api-digester
152
+ '' ' )
155
153
156
154
basic_group .add_argument ('--v' ,
157
155
action = 'store_true' ,
@@ -177,14 +175,15 @@ def main():
177
175
fatal_error ("Need to specify --output" )
178
176
runner = DumpConfig (tool_path = args .tool_path , platform = args .target )
179
177
runner .run (output = args .output , module = args .module ,
180
- swift_ver = args .swift_version , abi = args .abi , verbose = args .v )
178
+ swift_ver = args .swift_version , opts = args .opts ,
179
+ verbose = args .v )
181
180
elif args .action == 'diagnose' :
182
181
if not args .dump_before :
183
182
fatal_error ("Need to specify --dump-before" )
184
183
if not args .dump_after :
185
184
fatal_error ("Need to specify --dump-after" )
186
185
runner = DiagnoseConfig (tool_path = args .tool_path )
187
- runner .run (abi = args .abi , before = args .dump_before ,
186
+ runner .run (opts = args .opts , before = args .dump_before ,
188
187
after = args .dump_after , output = args .output , verbose = args .v )
189
188
else :
190
189
fatal_error ('Cannot recognize action: ' + args .action )
0 commit comments