aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorColin Cross <ccross@android.com>2018-06-19 22:49:39 -0700
committerColin Cross <ccross@android.com>2018-06-21 12:25:50 -0700
commit997262f506ebb07e069d8a62923036b638f0c331 (patch)
tree67003de033ce03db95eab61871974aa82f715f07
parent6654810f3762b6c683c421749b18409725abf586 (diff)
downloadbuild_soong-997262f506ebb07e069d8a62923036b638f0c331.tar.gz
build_soong-997262f506ebb07e069d8a62923036b638f0c331.tar.bz2
build_soong-997262f506ebb07e069d8a62923036b638f0c331.zip
Always use OpenJDK9 for building
Remove support for compiling with javac from OpenJDK8. We still target 1.8 by default, and OpenJDK8 prebuilts are still required for the bootclasspath and running robolectric. Bug: 38418220 Test: m java Change-Id: I5686deb0ae4f9927192a039d08adc0117b2605dd
-rw-r--r--android/config.go21
-rw-r--r--java/config/makevars.go6
-rw-r--r--java/droiddoc.go19
-rw-r--r--ui/build/config.go6
4 files changed, 13 insertions, 39 deletions
diff --git a/android/config.go b/android/config.go
index b415443b..8330b3df 100644
--- a/android/config.go
+++ b/android/config.go
@@ -108,8 +108,7 @@ type config struct {
captureBuild bool // true for tests, saves build parameters for each module
ignoreEnvironment bool // true for tests, returns empty from all Getenv calls
- useOpenJDK9 bool // Use OpenJDK9, but possibly target 1.8
- targetOpenJDK9 bool // Use OpenJDK9 and target 1.9
+ targetOpenJDK9 bool // Target 1.9
stopBefore bootstrap.StopBefore
@@ -321,20 +320,13 @@ func NewConfig(srcDir, buildDir string) (Config, error) {
func (c *config) fromEnv() error {
switch c.Getenv("EXPERIMENTAL_USE_OPENJDK9") {
- case "":
- // Use OpenJDK9, but target 1.8
- c.useOpenJDK9 = true
- case "false":
- // Use OpenJDK8
- case "1.8":
- // Use OpenJDK9, but target 1.8
- c.useOpenJDK9 = true
+ case "", "1.8":
+ // Nothing, we always use OpenJDK9
case "true":
// Use OpenJDK9 and target 1.9
- c.useOpenJDK9 = true
c.targetOpenJDK9 = true
default:
- return fmt.Errorf(`Invalid value for EXPERIMENTAL_USE_OPENJDK9, should be "", "false", "1.8", or "true"`)
+ return fmt.Errorf(`Invalid value for EXPERIMENTAL_USE_OPENJDK9, should be "", "1.8", or "true"`)
}
return nil
@@ -633,11 +625,6 @@ func (c *config) RunErrorProne() bool {
return c.IsEnvTrue("RUN_ERROR_PRONE")
}
-// Returns true if OpenJDK9 prebuilts are being used
-func (c *config) UseOpenJDK9() bool {
- return c.useOpenJDK9
-}
-
// Returns true if -source 1.9 -target 1.9 is being passed to javac
func (c *config) TargetOpenJDK9() bool {
return c.targetOpenJDK9
diff --git a/java/config/makevars.go b/java/config/makevars.go
index 8dfd3986..d3788774 100644
--- a/java/config/makevars.go
+++ b/java/config/makevars.go
@@ -61,10 +61,8 @@ func makeVarsProvider(ctx android.MakeVarsContext) {
ctx.Strict("TARGET_JAVAC", "${JavacCmd} ${CommonJdkFlags}")
ctx.Strict("HOST_JAVAC", "${JavacCmd} ${CommonJdkFlags}")
- if ctx.Config().UseOpenJDK9() {
- ctx.Strict("JLINK", "${JlinkCmd}")
- ctx.Strict("JMOD", "${JmodCmd}")
- }
+ ctx.Strict("JLINK", "${JlinkCmd}")
+ ctx.Strict("JMOD", "${JmodCmd}")
ctx.Strict("SOONG_JAVAC_WRAPPER", "${SoongJavacWrapper}")
ctx.Strict("ZIPSYNC", "${ZipSyncCmd}")
diff --git a/java/droiddoc.go b/java/droiddoc.go
index 3b7ead50..9821bcf2 100644
--- a/java/droiddoc.go
+++ b/java/droiddoc.go
@@ -540,20 +540,13 @@ func (j *Javadoc) GenerateAndroidBuildActions(ctx android.ModuleContext) {
var bootClasspathArgs, classpathArgs string
javaVersion := getJavaVersion(ctx, String(j.properties.Java_version), String(j.properties.Sdk_version))
- if javaVersion == "1.9" || ctx.Config().UseOpenJDK9() {
- if len(deps.bootClasspath) > 0 {
- var systemModules classpath
- if deps.systemModules != nil {
- systemModules = append(systemModules, deps.systemModules)
- }
- bootClasspathArgs = systemModules.FormJavaSystemModulesPath("--system ", ctx.Device())
- bootClasspathArgs = bootClasspathArgs + " --patch-module java.base=."
- }
- } else {
- if len(deps.bootClasspath.Strings()) > 0 {
- // For OpenJDK 8 we can use -bootclasspath to define the core libraries code.
- bootClasspathArgs = deps.bootClasspath.FormJavaClassPath("-bootclasspath")
+ if len(deps.bootClasspath) > 0 {
+ var systemModules classpath
+ if deps.systemModules != nil {
+ systemModules = append(systemModules, deps.systemModules)
}
+ bootClasspathArgs = systemModules.FormJavaSystemModulesPath("--system ", ctx.Device())
+ bootClasspathArgs = bootClasspathArgs + " --patch-module java.base=."
}
if len(deps.classpath.Strings()) > 0 {
classpathArgs = "-classpath " + strings.Join(deps.classpath.Strings(), ":")
diff --git a/ui/build/config.go b/ui/build/config.go
index 5dcdf874..d0378ec0 100644
--- a/ui/build/config.go
+++ b/ui/build/config.go
@@ -164,11 +164,7 @@ func NewConfig(ctx Context, args ...string) Config {
if override, ok := ret.environ.Get("OVERRIDE_ANDROID_JAVA_HOME"); ok {
return override
}
- v, ok := ret.environ.Get("EXPERIMENTAL_USE_OPENJDK9")
- if !ok || v != "false" {
- return java9Home
- }
- return java8Home
+ return java9Home
}()
absJavaHome := absPath(ctx, javaHome)