The Android Open Source Project | 88b6079 | 2009-03-03 19:28:42 -0800 | [diff] [blame] | 1 | # Selects a Java compiler. |
| 2 | # |
| 3 | # Inputs: |
Primiano Tucci | 994c84f | 2014-06-02 17:37:38 +0100 | [diff] [blame] | 4 | # CUSTOM_JAVA_COMPILER -- "eclipse", "openjdk". or nothing for the system |
The Android Open Source Project | 88b6079 | 2009-03-03 19:28:42 -0800 | [diff] [blame] | 5 | # default |
Brian Carlstrom | b6dcef8 | 2014-01-09 15:33:06 -0800 | [diff] [blame] | 6 | # ALTERNATE_JAVAC -- the alternate java compiler to use |
The Android Open Source Project | 88b6079 | 2009-03-03 19:28:42 -0800 | [diff] [blame] | 7 | # |
| 8 | # Outputs: |
| 9 | # COMMON_JAVAC -- Java compiler command with common arguments |
Ying Wang | ad69099 | 2013-09-20 17:11:43 -0700 | [diff] [blame] | 10 | # |
| 11 | |
Colin Cross | 79e2f73 | 2016-12-21 14:29:13 -0800 | [diff] [blame] | 12 | ifndef ANDROID_COMPILE_WITH_JACK |
| 13 | # Defines if compilation with jack is enabled by default. |
| 14 | ANDROID_COMPILE_WITH_JACK := true |
| 15 | endif |
| 16 | |
Neil Fuller | 2428bfe | 2016-01-15 19:41:26 -0800 | [diff] [blame] | 17 | common_jdk_flags := -Xmaxerrs 9999999 |
Ying Wang | ad69099 | 2013-09-20 17:11:43 -0700 | [diff] [blame] | 18 | |
Colin Cross | 1931750 | 2017-06-30 16:01:45 -0700 | [diff] [blame] | 19 | ANDROID_JAVA_HOME := prebuilts/jdk/jdk8/$(HOST_PREBUILT_TAG) |
| 20 | ANDROID_JAVA_TOOLCHAIN := $(ANDROID_JAVA_HOME)/bin |
| 21 | export JAVA_HOME := $(ANDROID_JAVA_HOME) |
| 22 | |
Brian Carlstrom | b6dcef8 | 2014-01-09 15:33:06 -0800 | [diff] [blame] | 23 | # Use the indexer wrapper to index the codebase instead of the javac compiler |
| 24 | ifeq ($(ALTERNATE_JAVAC),) |
Colin Cross | 1931750 | 2017-06-30 16:01:45 -0700 | [diff] [blame] | 25 | JAVACC := $(ANDROID_JAVA_TOOLCHAIN)/javac |
Brian Carlstrom | b6dcef8 | 2014-01-09 15:33:06 -0800 | [diff] [blame] | 26 | else |
| 27 | JAVACC := $(ALTERNATE_JAVAC) |
| 28 | endif |
The Android Open Source Project | 88b6079 | 2009-03-03 19:28:42 -0800 | [diff] [blame] | 29 | |
Colin Cross | 1931750 | 2017-06-30 16:01:45 -0700 | [diff] [blame] | 30 | JAVA := $(ANDROID_JAVA_TOOLCHAIN)/java |
| 31 | JAVADOC := $(ANDROID_JAVA_TOOLCHAIN)/javadoc |
| 32 | JAR := $(ANDROID_JAVA_TOOLCHAIN)/jar |
Colin Cross | 0851df8 | 2017-06-30 13:55:38 -0700 | [diff] [blame] | 33 | |
Primiano Tucci | 994c84f | 2014-06-02 17:37:38 +0100 | [diff] [blame] | 34 | # The actual compiler can be wrapped by setting the JAVAC_WRAPPER var. |
| 35 | ifdef JAVAC_WRAPPER |
| 36 | ifneq ($(JAVAC_WRAPPER),$(firstword $(JAVACC))) |
| 37 | JAVACC := $(JAVAC_WRAPPER) $(JAVACC) |
| 38 | endif |
| 39 | endif |
| 40 | |
Colin Cross | a12d38a | 2017-03-22 20:41:14 -0700 | [diff] [blame] | 41 | COMMON_JAVAC := $(JAVACC) -J-Xmx2048M $(common_jdk_flags) |
The Android Open Source Project | 88b6079 | 2009-03-03 19:28:42 -0800 | [diff] [blame] | 42 | |
Ying Wang | 447d696 | 2015-09-01 19:12:05 -0700 | [diff] [blame] | 43 | GLOBAL_JAVAC_DEBUG_FLAGS := -g |
| 44 | |
The Android Open Source Project | 88b6079 | 2009-03-03 19:28:42 -0800 | [diff] [blame] | 45 | HOST_JAVAC ?= $(COMMON_JAVAC) |
| 46 | TARGET_JAVAC ?= $(COMMON_JAVAC) |
Brian Carlstrom | b6dcef8 | 2014-01-09 15:33:06 -0800 | [diff] [blame] | 47 | |
The Android Open Source Project | 88b6079 | 2009-03-03 19:28:42 -0800 | [diff] [blame] | 48 | #$(info HOST_JAVAC=$(HOST_JAVAC)) |
| 49 | #$(info TARGET_JAVAC=$(TARGET_JAVAC)) |