Skip to content

Commit 764f0f2

Browse files
dignifiedquireflub
andauthored
feat: support {Free|Net|Open}BSD (#2311)
Adds support for `iroh` on `NetBSD`, `FreeBSD` and `OpenBSD`. ## Status - NetBsd - [x] Compiles - [ ] Tests passing - [ ] Iroh: mostly passing, failures are only due to shellrow/netdev#69 - [x] Quinn - [x] Implementation adapted - FreeBsd - [x] Compiles - [ ] Tests passing - [ ] Iroh: mostly passing, failures are only due to shellrow/netdev#69 - [x] Quinn - [x] Implementation adapted - OpenBsd - [x] Compiles - [ ] Tests passing - [ ] Iroh: mostly passing, failures are only due to shellrow/netdev#69 - [x] Quinn - [x] Implementation adapted ## Caveats - Build only in CI for now ## Related Issues - shellrow/netdev#69 - n0-computer/quinn#9 ## References - https://github.com/freebsd/freebsd-ports/blob/78ad38f04f51/games/jumpy/files/patch-iroh - rust-lang/libc#3711 Closes #2306 --------- Co-authored-by: Floris Bruynooghe <flub@n0.computer>
1 parent 544280a commit 764f0f2

File tree

2 files changed

+37
-8
lines changed

2 files changed

+37
-8
lines changed

.github/workflows/ci.yml

Lines changed: 36 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,18 +25,23 @@ jobs:
2525
if: "github.event_name != 'pull_request' || ! contains(github.event.pull_request.labels.*.name, 'flaky-test')"
2626
uses: './.github/workflows/tests.yaml'
2727

28-
cross:
28+
cross_build:
29+
name: Cross Build Only
2930
if: "github.event_name != 'pull_request' || ! contains(github.event.pull_request.labels.*.name, 'flaky-test')"
3031
timeout-minutes: 30
31-
name: Cross compile
3232
runs-on: [self-hosted, linux, X64]
3333
strategy:
3434
fail-fast: false
3535
matrix:
3636
target:
37-
- i686-unknown-linux-gnu
37+
# cross tests are currently broken vor armv7 and aarch64
38+
# see https://github.com/cross-rs/cross/issues/1311
3839
- armv7-linux-androideabi
3940
- aarch64-linux-android
41+
# Freebsd execution fails in cross
42+
# - i686-unknown-freebsd # Linking fails :/
43+
- x86_64-unknown-freebsd
44+
- x86_64-unknown-netbsd
4045
steps:
4146
- name: Checkout
4247
uses: actions/checkout@v4
@@ -59,15 +64,39 @@ jobs:
5964
# cross tests are currently broken vor armv7 and aarch64
6065
# see https://github.com/cross-rs/cross/issues/1311. So on
6166
# those platforms we only build but do not run tests.
62-
if: matrix.target != 'i686-unknown-linux-gnu'
6367
run: cross build --all --target ${{ matrix.target }}
6468
env:
6569
RUST_LOG: ${{ runner.debug && 'TRACE' || 'DEBUG'}}
6670

71+
cross_test:
72+
name: Cross Test
73+
if: "github.event_name != 'pull_request' || ! contains(github.event.pull_request.labels.*.name, 'flaky-test')"
74+
timeout-minutes: 30
75+
runs-on: [self-hosted, linux, X64]
76+
strategy:
77+
fail-fast: false
78+
matrix:
79+
target:
80+
- i686-unknown-linux-gnu
81+
steps:
82+
- name: Checkout
83+
uses: actions/checkout@v4
84+
with:
85+
submodules: recursive
86+
87+
- name: Install rust stable
88+
uses: dtolnay/rust-toolchain@stable
89+
90+
- name: Cleanup Docker
91+
continue-on-error: true
92+
run: |
93+
docker kill $(docker ps -q)
94+
95+
- name: Install cross
96+
# See https://github.com/cross-rs/cross/issues/1222
97+
run: cargo install cross --git https://github.com/cross-rs/cross
98+
6799
- name: test
68-
# cross tests are currently broken vor armv7 and aarch64
69-
# see https://github.com/cross-rs/cross/issues/1311
70-
if: matrix.target == 'i686-unknown-linux-gnu'
71100
run: cross test --all --target ${{ matrix.target }} -- --test-threads=12
72101
env:
73102
RUST_LOG: ${{ runner.debug && 'TRACE' || 'DEBUG' }}

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)