Skip to content

Commit dc4b4f8

Browse files
committed
addpkg(main/awscli): 2.32.28
1 parent 7f82fb2 commit dc4b4f8

1 file changed

Lines changed: 99 additions & 0 deletions

File tree

packages/awscli/build.sh

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
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 CC=$PROOT_CC CXX=$PROOT_CXX AR=$AR RANLIB=$RANLIB \
45+
CMAKE_C_COMPILER=$PROOT_CC CMAKE_CXX_COMPILER=$PROOT_CXX \
46+
CMAKE_ASM_COMPILER=$PROOT_CC CMAKE_SYSTEM_PROCESSOR=$TERMUX_ARCH \
47+
CFLAGS='$CFLAGS $SYSROOT_FLAG -I$PYTHON_INCLUDE' CMAKE_SYSROOT=$NDK_SYSROOT \
48+
CXXFLAGS='$CXXFLAGS $SYSROOT_FLAG' CPPFLAGS='$CPPFLAGS -I$PYTHON_INCLUDE' \
49+
LDFLAGS='$LDFLAGS $SYSROOT_FLAG -L$NDK_LIB -L$CLANG_LIB -L$TERMUX_PREFIX/lib'"
50+
}
51+
52+
termux_step_configure() {
53+
if [[ "$TERMUX_ON_DEVICE_BUILD" == "true" ]]; then
54+
termux_step_configure_autotools
55+
return
56+
fi
57+
58+
termux_setup_proot
59+
60+
termux-proot-run "$TERMUX_PKG_SRCDIR/configure" \
61+
--prefix="$TERMUX_PREFIX" \
62+
$TERMUX_PKG_EXTRA_CONFIGURE_ARGS
63+
}
64+
65+
termux_step_make() {
66+
if [[ "$TERMUX_ON_DEVICE_BUILD" == "true" ]]; then
67+
make
68+
return
69+
fi
70+
71+
local WHEELHOUSE="$TERMUX_PKG_BUILDDIR/wheelhouse"
72+
mkdir -p "$WHEELHOUSE"
73+
74+
python3 -m pip download \
75+
--dest "$WHEELHOUSE" \
76+
--platform "linux_$TERMUX_ARCH" \
77+
--python-version "$TERMUX_PYTHON_VERSION" \
78+
--implementation cp \
79+
--abi cp"${TERMUX_PYTHON_VERSION//.}" \
80+
--abi abi3 \
81+
--abi none \
82+
--no-deps \
83+
-r "$TERMUX_PKG_SRCDIR/requirements/download-deps/bootstrap-lock.txt" \
84+
-r "$TERMUX_PKG_SRCDIR/requirements/download-deps/portable-exe-lock.txt"
85+
86+
termux-proot-run \
87+
-b "$TERMUX_STANDALONE_TOOLCHAIN/sysroot/usr/include/android:$TERMUX__PREFIX__INCLUDE_DIR/android" \
88+
env PIP_FIND_LINKS="file://$WHEELHOUSE" \
89+
make
90+
}
91+
92+
termux_step_make_install() {
93+
if [[ "$TERMUX_ON_DEVICE_BUILD" == "true" ]]; then
94+
make install
95+
return
96+
fi
97+
98+
termux-proot-run make install
99+
}

0 commit comments

Comments
 (0)