Skip to content

cargo binstall suport #15

@necrose99

Description

@necrose99

https://github.com/cargo-bins/cargo-binstall

A point cargo toml binpkgs..
Else it falls back to cargo build install etc...

https://github.com/marketplace/actions/install-cargo-binstall

Ubuntu docker n rustup multiarch targets
Llvm-mingw64 could autobake for all...

# Simplified logic for your GitHub Release Action
jobs:
  release:
    strategy:
      matrix:
        target: [x86_64-unknown-linux-gnu, x86_64-pc-windows-msvc, aarch64-apple-darwin]
        include:
          - target: x86_64-unknown-linux-gnu
            features: "cuda,vulkan"
          - target: aarch64-apple-darwin
            features: "metal"
    steps:
      - uses: actions/checkout@v4
      - name: Install Toolchain
        run: rustup target add ${{ matrix.target }}
run cargo install xargo binstall # cargo-deb cargo-rpm if want pkgs etc... 
      - name: Build with Xargo
        run: xargo build --release --features ${{ matrix.features }} --target ${{ matrix.target }}
      - name: Upload to Release
        uses: softprops/action-gh-release@v1
        with:
          files: target/${{ matrix.target }}/release/ltengine*

services:
  ltengine-builder:
    image: debian:bookworm-slim
    environment:
      - CUDA_VERSION=12.x
      - LLVM_MINGW_VERSION=20240321
    volumes:
      - .:/src
    command: >
      sh -c "
        apt update && apt install -y curl cmake clang llvm lld git;
        # Download llvm-mingw for the Windows side
        curl -L https://github.com/mstorsjo/llvm-mingw/releases/download/... -o mingw.tar.xz;
        tar -xf mingw.tar.xz;
        export PATH=$PATH:$(pwd)/llvm-mingw/bin;
        # Build LTEngine
        cd /src && cargo build --release --target x86_64-pc-windows-gnullvm --features cuda,vulkan
      "

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions