blob: 835ee82709838c744abae6601386808807c18a90 [file] [log] [blame]
The Android Open Source Project88b60792009-03-03 19:28:42 -08001# Selects a Java compiler.
2#
3# Inputs:
Colin Cross2c692772017-08-09 16:24:02 -07004# OVERRIDE_ANDROID_JAVA_HOME -- alternate location to use for jdk
The Android Open Source Project88b60792009-03-03 19:28:42 -08005#
6# Outputs:
Colin Cross2c692772017-08-09 16:24:02 -07007# ANDROID_JAVA_HOME -- Directory that contains JDK
8# ANDROID_JAVA_TOOLCHAIN -- Directory that contains javac and other java tools
Ying Wangad690992013-09-20 17:11:43 -07009#
10
Colin Cross79e2f732016-12-21 14:29:13 -080011ifndef ANDROID_COMPILE_WITH_JACK
Colin Cross75b50422017-07-27 12:34:34 -070012 # TODO(b/64113890, b/35788202): remove PRODUCT_COMPILE_WITH_JACK
13 ifdef PRODUCT_COMPILE_WITH_JACK
14 ANDROID_COMPILE_WITH_JACK := $(PRODUCT_COMPILE_WITH_JACK)
15 else
16 # TODO(b/62038127): remove TARGET_BUILD_APPS check
17 ifdef TARGET_BUILD_APPS
18 ANDROID_COMPILE_WITH_JACK := true
19 else
20 ANDROID_COMPILE_WITH_JACK := false
21 endif
22 endif
Colin Cross79e2f732016-12-21 14:29:13 -080023endif
24
Tobias Thierer1b53ea02017-07-26 13:59:39 +010025ifeq ($(OVERRIDE_ANDROID_JAVA_HOME),)
Colin Crosse97e6932017-06-30 16:01:45 -070026ANDROID_JAVA_HOME := prebuilts/jdk/jdk8/$(HOST_PREBUILT_TAG)
Tobias Thierer1b53ea02017-07-26 13:59:39 +010027else
28# Use this build toolchain instead of the bundled one.
29ANDROID_JAVA_HOME := $(OVERRIDE_ANDROID_JAVA_HOME)
30endif
Colin Crosse97e6932017-06-30 16:01:45 -070031ANDROID_JAVA_TOOLCHAIN := $(ANDROID_JAVA_HOME)/bin
Colin Cross3a1544a2017-07-24 19:25:17 -070032export JAVA_HOME := $(abspath $(ANDROID_JAVA_HOME))
Colin Crosse97e6932017-06-30 16:01:45 -070033
Colin Cross2c692772017-08-09 16:24:02 -070034# TODO(ccross): remove this, it is needed for now because it is used by
35# config.mk before makevars from soong are loaded
Colin Crosse97e6932017-06-30 16:01:45 -070036JAVA := $(ANDROID_JAVA_TOOLCHAIN)/java