Disabled RTTI and exceptions, added section to readme how to enable them
This commit is contained in:
@@ -19,7 +19,9 @@ APP_SUBDIRS := $(filter-out %.c %.cpp, $(APP_SUBDIRS))
|
||||
LOCAL_SRC_FILES += $(foreach F, $(APP_SUBDIRS), $(addprefix $(F)/,$(notdir $(wildcard $(LOCAL_PATH)/$(F)/*.cpp))))
|
||||
LOCAL_SRC_FILES += $(foreach F, $(APP_SUBDIRS), $(addprefix $(F)/,$(notdir $(wildcard $(LOCAL_PATH)/$(F)/*.c))))
|
||||
|
||||
LOCAL_CPP_FEATURES := exceptions rtti
|
||||
# Disabled because they give slight overhead, add "-frtti -fexceptions" to the AppCflags inside AndroidAppSettings.cfg if you need them
|
||||
# If you use setEnvironment.sh you may write "env CXXFLAGS='-frtti -fexceptions' ../setEnvironment.sh ./configure".
|
||||
#LOCAL_CPP_FEATURES := exceptions rtti
|
||||
|
||||
LOCAL_CFLAGS :=
|
||||
LOCAL_C_INCLUDES :=
|
||||
|
||||
Submodule project/jni/application/commandergenius/commandergenius updated: 023025901a...d1b8a7ae03
@@ -3,9 +3,8 @@
|
||||
LOCAL_PATH=`dirname $0`
|
||||
LOCAL_PATH=`cd $LOCAL_PATH && pwd`
|
||||
|
||||
../setEnvironment.sh make -j8 -C engine \
|
||||
../setEnvironment.sh make -j8 -C engine release \
|
||||
PLATFORM=android ARCH=arm USE_GLES=1 USE_LOCAL_HEADERS=0 \
|
||||
USE_OPENAL=0 USE_CURL=1 USE_CURL_DLOPEN=0 USE_CODEC_VORBIS=1 USE_MUMBLE=0 USE_FREETYPE=1 \
|
||||
USE_RENDERER_DLOPEN=0 USE_INTERNAL_ZLIB=0 USE_INTERNAL_JPEG=1 &&
|
||||
mv -f engine/build/release-android-arm/openarena.arm libapplication.so
|
||||
|
||||
|
||||
@@ -53,7 +53,6 @@ MISSING_LIB=
|
||||
|
||||
|
||||
CFLAGS="\
|
||||
-fexceptions -frtti \
|
||||
-MMD -MP -MF -fpic -ffunction-sections -funwind-tables -fstack-protector \
|
||||
-D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ \
|
||||
-Wno-psabi -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -mthumb -Os -fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 \
|
||||
@@ -74,7 +73,7 @@ if [ -n "$NO_SHARED_LIBS" ]; then
|
||||
fi
|
||||
|
||||
LDFLAGS="\
|
||||
-fexceptions -frtti $SHARED \
|
||||
$SHARED \
|
||||
--sysroot=$NDK/platforms/$PLATFORMVER/arch-arm \
|
||||
`echo $APP_SHARED_LIBS | sed \"s@\([-a-zA-Z0-9_.]\+\)@$LOCAL_PATH/../../obj/local/armeabi-v7a/lib\1.so@g\"` \
|
||||
$NDK/platforms/$PLATFORMVER/arch-arm/usr/lib/libc.so \
|
||||
@@ -95,7 +94,7 @@ $MISSING_LIB $LDFLAGS"
|
||||
|
||||
env PATH=$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin:$LOCAL_PATH:$PATH \
|
||||
CFLAGS="$CFLAGS" \
|
||||
CXXFLAGS="$CFLAGS" \
|
||||
CXXFLAGS="$CXXFLAGS $CFLAGS" \
|
||||
LDFLAGS="$LDFLAGS" \
|
||||
CC="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc" \
|
||||
CXX="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
|
||||
@@ -73,7 +73,7 @@ fi
|
||||
|
||||
|
||||
LDFLAGS="\
|
||||
-fexceptions -frtti $SHARED \
|
||||
$SHARED \
|
||||
--sysroot=$NDK/platforms/$PLATFORMVER/arch-arm \
|
||||
`echo $APP_SHARED_LIBS | sed \"s@\([-a-zA-Z0-9_.]\+\)@$LOCAL_PATH/../../obj/local/armeabi/lib\1.so@g\"` \
|
||||
$NDK/platforms/$PLATFORMVER/arch-arm/usr/lib/libc.so \
|
||||
@@ -93,7 +93,7 @@ $MISSING_LIB $LDFLAGS"
|
||||
|
||||
env PATH=$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin:$LOCAL_PATH:$PATH \
|
||||
CFLAGS="$CFLAGS" \
|
||||
CXXFLAGS="-fexceptions -frtti $CFLAGS" \
|
||||
CXXFLAGS="$CXXFLAGS $CFLAGS" \
|
||||
LDFLAGS="$LDFLAGS" \
|
||||
CC="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc" \
|
||||
CXX="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
|
||||
@@ -65,7 +65,7 @@ fi
|
||||
|
||||
|
||||
LDFLAGS="\
|
||||
-fexceptions -frtti $SHARED \
|
||||
$SHARED \
|
||||
--sysroot=$NDK/platforms/$PLATFORMVER/arch-arm \
|
||||
`echo $APP_SHARED_LIBS | sed \"s@\([-a-zA-Z0-9_.]\+\)@$LOCAL_PATH/../../obj/local/$ARCH/lib\1.so@g\"` \
|
||||
$NDK/platforms/$PLATFORMVER/arch-arm/usr/lib/libc.so \
|
||||
@@ -85,7 +85,7 @@ $MISSING_LIB $LDFLAGS"
|
||||
|
||||
env PATH=$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin:$LOCAL_PATH:$PATH \
|
||||
CFLAGS="$CFLAGS" \
|
||||
CXXFLAGS="-fexceptions -frtti $CFLAGS" \
|
||||
CXXFLAGS="$CXXFLAGS $CFLAGS" \
|
||||
LDFLAGS="$LDFLAGS" \
|
||||
CC="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-gcc" \
|
||||
CXX="$NDK/toolchains/$GCCPREFIX-$GCCVER/prebuilt/$MYARCH/bin/$GCCPREFIX-g++" \
|
||||
|
||||
@@ -93,6 +93,11 @@ Also you have to create an icon image file at project/res/drawable/icon.png, and
|
||||
project/jni/application/src/AndroidData/logo.png to be used as a splash screen image.
|
||||
Then you may launch build.sh.
|
||||
|
||||
C++ RTTI and exceptions give very slight memory overhead, if you need them -
|
||||
add "-frtti -fexceptions" to the AppCflags inside AndroidAppSettings.cfg
|
||||
If you use autoconf/automake/configure scripts with setEnvironment.sh, you may write
|
||||
env CXXFLAGS='-frtti -fexceptions' ../setEnvironment.sh ./configure
|
||||
|
||||
Application data may be bundled with app itself, or downloaded from the internet on the first run -
|
||||
if you want to put app data inside .apk file - create a .zip archive and put it into the directory
|
||||
project/jni/application/src/AndroidData (create it if it doesn't exist), then run ChangeAppSettings.sh
|
||||
|
||||
Reference in New Issue
Block a user