Update android build script for new libraries

This commit is contained in:
Benau 2019-06-10 13:54:10 +08:00
parent 28cc2838a8
commit c5f3f3aecf
3 changed files with 111 additions and 26 deletions

2
.gitignore vendored
View File

@ -73,3 +73,5 @@ lib/libogg
lib/libvorbis
lib/openal
lib/openssl
lib/fribidi
lib/harfbuzz

View File

@ -58,13 +58,6 @@ include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# Freetype
LOCAL_MODULE := freetype
LOCAL_SRC_FILES := obj/freetype/objs/.libs/libfreetype.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# zlib
LOCAL_MODULE := zlib
LOCAL_SRC_FILES := obj/zlib/libz.a
@ -79,6 +72,43 @@ include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# Fribidi
LOCAL_MODULE := fribidi
LOCAL_SRC_FILES := obj/fribidi/lib/.libs/libfribidi.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# Freetype
LOCAL_MODULE := freetype
LOCAL_SRC_FILES := obj/freetype/objs/.libs/libfreetype.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# Harfbuzz
LOCAL_MODULE := harfbuzz
LOCAL_SRC_FILES := obj/harfbuzz/src/.libs/libharfbuzz.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
# Raqm
LOCAL_MODULE := raqm
LOCAL_PATH := .
LOCAL_CPP_FEATURES += rtti
LOCAL_SRC_FILES := $(wildcard ../lib/libraqm/*.c)
LOCAL_CFLAGS := -Iobj/fribidi/include \
-Iobj/freetype/include \
-Iobj/harfbuzz/include \
-DHAVE_DECL_HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES \
-DHAVE_HB_BUFFER_SET_INVISIBLE_GLYPH \
-DHAVE_HB_FT_FONT_CREATE_REFERENCED \
-DHAVE_HB_FT_FONT_SET_LOAD_FLAGS
include $(BUILD_STATIC_LIBRARY)
include $(CLEAR_VARS)
# ifaddrs
LOCAL_MODULE := ifaddrs
LOCAL_PATH := .
@ -119,7 +149,6 @@ LOCAL_CFLAGS := -I../lib/bullet/src/
include $(BUILD_STATIC_LIBRARY)
include $(CLEAR_VARS)
# Irrlicht
LOCAL_MODULE := irrlicht
LOCAL_PATH := .
@ -149,13 +178,16 @@ LOCAL_SRC_FILES := $(wildcard ../src/*.cpp) \
LOCAL_LDLIBS := -llog -landroid -lEGL -lGLESv3 -lOpenSLES
LOCAL_CFLAGS := -I../lib/angelscript/include \
-I../lib/bullet/src \
-I../lib/libraqm \
-I../lib/enet/include \
-I../lib/ifaddrs \
-I../lib/irrlicht/include \
-I../lib/irrlicht/source/Irrlicht \
-I../src \
-Iobj/curl/include \
-Iobj/fribidi/include \
-Iobj/freetype/include \
-Iobj/harfbuzz/include \
-Iobj/libogg/include \
-Iobj/libvorbis/include \
-Iobj/openal/include \
@ -170,9 +202,9 @@ LOCAL_CFLAGS := -I../lib/angelscript/include \
-DANDROID_PACKAGE_CALLBACK_NAME=$(PACKAGE_CALLBACK_NAME)
LOCAL_CPPFLAGS := -std=gnu++0x
LOCAL_STATIC_LIBRARIES := irrlicht bullet enet freetype ifaddrs angelscript \
LOCAL_STATIC_LIBRARIES := irrlicht bullet enet ifaddrs angelscript \
vorbisfile vorbis ogg openal curl libssl libcrypto \
gnustl_static
gnustl_static raqm fribidi harfbuzz freetype
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)

View File

@ -278,22 +278,6 @@ fi
echo "$PROJECT_VERSION" > "$DIRNAME/obj/project_version"
# Freetype
if [ ! -f "$DIRNAME/obj/freetype.stamp" ]; then
echo "Compiling freetype"
mkdir -p "$DIRNAME/obj/freetype"
cp -a -f "$DIRNAME/../lib/freetype/"* "$DIRNAME/obj/freetype"
cd "$DIRNAME/obj/freetype"
./configure --host=$HOST \
--without-zlib \
--without-png \
--without-harfbuzz &&
make $@
check_error
touch "$DIRNAME/obj/freetype.stamp"
fi
# Zlib
if [ ! -f "$DIRNAME/obj/zlib.stamp" ]; then
echo "Compiling zlib"
@ -326,6 +310,73 @@ if [ ! -f "$DIRNAME/obj/libpng.stamp" ]; then
touch "$DIRNAME/obj/libpng.stamp"
fi
# Fribidi
if [ ! -f "$DIRNAME/obj/fribidi.stamp" ]; then
echo "Compiling fribidi"
mkdir -p "$DIRNAME/obj/fribidi"
cp -a -f "$DIRNAME/../lib/fribidi/"* "$DIRNAME/obj/fribidi"
cd "$DIRNAME/obj/fribidi"
./configure --host=$HOST --enable-static=yes &&
make $@
mkdir -p "$DIRNAME/obj/fribidi/include/fribidi"
cp $DIRNAME/obj/fribidi/lib/*.h "$DIRNAME/obj/fribidi/include/fribidi"
check_error
touch "$DIRNAME/obj/fribidi.stamp"
fi
# Freetype bootstrap
if [ ! -f "$DIRNAME/obj/freetype_bootstrap.stamp" ]; then
echo "Compiling freetype"
mkdir -p "$DIRNAME/obj/freetype"
cp -a -f "$DIRNAME/../lib/freetype/"* "$DIRNAME/obj/freetype"
cd "$DIRNAME/obj/freetype"
ZLIB_CFLAGS="-I$DIRNAME/obj/zlib/" ZLIB_LIBS="$DIRNAME/obj/zlib/libz.a"\
LIBPNG_CFLAGS="-I$DIRNAME/obj/libpng/" LIBPNG_LIBS="$DIRNAME/obj/libpng/libpng.a"\
./configure --host=$HOST --enable-shared=no \
--without-harfbuzz &&
make $@
check_error
# We need to rebuild freetype after harfbuzz is compiled
touch "$DIRNAME/obj/freetype_bootstrap.stamp"
fi
# Harfbuzz
if [ ! -f "$DIRNAME/obj/harfbuzz.stamp" ]; then
echo "Compiling harfbuzz"
mkdir -p "$DIRNAME/obj/harfbuzz"
cp -a -f "$DIRNAME/../lib/harfbuzz/"* "$DIRNAME/obj/harfbuzz"
cd "$DIRNAME/obj/harfbuzz"
FREETYPE_CFLAGS="-I$DIRNAME/obj/freetype/include" \
FREETYPE_LIBS="$DIRNAME/obj/freetype/objs/.libs/libfreetype.a $DIRNAME/obj/zlib/libz.a $DIRNAME/obj/libpng/libpng.a"\
./configure --host=$HOST --enable-shared=no \
--with-glib=no --with-gobject=no --with-cairo=no \
--with-fontconfig=no --with-icu=no --with-graphite2=no &&
make $@
mkdir -p "$DIRNAME/obj/harfbuzz/include/harfbuzz"
cp $DIRNAME/obj/harfbuzz/src/*.h "$DIRNAME/obj/harfbuzz/include/harfbuzz"
check_error
touch "$DIRNAME/obj/harfbuzz.stamp"
fi
# Freetype
if [ ! -f "$DIRNAME/obj/freetype.stamp" ]; then
echo "Compiling freetype"
mkdir -p "$DIRNAME/obj/freetype"
cp -a -f "$DIRNAME/../lib/freetype/"* "$DIRNAME/obj/freetype"
cd "$DIRNAME/obj/freetype"
ZLIB_CFLAGS="-I$DIRNAME/obj/zlib/" ZLIB_LIBS="$DIRNAME/obj/zlib/libz.a" \
LIBPNG_CFLAGS="-I$DIRNAME/obj/libpng/" LIBPNG_LIBS="$DIRNAME/obj/libpng/libpng.a" \
HARFBUZZ_CFLAGS="-I$DIRNAME/obj/harfbuzz/src/" HARFBUZZ_LIBS="$DIRNAME/obj/harfbuzz/src/.libs/libharfbuzz.a" \
./configure --host=$HOST --enable-shared=no
make $@
check_error
touch "$DIRNAME/obj/freetype.stamp"
fi
# Openal
if [ ! -f "$DIRNAME/obj/openal.stamp" ]; then
echo "Compiling openal"