1#!/usr/bin/env python 2# -*- coding: utf-8 -*- 3# Copyright (c) 2021 Huawei Device Co., Ltd. 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15 16import sys 17import shutil 18import argparse 19import subprocess 20import os 21 22 23def copy_strip(args): 24 shutil.copy(args.input, args.output) 25 subprocess.call([args.strip, args.output], shell=False) 26 27 28def main(): 29 parser = argparse.ArgumentParser() 30 parser.add_argument('--input', required=True) 31 parser.add_argument('--output', required=True) 32 parser.add_argument('--strip', required=True) 33 parser.add_argument('--mini-debug', required=False) 34 parser.add_argument('--adlt-llvm-tool', required=False) 35 args = parser.parse_args() 36 copy_strip(args) 37 if args.mini_debug == "true": 38 ohos_root_path = os.path.join(os.path.dirname(__file__), '../../..') 39 script_path = os.path.join(os.path.dirname(__file__), '../../../build/toolchain/mini_debug_info.py') 40 clang_base_path = os.path.join(os.path.dirname(__file__), '../../../prebuilts/clang/ohos') 41 cmd_args = [ 42 'python3', script_path, 43 '--unstripped-path', args.input, 44 '--stripped-path', args.output, 45 '--root-path', ohos_root_path, 46 '--clang-base-dir', clang_base_path 47 ] 48 if args.adlt_llvm_tool: 49 cmd_args.extend(['--adlt-llvm-tool', args.adlt_llvm_tool]) 50 subprocess.call(cmd_args) 51 return 0 52 53if __name__ == '__main__': 54 sys.exit(main()) 55