Loading cc/library.go +1 −3 Original line number Diff line number Diff line Loading @@ -952,9 +952,7 @@ func (library *libraryDecorator) link(ctx ModuleContext, isVendor := ctx.useVndk() isOwnerPlatform := Bool(library.Properties.Sysprop.Platform) usePublic := isProduct || (isOwnerPlatform == isVendor) if usePublic { if !ctx.inRecovery() && (isProduct || (isOwnerPlatform == isVendor)) { dir = android.PathForModuleGen(ctx, "sysprop/public", "include").String() } } Loading cc/sysprop.go +2 −1 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ import ( ) type syspropLibraryInterface interface { BaseModuleName() string CcModuleName() string } Loading @@ -42,6 +43,6 @@ func SyspropMutator(mctx android.BottomUpMutatorContext) { syspropImplLibrariesLock.Lock() defer syspropImplLibrariesLock.Unlock() syspropImplLibraries[mctx.ModuleName()] = m.CcModuleName() syspropImplLibraries[m.BaseModuleName()] = m.CcModuleName() } } java/droiddoc.go +0 −3 Original line number Diff line number Diff line Loading @@ -471,9 +471,6 @@ func (j *Javadoc) genSources(ctx android.ModuleContext, srcFiles android.Paths, case ".aidl": javaFile := genAidl(ctx, srcFile, flags.aidlFlags+aidlIncludeFlags, flags.aidlDeps) outSrcFiles = append(outSrcFiles, javaFile) case ".sysprop": javaFile := genSysprop(ctx, srcFile) outSrcFiles = append(outSrcFiles, javaFile) case ".logtags": javaFile := genLogtags(ctx, srcFile) outSrcFiles = append(outSrcFiles, javaFile) Loading java/gen.go +27 −4 Original line number Diff line number Diff line Loading @@ -53,13 +53,13 @@ var ( sysprop = pctx.AndroidStaticRule("sysprop", blueprint.RuleParams{ Command: `rm -rf $out.tmp && mkdir -p $out.tmp && ` + `$syspropCmd --java-output-dir $out.tmp $in && ` + `$syspropCmd --scope $scope --java-output-dir $out.tmp $in && ` + `${config.SoongZipCmd} -jar -o $out -C $out.tmp -D $out.tmp && rm -rf $out.tmp`, CommandDeps: []string{ "$syspropCmd", "${config.SoongZipCmd}", }, }) }, "scope") ) func genAidl(ctx android.ModuleContext, aidlFile android.Path, aidlFlags string, deps android.Paths) android.Path { Loading Loading @@ -94,7 +94,7 @@ func genLogtags(ctx android.ModuleContext, logtagsFile android.Path) android.Pat return javaFile } func genSysprop(ctx android.ModuleContext, syspropFile android.Path) android.Path { func genSysprop(ctx android.ModuleContext, syspropFile android.Path, scope string) android.Path { srcJarFile := android.GenPathWithExt(ctx, "sysprop", syspropFile, "srcjar") ctx.Build(pctx, android.BuildParams{ Loading @@ -102,6 +102,9 @@ func genSysprop(ctx android.ModuleContext, syspropFile android.Path) android.Pat Description: "sysprop_java " + syspropFile.Rel(), Output: srcJarFile, Input: syspropFile, Args: map[string]string{ "scope": scope, }, }) return srcJarFile Loading Loading @@ -140,7 +143,27 @@ func (j *Module) genSources(ctx android.ModuleContext, srcFiles android.Paths, srcJarFile := genProto(ctx, srcFile, flags.proto) outSrcFiles = append(outSrcFiles, srcJarFile) case ".sysprop": srcJarFile := genSysprop(ctx, srcFile) // internal scope contains all properties // public scope only contains public properties // use public if the owner is different from client scope := "internal" if j.properties.Sysprop.Platform != nil { isProduct := ctx.ProductSpecific() isVendor := ctx.SocSpecific() isOwnerPlatform := Bool(j.properties.Sysprop.Platform) if isProduct { // product can't own any sysprop_library now, so product must use public scope scope = "public" } else if isVendor && !isOwnerPlatform { // vendor and odm can't use system's internal property. scope = "public" } // We don't care about clients under system. // They can't use sysprop_library owned by other partitions. } srcJarFile := genSysprop(ctx, srcFile, scope) outSrcFiles = append(outSrcFiles, srcJarFile) default: outSrcFiles = append(outSrcFiles, srcFile) Loading java/java.go +4 −1 Original line number Diff line number Diff line Loading @@ -183,6 +183,10 @@ type CompilerProperties struct { Output_params []string } Sysprop struct { Platform *bool } `blueprint:"mutated"` Instrument bool `blueprint:"mutated"` // List of files to include in the META-INF/services folder of the resulting jar. Loading Loading @@ -1017,7 +1021,6 @@ func (j *Module) collectBuilderFlags(ctx android.ModuleContext, deps deps) javaB } func (j *Module) compile(ctx android.ModuleContext, aaptSrcJar android.Path) { j.exportAidlIncludeDirs = android.PathsForModuleSrc(ctx, j.deviceProperties.Aidl.Export_include_dirs) deps := j.collectDeps(ctx) Loading Loading
cc/library.go +1 −3 Original line number Diff line number Diff line Loading @@ -952,9 +952,7 @@ func (library *libraryDecorator) link(ctx ModuleContext, isVendor := ctx.useVndk() isOwnerPlatform := Bool(library.Properties.Sysprop.Platform) usePublic := isProduct || (isOwnerPlatform == isVendor) if usePublic { if !ctx.inRecovery() && (isProduct || (isOwnerPlatform == isVendor)) { dir = android.PathForModuleGen(ctx, "sysprop/public", "include").String() } } Loading
cc/sysprop.go +2 −1 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ import ( ) type syspropLibraryInterface interface { BaseModuleName() string CcModuleName() string } Loading @@ -42,6 +43,6 @@ func SyspropMutator(mctx android.BottomUpMutatorContext) { syspropImplLibrariesLock.Lock() defer syspropImplLibrariesLock.Unlock() syspropImplLibraries[mctx.ModuleName()] = m.CcModuleName() syspropImplLibraries[m.BaseModuleName()] = m.CcModuleName() } }
java/droiddoc.go +0 −3 Original line number Diff line number Diff line Loading @@ -471,9 +471,6 @@ func (j *Javadoc) genSources(ctx android.ModuleContext, srcFiles android.Paths, case ".aidl": javaFile := genAidl(ctx, srcFile, flags.aidlFlags+aidlIncludeFlags, flags.aidlDeps) outSrcFiles = append(outSrcFiles, javaFile) case ".sysprop": javaFile := genSysprop(ctx, srcFile) outSrcFiles = append(outSrcFiles, javaFile) case ".logtags": javaFile := genLogtags(ctx, srcFile) outSrcFiles = append(outSrcFiles, javaFile) Loading
java/gen.go +27 −4 Original line number Diff line number Diff line Loading @@ -53,13 +53,13 @@ var ( sysprop = pctx.AndroidStaticRule("sysprop", blueprint.RuleParams{ Command: `rm -rf $out.tmp && mkdir -p $out.tmp && ` + `$syspropCmd --java-output-dir $out.tmp $in && ` + `$syspropCmd --scope $scope --java-output-dir $out.tmp $in && ` + `${config.SoongZipCmd} -jar -o $out -C $out.tmp -D $out.tmp && rm -rf $out.tmp`, CommandDeps: []string{ "$syspropCmd", "${config.SoongZipCmd}", }, }) }, "scope") ) func genAidl(ctx android.ModuleContext, aidlFile android.Path, aidlFlags string, deps android.Paths) android.Path { Loading Loading @@ -94,7 +94,7 @@ func genLogtags(ctx android.ModuleContext, logtagsFile android.Path) android.Pat return javaFile } func genSysprop(ctx android.ModuleContext, syspropFile android.Path) android.Path { func genSysprop(ctx android.ModuleContext, syspropFile android.Path, scope string) android.Path { srcJarFile := android.GenPathWithExt(ctx, "sysprop", syspropFile, "srcjar") ctx.Build(pctx, android.BuildParams{ Loading @@ -102,6 +102,9 @@ func genSysprop(ctx android.ModuleContext, syspropFile android.Path) android.Pat Description: "sysprop_java " + syspropFile.Rel(), Output: srcJarFile, Input: syspropFile, Args: map[string]string{ "scope": scope, }, }) return srcJarFile Loading Loading @@ -140,7 +143,27 @@ func (j *Module) genSources(ctx android.ModuleContext, srcFiles android.Paths, srcJarFile := genProto(ctx, srcFile, flags.proto) outSrcFiles = append(outSrcFiles, srcJarFile) case ".sysprop": srcJarFile := genSysprop(ctx, srcFile) // internal scope contains all properties // public scope only contains public properties // use public if the owner is different from client scope := "internal" if j.properties.Sysprop.Platform != nil { isProduct := ctx.ProductSpecific() isVendor := ctx.SocSpecific() isOwnerPlatform := Bool(j.properties.Sysprop.Platform) if isProduct { // product can't own any sysprop_library now, so product must use public scope scope = "public" } else if isVendor && !isOwnerPlatform { // vendor and odm can't use system's internal property. scope = "public" } // We don't care about clients under system. // They can't use sysprop_library owned by other partitions. } srcJarFile := genSysprop(ctx, srcFile, scope) outSrcFiles = append(outSrcFiles, srcJarFile) default: outSrcFiles = append(outSrcFiles, srcFile) Loading
java/java.go +4 −1 Original line number Diff line number Diff line Loading @@ -183,6 +183,10 @@ type CompilerProperties struct { Output_params []string } Sysprop struct { Platform *bool } `blueprint:"mutated"` Instrument bool `blueprint:"mutated"` // List of files to include in the META-INF/services folder of the resulting jar. Loading Loading @@ -1017,7 +1021,6 @@ func (j *Module) collectBuilderFlags(ctx android.ModuleContext, deps deps) javaB } func (j *Module) compile(ctx android.ModuleContext, aaptSrcJar android.Path) { j.exportAidlIncludeDirs = android.PathsForModuleSrc(ctx, j.deviceProperties.Aidl.Export_include_dirs) deps := j.collectDeps(ctx) Loading