From 4f26bc0263fb15d8edabe938337e3cfad6ee6862 Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Wed, 6 Sep 2017 12:52:16 -0700 Subject: [PATCH] Strip javac 9 module arguments Strip module-related javac 9 command line arguments that don't apply to javac 8. Test: m -j checkbuild Change-Id: If44a3d9d7227e923117dc75bbabbddb41026b25d --- java/config/config.go | 14 ++++++++++++++ java/java.go | 3 +++ 2 files changed, 17 insertions(+) diff --git a/java/config/config.go b/java/config/config.go index cfedf3df8..5773164a1 100644 --- a/java/config/config.go +++ b/java/config/config.go @@ -70,3 +70,17 @@ func init() { return "", nil }) } + +func StripJavac9Flags(flags []string) []string { + var ret []string + for _, f := range flags { + switch { + case strings.HasPrefix(f, "-J--add-modules="): + // drop + default: + ret = append(ret, f) + } + } + + return ret +} diff --git a/java/java.go b/java/java.go index b4ed20765..2298acc37 100644 --- a/java/java.go +++ b/java/java.go @@ -301,6 +301,9 @@ func (j *Module) compile(ctx android.ModuleContext) { var flags javaBuilderFlags javacFlags := j.properties.Javacflags + if ctx.AConfig().Getenv("EXPERIMENTAL_USE_OPENJDK9") == "" { + javacFlags = config.StripJavac9Flags(javacFlags) + } if len(deps.annotationProcessors) > 0 { javacFlags = append(javacFlags,