diff options
author | Joe Onorato <joeo@google.com> | 2017-11-18 18:23:14 -0800 |
---|---|---|
committer | Joe Onorato <joeo@google.com> | 2017-12-15 08:40:27 -0800 |
commit | 09e94ab074c2584f91b92ec18c2134ca04e72b53 (patch) | |
tree | b6b3d8144206a004619650c4715d9e054c50e994 /java | |
parent | bf606c198b83696da1ba4a73f1d2daadaf08e802 (diff) | |
download | android_build_soong-09e94ab074c2584f91b92ec18c2134ca04e72b53.tar.gz android_build_soong-09e94ab074c2584f91b92ec18c2134ca04e72b53.tar.bz2 android_build_soong-09e94ab074c2584f91b92ec18c2134ca04e72b53.zip |
When compiling with the lite protobuf option, pass the option to aprotoc to force the lite runtime.
Test: make
Merged-In: I450f89d144d496a6ddfccc6a6a5a679a05809595
Change-Id: I450f89d144d496a6ddfccc6a6a5a679a05809595
Diffstat (limited to 'java')
-rw-r--r-- | java/builder.go | 5 | ||||
-rw-r--r-- | java/gen.go | 2 | ||||
-rw-r--r-- | java/proto.go | 25 |
3 files changed, 18 insertions, 14 deletions
diff --git a/java/builder.go b/java/builder.go index 10dfe06c..48fba230 100644 --- a/java/builder.go +++ b/java/builder.go @@ -200,8 +200,9 @@ type javaBuilderFlags struct { kotlincFlags string kotlincClasspath classpath - protoFlags []string - protoOutFlag string + protoFlags []string + protoOutTypeFlag string // The flag itself: --java_out + protoOutParams string // Parameters to that flag: --java_out=$protoOutParams:$outDir } func TransformKotlinToClasses(ctx android.ModuleContext, outputFile android.WritablePath, diff --git a/java/gen.go b/java/gen.go index 7a0dcac5..4893e889 100644 --- a/java/gen.go +++ b/java/gen.go @@ -107,7 +107,7 @@ func (j *Module) genSources(ctx android.ModuleContext, srcFiles android.Paths, if len(protoFiles) > 0 { protoSrcJar := android.PathForModuleGen(ctx, "proto.srcjar") genProto(ctx, protoSrcJar, protoFiles, - flags.protoFlags, flags.protoOutFlag, "") + flags.protoFlags, flags.protoOutTypeFlag, flags.protoOutParams) outSrcFiles = append(outSrcFiles, protoSrcJar) } diff --git a/java/proto.go b/java/proto.go index 17f02a3b..428413f4 100644 --- a/java/proto.go +++ b/java/proto.go @@ -31,17 +31,17 @@ var ( proto = pctx.AndroidStaticRule("protoc", blueprint.RuleParams{ Command: `rm -rf $outDir && mkdir -p $outDir && ` + - `$protocCmd $protoOut=$protoOutFlags:$outDir $protoFlags $in && ` + + `$protocCmd $protoOut=$protoOutParams:$outDir $protoFlags $in && ` + `${config.SoongZipCmd} -jar -o $out -C $outDir -D $outDir`, CommandDeps: []string{ "$protocCmd", "${config.SoongZipCmd}", }, - }, "protoFlags", "protoOut", "protoOutFlags", "outDir") + }, "protoFlags", "protoOut", "protoOutParams", "outDir") ) func genProto(ctx android.ModuleContext, outputSrcJar android.WritablePath, - protoFiles android.Paths, protoFlags []string, protoOut, protoOutFlags string) { + protoFiles android.Paths, protoFlags []string, protoOut, protoOutParams string) { ctx.Build(pctx, android.BuildParams{ Rule: proto, @@ -49,10 +49,10 @@ func genProto(ctx android.ModuleContext, outputSrcJar android.WritablePath, Output: outputSrcJar, Inputs: protoFiles, Args: map[string]string{ - "outDir": android.ProtoDir(ctx).String(), - "protoOut": protoOut, - "protoOutFlags": protoOutFlags, - "protoFlags": strings.Join(protoFlags, " "), + "outDir": android.ProtoDir(ctx).String(), + "protoOut": protoOut, + "protoOutParams": protoOutParams, + "protoFlags": strings.Join(protoFlags, " "), }, }) } @@ -80,11 +80,14 @@ func protoDeps(ctx android.BottomUpMutatorContext, p *android.ProtoProperties) { func protoFlags(ctx android.ModuleContext, p *android.ProtoProperties, flags javaBuilderFlags) javaBuilderFlags { switch proptools.String(p.Proto.Type) { case "micro": - flags.protoOutFlag = "--javamicro_out" + flags.protoOutTypeFlag = "--javamicro_out" case "nano": - flags.protoOutFlag = "--javanano_out" - case "lite", "full", "": - flags.protoOutFlag = "--java_out" + flags.protoOutTypeFlag = "--javanano_out" + case "lite": + flags.protoOutTypeFlag = "--java_out" + flags.protoOutParams = "lite" + case "full", "": + flags.protoOutTypeFlag = "--java_out" default: ctx.PropertyErrorf("proto.type", "unknown proto type %q", proptools.String(p.Proto.Type)) |