feat: Add From<&PcodeMachineAddress> for ConcretePcodeAddress (#155) #703
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # This file is autogenerated by maturin v1.8.3 | |
| # To update, run | |
| # | |
| # maturin generate-ci github | |
| # | |
| name: jingle_python | |
| on: | |
| push: | |
| branches: | |
| - main | |
| tags: | |
| - "*" | |
| pull_request: | |
| branches: | |
| - main | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| jobs: | |
| linux: | |
| runs-on: ${{ matrix.platform.runner }} | |
| strategy: | |
| matrix: | |
| platform: | |
| - runner: ubuntu-22.04 | |
| target: x86_64 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| token: ${{ secrets.PUBLIC_REPO_TOKEN }} | |
| submodules: true | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: 3.x | |
| - name: Build wheels | |
| uses: PyO3/maturin-action@v1 | |
| env: | |
| READ_ONLY_GITHUB_TOKEN: ${{ secrets.PUBLIC_REPO_TOKEN }} | |
| with: | |
| target: ${{ matrix.platform.target }} | |
| args: --release --out dist --find-interpreter | |
| working-directory: jingle_python | |
| manylinux: manylinux2_28 | |
| docker-options: "--env READ_ONLY_GITHUB_TOKEN" | |
| before-script-linux: | | |
| curl -LsSf https://astral.sh/uv/install.sh | sh | |
| uv venv | |
| source .venv/bin/activate | |
| python3 gh_actions_setup.py ${{ matrix.platform.target }} | |
| if [ -f .z3env ]; then | |
| # shellcheck disable=SC1091 | |
| . .z3env | |
| echo "✅ Loaded Z3_SYS_Z3_HEADER from .z3env" | |
| else | |
| echo "❌ .z3env not found. Please run the installer script first." | |
| fi | |
| # sccache: ${{ !startsWith(github.ref, 'refs/tags/') }} | |
| - name: Upload wheels | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: wheels-linux-${{ matrix.platform.target }} | |
| path: jingle_python/dist | |
| linux-arm: | |
| if: ${{ startsWith(github.ref, 'refs/tags/') || github.event_name == 'workflow_dispatch' }} | |
| name: Build wheel on ${{ matrix.platform.name }} | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| platform: | |
| - name: arm64 | |
| arch: aarch64 | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| with: | |
| token: ${{ secrets.PUBLIC_REPO_TOKEN }} | |
| submodules: true | |
| - name: Set up QEMU | |
| uses: docker/setup-qemu-action@v3 | |
| - name: Run on ARM using run-on-arch-action | |
| uses: uraimo/run-on-arch-action@v3 | |
| with: | |
| arch: ${{ matrix.platform.arch }} | |
| distro: ubuntu20.04 | |
| githubToken: ${{ secrets.PUBLIC_REPO_TOKEN }} | |
| run: | | |
| set -eux | |
| cd jingle_python | |
| # Install dependencies | |
| apt update | |
| apt install -y curl build-essential python3 python3-pip python3-venv libclang-dev llvm-dev clang libz3-dev | |
| # Install Rust | |
| curl https://sh.rustup.rs -sSf | sh -s -- -y | |
| source "$HOME/.cargo/env" | |
| # Install Maturin | |
| pip3 install maturin[patchelf] | |
| # Build the wheel | |
| maturin build --release --out dist --find-interpreter --manylinux 2_31 | |
| - name: Upload wheels | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: wheels-linux-${{ matrix.platform.arch }} | |
| path: jingle_python/dist | |
| # windows: | |
| # runs-on: ${{ matrix.platform.runner }} | |
| # strategy: | |
| # matrix: | |
| # platform: | |
| # - runner: windows-latest | |
| # target: x64 | |
| # steps: | |
| # - uses: actions/checkout@v4 | |
| # with: | |
| # submodules: true | |
| # - name: Install Z3 using Chocolatey | |
| # run: | | |
| # choco install z3 | |
| # - name: Set Z3 environment variables | |
| # run: | | |
| # echo ::set-env name=Z3_INCLUDE_PATH::C:\tools\z3\include | |
| # echo ::set-env name=Z3_LIB_PATH::C:\tools\z3\lib | |
| # - uses: actions/setup-python@v5 | |
| # with: | |
| # python-version: 3.x | |
| # architecture: ${{ matrix.platform.target }} | |
| # - name: Build wheels | |
| # uses: PyO3/maturin-action@v1 | |
| # with: | |
| # target: ${{ matrix.platform.target }} | |
| # args: --release --out dist --find-interpreter | |
| # working-directory: jingle_python | |
| # # sccache: ${{ !startsWith(github.ref, 'refs/tags/') }} | |
| # env: | |
| # Z3_SYS_Z3_PATH: "C:/Program Files/Z3/include" | |
| # - name: Upload wheels | |
| # uses: actions/upload-artifact@v4 | |
| # with: | |
| # name: wheels-windows-${{ matrix.platform.target }} | |
| # path: jingle_python/dist | |
| macos: | |
| runs-on: ${{ matrix.platform.runner }} | |
| strategy: | |
| matrix: | |
| platform: | |
| - runner: macos-14 | |
| target: aarch64 | |
| python: ["3.11", "3.12", "3.13"] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| token: ${{ secrets.PUBLIC_REPO_TOKEN }} | |
| submodules: true | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: 3.x | |
| - name: "Initialize python environment" | |
| run: | | |
| curl -LsSf https://astral.sh/uv/install.sh | sh | |
| uv venv --python ${{matrix.python}} | |
| source .venv/bin/activate | |
| uv sync --no-install-project --project jingle_python --active | |
| export Z3_SYS_Z3_HEADER=$(python jingle_python/find_venv_library_path.py)/z3/include/z3.h | |
| uv build --project jingle_python --wheel --out-dir dist | |
| - name: Upload wheels | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: wheels-macos-${{ matrix.platform.target }}-$${{matrix.python}} | |
| path: dist | |
| sdist: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| token: ${{ secrets.PUBLIC_REPO_TOKEN }} | |
| submodules: true | |
| - name: Build sdist | |
| uses: PyO3/maturin-action@v1 | |
| with: | |
| command: sdist | |
| args: --out dist | |
| working-directory: jingle_python | |
| - name: Upload sdist | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: wheels-sdist | |
| path: jingle_python/dist | |
| # release: | |
| # name: Release | |
| # runs-on: ubuntu-latest | |
| # if: ${{ startsWith(github.ref, 'refs/tags/') || github.event_name == 'workflow_dispatch' }} | |
| # needs: [ linux, linux-arm, macos, sdist ] | |
| # permissions: | |
| # # Use to sign the release artifacts | |
| # id-token: write | |
| # # Used to upload release artifacts | |
| # contents: write | |
| # # Used to generate artifact attestation | |
| # attestations: write | |
| # steps: | |
| # - uses: actions/download-artifact@v4 | |
| # - name: Generate artifact attestation | |
| # uses: actions/attest-build-provenance@v2 | |
| # with: | |
| # subject-path: 'wheels-*/*' | |
| # - name: Publish to PyPI | |
| # if: ${{ startsWith(github.ref, 'refs/tags/') }} | |
| # uses: PyO3/maturin-action@v1 | |
| # env: | |
| # MATURIN_PYPI_TOKEN: ${{ secrets.PYPI_API_TOKEN }} | |
| # with: | |
| # command: upload | |
| # args: --non-interactive --skip-existing wheels-*/* | |
| # working-directory: jingle_python | |
| # |