26 lines
715 B
Bash
Executable File
26 lines
715 B
Bash
Executable File
#!/bin/bash
|
|
|
|
set -e
|
|
set -x
|
|
set -o pipefail
|
|
|
|
TARGET="$1"
|
|
|
|
# On macOS and Windows, we can cross-compile to all possible targets without
|
|
# using cross.
|
|
if uname -a | grep --quiet --extended-regexp -i "darwin|msys|windows"; then
|
|
echo "needs-cross=false" >>"$GITHUB_OUTPUT"
|
|
exit 0
|
|
fi
|
|
|
|
# On Linux, we should be able to cross-compile to i586 and i686, but in
|
|
# practice this fails with some crates, notably openssl with the "vendored"
|
|
# feature. This feature makes it compile openssl itself, which fails without
|
|
# cross.
|
|
if echo "$TARGET" | grep --quiet --extended-regexp -i 'x86_64.+linux-(gnu|musl)'; then
|
|
echo "needs-cross=false" >>"$GITHUB_OUTPUT"
|
|
exit 0
|
|
fi
|
|
|
|
echo "needs-cross=true" >>"$GITHUB_OUTPUT"
|