| Index: third_party/crashpad/crashpad/util/mach/mig.py
|
| diff --git a/third_party/crashpad/crashpad/util/mach/mig.py b/third_party/crashpad/crashpad/util/mach/mig.py
|
| index eca2348aa877d1dc20028b47779b4c6ce157d4c4..a41c4f89cdc98b96688eeea338aebf6aa1918887 100755
|
| --- a/third_party/crashpad/crashpad/util/mach/mig.py
|
| +++ b/third_party/crashpad/crashpad/util/mach/mig.py
|
| @@ -15,6 +15,7 @@
|
| # See the License for the specific language governing permissions and
|
| # limitations under the License.
|
|
|
| +import argparse
|
| import os
|
| import re
|
| import subprocess
|
| @@ -107,23 +108,32 @@ extern "C" {
|
| file.close()
|
|
|
| def main(args):
|
| - if len(args) == 5:
|
| - (defs_file, user_c, server_c, user_h, server_h) = args
|
| - elif len(args) == 6:
|
| - (defs_file, user_c, server_c, user_h, server_h, dev_dir) = args
|
| - os.environ['DEVELOPER_DIR'] = dev_dir
|
| - else:
|
| - assert False, "Wrong number of arguments"
|
| - subprocess.check_call(['mig',
|
| - '-user', user_c,
|
| - '-server', server_c,
|
| - '-header', user_h,
|
| - '-sheader', server_h,
|
| - defs_file])
|
| - FixUserImplementation(user_c)
|
| - server_declarations = FixServerImplementation(server_c)
|
| - FixHeader(user_h)
|
| - FixHeader(server_h, server_declarations)
|
| + parser = argparse.ArgumentParser()
|
| + parser.add_argument('--developer-dir', help='Path to Xcode')
|
| + parser.add_argument('--sdk', help='Path to SDK')
|
| + parser.add_argument('defs')
|
| + parser.add_argument('user_c')
|
| + parser.add_argument('server_c')
|
| + parser.add_argument('user_h')
|
| + parser.add_argument('server_h')
|
| + parsed = parser.parse_args(args)
|
| +
|
| + command = ['mig',
|
| + '-user', parsed.user_c,
|
| + '-server', parsed.server_c,
|
| + '-header', parsed.user_h,
|
| + '-sheader', parsed.server_h,
|
| + ]
|
| + if parsed.sdk is not None:
|
| + command.extend(['-isysroot', parsed.sdk])
|
| + if parsed.developer_dir is not None:
|
| + os.environ['DEVELOPER_DIR'] = parsed.developer_dir
|
| + command.append(parsed.defs)
|
| + subprocess.check_call(command)
|
| + FixUserImplementation(parsed.user_c)
|
| + server_declarations = FixServerImplementation(parsed.server_c)
|
| + FixHeader(parsed.user_h)
|
| + FixHeader(parsed.server_h, server_declarations)
|
|
|
| if __name__ == '__main__':
|
| sys.exit(main(sys.argv[1:]))
|
|
|