xref: /aosp_15_r20/external/angle/build/cp.py (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1*8975f5c5SAndroid Build Coastguard Worker#!/usr/bin/env python3
2*8975f5c5SAndroid Build Coastguard Worker# Copyright 2012 The Chromium Authors
3*8975f5c5SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be
4*8975f5c5SAndroid Build Coastguard Worker# found in the LICENSE file.
5*8975f5c5SAndroid Build Coastguard Worker
6*8975f5c5SAndroid Build Coastguard Worker"""Copy a file.
7*8975f5c5SAndroid Build Coastguard Worker
8*8975f5c5SAndroid Build Coastguard WorkerThis module works much like the cp posix command - it takes 2 arguments:
9*8975f5c5SAndroid Build Coastguard Worker(src, dst) and copies the file with path |src| to |dst|.
10*8975f5c5SAndroid Build Coastguard Worker"""
11*8975f5c5SAndroid Build Coastguard Worker
12*8975f5c5SAndroid Build Coastguard Workerimport os
13*8975f5c5SAndroid Build Coastguard Workerimport shutil
14*8975f5c5SAndroid Build Coastguard Workerimport sys
15*8975f5c5SAndroid Build Coastguard Worker
16*8975f5c5SAndroid Build Coastguard Worker
17*8975f5c5SAndroid Build Coastguard Workerdef Main(src, dst):
18*8975f5c5SAndroid Build Coastguard Worker  # Use copy instead of copyfile to ensure the executable bit is copied.
19*8975f5c5SAndroid Build Coastguard Worker  return shutil.copy(src, os.path.normpath(dst))
20*8975f5c5SAndroid Build Coastguard Worker
21*8975f5c5SAndroid Build Coastguard Worker
22*8975f5c5SAndroid Build Coastguard Workerif __name__ == '__main__':
23*8975f5c5SAndroid Build Coastguard Worker  sys.exit(Main(sys.argv[1], sys.argv[2]))
24