74 lines
2.0 KiB
Bash
74 lines
2.0 KiB
Bash
TERMUX_PKG_HOMEPAGE=https://www.rust-lang.org
|
|
TERMUX_PKG_DESCRIPTION="Systems programming language that runs fast, prevents segfaults, and guarantees thread safety"
|
|
TERMUX_PKG_VERSION=1.29.0
|
|
#TERMUX_PKG_SHA256=7689c95c0bab42e32eb82c1892785fe53faa8ae89a5c48bdfafb13a43ac8ec7e
|
|
#TERMUX_PKG_SRCURL=https://github.com/rust-lang/rust/archive/$TERMUX_PKG_VERSION.tar.gz
|
|
TERMUX_PKG_DEPENDS="clang"
|
|
|
|
termux_step_extract_package() {
|
|
local CHECKED_OUT_FOLDER=$TERMUX_PKG_CACHEDIR/checkout-$TERMUX_PKG_VERSION
|
|
if [ ! -d $CHECKED_OUT_FOLDER ]; then
|
|
local TMP_CHECKOUT=$TERMUX_PKG_TMPDIR/tmp-checkout
|
|
rm -Rf $TMP_CHECKOUT
|
|
mkdir -p $TMP_CHECKOUT
|
|
|
|
git clone \
|
|
--depth 1 \
|
|
--branch $TERMUX_PKG_VERSION \
|
|
https://github.com/rust-lang/rust.git \
|
|
$TMP_CHECKOUT
|
|
cd $TMP_CHECKOUT
|
|
git submodule update --init --recursive --progress
|
|
mv $TMP_CHECKOUT $CHECKED_OUT_FOLDER
|
|
fi
|
|
|
|
mkdir $TERMUX_PKG_SRCDIR
|
|
cd $TERMUX_PKG_SRCDIR
|
|
cp -Rf $CHECKED_OUT_FOLDER/* .
|
|
}
|
|
|
|
termux_step_configure() {
|
|
termux_setup_cmake
|
|
termux_setup_rust
|
|
|
|
sed "s%\@TERMUX_PREFIX\@%${TERMUX_PREFIX}%g" \
|
|
$TERMUX_PKG_BUILDER_DIR/config.toml \
|
|
| sed "s%\@CARGO_TARGET_NAME\@%${CARGO_TARGET_NAME}%g" - \
|
|
| sed "s%\@CC\@%${CC}%g" - \
|
|
| sed "s%\@CXX\@%${CXX}%g" - \
|
|
| sed "s%\@AR\@%${AR}%g" - \
|
|
| sed "s%\@CARGO_PATH\@%$HOME/.cargo%g" - \
|
|
> ./config.toml
|
|
|
|
if [ $TERMUX_ARCH = "aarch64" ]; then
|
|
CARCH=AARCH64
|
|
elif [ $TERMUX_ARCH = "i686" ]; then
|
|
CARCH=I686
|
|
elif [ $TERMUX_ARCH = "x86_64" ]; then
|
|
CARCH=X86_64
|
|
fi
|
|
|
|
local ENV_SUFFIX=${CARGO_TARGET_NAME//-/_}
|
|
|
|
export CFLAGS_$ENV_SUFFIX="$CFLAGS"
|
|
export CXXFLAGS_$ENV_SUFFIX="$CXXFLAGS"
|
|
export LDFLAGS_$ENV_SUFFIX="$LDFLAGS"
|
|
export LD_$ENV_SUFFIX="$LD"
|
|
export ${CARCH}_LINUX_ANDROID_OPENSSL_INCLUDE_DIR=$TERMUX_PREFIX/include
|
|
export ${CARCH}_LINUX_ANDROID_OPENSSL_LIB_DIR=$TERMUX_PREFIX/lib
|
|
|
|
unset CFLAGS CXXFLAGS LDFLAGS CC CXX LD CPP CPPFLAGS PREFIX
|
|
}
|
|
|
|
termux_step_make() {
|
|
$TERMUX_PKG_SRCDIR/x.py \
|
|
--jobs $TERMUX_MAKE_PROCESSES \
|
|
--target $CARGO_TARGET_NAME \
|
|
dist
|
|
}
|
|
|
|
termux_step_make_install() {
|
|
:
|
|
#$TERMUX_PKG_SRCDIR/x.py install
|
|
}
|