Files
icicle-emu-icicle-python/setup.py
T
2023-08-13 15:14:20 +02:00

32 lines
1.0 KiB
Python

#!/usr/bin/env python
import sys
from os import getenv
from shutil import which
from setuptools import find_packages, setup
from setuptools_rust import RustExtension
if __name__ == "__main__":
if "sdist" not in sys.argv and which("cargo") is None:
raise FileNotFoundError(f"Rust not found, visit https://rustup.rs for installation instructions")
ref_name = getenv("GITHUB_REF_NAME")
if getenv("GITHUB_REF", "").startswith("refs/tags/") and ref_name:
from pkg_resources import parse_version
try:
parse_version(ref_name)
print(f"injecting version = {ref_name} into setup.cfg")
with open("setup.cfg", "r") as f:
lines = f.readlines()
with open("setup.cfg", "w") as f:
for line in lines:
if line.startswith("version = "):
line = f"version = {ref_name}\n"
f.write(line)
except Exception:
pass
setup(
rust_extensions=[RustExtension("icicle.icicle")],
)