#!/usr/bin/env python3 # This Source Code Form is subject to the terms of the Mozilla Public License, # v. 2.0. If a copy of the MPL was not distributed with this file, You can # obtain one at https://mozilla.org/MPL/2.0/. import argparse import multiprocessing import shutil import subprocess import pathlib def main() -> None: parser = argparse.ArgumentParser( description="Build a Zephyr GNU Make build", ) parser.add_argument("-B", "--build-tree", required=True) parser.add_argument("-n", "--target-name", required=True) args = parser.parse_args() build_tree = pathlib.Path(args.build_tree) output_dir = build_tree.parent subprocess.run( [ "make", f"-j{multiprocessing.cpu_count()}", "-C", f"{str(build_tree)}", ], shell=False, check=True, ) shutil.copy( build_tree / "zephyr" / "zephyr.bin", output_dir / args.target_name ) if __name__ == "__main__": main()