diff --git a/core/clear_vars.mk b/core/clear_vars.mk index b64b53b65..0267321ca 100644 --- a/core/clear_vars.mk +++ b/core/clear_vars.mk @@ -340,6 +340,7 @@ LOCAL_CLANG_32:= LOCAL_CLANG_64:= LOCAL_INIT_RC_32:= LOCAL_INIT_RC_64:= +LOCAL_JAVA_LANGUAGE_VERSION:= # Trim MAKEFILE_LIST so that $(call my-dir) doesn't need to # iterate over thousands of entries every time. diff --git a/core/combo/javac.mk b/core/combo/javac.mk index 70dae1302..7f66ea83a 100644 --- a/core/combo/javac.mk +++ b/core/combo/javac.mk @@ -14,7 +14,7 @@ ifndef ANDROID_COMPILE_WITH_JACK ANDROID_COMPILE_WITH_JACK := true endif -common_jdk_flags := -source 1.7 -target 1.7 -Xmaxerrs 9999999 +common_jdk_flags := -Xmaxerrs 9999999 # Use the indexer wrapper to index the codebase instead of the javac compiler ifeq ($(ALTERNATE_JAVAC),) diff --git a/core/java_common.mk b/core/java_common.mk index aee31932b..34c67dc3b 100644 --- a/core/java_common.mk +++ b/core/java_common.mk @@ -1,5 +1,13 @@ # Common to host and target Java modules. +########################################################### +## Java version +########################################################### +ifeq (,$(LOCAL_JAVA_LANGUAGE_VERSION)) + LOCAL_JAVA_LANGUAGE_VERSION := 1.7 +endif +LOCAL_JAVACFLAGS += -source $(LOCAL_JAVA_LANGUAGE_VERSION) -target $(LOCAL_JAVA_LANGUAGE_VERSION) + ########################################################### ## .proto files: Compile proto files to .java ########################################################### @@ -265,6 +273,8 @@ ALL_MODULES.$(my_register_name).INTERMEDIATE_SOURCE_DIR := \ ifdef LOCAL_JACK_ENABLED ifdef need_compile_java +LOCAL_JACK_FLAGS += -D jack.java.source.version=$(LOCAL_JAVA_LANGUAGE_VERSION) + full_static_jack_libs := \ $(foreach lib,$(LOCAL_STATIC_JAVA_LIBRARIES), \ $(call intermediates-dir-for, \