David Brazdil | 6c63a26 | 2019-12-23 13:23:46 +0000 | [diff] [blame] | 1 | #!/usr/bin/env python3 |
Andrew Scull | 1883487 | 2018-10-12 11:48:09 +0100 | [diff] [blame] | 2 | # |
Andrew Walbran | 692b325 | 2019-03-07 15:51:31 +0000 | [diff] [blame] | 3 | # Copyright 2018 The Hafnium Authors. |
Andrew Scull | 1883487 | 2018-10-12 11:48:09 +0100 | [diff] [blame] | 4 | # |
Andrew Walbran | e959ec1 | 2020-06-17 15:01:09 +0100 | [diff] [blame^] | 5 | # Use of this source code is governed by a BSD-style |
| 6 | # license that can be found in the LICENSE file or at |
| 7 | # https://opensource.org/licenses/BSD-3-Clause. |
Andrew Scull | 1883487 | 2018-10-12 11:48:09 +0100 | [diff] [blame] | 8 | |
Andrew Scull | a158e91 | 2018-07-16 11:32:13 +0100 | [diff] [blame] | 9 | """Convert a file to binary format. |
| 10 | |
| 11 | Calls objcopy to convert a file into raw binary format. |
| 12 | """ |
| 13 | |
| 14 | import argparse |
Andrew Walbran | 9f8d9c7 | 2019-10-21 12:51:40 +0100 | [diff] [blame] | 15 | import os |
Andrew Scull | a158e91 | 2018-07-16 11:32:13 +0100 | [diff] [blame] | 16 | import subprocess |
| 17 | import sys |
| 18 | |
Andrew Walbran | 9f8d9c7 | 2019-10-21 12:51:40 +0100 | [diff] [blame] | 19 | HF_ROOT = os.path.dirname(os.path.dirname(os.path.dirname(__file__))) |
| 20 | CLANG_ROOT = os.path.join(HF_ROOT, "prebuilts", "linux-x64", "clang") |
| 21 | OBJCOPY = os.path.join(CLANG_ROOT, "bin", "llvm-objcopy") |
Andrew Scull | 4b0a32e | 2018-08-08 16:38:17 +0100 | [diff] [blame] | 22 | |
Andrew Scull | a158e91 | 2018-07-16 11:32:13 +0100 | [diff] [blame] | 23 | def Main(): |
Andrew Scull | 4b0a32e | 2018-08-08 16:38:17 +0100 | [diff] [blame] | 24 | parser = argparse.ArgumentParser() |
Andrew Scull | 4b0a32e | 2018-08-08 16:38:17 +0100 | [diff] [blame] | 25 | parser.add_argument("--input", required=True) |
| 26 | parser.add_argument("--output", required=True) |
| 27 | args = parser.parse_args() |
| 28 | subprocess.check_call([ |
Andrew Walbran | 9f8d9c7 | 2019-10-21 12:51:40 +0100 | [diff] [blame] | 29 | OBJCOPY, "-O", "binary", args.input, args.output |
Andrew Scull | 4b0a32e | 2018-08-08 16:38:17 +0100 | [diff] [blame] | 30 | ]) |
| 31 | return 0 |
| 32 | |
Andrew Scull | a158e91 | 2018-07-16 11:32:13 +0100 | [diff] [blame] | 33 | |
| 34 | if __name__ == "__main__": |
Andrew Scull | 4b0a32e | 2018-08-08 16:38:17 +0100 | [diff] [blame] | 35 | sys.exit(Main()) |