15f9996aaSopenharmony_ci#!/usr/bin/env python 25f9996aaSopenharmony_ci# -*- coding: utf-8 -*- 35f9996aaSopenharmony_ci# Copyright 2016 The Chromium Authors. All rights reserved. 45f9996aaSopenharmony_ci# Use of this source code is governed by a BSD-style license that can be 55f9996aaSopenharmony_ci# found in the LICENSE file. 65f9996aaSopenharmony_ci 75f9996aaSopenharmony_ciimport argparse 85f9996aaSopenharmony_ciimport os 95f9996aaSopenharmony_ciimport subprocess 105f9996aaSopenharmony_ciimport sys 115f9996aaSopenharmony_ci 125f9996aaSopenharmony_ciif __name__ == '__main__': 135f9996aaSopenharmony_ci parser = argparse.ArgumentParser( 145f9996aaSopenharmony_ci description='A script to execute a command via xcrun.') 155f9996aaSopenharmony_ci parser.add_argument('--stamp', action='store', type=str, 165f9996aaSopenharmony_ci help='Write a stamp file to this path on success.') 175f9996aaSopenharmony_ci parser.add_argument('--developer_dir', required=False, 185f9996aaSopenharmony_ci help='Path to Xcode.') 195f9996aaSopenharmony_ci args, unknown_args = parser.parse_known_args() 205f9996aaSopenharmony_ci 215f9996aaSopenharmony_ci if args.developer_dir: 225f9996aaSopenharmony_ci os.environ['DEVELOPER_DIR'] = args.developer_dir 235f9996aaSopenharmony_ci 245f9996aaSopenharmony_ci rv = subprocess.check_call(['xcrun'] + unknown_args) 255f9996aaSopenharmony_ci if rv == 0 and args.stamp: 265f9996aaSopenharmony_ci if os.path.exists(args.stamp): 275f9996aaSopenharmony_ci os.unlink(args.stamp) 285f9996aaSopenharmony_ci with open(args.stamp, 'w+') as fp: 295f9996aaSopenharmony_ci 305f9996aaSopenharmony_ci sys.exit(rv) 31