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