build-package: mv termux_step_handle_arguments to scripts/build/
This commit is contained in:
parent
55e037366d
commit
7eab83459f
@ -25,72 +25,7 @@ source scripts/build/setup/termux_setup_meson.sh
|
||||
source scripts/build/setup/termux_setup_cmake.sh
|
||||
|
||||
# First step is to handle command-line arguments. Not to be overridden by packages.
|
||||
termux_step_handle_arguments() {
|
||||
_show_usage() {
|
||||
echo "Usage: ./build-package.sh [-a ARCH] [-d] [-D] [-f] [-i] [-I] [-q] [-s] [-o DIR] PACKAGE"
|
||||
echo "Build a package by creating a .deb file in the debs/ folder."
|
||||
echo " -a The architecture to build for: aarch64(default), arm, i686, x86_64 or all."
|
||||
echo " -d Build with debug symbols."
|
||||
echo " -D Build a disabled package in disabled-packages/."
|
||||
echo " -f Force build even if package has already been built."
|
||||
echo " -i Download and extract dependencies instead of building them."
|
||||
echo " -I Download and extract dependencies instead of building them, keep existing /data/data/com.termux files."
|
||||
echo " -q Quiet build."
|
||||
echo " -s Skip dependency check."
|
||||
echo " -o Specify deb directory. Default: debs/."
|
||||
exit 1
|
||||
}
|
||||
while getopts :a:hdDfiIqso: option; do
|
||||
case "$option" in
|
||||
a) TERMUX_ARCH="$OPTARG";;
|
||||
h) _show_usage;;
|
||||
d) export TERMUX_DEBUG=true;;
|
||||
D) local TERMUX_IS_DISABLED=true;;
|
||||
f) TERMUX_FORCE_BUILD=true;;
|
||||
i) export TERMUX_INSTALL_DEPS=true;;
|
||||
I) export TERMUX_INSTALL_DEPS=true && export TERMUX_NO_CLEAN=true;;
|
||||
q) export TERMUX_QUIET_BUILD=true;;
|
||||
s) export TERMUX_SKIP_DEPCHECK=true;;
|
||||
o) TERMUX_DEBDIR="$(realpath -m $OPTARG)";;
|
||||
?) termux_error_exit "./build-package.sh: illegal option -$OPTARG";;
|
||||
esac
|
||||
done
|
||||
shift $((OPTIND-1))
|
||||
|
||||
if [ "$#" -ne 1 ]; then _show_usage; fi
|
||||
unset -f _show_usage
|
||||
|
||||
# Handle 'all' arch:
|
||||
if [ -n "${TERMUX_ARCH+x}" ] && [ "${TERMUX_ARCH}" = 'all' ]; then
|
||||
for arch in 'aarch64' 'arm' 'i686' 'x86_64'; do
|
||||
./build-package.sh ${TERMUX_FORCE_BUILD+-f} -a $arch ${TERMUX_INSTALL_DEPS+-i} \
|
||||
${TERMUX_DEBUG+-d} ${TERMUX_DEBDIR+-o $TERMUX_DEBDIR} "$1"
|
||||
done
|
||||
exit
|
||||
fi
|
||||
|
||||
# Check the package to build:
|
||||
TERMUX_PKG_NAME=$(basename "$1")
|
||||
export TERMUX_SCRIPTDIR
|
||||
TERMUX_SCRIPTDIR=$(cd "$(dirname "$0")"; pwd)
|
||||
if [[ $1 == *"/"* ]]; then
|
||||
# Path to directory which may be outside this repo:
|
||||
if [ ! -d "$1" ]; then termux_error_exit "'$1' seems to be a path but is not a directory"; fi
|
||||
export TERMUX_PKG_BUILDER_DIR
|
||||
TERMUX_PKG_BUILDER_DIR=$(realpath "$1")
|
||||
else
|
||||
# Package name:
|
||||
if [ -n "${TERMUX_IS_DISABLED=""}" ]; then
|
||||
export TERMUX_PKG_BUILDER_DIR=$TERMUX_SCRIPTDIR/disabled-packages/$TERMUX_PKG_NAME
|
||||
else
|
||||
export TERMUX_PKG_BUILDER_DIR=$TERMUX_SCRIPTDIR/packages/$TERMUX_PKG_NAME
|
||||
fi
|
||||
fi
|
||||
TERMUX_PKG_BUILDER_SCRIPT=$TERMUX_PKG_BUILDER_DIR/build.sh
|
||||
if test ! -f "$TERMUX_PKG_BUILDER_SCRIPT"; then
|
||||
termux_error_exit "No build.sh script at package dir $TERMUX_PKG_BUILDER_DIR!"
|
||||
fi
|
||||
}
|
||||
source scripts/build/termux_step_handle_arguments.sh
|
||||
|
||||
# Setup variables used by the build. Not to be overridden by packages.
|
||||
termux_step_setup_variables() {
|
||||
|
66
scripts/build/termux_step_handle_arguments.sh
Normal file
66
scripts/build/termux_step_handle_arguments.sh
Normal file
@ -0,0 +1,66 @@
|
||||
termux_step_handle_arguments() {
|
||||
_show_usage() {
|
||||
echo "Usage: ./build-package.sh [-a ARCH] [-d] [-D] [-f] [-i] [-I] [-q] [-s] [-o DIR] PACKAGE"
|
||||
echo "Build a package by creating a .deb file in the debs/ folder."
|
||||
echo " -a The architecture to build for: aarch64(default), arm, i686, x86_64 or all."
|
||||
echo " -d Build with debug symbols."
|
||||
echo " -D Build a disabled package in disabled-packages/."
|
||||
echo " -f Force build even if package has already been built."
|
||||
echo " -i Download and extract dependencies instead of building them."
|
||||
echo " -I Download and extract dependencies instead of building them, keep existing /data/data/com.termux files."
|
||||
echo " -q Quiet build."
|
||||
echo " -s Skip dependency check."
|
||||
echo " -o Specify deb directory. Default: debs/."
|
||||
exit 1
|
||||
}
|
||||
while getopts :a:hdDfiIqso: option; do
|
||||
case "$option" in
|
||||
a) TERMUX_ARCH="$OPTARG";;
|
||||
h) _show_usage;;
|
||||
d) export TERMUX_DEBUG=true;;
|
||||
D) local TERMUX_IS_DISABLED=true;;
|
||||
f) TERMUX_FORCE_BUILD=true;;
|
||||
i) export TERMUX_INSTALL_DEPS=true;;
|
||||
I) export TERMUX_INSTALL_DEPS=true && export TERMUX_NO_CLEAN=true;;
|
||||
q) export TERMUX_QUIET_BUILD=true;;
|
||||
s) export TERMUX_SKIP_DEPCHECK=true;;
|
||||
o) TERMUX_DEBDIR="$(realpath -m $OPTARG)";;
|
||||
?) termux_error_exit "./build-package.sh: illegal option -$OPTARG";;
|
||||
esac
|
||||
done
|
||||
shift $((OPTIND-1))
|
||||
|
||||
if [ "$#" -ne 1 ]; then _show_usage; fi
|
||||
unset -f _show_usage
|
||||
|
||||
# Handle 'all' arch:
|
||||
if [ -n "${TERMUX_ARCH+x}" ] && [ "${TERMUX_ARCH}" = 'all' ]; then
|
||||
for arch in 'aarch64' 'arm' 'i686' 'x86_64'; do
|
||||
./build-package.sh ${TERMUX_FORCE_BUILD+-f} -a $arch ${TERMUX_INSTALL_DEPS+-i} \
|
||||
${TERMUX_DEBUG+-d} ${TERMUX_DEBDIR+-o $TERMUX_DEBDIR} "$1"
|
||||
done
|
||||
exit
|
||||
fi
|
||||
|
||||
# Check the package to build:
|
||||
TERMUX_PKG_NAME=$(basename "$1")
|
||||
export TERMUX_SCRIPTDIR
|
||||
TERMUX_SCRIPTDIR=$(cd "$(dirname "$0")"; pwd)
|
||||
if [[ $1 == *"/"* ]]; then
|
||||
# Path to directory which may be outside this repo:
|
||||
if [ ! -d "$1" ]; then termux_error_exit "'$1' seems to be a path but is not a directory"; fi
|
||||
export TERMUX_PKG_BUILDER_DIR
|
||||
TERMUX_PKG_BUILDER_DIR=$(realpath "$1")
|
||||
else
|
||||
# Package name:
|
||||
if [ -n "${TERMUX_IS_DISABLED=""}" ]; then
|
||||
export TERMUX_PKG_BUILDER_DIR=$TERMUX_SCRIPTDIR/disabled-packages/$TERMUX_PKG_NAME
|
||||
else
|
||||
export TERMUX_PKG_BUILDER_DIR=$TERMUX_SCRIPTDIR/packages/$TERMUX_PKG_NAME
|
||||
fi
|
||||
fi
|
||||
TERMUX_PKG_BUILDER_SCRIPT=$TERMUX_PKG_BUILDER_DIR/build.sh
|
||||
if test ! -f "$TERMUX_PKG_BUILDER_SCRIPT"; then
|
||||
termux_error_exit "No build.sh script at package dir $TERMUX_PKG_BUILDER_DIR!"
|
||||
fi
|
||||
}
|
Loading…
Reference in New Issue
Block a user