32 Commits

Author SHA1 Message Date
David Horton
2f7471d05f Added MIPS 32-bit big-endian 2024-01-13 19:02:22 -08:00
Brian Smith
8348897d92 CI: Add wasm32-wasi to CI. 2023-10-14 16:50:18 -07:00
Brian Smith
99ab6db360 Add arm-unknown-linux-gnueabi testing to CI.
Replace arm-unknown-linux-gnueabihf in `test` since we already have
another gnueabihf target.
2023-10-13 17:45:30 -07:00
Brian Smith
00d639339a Add support for 64-bit big-endian PowerPC.
Not added to CI. We need to find a better solution for supporting PowerPC
(and s390x and other less-common archs) in CI.
2023-10-01 21:29:33 -07:00
ZHAI Xiaojuan
3d592b27bf Add support for LoongArch64 2023-10-01 18:43:17 -07:00
Brian Smith
6e82dd3c75 Add powerpc-unknown-linux-gnu support. 2023-10-01 18:25:37 -07:00
Ulrich Weigand
baa823bb4d Basic support for s390x target 2023-10-01 14:33:16 -07:00
Eric Richter
3161c01ec5 CI: add powerpc64le-unknown-linux-gnu as a target
Signed-off-by: Eric Richter <erichte@linux.ibm.com>
2023-09-30 17:18:58 -07:00
leso-kn
1e1e8e1ee6 Add support for riscv64
Co-authored-by: Alan Mock <alan@alanmock.com>
Co-authored-by: Patrick Elsen <pelsen@xfbs.net>
Signed-off-by: leso-kn <info@lesosoftware.com>
2023-09-30 11:46:06 -07:00
Brian Smith
4328252946 CI: Use LLVM 16 tools.
Rust now uses LLVM 16 and writes object files that LLVM 15's `nm` cannot
fully understand.
2023-09-03 15:32:26 -07:00
Brian Smith
95948b3977 CI: Install the latest (currently) version of the LTS NDK. 2023-02-16 13:10:43 -08:00
Brian Smith
ffcd828b62 CI: Fix Android builds in GitHub Actions.
When `$ANDROID_NDK_HOME` is set, `mk/cargo.sh` will use it to locate the
NDK tools. Thus, we need to ensure that the hack is applied to
`$ANDROID_NDK_HOME` when that is set.

I am not sure why I added this line; perhaps it was unintentially left in
when the script was being debugged.
2023-02-15 13:52:07 -08:00
Brian Smith
54520a3652 Adjust MIPSEL CI build system changes.
Take MIPSEL out of the GitHub Actions configuration because it fails to
link, and because it makes the build matrix too large.
2022-11-11 16:57:21 -08:00
Linus Unnebäck
ce24e188e0 Add mipsel to Github Actions CI setup 2022-11-11 15:10:16 -08:00
Brian Smith
f5bd88cc0a Use the getrandom crate to implement ring::rand. 2022-10-29 11:14:38 -07:00
Brian Smith
0d18da865a Always use llvm-nm in mk/check-symbol-prefixes.sh.
Don't try to use binutils `nm` or the Android SDK `llvm-nm`, since they don't
support LLVM's "opaque pointers".
2022-10-21 07:53:11 -07:00
Brian Smith
a93fbbe8b3 CI: Use LLVM 15 so llvm-nm works in opaque pointer mode. 2022-10-19 23:49:17 -07:00
Brian Smith
32e007fc88 Use Android NDK 25 and work around Rust/Android incompatibilities.
Use Android NDK 25 since that's GitHub Actions is moving to. SDK level
is the minimum supported, and there are no longer target-specific
allases for `llvm-ar`; update cargo.sh accordingly.

Use the environment variables recommended by the Android documentation.

Work around compatibility issue with Rust and Android NDKs.

Remove out-of-date documentation aboud building for Android.
2022-10-19 23:49:17 -07:00
Brian Smith
8820c150ea Use LLVM 14 in CI/CD for coverage. 2022-02-20 17:51:04 -08:00
Brian Smith
d97ae1fd08 wasm32: Make wasm32_c the default and only mode; remove the "wasm32_c" feature.
Always require a C compilare for wasm32, instead of trying to provide a subset
of the functionality.
2021-10-06 15:53:02 -07:00
Brian Smith
e03cb68e53 CI/CD: Always use LLVM 12. 2021-04-29 16:37:41 -07:00
Brian Smith
0a40cd431b CI: Use Android "cmdline-tools" instead of SDK tools.
https://github.com/actions/virtual-environments/issues/2252 is the best
description of the difference I have found.

Also stop using `sudo`; maybe this was a holdover from Travis CI days?
2021-02-26 13:22:54 -08:00
Brian Smith
019a8747dd CI/CD: Use the same version of wasm-bindgen-cli as wasm-bindgen. 2020-11-30 17:40:12 -08:00
Brian Smith
c4c6899cc5 CI/CD: Use LLVM-11 for code coverage. 2020-11-30 00:26:42 -08:00
Brian Smith
af08a2fff9 CI/CD: Add aarch64-unknown-linux-gnu test code coverage.
aarch64-unknown-linux-musl doesn't have profiler_builtins enabled so
use aarch64-unknown-linux-gnu instead.

Work around an issue where the "%m" feature of the LLVM source-based code
coverage doesn't work within QEMU.
2020-11-25 16:29:43 -08:00
Brian Smith
7bac725679 Allow cross-compiling to *-linux-musl (except x86_64) w/o a sysroot.
Avoid requiring a sysroot for *-linux-musl targets when using Clang.

Add one AAarch64 and one 32-bit ARM MUSL target to GitHub Actions.

Use Rust 1.48's `-Clink-self-contained=yes` in CI for musl targets.

Support the non-default variants of the *-musl targets.
2020-11-24 09:22:50 -08:00
Brian Smith
0b3cf2df06 CI/CD: When using Clang for non-Android targets, always use Clang 10.
It seems that on GitHub Actions Clang 6.0 is the default.
2020-11-23 23:05:51 -08:00
Brian Smith
09b6052a1c CI/CD: Don't put Android's tools in $PATH for non-Android targets.
Android has its own `clang`, `llvm-ar`, etc., and if they are in `$PATH` then
they might accidentally get used when it isn't intended for them to be used.

As part of this, reduce the environment variables that are set to (almost) only
the ones needed for the given target. An exception is wasm32-unknown-unknown,
which has its variables set even regardless of whether "wasm32_c" is used.
2020-11-23 23:05:51 -08:00
Brian Smith
3ac3e8b020 CI/CD: Test wasm32-unknown-unknown in GitHub Actions.
Bump the wasm-bindgen-test dependency version to be compatible with
the latest wasm-bindgen-cli version.
2020-11-10 17:12:46 -08:00
Brian Smith
9e0df33dea CI/CD: Restore mk/install-build-tools.sh. 2020-11-10 11:58:01 -08:00
Brian Smith
fe4aeee8ba CI/CD: Move Android target build to GitHub Actions. 2020-11-10 11:58:01 -08:00
Brian Smith
d69c73a118 CI/CD: Split dependency installation from the build/test phase. 2020-10-28 01:57:05 -07:00