on-device build: Fix up ncurses and ninja, adjust some setup scripts,

and add dependency info to scripts/setup-termux.sh.
This commit is contained in:
Butta 2019-08-11 14:37:03 +05:30 committed by Leonid Pliushch
parent 0b4d758d6d
commit 4c735a6580
6 changed files with 21 additions and 26 deletions

View File

@ -61,6 +61,7 @@ termux_step_post_make_install() {
for file in lib${lib}w.so*; do
ln -s $file ${file/w./.}
done
rm -f lib${lib}.a
for file in lib${lib}w.a; do
ln -s $file ${file/w./.}
done

View File

@ -12,8 +12,12 @@ termux_step_configure() {
}
termux_step_make() {
termux_setup_ninja
ninja -j $TERMUX_MAKE_PROCESSES
if [ -n "$TERMUX_ON_DEVICE_BUILD" ]; then
$TERMUX_PKG_SRCDIR/configure.py --bootstrap
else
termux_setup_ninja
ninja -j $TERMUX_MAKE_PROCESSES
fi
}
termux_step_make_install() {

View File

@ -25,10 +25,6 @@ termux_setup_cmake() {
echo
echo " pkg install cmake"
echo
echo "or build it from source with"
echo
echo " ./build-package.sh cmake"
echo
exit 1
fi
fi

View File

@ -14,7 +14,10 @@ termux_setup_ninja() {
fi
export PATH=$NINJA_FOLDER:$PATH
else
if [ "$(dpkg-query -W -f '${db:Status-Status}\n' ninja 2>/dev/null)" != "installed" ]; then
local NINJA_PKG_VERSION=$(bash -c ". $TERMUX_SCRIPTDIR/packages/ninja/build.sh; echo \$TERMUX_PKG_VERSION")
if ([ ! -e "$TERMUX_BUILT_PACKAGES_DIRECTORY/ninja" ] ||
[ "$(cat "$TERMUX_BUILT_PACKAGES_DIRECTORY/ninja")" != "$NINJA_PKG_VERSION" ]) &&
[ "$(dpkg-query -W -f '${db:Status-Status}\n' ninja 2>/dev/null)" != "installed" ]; then
echo "Package 'ninja' is not installed."
echo "You can install it with"
echo

View File

@ -17,18 +17,5 @@ termux_setup_protobuf() {
fi
export PATH=$_PROTOBUF_FOLDER/bin/:$PATH
else
if [ "$(dpkg-query -W -f '${db:Status-Status}\n' protobuf 2>/dev/null)" != "installed" ]; then
echo "Package 'protobuf' is not installed."
echo "You can install it with"
echo
echo " pkg install protobuf"
echo
echo "or build it from source with"
echo
echo " ./build-package.sh libprotobuf"
echo
exit 1
fi
fi
}

View File

@ -1,18 +1,22 @@
#!/data/data/com.termux/files/usr/bin/bash
# Tier 1 packages are required by the core build scripts in scripts/build/.
# Tier 2 packages are required to build many packages.
# Some packages are installed by default and aren't labeled here.
PACKAGES="autoconf"
PACKAGES+=" automake"
PACKAGES+=" bc"
PACKAGES+=" binutils-gold"
PACKAGES+=" bison"
PACKAGES+=" bzip2"
PACKAGES+=" clang"
PACKAGES+=" clang" # Tier 1: required to build termux-elf-cleaner, which
# is built first by the core scripts.
PACKAGES+=" cmake"
PACKAGES+=" coreutils"
PACKAGES+=" curl"
PACKAGES+=" diffutils"
PACKAGES+=" ed"
PACKAGES+=" file"
PACKAGES+=" file" # Tier 1: required by a core script
PACKAGES+=" findutils"
PACKAGES+=" flex"
PACKAGES+=" gawk"
@ -26,13 +30,13 @@ PACKAGES+=" libtool"
PACKAGES+=" lzip"
PACKAGES+=" lzop"
PACKAGES+=" m4"
PACKAGES+=" make"
PACKAGES+=" ninja"
PACKAGES+=" make" # Tier 2: used for all Makefile projects and to build itself
PACKAGES+=" ninja" # Tier 2: used by default to build all CMake projects
PACKAGES+=" patch"
PACKAGES+=" perl"
PACKAGES+=" pkg-config"
PACKAGES+=" pkg-config" # Tier 2: used to build many packages
PACKAGES+=" protobuf"
PACKAGES+=" python"
PACKAGES+=" python" # Tier 1: required for buildorder.py core script
PACKAGES+=" python2"
PACKAGES+=" rust"
PACKAGES+=" sed"