scripts: Add `termux_setup_cargo_c`
This commit is contained in:
parent
475b4508d7
commit
c0f5627998
|
@ -71,6 +71,10 @@ source "$TERMUX_SCRIPTDIR/scripts/build/termux_error_exit.sh"
|
|||
# shellcheck source=scripts/build/termux_download.sh
|
||||
source "$TERMUX_SCRIPTDIR/scripts/build/termux_download.sh"
|
||||
|
||||
# Utility function for setting up Cargo C-ABI helpers.
|
||||
# shellcheck source=scripts/build/setup/termux_setup_cargo_c.sh
|
||||
source "$TERMUX_SCRIPTDIR/scripts/build/setup/termux_setup_cargo_c.sh"
|
||||
|
||||
# Utility function for setting up GHC toolchain.
|
||||
# shellcheck source=scripts/build/setup/termux_setup_ghc.sh
|
||||
source "$TERMUX_SCRIPTDIR/scripts/build/setup/termux_setup_ghc.sh"
|
||||
|
|
|
@ -0,0 +1,39 @@
|
|||
termux_setup_cargo_c() {
|
||||
local TERMUX_CARGO_C_VERSION=0.9.16
|
||||
local TERMUX_CARGO_C_SHA256=1ee088c6b42052810982f0bd07fb1bf5dd254cb18ae48601e7d0227bf4cacb3d
|
||||
local TERMUX_CARGO_C_TARNAME=cargo-c-x86_64-unknown-linux-musl.tar.gz
|
||||
local TERMUX_CARGO_C_TARFILE=$TERMUX_PKG_TMPDIR/$TERMUX_CARGO_C_TARNAME
|
||||
local TERMUX_CARGO_C_FOLDER
|
||||
|
||||
if [ "${TERMUX_PACKAGES_OFFLINE-false}" = "true" ]; then
|
||||
TERMUX_CARGO_C_FOLDER=$TERMUX_SCRIPTDIR/build-tools/cargo-c-$TERMUX_CARGO_C_VERSION
|
||||
else
|
||||
TERMUX_CARGO_C_FOLDER=$TERMUX_COMMON_CACHEDIR/cargo-c-$TERMUX_CARGO_C_VERSION
|
||||
fi
|
||||
|
||||
if [ "$TERMUX_ON_DEVICE_BUILD" = "true" ]; then
|
||||
if [[ "$TERMUX_APP_PACKAGE_MANAGER" = "apt" && "$(dpkg-query -W -f '${db:Status-Status}\n' cargo-c 2>/dev/null)" != "installed" ]] ||
|
||||
[[ "$TERMUX_APP_PACKAGE_MANAGER" = "pacman" && ! "$(pacman -Q cargo-c 2>/dev/null)" ]]; then
|
||||
echo "Package 'cargo-c' is not installed."
|
||||
echo "You can install it with"
|
||||
echo
|
||||
echo " pkg install cargo-c"
|
||||
echo
|
||||
echo " pacman -S cargo-c"
|
||||
echo
|
||||
exit 1
|
||||
fi
|
||||
return
|
||||
fi
|
||||
|
||||
if [ ! -d "$TERMUX_CARGO_C_FOLDER" ]; then
|
||||
termux_download https://github.com/lu-zero/cargo-c/releases/download/v$TERMUX_CARGO_C_VERSION/$TERMUX_CARGO_C_TARNAME \
|
||||
"$TERMUX_CARGO_C_TARFILE" \
|
||||
"$TERMUX_CARGO_C_SHA256"
|
||||
rm -Rf "$TERMUX_CARGO_C_FOLDER"
|
||||
mkdir -p "$TERMUX_CARGO_C_FOLDER"
|
||||
tar xf "$TERMUX_CARGO_C_TARFILE" -C "$TERMUX_CARGO_C_FOLDER"
|
||||
fi
|
||||
|
||||
export PATH=$TERMUX_CARGO_C_FOLDER:$PATH
|
||||
}
|
|
@ -35,6 +35,9 @@ mkdir -p "$TERMUX_PKG_TMPDIR"
|
|||
|
||||
# Build tools.
|
||||
. "$TERMUX_SCRIPTDIR"/scripts/build/termux_download.sh
|
||||
(. "$TERMUX_SCRIPTDIR"/scripts/build/setup/termux_setup_cargo_c.sh
|
||||
termux_setup_cargo_c
|
||||
)
|
||||
(. "$TERMUX_SCRIPTDIR"/scripts/build/setup/termux_setup_cmake.sh
|
||||
termux_setup_cmake
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue