xref: /aosp_15_r20/external/angle/scripts/bootstrap.py (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1*8975f5c5SAndroid Build Coastguard Worker#!/usr/bin/python3
2*8975f5c5SAndroid Build Coastguard Worker
3*8975f5c5SAndroid Build Coastguard Worker# Copyright 2015 Google Inc.  All rights reserved.
4*8975f5c5SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be
5*8975f5c5SAndroid Build Coastguard Worker# found in the LICENSE file.
6*8975f5c5SAndroid Build Coastguard Worker"""Generate .gclient file for Angle.
7*8975f5c5SAndroid Build Coastguard Worker
8*8975f5c5SAndroid Build Coastguard WorkerBecause gclient won't accept "--name ." use a different name then edit.
9*8975f5c5SAndroid Build Coastguard Worker"""
10*8975f5c5SAndroid Build Coastguard Worker
11*8975f5c5SAndroid Build Coastguard Workerimport subprocess
12*8975f5c5SAndroid Build Coastguard Workerimport sys
13*8975f5c5SAndroid Build Coastguard Worker
14*8975f5c5SAndroid Build Coastguard Worker
15*8975f5c5SAndroid Build Coastguard Workerdef main():
16*8975f5c5SAndroid Build Coastguard Worker    gclient_cmd = ('gclient config --name change2dot --unmanaged '
17*8975f5c5SAndroid Build Coastguard Worker                   'https://chromium.googlesource.com/angle/angle.git')
18*8975f5c5SAndroid Build Coastguard Worker    try:
19*8975f5c5SAndroid Build Coastguard Worker        rc = subprocess.call(gclient_cmd, shell=True)
20*8975f5c5SAndroid Build Coastguard Worker    except OSError:
21*8975f5c5SAndroid Build Coastguard Worker        print('could not run "%s" via shell' % gclient_cmd)
22*8975f5c5SAndroid Build Coastguard Worker        sys.exit(1)
23*8975f5c5SAndroid Build Coastguard Worker
24*8975f5c5SAndroid Build Coastguard Worker    if rc:
25*8975f5c5SAndroid Build Coastguard Worker        print('failed command: "%s"' % gclient_cmd)
26*8975f5c5SAndroid Build Coastguard Worker        sys.exit(1)
27*8975f5c5SAndroid Build Coastguard Worker
28*8975f5c5SAndroid Build Coastguard Worker    with open('.gclient') as gclient_file:
29*8975f5c5SAndroid Build Coastguard Worker        content = gclient_file.read()
30*8975f5c5SAndroid Build Coastguard Worker
31*8975f5c5SAndroid Build Coastguard Worker    content = content.replace('change2dot', '.')
32*8975f5c5SAndroid Build Coastguard Worker    if sys.platform.startswith('linux'):
33*8975f5c5SAndroid Build Coastguard Worker        content += 'target_os = [ \'android\' ]\n'
34*8975f5c5SAndroid Build Coastguard Worker
35*8975f5c5SAndroid Build Coastguard Worker    with open('.gclient', 'w') as gclient_file:
36*8975f5c5SAndroid Build Coastguard Worker        gclient_file.write(content)
37*8975f5c5SAndroid Build Coastguard Worker
38*8975f5c5SAndroid Build Coastguard Worker    print('created .gclient')
39*8975f5c5SAndroid Build Coastguard Worker
40*8975f5c5SAndroid Build Coastguard Worker
41*8975f5c5SAndroid Build Coastguard Workerif __name__ == '__main__':
42*8975f5c5SAndroid Build Coastguard Worker    main()
43