init
This commit is contained in:
65
scripts/compile_libs/make_lib_sqlite3.sh
Executable file
65
scripts/compile_libs/make_lib_sqlite3.sh
Executable file
@ -0,0 +1,65 @@
|
||||
#!/bin/bash
|
||||
|
||||
ANDROID_HOME=~/Android/Sdk
|
||||
ANDROID_NDK="$(find "$ANDROID_HOME/ndk" -maxdepth 1 | sort -n | tail -1)"
|
||||
|
||||
export MAKEFLAGS=-j32
|
||||
|
||||
export CXXFLAGS="$3"
|
||||
export CFLAGS="$3"
|
||||
export CPPFLAGS="$4"
|
||||
LINKER_FLAGS="$4"
|
||||
|
||||
export ANDROID_NDK_ROOT="$ANDROID_NDK"
|
||||
PATH="$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH"
|
||||
_LD_LIBRARY_PATH=".:$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$LD_LIBRARY_PATH"
|
||||
|
||||
function make_sqlite3() {
|
||||
(
|
||||
mkdir -p "$1"
|
||||
cd "$1" || exit 1
|
||||
|
||||
TMP_COMPILER=""
|
||||
TMP_AR=""
|
||||
if [[ "${5}" == "android" ]]; then
|
||||
TMP_COMPILER="$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin/$3$4-clang"
|
||||
TMP_AR="$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-ar"
|
||||
elif [[ "${5}" == "webasm" ]]; then
|
||||
TMP_COMPILER="emcc"
|
||||
TMP_AR="emar"
|
||||
fi
|
||||
|
||||
LDFLAGS="${LINKER_FLAGS} -L./" \
|
||||
LD_LIBRARY_PATH="$_LD_LIBRARY_PATH" \
|
||||
${TMP_COMPILER} \
|
||||
-c \
|
||||
-fPIC \
|
||||
-DSQLITE_ENABLE_ATOMIC_WRITE=1 \
|
||||
-DSQLITE_ENABLE_BATCH_ATOMIC_WRITE=1 \
|
||||
-DSQLITE_ENABLE_MULTITHREADED_CHECKS=1 \
|
||||
-DSQLITE_THREADSAFE=1 \
|
||||
../sqlite3.c \
|
||||
-o sqlite3.o
|
||||
|
||||
LDFLAGS="${LINKER_FLAGS} -L./" \
|
||||
LD_LIBRARY_PATH="$_LD_LIBRARY_PATH" \
|
||||
${TMP_AR} \
|
||||
rvs \
|
||||
sqlite3.a \
|
||||
sqlite3.o
|
||||
)
|
||||
}
|
||||
|
||||
function compile_all_sqlite3() {
|
||||
if [[ "${2}" == "android" ]]; then
|
||||
make_sqlite3 build_"$2"_arm build_"$2"_arm armv7a-linux-androideabi "$1" "$2"
|
||||
make_sqlite3 build_"$2"_arm64 build_"$2"_arm64 aarch64-linux-android "$1" "$2"
|
||||
make_sqlite3 build_"$2"_x86 build_"$2"_x86 i686-linux-android "$1" "$2"
|
||||
make_sqlite3 build_"$2"_x86_64 build_"$2"_x86_64 x86_64-linux-android "$1" "$2"
|
||||
elif [[ "${2}" == "webasm" ]]; then
|
||||
make_sqlite3 build_"$2"_wasm build_"$2"_wasm "" "$1" "$2"
|
||||
fi
|
||||
}
|
||||
|
||||
compile_all_sqlite3 "$1" "$2"
|
||||
|
Reference in New Issue
Block a user