blob: 6d05e068da17c4fd75a8ef886ef464c161257baf [file] [log] [blame]
The Android Open Source Project88b60792009-03-03 19:28:42 -08001# Selects a Java compiler.
2#
3# Inputs:
Primiano Tucci994c84f2014-06-02 17:37:38 +01004# CUSTOM_JAVA_COMPILER -- "eclipse", "openjdk". or nothing for the system
The Android Open Source Project88b60792009-03-03 19:28:42 -08005# default
Brian Carlstromb6dcef82014-01-09 15:33:06 -08006# ALTERNATE_JAVAC -- the alternate java compiler to use
The Android Open Source Project88b60792009-03-03 19:28:42 -08007#
8# Outputs:
9# COMMON_JAVAC -- Java compiler command with common arguments
Ying Wangad690992013-09-20 17:11:43 -070010#
11
Colin Cross79e2f732016-12-21 14:29:13 -080012ifndef ANDROID_COMPILE_WITH_JACK
13# Defines if compilation with jack is enabled by default.
14ANDROID_COMPILE_WITH_JACK := true
15endif
16
Neil Fuller2428bfe2016-01-15 19:41:26 -080017common_jdk_flags := -Xmaxerrs 9999999
Ying Wangad690992013-09-20 17:11:43 -070018
Colin Crosse97e6932017-06-30 16:01:45 -070019ANDROID_JAVA_HOME := prebuilts/jdk/jdk8/$(HOST_PREBUILT_TAG)
20ANDROID_JAVA_TOOLCHAIN := $(ANDROID_JAVA_HOME)/bin
21export JAVA_HOME := $(ANDROID_JAVA_HOME)
22
Brian Carlstromb6dcef82014-01-09 15:33:06 -080023# Use the indexer wrapper to index the codebase instead of the javac compiler
24ifeq ($(ALTERNATE_JAVAC),)
Colin Crosse97e6932017-06-30 16:01:45 -070025JAVACC := $(ANDROID_JAVA_TOOLCHAIN)/javac
Brian Carlstromb6dcef82014-01-09 15:33:06 -080026else
27JAVACC := $(ALTERNATE_JAVAC)
28endif
The Android Open Source Project88b60792009-03-03 19:28:42 -080029
Colin Crosse97e6932017-06-30 16:01:45 -070030JAVA := $(ANDROID_JAVA_TOOLCHAIN)/java
31JAVADOC := $(ANDROID_JAVA_TOOLCHAIN)/javadoc
32JAR := $(ANDROID_JAVA_TOOLCHAIN)/jar
Colin Cross0851df82017-06-30 13:55:38 -070033
Primiano Tucci994c84f2014-06-02 17:37:38 +010034# The actual compiler can be wrapped by setting the JAVAC_WRAPPER var.
35ifdef JAVAC_WRAPPER
36 ifneq ($(JAVAC_WRAPPER),$(firstword $(JAVACC)))
37 JAVACC := $(JAVAC_WRAPPER) $(JAVACC)
38 endif
39endif
40
Colin Crossa12d38a2017-03-22 20:41:14 -070041COMMON_JAVAC := $(JAVACC) -J-Xmx2048M $(common_jdk_flags)
The Android Open Source Project88b60792009-03-03 19:28:42 -080042
Ying Wang447d6962015-09-01 19:12:05 -070043GLOBAL_JAVAC_DEBUG_FLAGS := -g
44
The Android Open Source Project88b60792009-03-03 19:28:42 -080045HOST_JAVAC ?= $(COMMON_JAVAC)
46TARGET_JAVAC ?= $(COMMON_JAVAC)
Brian Carlstromb6dcef82014-01-09 15:33:06 -080047
The Android Open Source Project88b60792009-03-03 19:28:42 -080048#$(info HOST_JAVAC=$(HOST_JAVAC))
49#$(info TARGET_JAVAC=$(TARGET_JAVAC))