Move java module installation into Soong am: 24cc4be60b am: e2d3d87fcd am: 865a62d8ca

Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1880650

Change-Id: Idddd29c5fe84c8496ed5b8ce2c908b8c32f95880
This commit is contained in:
Colin Cross 2021-11-10 17:52:42 +00:00 committed by Automerger Merge Worker
commit 29c7bdd685
4 changed files with 24 additions and 5 deletions

View file

@ -594,11 +594,17 @@ func (c *config) HostJNIToolPath(ctx PathContext, lib string) Path {
func (c *config) HostJavaToolPath(ctx PathContext, tool string) Path {
path := pathForInstall(ctx, ctx.Config().BuildOS, ctx.Config().BuildArch, "framework", false, tool)
if ctx.Config().KatiEnabled() {
path = path.ToMakePath()
}
return path
}
func (c *config) HostJavaBinToolPath(ctx PathContext, tool string) Path {
path := pathForInstall(ctx, ctx.Config().BuildOS, ctx.Config().BuildArch, "bin", false, tool)
if ctx.Config().KatiEnabled() {
path = path.ToMakePath()
}
return path
}

View file

@ -285,11 +285,6 @@ func (binary *Binary) AndroidMkEntries() []android.AndroidMkEntries {
}}
} else {
outputFile := binary.wrapperFile
// Have Make installation trigger Soong installation by using Soong's install path as
// the output file.
if binary.Host() {
outputFile = binary.binaryFile
}
return []android.AndroidMkEntries{android.AndroidMkEntries{
Class: "EXECUTABLES",

View file

@ -108,6 +108,8 @@ func (a *AndroidAppImport) IsInstallable() bool {
return true
}
func (a *AndroidAppImport) InstallBypassMake() bool { return true }
// Updates properties with variant-specific values.
func (a *AndroidAppImport) processVariants(ctx android.LoadHookContext) {
config := ctx.Config()

View file

@ -265,6 +265,8 @@ func (j *Module) XrefJavaFiles() android.Paths {
return j.kytheFiles
}
func (j *Module) InstallBypassMake() bool { return true }
type dependencyTag struct {
blueprint.BaseDependencyTag
name string
@ -856,6 +858,20 @@ type JavaTestImport struct {
dexJarFile android.Path
}
func (j *Test) InstallInTestcases() bool {
// Host java tests install into $(HOST_OUT_JAVA_LIBRARIES), and then are copied into
// testcases by base_rules.mk.
return !j.Host()
}
func (j *TestHelperLibrary) InstallInTestcases() bool {
return true
}
func (j *JavaTestImport) InstallInTestcases() bool {
return true
}
func (j *TestHost) DepsMutator(ctx android.BottomUpMutatorContext) {
if len(j.testHostProperties.Data_native_bins) > 0 {
for _, target := range ctx.MultiTargets() {