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.)
This commit is contained in:
Rain 2024-03-06 02:32:56 -08:00 committed by GitHub
parent 50b043a88b
commit 7d8b4b3398
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -44,6 +44,43 @@ jobs:
- name: Run cargo build main - name: Run cargo build main
run: cargo build --all --locked --release 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: unit-test:
strategy: strategy:
matrix: matrix: