Fixed legacy VCMI, it crashes when loading a map
This commit is contained in:
@@ -662,6 +662,7 @@ echo CompatibilityHacksStaticInit=$CompatibilityHacksStaticInit >> AndroidAppSet
|
||||
echo CompatibilityHacksTextInputEmulatesHwKeyboard=$CompatibilityHacksTextInputEmulatesHwKeyboard >> AndroidAppSettings.cfg
|
||||
echo CompatibilityHacksPreventAudioChopping=$CompatibilityHacksPreventAudioChopping >> AndroidAppSettings.cfg
|
||||
echo CompatibilityHacksAppIgnoresAudioBufferSize=$CompatibilityHacksAppIgnoresAudioBufferSize >> AndroidAppSettings.cfg
|
||||
echo CompatibilityHacksAdditionalPreloadedSharedLibraries=\"$CompatibilityHacksAdditionalPreloadedSharedLibraries\" >> AndroidAppSettings.cfg
|
||||
echo AppUsesMouse=$AppUsesMouse >> AndroidAppSettings.cfg
|
||||
echo AppNeedsTwoButtonMouse=$AppNeedsTwoButtonMouse >> AndroidAppSettings.cfg
|
||||
echo ShowMouseCursor=$ShowMouseCursor >> AndroidAppSettings.cfg
|
||||
@@ -879,7 +880,7 @@ fi
|
||||
|
||||
LibrariesToLoad="\\\"sdl-$LibSdlVersion\\\""
|
||||
StaticLibraries=`grep 'APP_AVAILABLE_STATIC_LIBS' project/jni/SettingsTemplate.mk | sed 's/.*=\(.*\)/\1/'`
|
||||
for lib in $CompiledLibraries; do
|
||||
for lib in $CompiledLibraries $CompatibilityHacksAdditionalPreloadedSharedLibraries; do
|
||||
process=true
|
||||
for lib1 in $StaticLibraries; do
|
||||
if [ "$lib" = "$lib1" ]; then process=false; fi
|
||||
|
||||
@@ -35,7 +35,7 @@ RedefinedKeysScreenKb="0 1 2 3 4 5 6 7 8 9"
|
||||
StartupMenuButtonTimeout=3000
|
||||
HiddenMenuOptions='OptionalDownloadConfig'
|
||||
FirstStartMenuOptions=''
|
||||
MultiABI=n
|
||||
MultiABI=y
|
||||
AppMinimumRAM=0
|
||||
AppVersionCode=101
|
||||
AppVersionName="1.01"
|
||||
|
||||
@@ -18,6 +18,7 @@ CompatibilityHacksStaticInit=n
|
||||
CompatibilityHacksTextInputEmulatesHwKeyboard=n
|
||||
CompatibilityHacksPreventAudioChopping=n
|
||||
CompatibilityHacksAppIgnoresAudioBufferSize=n
|
||||
CompatibilityHacksAdditionalPreloadedSharedLibraries="vcmi"
|
||||
AppUsesMouse=y
|
||||
AppNeedsTwoButtonMouse=y
|
||||
ShowMouseCursor=n
|
||||
|
||||
@@ -29,7 +29,7 @@ OBJS_CLIENT:=$(patsubst %.cpp, $(ARCH)/out/%.o, $(SOURCES_CLIENT))
|
||||
|
||||
all: AndroidData/binaries-$(ARCH).zip libapplication-$(ARCH).so
|
||||
|
||||
AndroidData/binaries-$(ARCH).zip: $(ARCH)/vcmiserver $(ARCH)/AI/libGeniusAI.so $(ARCH)/AI/libStupidAI.so $(ARCH)/Scripting/libvcmiERM.so
|
||||
AndroidData/binaries-$(ARCH).zip: $(ARCH)/vcmiserver $(ARCH)/AI/libGeniusAI.so $(ARCH)/AI/libStupidAI.so $(ARCH)/Scripting/libvcmiERM.so # $(ARCH)/libvcmi.so
|
||||
rm -f $@
|
||||
cd $(ARCH) && zip -r ../$@ $(foreach F, $^, $(patsubst $(ARCH)/%,%,$(F)))
|
||||
|
||||
@@ -45,41 +45,51 @@ $(OBJS_SERVER) $(OBJS_LIB) $(OBJS_GENIUSAI) $(OBJS_STUPIDAI) $(OBJS_CLIENT) $(OB
|
||||
$< -o $@"
|
||||
# -Werror=strict-aliasing -Werror=cast-align -Werror=pointer-arith -Werror=address
|
||||
|
||||
$(ARCH)/libvcmi.a: $(OBJS_LIB)
|
||||
ar rcs $@ $^
|
||||
|
||||
#ALLOW_UNRESOLVED_SYMBOLS=1
|
||||
LINK_LIB= \
|
||||
env NO_SHARED_LIBS=1 ../setEnvironment-$(ARCH).sh sh -c \
|
||||
"\$$CXX \
|
||||
env NO_SHARED_LIBS=1 SHARED_LIBRARY_NAME=`basename $@` ../setEnvironment-$(ARCH).sh sh -c \
|
||||
"echo SHARED_LIBRARY_NAME \$$SHARED_LIBRARY_NAME && \$$CXX \
|
||||
-Wl,--whole-archive $^ -Wl,--no-whole-archive -o $@ \
|
||||
-shared \$$LDFLAGS \
|
||||
-lboost_filesystem-1.45 -lboost_iostreams-1.45 -lboost_system-1.45 -lboost_thread-1.45 && \
|
||||
\$$LDFLAGS -L$(ARCH) \
|
||||
-lboost_filesystem -lboost_iostreams -lboost_system -lboost_thread && \
|
||||
cp $@ debug/$@ && \
|
||||
\$$STRIP --strip-unneeded $@"
|
||||
|
||||
$(ARCH)/AI/libGeniusAI.so: $(ARCH)/libvcmi.a $(OBJS_GENIUSAI)
|
||||
#$(ARCH)/libvcmi.a: $(OBJS_LIB)
|
||||
# ar rcs $@ $^
|
||||
|
||||
$(ARCH)/libvcmi.so: $(OBJS_LIB)
|
||||
$(LINK_LIB)
|
||||
|
||||
$(ARCH)/AI/libStupidAI.so: $(ARCH)/libvcmi.a $(OBJS_STUPIDAI)
|
||||
-lvcmi: $(ARCH)/libvcmi.so
|
||||
cp -f $^ ../../../libs/$^
|
||||
|
||||
.PHONY: -lvcmi
|
||||
|
||||
$(ARCH)/AI/libGeniusAI.so: $(OBJS_GENIUSAI) -lvcmi
|
||||
$(LINK_LIB)
|
||||
|
||||
$(ARCH)/Scripting/libvcmiERM.so: $(ARCH)/libvcmi.a $(OBJS_ERM)
|
||||
$(ARCH)/AI/libStupidAI.so: $(OBJS_STUPIDAI) -lvcmi
|
||||
$(LINK_LIB)
|
||||
|
||||
$(ARCH)/vcmiserver: $(ARCH)/libvcmi.a $(OBJS_SERVER)
|
||||
$(ARCH)/Scripting/libvcmiERM.so: $(OBJS_ERM) -lvcmi
|
||||
$(LINK_LIB)
|
||||
|
||||
$(ARCH)/vcmiserver: $(OBJS_SERVER) -lvcmi
|
||||
env BUILD_EXECUTABLE=1 NO_SHARED_LIBS=1 ../setEnvironment-$(ARCH).sh sh -c \
|
||||
"\$$CXX \
|
||||
-Wl,--whole-archive $^ -Wl,--no-whole-archive -o $@ \
|
||||
\$$LDFLAGS \
|
||||
-lboost_filesystem-1.45 -lboost_iostreams-1.45 -lboost_system-1.45 -lboost_thread-1.45 && \
|
||||
\$$LDFLAGS -L$(ARCH) -Wl,-rpath,/data/data/eu.vcmi/lib \
|
||||
-lboost_filesystem -lboost_iostreams -lboost_system -lboost_thread && \
|
||||
cp $@ debug/$@ && \
|
||||
\$$STRIP --strip-unneeded $@"
|
||||
|
||||
libapplication-$(ARCH).so: $(ARCH)/libvcmi.a $(OBJS_CLIENT)
|
||||
libapplication-$(ARCH).so: $(OBJS_CLIENT) -lvcmi
|
||||
env ../setEnvironment-$(ARCH).sh sh -c \
|
||||
"\$$CXX \
|
||||
-Wl,--whole-archive $^ -Wl,--no-whole-archive -o $@ \
|
||||
\$$LDFLAGS -lboost_filesystem-1.45 -lboost_iostreams-1.45 -lboost_system-1.45 -lboost_thread-1.45 -lboost_program_options-1.45 && \
|
||||
\$$LDFLAGS -L$(ARCH) \
|
||||
-lboost_filesystem -lboost_iostreams -lboost_system -lboost_thread -lboost_program_options && \
|
||||
cp $@ debug/$@"
|
||||
# No need to strip, it's done inside build.sh script
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user