diff options
author | Rain <rain@sunshowers.io> | 2024-03-06 02:32:56 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-06 10:32:56 +0000 |
commit | 7d8b4b3398c7044b283682784f05af9eb3bcb8be (patch) | |
tree | 06c2388823d5824e5299ac6f394ef577e874325a | |
parent | 50b043a88b25cc904275b6d9f46088af9cfdb4a3 (diff) |
chore(ci): add cross-compile job for illumos (#1830)
I also tried getting FreeBSD to work, but didn't get too far sadly. I don't
have the time to debug this so I just put in a comment for now. (With my
changes, Atuin works great on FreeBSD as well.)
-rw-r--r-- | .github/workflows/rust.yml | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 774e4a4d8..e6e8573af 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -44,6 +44,43 @@ jobs: - name: Run cargo build main run: cargo build --all --locked --release + cross-compile: + strategy: + matrix: + # There was an attempt to make cross-compiles also work on FreeBSD, but that failed with: + # + # warning: libelf.so.2, needed by <...>/libkvm.so, not found (try using -rpath or -rpath-link) + target: [x86_64-unknown-illumos] + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + + - name: Install cross + uses: taiki-e/install-action@v1 + with: + tool: cross + + - uses: actions/cache@v3 + with: + path: | + ~/.cargo/registry + ~/.cargo/git + target + key: ${{ matrix.target }}-cross-compile-${{ hashFiles('**/Cargo.lock') }} + + - name: Run cross build common + run: cross build -p atuin-common --locked --target ${{ matrix.target }} + + - name: Run cross build client + run: cross build -p atuin-client --locked --target ${{ matrix.target }} + + - name: Run cross build server + run: cross build -p atuin-server --locked --target ${{ matrix.target }} + + - name: Run cross build main + run: cross build --all --locked --target ${{ matrix.target }} + unit-test: strategy: matrix: |