Revert "Improve build system, etc..."

This reverts commit 249b44a81a.
This commit is contained in:
2025-08-24 16:17:12 +03:00
parent 249b44a81a
commit 705f529f55
7 changed files with 42 additions and 56 deletions

View File

@@ -15,61 +15,74 @@
# limitations under the License.
#
set -e
BUILD_64="build_arm64-v8a"
BUILD_32="build_armeabi-v7a"
THIS="$(basename $0)"
TARGET_ABI_LIST=("arm64-v8a" "armeabi-v7a")
echo() { command echo "[$THIS]: $@"; }
checks() {
checks()
{
if [ -z "$ANDROID_NDK" ]; then
echo "Please set ANDROID_NDK variable as your NDK path."
exit 1
fi
if ! which cmake &>/dev/null; then
if [ ! -f /usr/bin/cmake ] && [ ! -f /bin/cmake ]; then
echo "Please verify your CMake installation."
exit 1
fi
}
clean() {
clean()
{
echo "Cleaning workspace."
for a in ${TARGET_ABI_LIST[@]}; do rm -rf build_$a; done
rm -rf include/generated \
rm -rf $BUILD_32 $BUILD_64 \
include/generated \
srclib/libhelper/tests/dir \
srclib/libhelper/tests/linkdir \
srclib/libhelper/tests/file.txt
}
build() {
set -e
build()
{
mkdir -p $BUILD_64 $BUILD_32
command echo -e "BUILD INFO:
ARCHS: ${TARGET_ABI_LIST[@]}
ARCHS: arm64-v8a armeabi-v7a
ANDROID_PLATFORM: $ANDROID_PLATFORM
ANDROID_TOOLCHAIN_FILE: $ANDROID_NDK/build/cmake/android.toolchain.cmake\n"
for a in ${TARGET_ABI_LIST[@]}; do
echo "Configuring for $a..."
mkdir -p build_$a
cmake -B build_$a -S . $1 \
-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake \
-DANDROID_ABI=$a \
-DANDROID_PLATFORM=$ANDROID_PLATFORM \
-DANDROID_STL=c++_static
done
echo "Configuring for arm64-v8a..."
cmake -B $BUILD_64 -S . $1 \
-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake \
-DANDROID_ABI=arm64-v8a \
-DANDROID_PLATFORM=$ANDROID_PLATFORM \
-DANDROID_STL=c++_static
for a in ${TARGET_ABI_LIST[@]}; do
echo "Building $a artifacts..."
cmake --build build_$a
echo "$a build complete, artifacts: $PWD/build_$a"
done
echo "Configuring for armeabi-v7a..."
cmake -B $BUILD_32 -S . $1 \
-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake \
-DANDROID_ABI=armeabi-v7a \
-DANDROID_PLATFORM=$ANDROID_PLATFORM \
-DANDROID_STL=c++_static
echo "Building arm64-v8a artifacts..."
cmake --build $BUILD_64
echo "arm64-v8a build complete, artifacts: $PWD/$BUILD_64"
echo "Building armeabi-v7a artifacts..."
cmake --build $BUILD_32
echo "armeabi-v7a build complete, artifacts: $PWD/$BUILD_32"
}
if [ $# -eq 0 ]; then
command echo -e "Usage: $0 build|rebuild|clean [EXTRA_CMAKE_FLAGS]\n HINT: Export ANDROID_PLATFORM if you set min Android target.\n HINT: Change TARGET_ABI_LIST array in build.sh if you build other archs."
command echo "Usage: $0 build|rebuild|clean [EXTRA_CMAKE_FLAGS] [ANDROID_PLATFORM=SELECTED_ANDROID_PLATFORM]"
exit 1
fi
[ -z $ANDROID_PLATFORM ] && ANDROID_PLATFORM="android-21"
if [ -z $ANDROID_PLATFORM ]; then ANDROID_PLATFORM="android-21"; fi
checks
case $1 in