Skip to content

Commit 992fe8e

Browse files
committed
addpkg(main/awscli): 2.32.28
1 parent 382c0f7 commit 992fe8e

1 file changed

Lines changed: 96 additions & 0 deletions

File tree

packages/awscli/build.sh

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
TERMUX_PKG_HOMEPAGE=https://aws.amazon.com/cli
2+
TERMUX_PKG_DESCRIPTION="Universal Command Line Interface for Amazon Web Services"
3+
TERMUX_PKG_LICENSE="Apache-2.0"
4+
TERMUX_PKG_MAINTAINER="@termux"
5+
TERMUX_PKG_VERSION="2.32.28"
6+
TERMUX_PKG_SRCURL="https://github.com/aws/aws-cli/archive/refs/tags/$TERMUX_PKG_VERSION.tar.gz"
7+
TERMUX_PKG_SHA256=85ecd5baf4d5cdf4d9e436dd76e023d0126cdcd0e5cbf97a5cd15b33f8829b05
8+
TERMUX_PKG_UPDATE_VERSION_REGEXP="\d+.\d+.\d+"
9+
TERMUX_PKG_AUTO_UPDATE=true
10+
TERMUX_PKG_DEPENDS="libffi, libsqlite, groff"
11+
TERMUX_PKG_BUILD_DEPENDS="aosp-libs, python-pip, cmake, ldd"
12+
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
13+
--with-install-type=portable-exe
14+
--with-download-deps
15+
PYTHON=$TERMUX_PREFIX/bin/python
16+
"
17+
18+
termux_step_pre_configure() {
19+
export LDFLAGS+=" -lm"
20+
export PIP_NO_BINARY=awscrt
21+
export AWS_CRT_BUILD_FORCE_STATIC_LIBS=1
22+
23+
if [[ "$TERMUX_ON_DEVICE_BUILD" == "true" ]]; then
24+
return
25+
fi
26+
27+
local PROOT_CC="$TERMUX_STANDALONE_TOOLCHAIN/bin/$CC"
28+
local PROOT_CXX="$TERMUX_STANDALONE_TOOLCHAIN/bin/$CXX"
29+
30+
local NDK_SYSROOT="$TERMUX_STANDALONE_TOOLCHAIN/sysroot"
31+
local SYSROOT_FLAG="--sysroot=$NDK_SYSROOT"
32+
33+
local PYTHON_INCLUDE="$TERMUX_PREFIX/include/python$TERMUX_PYTHON_VERSION"
34+
35+
local NDK_LIB="$NDK_SYSROOT/usr/lib/$TERMUX_HOST_PLATFORM/$TERMUX_PKG_API_LEVEL"
36+
37+
local NDK_ARCH=$TERMUX_ARCH
38+
[[ $NDK_ARCH == 'i686' ]] && NDK_ARCH='i386'
39+
40+
local CLANG_LIB="$TERMUX_STANDALONE_TOOLCHAIN/lib/clang/21/lib/linux/$NDK_ARCH"
41+
42+
TERMUX_PROOT_EXTRA_ENV_VARS="LD_PRELOAD= LD_LIBRARY_PATH= \
43+
PIP_NO_BINARY=$PIP_NO_BINARY AWS_CRT_BUILD_FORCE_STATIC_LIBS=1 \
44+
PIP_NO_INDEX=1 PIP_NO_CACHE_DIR=1 CC=$PROOT_CC CXX=$PROOT_CXX \
45+
CMAKE_C_COMPILER=$PROOT_CC CMAKE_CXX_COMPILER=$PROOT_CXX \
46+
CMAKE_ASM_COMPILER=$PROOT_CC CMAKE_SYSTEM_PROCESSOR=$TERMUX_ARCH \
47+
AR=$AR RANLIB=$RANLIB CMAKE_SYSROOT=$NDK_SYSROOT \
48+
CFLAGS='$CFLAGS $SYSROOT_FLAG -I$PYTHON_INCLUDE' \
49+
CXXFLAGS='$CXXFLAGS $SYSROOT_FLAG' CPPFLAGS='$CPPFLAGS -I$PYTHON_INCLUDE' \
50+
LDFLAGS='$LDFLAGS $SYSROOT_FLAG -L$NDK_LIB -L$CLANG_LIB -L$TERMUX_PREFIX/lib'"
51+
52+
ln -s "$NDK_SYSROOT/usr/include/android" "$TERMUX__PREFIX__INCLUDE_DIR/android"
53+
}
54+
55+
termux_step_configure() {
56+
if [[ "$TERMUX_ON_DEVICE_BUILD" == "true" ]]; then
57+
termux_step_configure_autotools
58+
return
59+
fi
60+
61+
termux_setup_proot
62+
63+
termux-proot-run "$TERMUX_PKG_SRCDIR/configure" \
64+
--prefix="$TERMUX_PREFIX" \
65+
$TERMUX_PKG_EXTRA_CONFIGURE_ARGS
66+
}
67+
68+
termux_step_make() {
69+
if [[ "$TERMUX_ON_DEVICE_BUILD" == "true" ]]; then
70+
make
71+
return
72+
fi
73+
74+
local WHEELHOUSE="$TERMUX_PKG_BUILDDIR/wheelhouse"
75+
mkdir -p "$WHEELHOUSE"
76+
77+
python3 -m pip download \
78+
--dest "$WHEELHOUSE" \
79+
--platform "linux_$TERMUX_ARCH" \
80+
--python-version "$TERMUX_PYTHON_VERSION" \
81+
--implementation cp \
82+
--abi cp"${TERMUX_PYTHON_VERSION//.}" \
83+
--abi abi3 \
84+
--abi none \
85+
--no-deps \
86+
-r "$TERMUX_PKG_SRCDIR/requirements/download-deps/bootstrap-lock.txt" \
87+
-r "$TERMUX_PKG_SRCDIR/requirements/download-deps/portable-exe-lock.txt"
88+
89+
termux-proot-run \
90+
-b "$TERMUX_STANDALONE_TOOLCHAIN:$TERMUX_STANDALONE_TOOLCHAIN" \
91+
-b "$WHEELHOUSE:$WHEELHOUSE" \
92+
env \
93+
PIP_FIND_LINKS="file://$WHEELHOUSE" \
94+
PIP_VERBOSE=1 \
95+
make
96+
}

0 commit comments

Comments
 (0)