From a60ead85fc2819f9bfa52aae7393cdca56137991 Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Mon, 2 Oct 2017 18:10:21 -0700 Subject: [PATCH] Make java_library_static uninstallable by default Static libraries are not dexed and are not installable on a device. Test: m -j checkbuild Change-Id: Iea01df381e6c8cf2439fdb87200895db6aac99e2 --- java/java.go | 25 +++++++++++++++---------- java/java_test.go | 2 +- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/java/java.go b/java/java.go index 93ab54752..1ca392831 100644 --- a/java/java.go +++ b/java/java.go @@ -35,8 +35,8 @@ import ( func init() { android.RegisterModuleType("java_defaults", defaultsFactory) - android.RegisterModuleType("java_library", LibraryFactory) - android.RegisterModuleType("java_library_static", LibraryFactory) + android.RegisterModuleType("java_library", LibraryFactory(true)) + android.RegisterModuleType("java_library_static", LibraryFactory(false)) android.RegisterModuleType("java_library_host", LibraryHostFactory) android.RegisterModuleType("java_binary", BinaryFactory) android.RegisterModuleType("java_binary_host", BinaryHostFactory) @@ -605,17 +605,22 @@ func (j *Library) DepsMutator(ctx android.BottomUpMutatorContext) { j.deps(ctx) } -func LibraryFactory() android.Module { - module := &Library{} +func LibraryFactory(installable bool) func() android.Module { + return func() android.Module { + module := &Library{} - module.deviceProperties.Dex = true + if !installable { + module.properties.Installable = proptools.BoolPtr(false) + } + module.deviceProperties.Dex = true - module.AddProperties( - &module.Module.properties, - &module.Module.deviceProperties) + module.AddProperties( + &module.Module.properties, + &module.Module.deviceProperties) - InitJavaModule(module, android.HostAndDeviceSupported) - return module + InitJavaModule(module, android.HostAndDeviceSupported) + return module + } } func LibraryHostFactory() android.Module { diff --git a/java/java_test.go b/java/java_test.go index 3b73fddd5..ffa3e2b17 100644 --- a/java/java_test.go +++ b/java/java_test.go @@ -56,7 +56,7 @@ func testJava(t *testing.T, bp string) *android.TestContext { ctx := android.NewTestArchContext() ctx.RegisterModuleType("android_app", android.ModuleFactoryAdaptor(AndroidAppFactory)) - ctx.RegisterModuleType("java_library", android.ModuleFactoryAdaptor(LibraryFactory)) + ctx.RegisterModuleType("java_library", android.ModuleFactoryAdaptor(LibraryFactory(true))) ctx.RegisterModuleType("java_library_host", android.ModuleFactoryAdaptor(LibraryHostFactory)) ctx.RegisterModuleType("java_import", android.ModuleFactoryAdaptor(ImportFactory)) ctx.RegisterModuleType("java_defaults", android.ModuleFactoryAdaptor(defaultsFactory))