diff --git a/java/sdk_library.go b/java/sdk_library.go index 72c5cfc27..5b65c0ca0 100644 --- a/java/sdk_library.go +++ b/java/sdk_library.go @@ -126,6 +126,9 @@ type sdkLibraryProperties struct { // If set to true, the path of dist files is apistubs/core. Defaults to false. Core_lib *bool + // don't create dist rules. + No_dist *bool `blueprint:"mutated"` + // TODO: determines whether to create HTML doc or not //Html_doc *bool } @@ -212,52 +215,54 @@ func (module *SdkLibrary) AndroidMk() android.AndroidMkData { android.WriteAndroidMkData(w, data) module.Library.AndroidMkHostDex(w, name, data) - // Create a phony module that installs the impl library, for the case when this lib is - // in PRODUCT_PACKAGES. - owner := module.ModuleBase.Owner() - if owner == "" { - if Bool(module.sdkLibraryProperties.Core_lib) { - owner = "core" - } else { - owner = "android" + if !Bool(module.sdkLibraryProperties.No_dist) { + // Create a phony module that installs the impl library, for the case when this lib is + // in PRODUCT_PACKAGES. + owner := module.ModuleBase.Owner() + if owner == "" { + if Bool(module.sdkLibraryProperties.Core_lib) { + owner = "core" + } else { + owner = "android" + } + } + // Create dist rules to install the stubs libs to the dist dir + if len(module.publicApiStubsPath) == 1 { + fmt.Fprintln(w, "$(call dist-for-goals,sdk win_sdk,"+ + module.publicApiStubsImplPath.Strings()[0]+ + ":"+path.Join("apistubs", owner, "public", + module.BaseModuleName()+".jar")+")") + } + if len(module.systemApiStubsPath) == 1 { + fmt.Fprintln(w, "$(call dist-for-goals,sdk win_sdk,"+ + module.systemApiStubsImplPath.Strings()[0]+ + ":"+path.Join("apistubs", owner, "system", + module.BaseModuleName()+".jar")+")") + } + if len(module.testApiStubsPath) == 1 { + fmt.Fprintln(w, "$(call dist-for-goals,sdk win_sdk,"+ + module.testApiStubsImplPath.Strings()[0]+ + ":"+path.Join("apistubs", owner, "test", + module.BaseModuleName()+".jar")+")") + } + if module.publicApiFilePath != nil { + fmt.Fprintln(w, "$(call dist-for-goals,sdk win_sdk,"+ + module.publicApiFilePath.String()+ + ":"+path.Join("apistubs", owner, "public", "api", + module.BaseModuleName()+".txt")+")") + } + if module.systemApiFilePath != nil { + fmt.Fprintln(w, "$(call dist-for-goals,sdk win_sdk,"+ + module.systemApiFilePath.String()+ + ":"+path.Join("apistubs", owner, "system", "api", + module.BaseModuleName()+".txt")+")") + } + if module.testApiFilePath != nil { + fmt.Fprintln(w, "$(call dist-for-goals,sdk win_sdk,"+ + module.testApiFilePath.String()+ + ":"+path.Join("apistubs", owner, "test", "api", + module.BaseModuleName()+".txt")+")") } - } - // Create dist rules to install the stubs libs to the dist dir - if len(module.publicApiStubsPath) == 1 { - fmt.Fprintln(w, "$(call dist-for-goals,sdk win_sdk,"+ - module.publicApiStubsImplPath.Strings()[0]+ - ":"+path.Join("apistubs", owner, "public", - module.BaseModuleName()+".jar")+")") - } - if len(module.systemApiStubsPath) == 1 { - fmt.Fprintln(w, "$(call dist-for-goals,sdk win_sdk,"+ - module.systemApiStubsImplPath.Strings()[0]+ - ":"+path.Join("apistubs", owner, "system", - module.BaseModuleName()+".jar")+")") - } - if len(module.testApiStubsPath) == 1 { - fmt.Fprintln(w, "$(call dist-for-goals,sdk win_sdk,"+ - module.testApiStubsImplPath.Strings()[0]+ - ":"+path.Join("apistubs", owner, "test", - module.BaseModuleName()+".jar")+")") - } - if module.publicApiFilePath != nil { - fmt.Fprintln(w, "$(call dist-for-goals,sdk win_sdk,"+ - module.publicApiFilePath.String()+ - ":"+path.Join("apistubs", owner, "public", "api", - module.BaseModuleName()+".txt")+")") - } - if module.systemApiFilePath != nil { - fmt.Fprintln(w, "$(call dist-for-goals,sdk win_sdk,"+ - module.systemApiFilePath.String()+ - ":"+path.Join("apistubs", owner, "system", "api", - module.BaseModuleName()+".txt")+")") - } - if module.testApiFilePath != nil { - fmt.Fprintln(w, "$(call dist-for-goals,sdk win_sdk,"+ - module.testApiFilePath.String()+ - ":"+path.Join("apistubs", owner, "test", "api", - module.BaseModuleName()+".txt")+")") } } return data @@ -641,6 +646,10 @@ func (module *SdkLibrary) SdkImplementationJars(ctx android.BaseContext, sdkVers } } +func (module *SdkLibrary) SetNoDist() { + module.sdkLibraryProperties.No_dist = proptools.BoolPtr(true) +} + var javaSdkLibrariesKey = android.NewOnceKey("javaSdkLibraries") func javaSdkLibraries(config android.Config) *[]string { diff --git a/sysprop/sysprop_library.go b/sysprop/sysprop_library.go index 0313ecd03..3f2709e29 100644 --- a/sysprop/sysprop_library.go +++ b/sysprop/sysprop_library.go @@ -72,6 +72,7 @@ func syspropLibraryFactory() android.Module { &m.syspropLibraryProperties, ) m.InitSdkLibraryProperties() + m.SetNoDist() android.InitAndroidMultiTargetsArchModule(m, android.DeviceSupported, "common") android.AddLoadHook(m, func(ctx android.LoadHookContext) { syspropLibraryHook(ctx, m) }) android.AddLoadHook(m, func(ctx android.LoadHookContext) { m.SdkLibrary.CreateInternalModules(ctx) })