endif
endif
+# Check that the value of APP_PLATFORM corresponds to a known platform
+# If not, we're going to use the max supported platform value.
+#
_bad_platform := $(strip $(filter-out $(NDK_ALL_PLATFORMS),$(APP_PLATFORM)))
ifdef _bad_platform
- $(call __ndk_info,Application $(_name) targets platform '$(_bad_platform)')
- $(call __ndk_info,which is not supported by this release of the Android NDK)
- $(call __ndk_error,Aborting...)
+ $(call __ndk_info,Application $(_name) targets unknown platform '$(_bad_platform)')
+ APP_PLATFORM := android-$(NDK_MAX_PLATFORM_LEVEL)
+ $(call __ndk_info,Switching to $(APP_PLATFORM))
endif
# If APP_BUILD_SCRIPT is defined, check that the file exists.
$(eval include $(BUILD_SYSTEM)/add-platform.mk)\
)
+# we're going to find the maximum platform number of the form android-<number>
+# ignore others, which could correspond to special and experimental cases
+NDK_ALL_PLATFORM_LEVELS := $(filter android-%,$(NDK_ALL_PLATFORMS))
+NDK_ALL_PLATFORM_LEVELS := $(patsubst android-%,%,$(NDK_ALL_PLATFORM_LEVELS))
+$(call ndk_log,Found stable platform levels: $(NDK_ALL_PLATFORM_LEVELS))
+
+NDK_MAX_PLATFORM_LEVEL := 3
+$(foreach level,$(NDK_ALL_PLATFORM_LEVELS),\
+ $(eval NDK_MAX_PLATFORM_LEVEL := $$(call max,$$(NDK_MAX_PLATFORM_LEVEL),$$(level)))\
+)
+$(call ndk_log,Found max platform level: $(NDK_MAX_PLATFORM_LEVEL))
+
# ====================================================================
#
# Read all application configuration files