Modify android makefiles

This commit is contained in:
Alexey Pelykh 2013-08-04 09:42:34 +03:00 committed by Weblate
parent a89c7bbb1e
commit c69d37c7f0
2 changed files with 47 additions and 35 deletions

View file

@ -2,23 +2,23 @@ ifdef BUILD_ONLY_OLD_LIB
OSMAND_MAKEFILES := $(all-subdir-makefiles) $(call all-makefiles-under,$(call my-dir)/../../../core/targets/android)
else
OSMAND_MAKEFILES := \
$(all-subdir-makefiles) \
$(call my-dir)/../../../jni/Android.mk \
$(call my-dir)/../../../core/Android.mk \
$(call all-makefiles-under,$(call my-dir)/../../../core/externals) \
$(call my-dir)/../../../core/utils/Android.mk
$(all-subdir-makefiles) \
$(call my-dir)/../../../jni/Android.mk \
$(call my-dir)/../../../core/Android.mk \
$(call all-makefiles-under,$(call my-dir)/../../../core/externals) \
$(call my-dir)/../../../core/utils/Android.mk
endif
# Protect from previous builds
ifneq ($(TARGET_ARCH_ABI),armeabi-v7a)
OSMAND_BUILDING_NEON_LIBRARY := false
OSMAND_BUILDING_NEON_LIBRARY := false
endif
# OSMAND_FORCE_NEON_SUPPORT is used to force only NEON support on ARMv7a
ifdef OSMAND_FORCE_NEON_SUPPORT
ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
OSMAND_BUILDING_NEON_LIBRARY := true
endif
ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
OSMAND_BUILDING_NEON_LIBRARY := true
endif
endif
# By default, include makefiles only once
@ -27,12 +27,12 @@ include $(OSMAND_MAKEFILES)
# If we're not asked not to support NEON and not asked to support only NEON ARMv7a, then
# make additional build
ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
ifndef OSMAND_SKIP_NEON_SUPPORT
ifndef OSMAND_FORCE_NEON_SUPPORT
ifndef OSMAND_SKIP_NEON_SUPPORT
ifndef OSMAND_FORCE_NEON_SUPPORT
OSMAND_BUILDING_NEON_LIBRARY := true
include $(OSMAND_MAKEFILES)
OSMAND_BUILDING_NEON_LIBRARY := true
include $(OSMAND_MAKEFILES)
endif
endif
endif
endif
endif

View file

@ -1,29 +1,41 @@
APP_STL := gnustl_shared
APP_ABI := all
APP_CPPFLAGS := -std=c++11 -fexceptions -frtti
NDK_TOOLCHAIN_VERSION := 4.7
ifdef OSMAND_X86_ONLY
APP_ABI := x86
endif
ifdef OSMAND_MIPS_ONLY
APP_ABI := mips
ifeq ($(wildcard $(ANDROID_NDK/toolchains/*-4.8)),)
NDK_TOOLCHAIN_VERSION := 4.7
else
NDK_TOOLCHAIN_VERSION := 4.8
endif
ifdef OSMAND_ARM_ONLY
APP_ABI := armeabi armeabi-v7a
APP_ABI :=
ifneq ($(filter x86,$(OSMAND_ARCHITECTURES_SET)),)
APP_ABI += x86
endif
ifneq ($(filter mips,$(OSMAND_ARCHITECTURES_SET)),)
APP_ABI += mips
endif
ifneq ($(filter arm,$(OSMAND_ARCHITECTURES_SET)),)
APP_ABI += armeabi armeabi-v7a
OSMAND_SKIP_NEON_SUPPORT := false
OSMAND_FORCE_NEON_SUPPORT := false
else
ifdef OSMAND_ARMv5_ONLY
APP_ABI := armeabi
ifneq ($(filter armv7,$(OSMAND_ARCHITECTURES_SET)),)
APP_ABI += armeabi-v7a
ifeq ($(filter armv7-neon,$(OSMAND_ARCHITECTURES_SET)),)
OSMAND_SKIP_NEON_SUPPORT := true
endif
OSMAND_FORCE_NEON_SUPPORT := false
endif
ifneq ($(filter armv7-neon,$(OSMAND_ARCHITECTURES_SET)),)
APP_ABI += armeabi-v7a
OSMAND_SKIP_NEON_SUPPORT := false
ifeq ($(filter armv7,$(OSMAND_ARCHITECTURES_SET)),)
OSMAND_FORCE_NEON_SUPPORT := true
endif
endif
endif
ifdef OSMAND_ARMv7a_ONLY
APP_ABI := armeabi-v7a
endif
endif
ifndef OSMAND_DEBUG_NATIVE
# Force release compilation in release optimizations, even if application is debuggable by manifest
APP_OPTIM := release
# Force release compilation in release optimizations, even if application is debuggable by manifest
APP_OPTIM := release
endif