infra: Add distribution files for macOS (#3934)
This upstream macOS packing and distribution files
This commit is contained in:
parent
3fb583c98c
commit
817b89767a
8 changed files with 953 additions and 0 deletions
24
distribution/misc/add_tar_exec.py
Normal file
24
distribution/misc/add_tar_exec.py
Normal file
|
@ -0,0 +1,24 @@
|
|||
import argparse
|
||||
from io import BytesIO
|
||||
import tarfile
|
||||
|
||||
parser = argparse.ArgumentParser(
|
||||
description="Add the main binary to a tar and force it to be executable"
|
||||
)
|
||||
parser.add_argument("input_tar_file", help="input tar file")
|
||||
parser.add_argument("main_binary_path", help="Main executable path")
|
||||
parser.add_argument("main_binary_tar_path", help="Main executable tar path")
|
||||
|
||||
args = parser.parse_args()
|
||||
input_tar_file = args.input_tar_file
|
||||
main_binary_path = args.main_binary_path
|
||||
main_binary_tar_path = args.main_binary_tar_path
|
||||
|
||||
with open(main_binary_path, "rb") as f:
|
||||
with tarfile.open(input_tar_file, "a") as tar:
|
||||
data = f.read()
|
||||
tar_info = tarfile.TarInfo(main_binary_tar_path)
|
||||
tar_info.mode = 0o755
|
||||
tar_info.size = len(data)
|
||||
|
||||
tar.addfile(tar_info, BytesIO(data))
|
Loading…
Add table
Add a link
Reference in a new issue