Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5307b3c7 authored by Patrick Rohr's avatar Patrick Rohr
Browse files

soong: add os name to cc_genrule

While converting from gn to bp we stumbled upon genrules that have different cmd's for different targets. cc_genrule supports different architectures, but it does not give us any information about the OS types (some genrules are use for both host and android targets).

Change-Id: Ida531ad8b59d87a91d6faedbfe8fee9f75640bd1
Test: TH
parent dfc72a8c
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -48,6 +48,8 @@ type GenruleExtraProperties struct {
//
//	CC_NATIVE_BRIDGE  the name of the subdirectory that native bridge libraries are stored in if
//	                  the architecture has native bridge enabled, empty if it is disabled.
//
//	CC_OS             the name of the OS the command is being executed for.
func GenRuleFactory() android.Module {
	module := genrule.NewGenRule()

@@ -68,8 +70,9 @@ func GenRuleFactory() android.Module {
func genruleCmdModifier(ctx android.ModuleContext, cmd string) string {
	target := ctx.Target()
	arch := target.Arch.ArchType
	return fmt.Sprintf("CC_ARCH=%s CC_NATIVE_BRIDGE=%s CC_MULTILIB=%s && %s",
		arch.Name, target.NativeBridgeRelativePath, arch.Multilib, cmd)
	osName := target.Os.Name
	return fmt.Sprintf("CC_ARCH=%s CC_NATIVE_BRIDGE=%s CC_MULTILIB=%s CC_OS=%s && %s",
		arch.Name, target.NativeBridgeRelativePath, arch.Multilib, osName, cmd)
}

var _ android.ImageInterface = (*GenruleExtraProperties)(nil)