Add host_linux target properties
Add host_linux to the target properties, which will apply to linux_glibc, linux_bionic or linux_musl. This will eventually undo the hack that makes the linux_glibc properties apply to linux_musl. Bug: 223257095 Test: TestArchProperties Change-Id: Iccf51ed13c363ce1da04333a277fa49c33d45b9a
This commit is contained in:
@@ -909,6 +909,7 @@ func createArchPropTypeDesc(props reflect.Type) []archPropTypeDesc {
|
|||||||
"Glibc",
|
"Glibc",
|
||||||
"Musl",
|
"Musl",
|
||||||
"Linux",
|
"Linux",
|
||||||
|
"Host_linux",
|
||||||
"Not_windows",
|
"Not_windows",
|
||||||
"Arm_on_x86",
|
"Arm_on_x86",
|
||||||
"Arm_on_x86_64",
|
"Arm_on_x86_64",
|
||||||
@@ -930,6 +931,12 @@ func createArchPropTypeDesc(props reflect.Type) []archPropTypeDesc {
|
|||||||
targets = append(targets, target)
|
targets = append(targets, target)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if os.Linux() && os.Class == Host {
|
||||||
|
target := "Host_linux_" + archType.Name
|
||||||
|
if !InList(target, targets) {
|
||||||
|
targets = append(targets, target)
|
||||||
|
}
|
||||||
|
}
|
||||||
if os.Bionic() {
|
if os.Bionic() {
|
||||||
target := "Bionic_" + archType.Name
|
target := "Bionic_" + archType.Name
|
||||||
if !InList(target, targets) {
|
if !InList(target, targets) {
|
||||||
@@ -1162,6 +1169,14 @@ func (m *ModuleBase) setOSProperties(ctx BottomUpMutatorContext) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if os.Linux() && os.Class == Host {
|
||||||
|
field := "Host_linux"
|
||||||
|
prefix := "target.host_linux"
|
||||||
|
if linuxProperties, ok := getChildPropertyStruct(ctx, targetProp, field, prefix); ok {
|
||||||
|
mergePropertyStruct(ctx, genProps, linuxProperties)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if os.Bionic() {
|
if os.Bionic() {
|
||||||
field := "Bionic"
|
field := "Bionic"
|
||||||
prefix := "target.bionic"
|
prefix := "target.bionic"
|
||||||
@@ -2127,6 +2142,7 @@ func (m *ModuleBase) GetArchVariantProperties(ctx ArchVariantContext, propertySe
|
|||||||
linuxStructs := getTargetStructs(ctx, archProperties, "Linux")
|
linuxStructs := getTargetStructs(ctx, archProperties, "Linux")
|
||||||
bionicStructs := getTargetStructs(ctx, archProperties, "Bionic")
|
bionicStructs := getTargetStructs(ctx, archProperties, "Bionic")
|
||||||
hostStructs := getTargetStructs(ctx, archProperties, "Host")
|
hostStructs := getTargetStructs(ctx, archProperties, "Host")
|
||||||
|
hostLinuxStructs := getTargetStructs(ctx, archProperties, "Host_linux")
|
||||||
hostNotWindowsStructs := getTargetStructs(ctx, archProperties, "Not_windows")
|
hostNotWindowsStructs := getTargetStructs(ctx, archProperties, "Not_windows")
|
||||||
|
|
||||||
// For android, linux, ...
|
// For android, linux, ...
|
||||||
@@ -2147,6 +2163,9 @@ func (m *ModuleBase) GetArchVariantProperties(ctx ArchVariantContext, propertySe
|
|||||||
if os.Bionic() {
|
if os.Bionic() {
|
||||||
osStructs = append(osStructs, bionicStructs...)
|
osStructs = append(osStructs, bionicStructs...)
|
||||||
}
|
}
|
||||||
|
if os.Linux() && os.Class == Host {
|
||||||
|
osStructs = append(osStructs, hostLinuxStructs...)
|
||||||
|
}
|
||||||
|
|
||||||
if os == LinuxMusl {
|
if os == LinuxMusl {
|
||||||
osStructs = append(osStructs, getTargetStructs(ctx, archProperties, "Musl")...)
|
osStructs = append(osStructs, getTargetStructs(ctx, archProperties, "Musl")...)
|
||||||
|
@@ -510,6 +510,7 @@ func TestArchProperties(t *testing.T) {
|
|||||||
musl: { a: ["musl"] },
|
musl: { a: ["musl"] },
|
||||||
linux_bionic: { a: ["linux_bionic"] },
|
linux_bionic: { a: ["linux_bionic"] },
|
||||||
linux: { a: ["linux"] },
|
linux: { a: ["linux"] },
|
||||||
|
host_linux: { a: ["host_linux"] },
|
||||||
linux_glibc: { a: ["linux_glibc"] },
|
linux_glibc: { a: ["linux_glibc"] },
|
||||||
linux_musl: { a: ["linux_musl"] },
|
linux_musl: { a: ["linux_musl"] },
|
||||||
windows: { a: ["windows"], enabled: true },
|
windows: { a: ["windows"], enabled: true },
|
||||||
@@ -566,12 +567,12 @@ func TestArchProperties(t *testing.T) {
|
|||||||
{
|
{
|
||||||
module: "foo",
|
module: "foo",
|
||||||
variant: "linux_glibc_x86_64",
|
variant: "linux_glibc_x86_64",
|
||||||
property: []string{"root", "host", "linux", "glibc", "linux_glibc", "not_windows", "x86_64", "lib64", "linux_x86_64", "linux_glibc_x86_64"},
|
property: []string{"root", "host", "linux", "host_linux", "glibc", "linux_glibc", "not_windows", "x86_64", "lib64", "linux_x86_64", "linux_glibc_x86_64"},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
module: "foo",
|
module: "foo",
|
||||||
variant: "linux_glibc_x86",
|
variant: "linux_glibc_x86",
|
||||||
property: []string{"root", "host", "linux", "glibc", "linux_glibc", "not_windows", "x86", "lib32", "linux_x86", "linux_glibc_x86"},
|
property: []string{"root", "host", "linux", "host_linux", "glibc", "linux_glibc", "not_windows", "x86", "lib32", "linux_x86", "linux_glibc_x86"},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -605,12 +606,12 @@ func TestArchProperties(t *testing.T) {
|
|||||||
{
|
{
|
||||||
module: "foo",
|
module: "foo",
|
||||||
variant: "linux_musl_x86_64",
|
variant: "linux_musl_x86_64",
|
||||||
property: []string{"root", "host", "linux", "musl", "linux_glibc", "linux_musl", "not_windows", "x86_64", "lib64", "linux_x86_64", "linux_musl_x86_64", "linux_glibc_x86_64"},
|
property: []string{"root", "host", "linux", "host_linux", "musl", "linux_glibc", "linux_musl", "not_windows", "x86_64", "lib64", "linux_x86_64", "linux_musl_x86_64", "linux_glibc_x86_64"},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
module: "foo",
|
module: "foo",
|
||||||
variant: "linux_musl_x86",
|
variant: "linux_musl_x86",
|
||||||
property: []string{"root", "host", "linux", "musl", "linux_glibc", "linux_musl", "not_windows", "x86", "lib32", "linux_x86", "linux_musl_x86", "linux_glibc_x86"},
|
property: []string{"root", "host", "linux", "host_linux", "musl", "linux_glibc", "linux_musl", "not_windows", "x86", "lib32", "linux_x86", "linux_musl_x86", "linux_glibc_x86"},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
Reference in New Issue
Block a user