Adds a parallel build-manylinux-wheel job using centos:7 container
with devtoolset-11 alongside the existing Alpine/musl wheel build.
Uses auditwheel to tag wheel as manylinux2014_x86_64.
Made-with: Cursor
The macOS job could upload to the latest release before the Linux
job recreated it, causing the macOS wheel to be lost. Now wait
for the Linux wheel to appear in latest first.
Made-with: Cursor
The macos-14 runner ships Python 3.14 by default, producing wheels
incompatible with Python 3.13 environments. Pin to 3.13 using
actions/setup-python and switch to macos-15 for consistency.
Made-with: Cursor
The macOS runner doesn't have ccache or pybind11 pre-installed.
Install ccache via brew and disable ENABLE_PYOSYS since we only
need the binary tarball (not the wheel) for macOS.
Made-with: Cursor
Adds a build-macos job on macos-15 that builds Verific tclmain and
yosys with SMALL=1, bundles non-system dylibs, and uploads
yosys-macos-arm64.tar.gz alongside the existing Linux assets.
Made-with: Cursor
Copies all non-system shared library dependencies into lib/, then
uses patchelf to set RPATH to $ORIGIN/../lib for bin/ executables
and $ORIGIN for lib/ libraries.
Made-with: Cursor
The wheel build uses ENABLE_TCL=0, but the standalone yosys binary
needs ENABLE_TCL=1. Without a clean, stale .o files cause undefined
reference errors for TCL symbols.
Made-with: Cursor
Verific tclmain links -ltcl and -lnsl. Alpine tcl-dev provides
libtcl8.6.so (no libtcl.so symlink), and musl has no libnsl.
Create symlink and stub shared lib to satisfy the linker.
Made-with: Cursor
Deploy keys are repo-scoped and can't access multiple private repos.
Use a PAT (SUBMODULE_PAT) that has access to all required repos.
Made-with: Cursor
- add `uv` to dependencies: saves builder(s) from manually having to manage a venv for python build dependencies
- when building wheels, pip automatically creates the environment with those dependencies, so no need for uv
- when running simply `make ENABLE_PYOSYS=1`, this is not the case. people attempting to `pip3 install --upgrade pybind11 cxxheaderparser` to add it to their system packages will be met with a scare message about "breaking system packages"
- update installation instructions to drop boost and add uv instead
- update ci scripts to use `macos-15[-intel]` (`macos-13` sunset in early december)