diff --git a/project/jni/application/commandergenius/AndroidAppSettings.cfg b/project/jni/application/commandergenius/AndroidAppSettings.cfg index b4c030572..f3292fb3e 100644 --- a/project/jni/application/commandergenius/AndroidAppSettings.cfg +++ b/project/jni/application/commandergenius/AndroidAppSettings.cfg @@ -201,8 +201,9 @@ FirstStartMenuOptions='' # Enable multi-ABI binary, with hardware FPU support - it will also work on old devices, # but .apk size is 2x bigger (y) / (n) / (x86) / (all) -MultiABI='armeabi-v7a' -#MultiABI='y' +#MultiABI='armeabi-v7a' +#MultiABI='arm64-v8a' +MultiABI='y' # Minimum amount of RAM application requires, in Mb, SDL will print warning to user if it's lower AppMinimumRAM=64 diff --git a/project/jni/application/commandergenius/commandergenius b/project/jni/application/commandergenius/commandergenius index dc03bf6d5..970b58b14 160000 --- a/project/jni/application/commandergenius/commandergenius +++ b/project/jni/application/commandergenius/commandergenius @@ -1 +1 @@ -Subproject commit dc03bf6d59427399a0cbc3c8fddf8d584a709be3 +Subproject commit 970b58b14c42863d6e69f79d064ac36576e4868a diff --git a/project/jni/curl/Android.mk b/project/jni/curl/Android.mk index 7446b81ce..26d37ef29 100644 --- a/project/jni/curl/Android.mk +++ b/project/jni/curl/Android.mk @@ -82,10 +82,12 @@ LOCAL_MODULE:= libcurl LOCAL_MODULE_FILENAME := libcurl-sdl # It clashes with system libcurl in Android 4.3 and older -LOCAL_SHARED_LIBRARIES := ssl crypto +#LOCAL_SHARED_LIBRARIES := ssl crypto +LOCAL_STATIC_LIBRARIES := ssl crypto LOCAL_LDLIBS := -lz -include $(BUILD_SHARED_LIBRARY) +#include $(BUILD_SHARED_LIBRARY) +include $(BUILD_STATIC_LIBRARY) endif diff --git a/project/jni/openssl/Android.mk b/project/jni/openssl/Android.mk index da76291e5..86d73bf73 100644 --- a/project/jni/openssl/Android.mk +++ b/project/jni/openssl/Android.mk @@ -7,20 +7,23 @@ LOCAL_MODULE := $(notdir $(LOCAL_PATH)) ifneq (openssl,$(LOCAL_MODULE)) ifneq ($(filter $(LOCAL_MODULE), $(APP_MODULES)),) -LOCAL_MODULE_FILENAME := lib$(notdir $(LOCAL_PATH)).so.sdl.1 # It clashes with system libcrypto and libssl in Android 4.3 and older +#LOCAL_MODULE_FILENAME := lib$(notdir $(LOCAL_PATH)).so.sdl.1 # It clashes with system libcrypto and libssl in Android 4.3 and older +#LOCAL_MODULE_FILENAME := lib$(notdir $(LOCAL_PATH)).a.sdl.1 # It clashes with system libcrypto and libssl in Android 4.3 and older LOCAL_C_INCLUDES := $(LOCAL_PATH)/include -LOCAL_SRC_FILES := lib-$(TARGET_ARCH_ABI)/lib$(LOCAL_MODULE).so.sdl.1.so +#LOCAL_SRC_FILES := lib-$(TARGET_ARCH_ABI)/lib$(LOCAL_MODULE).so.sdl.1.so +LOCAL_SRC_FILES := lib-$(TARGET_ARCH_ABI)/lib$(LOCAL_MODULE).a LOCAL_BUILT_MODULE := # This fixes a bug in NDK r10d # NDK is buggy meh -obj/local/$(TARGET_ARCH_ABI)/lib$(LOCAL_MODULE).so.sdl.1.so: $(LOCAL_PATH)/$(LOCAL_SRC_FILES) - cp -f $< $@ +#obj/local/$(TARGET_ARCH_ABI)/lib$(LOCAL_MODULE).so.sdl.1.so: $(LOCAL_PATH)/$(LOCAL_SRC_FILES) +# cp -f $< $@ -obj/local/$(TARGET_ARCH_ABI)/lib$(LOCAL_MODULE).so.sdl.0.so: obj/local/$(TARGET_ARCH_ABI)/lib$(LOCAL_MODULE).so.sdl.1.so - cp -f $< $@ +#obj/local/$(TARGET_ARCH_ABI)/lib$(LOCAL_MODULE).so.sdl.0.so: obj/local/$(TARGET_ARCH_ABI)/lib$(LOCAL_MODULE).so.sdl.1.so +# cp -f $< $@ -include $(PREBUILT_SHARED_LIBRARY) +#include $(PREBUILT_SHARED_LIBRARY) +include $(PREBUILT_STATIC_LIBRARY) endif endif diff --git a/project/jni/openssl/compile.sh b/project/jni/openssl/compile.sh index a7842d851..96c93c5e2 100755 --- a/project/jni/openssl/compile.sh +++ b/project/jni/openssl/compile.sh @@ -10,6 +10,10 @@ build() { ARCH=$1 NO_ASM="" + if [ -d "lib-$ARCH" ]; then + exit 0 + fi + case $ARCH in armeabi-v7a) #NO_ASM="-DOPENSSL_NO_ASM=1" # Assembler in OpenSSL is broken when using clang @@ -43,25 +47,25 @@ build() { export CROSS_SYSROOT=$NDK/sysroot/usr export ANDROID_NDK_HOME=$NDK - env LDFLAGS="-shared -landroid -llog" \ + env LDFLAGS="" \ CFLAGS="$NO_ASM" \ ../../setCrossEnvironment-$ARCH.sh \ sh -c 'env PATH=`dirname $CC`:$PATH \ - ./Configure shared zlib --prefix=`pwd`/dist --openssldir=. $CONFIGURE_ARCH -fPIC' \ + ./Configure no-shared --prefix=`pwd`/dist --openssldir=. $CONFIGURE_ARCH -fPIC' \ || exit 1 sed -i.old 's/^CNF_CPPFLAGS=.*/CNF_CPPFLAGS=/' Makefile sed -i.old 's/^CNF_CFLAGS=.*/CNF_CFLAGS=/' Makefile sed -i.old 's/^CNF_CXXFLAGS=.*/CNF_CXXFLAGS=/' Makefile sed -i.old 's/^CNF_LDFLAGS=.*/CNF_LDFLAGS=/' Makefile - sed -i.old 's/^SHLIB_VERSION_NUMBER=.*/SHLIB_VERSION_NUMBER=sdl.1.so/' Makefile + #sed -i.old 's/^SHLIB_VERSION_NUMBER=.*/SHLIB_VERSION_NUMBER=sdl.1.so/' Makefile if [ "$ARCH" = armeabi-v7a ]; then sed -i.old 's/-DPOLY1305_ASM //' Makefile sed -i.old 's@crypto/poly1305/poly1305-armv4.S @@' Makefile sed -i.old 's@crypto/poly1305/poly1305-armv4.o @@' Makefile fi - env LDFLAGS="-shared -landroid -llog" \ + env LDFLAGS="" \ CFLAGS="$NO_ASM" \ ../../setCrossEnvironment-$ARCH.sh \ sh -c 'env PATH=`dirname $CC`:$PATH \ @@ -71,8 +75,10 @@ build() { rm -rf lib-$ARCH mkdir -p lib-$ARCH - cp build/$ARCH/libcrypto.so.sdl.1.so lib-${ARCH}/libcrypto.so.sdl.1.so || exit 1 - cp build/$ARCH/libssl.so.sdl.1.so lib-${ARCH}/libssl.so.sdl.1.so || exit 1 +# cp build/$ARCH/libcrypto.so.sdl.1.so lib-${ARCH}/libcrypto.so.sdl.1.so || exit 1 +# cp build/$ARCH/libssl.so.sdl.1.so lib-${ARCH}/libssl.so.sdl.1.so || exit 1 + cp build/$ARCH/libcrypto.a lib-${ARCH}/libcrypto.a || exit 1 + cp build/$ARCH/libssl.a lib-${ARCH}/libssl.a || exit 1 }