diff options
Diffstat (limited to 'java/config/config.go')
-rw-r--r-- | java/config/config.go | 46 |
1 files changed, 33 insertions, 13 deletions
diff --git a/java/config/config.go b/java/config/config.go index 262c53196..95b841fa7 100644 --- a/java/config/config.go +++ b/java/config/config.go @@ -26,7 +26,8 @@ import ( ) var ( - pctx = android.NewPackageContext("android/soong/java/config") + pctx = android.NewPackageContext("android/soong/java/config") + exportedVars = android.NewExportedVariables(pctx) LegacyCorePlatformBootclasspathLibraries = []string{"legacy.core.platform.api.stubs", "core-lambda-stubs"} LegacyCorePlatformSystemModules = "legacy-core-platform-api-stubs-system-modules" @@ -53,25 +54,40 @@ var ( } ) -const ( - JavaVmFlags = `-XX:OnError="cat hs_err_pid%p.log" -XX:CICompilerCount=6 -XX:+UseDynamicNumberOfGCThreads` - JavacVmFlags = `-J-XX:OnError="cat hs_err_pid%p.log" -J-XX:CICompilerCount=6 -J-XX:+UseDynamicNumberOfGCThreads -J-XX:+TieredCompilation -J-XX:TieredStopAtLevel=1` +var ( + JavacVmFlags = strings.Join(javacVmFlagsList, " ") + javaVmFlagsList = []string{ + `-XX:OnError="cat hs_err_pid%p.log"`, + "-XX:CICompilerCount=6", + "-XX:+UseDynamicNumberOfGCThreads", + } + javacVmFlagsList = []string{ + `-J-XX:OnError="cat hs_err_pid%p.log"`, + "-J-XX:CICompilerCount=6", + "-J-XX:+UseDynamicNumberOfGCThreads", + "-J-XX:+TieredCompilation", + "-J-XX:TieredStopAtLevel=1", + } ) func init() { pctx.Import("github.com/google/blueprint/bootstrap") - pctx.StaticVariable("JavacHeapSize", "2048M") - pctx.StaticVariable("JavacHeapFlags", "-J-Xmx${JavacHeapSize}") + exportedVars.ExportStringStaticVariable("JavacHeapSize", "2048M") + exportedVars.ExportStringStaticVariable("JavacHeapFlags", "-J-Xmx${JavacHeapSize}") // ErrorProne can use significantly more memory than javac alone, give it a higher heap // size (b/221480398). - pctx.StaticVariable("ErrorProneHeapSize", "4096M") - pctx.StaticVariable("ErrorProneHeapFlags", "-J-Xmx${ErrorProneHeapSize}") + exportedVars.ExportStringStaticVariable("ErrorProneHeapSize", "4096M") + exportedVars.ExportStringStaticVariable("ErrorProneHeapFlags", "-J-Xmx${ErrorProneHeapSize}") - pctx.StaticVariable("DexFlags", "-JXX:OnError='cat hs_err_pid%p.log' -JXX:CICompilerCount=6 -JXX:+UseDynamicNumberOfGCThreads") + exportedVars.ExportStringListStaticVariable("DexFlags", []string{ + `-JXX:OnError="cat hs_err_pid%p.log"`, + "-JXX:CICompilerCount=6", + "-JXX:+UseDynamicNumberOfGCThreads", + }) - pctx.StaticVariable("CommonJdkFlags", strings.Join([]string{ + exportedVars.ExportStringListStaticVariable("CommonJdkFlags", []string{ `-Xmaxerrs 9999999`, `-encoding UTF-8`, `-sourcepath ""`, @@ -85,10 +101,10 @@ func init() { // b/65004097: prevent using java.lang.invoke.StringConcatFactory when using -target 1.9 `-XDstringConcat=inline`, - }, " ")) + }) - pctx.StaticVariable("JavaVmFlags", JavaVmFlags) - pctx.StaticVariable("JavacVmFlags", JavacVmFlags) + exportedVars.ExportStringListStaticVariable("JavaVmFlags", javaVmFlagsList) + exportedVars.ExportStringListStaticVariable("JavacVmFlags", javacVmFlagsList) pctx.VariableConfigMethod("hostPrebuiltTag", android.Config.PrebuiltOS) @@ -184,6 +200,10 @@ func init() { hostJNIToolVariableWithSdkToolsPrebuilt("SignapkJniLibrary", "libconscrypt_openjdk_jni") } +func BazelJavaToolchainVars(config android.Config) string { + return android.BazelToolchainVars(config, exportedVars) +} + func hostBinToolVariableWithSdkToolsPrebuilt(name, tool string) { pctx.VariableFunc(name, func(ctx android.PackageVarContext) string { if ctx.Config().AlwaysUsePrebuiltSdks() { |