Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add binaries for FreeBSD/OpenBSD/NetBSD #150

Closed
chipsenkbeil opened this issue Nov 21, 2022 · 6 comments
Closed

Add binaries for FreeBSD/OpenBSD/NetBSD #150

chipsenkbeil opened this issue Nov 21, 2022 · 6 comments
Milestone

Comments

@chipsenkbeil
Copy link
Owner

Rust has targets for these that include armv7, aarch64, and x86_64.

aarch64-unknown-freebsd
aarch64-unknown-netbsd
aarch64-unknown-openbsd
armv6-unknown-freebsd
armv6-unknown-netbsd-eabihf
armv7-unknown-freebsd
armv7-unknown-netbsd-eabihf
i686-unknown-freebsd
i686-unknown-netbsd
i686-unknown-openbsd
powerpc-unknown-freebsd
powerpc-unknown-netbsd
powerpc-unknown-openbsd
powerpc64-unknown-freebsd
powerpc64-unknown-openbsd
powerpc64le-unknown-freebsd
riscv64gc-unknown-freebsd
riscv64gc-unknown-openbsd
sparc64-unknown-netbsd
sparc64-unknown-openbsd
x86_64-unknown-freebsd
x86_64-unknown-netbsd
x86_64-unknown-openbsd
@chipsenkbeil chipsenkbeil added this to the 0.20 milestone Nov 21, 2022
@chipsenkbeil
Copy link
Owner Author

chipsenkbeil commented Jun 1, 2023

Can confirm that this builds on FreeBSD 13.1 within a Parallels instance on my M1 Mac, which means that the freebsd-unknown-aarch64 target works.

Packages needed:

  • openssl
  • gmake

Was able to do the following:

  • distant launch ssh://user@ip to leverage ssh to launch a distant server within my Parallels VM from outside the VM
  • distant shell to open up the default user shell
  • distant fs read . to read the current directory

@chipsenkbeil
Copy link
Owner Author

To support building via a github action, we can use these actions to run within VMs for FreeBSD, OpenBSD, and NetBSD respectively:

@chipsenkbeil
Copy link
Owner Author

OpenBSD 7.3 installation progress from getting it to run on my M1 Mac via Parallels:

  • There is no rustup available for OpenBSD, so we install manually using pkg_add rust.
  • openssl-src fails as no vendor for aarch64-unknown-openbsd

Resolving #193 would unblock.

@chipsenkbeil
Copy link
Owner Author

Possibly switch to https://github.com/cross-platform-actions/action, which also uses ssh to copy files between machines, but even supports arm64 version of OpenBSD.

Opened cross-platform-actions/action#55 to track getting aarch64 for FreeBSD/NetBSD available. If those became available, we wouldn't need to cross-compile!

@chipsenkbeil
Copy link
Owner Author

NetBSD cannot be built due to the same issue as android: termios. We can work towards leveraging a patch to get around that, but don't know what other issues might pop up.

OpenBSD cannot be built due to an internal compiler error. Adjusting LTO and other settings didn't appear to fix it. Going to close this out as we now have a build working for FreeBSD and I've left the progress for OpenBSD and NetBSD commented in the releases workflow.

@github-actions
Copy link

github-actions bot commented Aug 6, 2023

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues. If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 6, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant