3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-12 20:18:18 +00:00

wrap remove/move

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2020-12-20 15:46:26 -08:00
parent d94244b236
commit 2c313ddb7a

View file

@ -37,6 +37,11 @@ def classify_package(f):
return os_name, f[:-4], ext, dst return os_name, f[:-4], ext, dst
return None return None
def replace(src, dst):
try:
os.remove(dst)
except:
shutil.move(src, dst)
def unpack(packages): def unpack(packages):
# unzip files in packages # unzip files in packages
@ -57,18 +62,15 @@ def unpack(packages):
zip_ref = zipfile.ZipFile(path, 'r') zip_ref = zipfile.ZipFile(path, 'r')
zip_ref.extract(f"{package_dir}/bin/libz3.{ext}", "tmp") zip_ref.extract(f"{package_dir}/bin/libz3.{ext}", "tmp")
mk_dir(f"out/runtimes/{dst}/native") mk_dir(f"out/runtimes/{dst}/native")
os.remove(f"out/runtimes/{dst}/native/libz3.{ext}") replace(f"tmp/{package_dir}/bin/libz3.{ext}", f"out/runtimes/{dst}/native/libz3.{ext}")
shutil.move(f"tmp/{package_dir}/bin/libz3.{ext}", f"out/runtimes/{dst}/native/.")
if "x64-win" in f: if "x64-win" in f:
zip_ref.extract(f"{package_dir}/bin/libz3.pdb", "tmp") zip_ref.extract(f"{package_dir}/bin/libz3.pdb", "tmp")
mk_dir(f"out/runtimes/{dst}/native") mk_dir(f"out/runtimes/{dst}/native")
os.remove(f"out/runtimes/{dst}/native/libz3.pdb") replace(f"tmp/{package_dir}/bin/libz3.pdb", f"out/runtimes/{dst}/native/libz3.pdb")
shutil.move(f"tmp/{package_dir}/bin/libz3.pdb", f"out/runtimes/{dst}/native/.")
mk_dir("out/lib/netstandard1.4/") mk_dir("out/lib/netstandard1.4/")
for b in ["Microsoft.Z3.dll", "Microsoft.Z3.pdb"]: for b in ["Microsoft.Z3.dll", "Microsoft.Z3.pdb"]:
zip_ref.extract(f"{package_dir}/bin/{b}", "tmp") zip_ref.extract(f"{package_dir}/bin/{b}", "tmp")
os.remove(f"out/lib/netstandard1.4/{b}") replace(f"tmp/{package_dir}/bin/{b}", f"out/lib/netstandard1.4/{b}")
shutil.move(f"tmp/{package_dir}/bin/{b}", f"out/lib/netstandard1.4/{b}")
def mk_targets(source_root): def mk_targets(source_root):
mk_dir("out/build") mk_dir("out/build")