17927a7a0Sopenharmony_ci#!/usr/bin/env python
27927a7a0Sopenharmony_ci# -*- coding: utf-8 -*-
37927a7a0Sopenharmony_ci# Copyright 2024 Huawei Technologies Co., Ltd
47927a7a0Sopenharmony_ci#
57927a7a0Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
67927a7a0Sopenharmony_ci# you may not use this file except in compliance with the License.
77927a7a0Sopenharmony_ci# You may obtain a copy of the License at
87927a7a0Sopenharmony_ci#
97927a7a0Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0
107927a7a0Sopenharmony_ci#
117927a7a0Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
127927a7a0Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
137927a7a0Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
147927a7a0Sopenharmony_ci# See the License for the specific language governing permissions and
157927a7a0Sopenharmony_ci# limitations under the License.
167927a7a0Sopenharmony_ci
177927a7a0Sopenharmony_ciimport os
187927a7a0Sopenharmony_ciimport sys
197927a7a0Sopenharmony_ciimport shutil
207927a7a0Sopenharmony_ciimport argparse
217927a7a0Sopenharmony_ciimport subprocess
227927a7a0Sopenharmony_ci
237927a7a0Sopenharmony_ci
247927a7a0Sopenharmony_cidef untar_file(tar_file_path, extract_path):
257927a7a0Sopenharmony_ci    try:
267927a7a0Sopenharmony_ci        tar_cmd = ['tar', '-zxf', tar_file_path, '-C', extract_path]
277927a7a0Sopenharmony_ci        subprocess.run(tar_cmd, check=True)
287927a7a0Sopenharmony_ci    except Exception as e:
297927a7a0Sopenharmony_ci        print("tar error!")
307927a7a0Sopenharmony_ci        return
317927a7a0Sopenharmony_ci
327927a7a0Sopenharmony_ci
337927a7a0Sopenharmony_cidef clear_dir(old_dir):
347927a7a0Sopenharmony_ci    if os.path.exists(old_dir):
357927a7a0Sopenharmony_ci        shutil.rmtree(old_dir)
367927a7a0Sopenharmony_ci
377927a7a0Sopenharmony_ci
387927a7a0Sopenharmony_cidef move_dir(src_dir, dst_dir):
397927a7a0Sopenharmony_ci    shutil.copytree(src_dir, dst_dir)
407927a7a0Sopenharmony_ci
417927a7a0Sopenharmony_ci
427927a7a0Sopenharmony_cidef main():
437927a7a0Sopenharmony_ci    args_parser = argparse.ArgumentParser()
447927a7a0Sopenharmony_ci    args_parser.add_argument('--gen-dir', help='generate path of log', required=True)
457927a7a0Sopenharmony_ci    args_parser.add_argument('--source-dir', help='generate path of log', required=True)
467927a7a0Sopenharmony_ci    args = args_parser.parse_args()
477927a7a0Sopenharmony_ci
487927a7a0Sopenharmony_ci    tar_file_path = os.path.join(args.source_dir, "v2.0.0.tar.gz")
497927a7a0Sopenharmony_ci    target_dir = os.path.join(args.gen_dir, "flatbuffers-2.0.0")
507927a7a0Sopenharmony_ci
517927a7a0Sopenharmony_ci    clear_dir(os.path.join(args.source_dir, "include"))
527927a7a0Sopenharmony_ci    untar_file(tar_file_path, args.gen_dir)
537927a7a0Sopenharmony_ci    move_dir(os.path.join(target_dir, "include"), os.path.join(args.source_dir, "include"))
547927a7a0Sopenharmony_ci
557927a7a0Sopenharmony_ci
567927a7a0Sopenharmony_ciif __name__ == '__main__':
577927a7a0Sopenharmony_ci    sys.exit(main())
58