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

Commit 2281a2b6 authored by Jan Altensen's avatar Jan Altensen Committed by Thomas Patry
Browse files

soong: allow overriding header files

Change-Id: Ia9d2210605c5927b529fbe9485b0e5abd079f487
(cherry picked from commit c2746714)
parent e17bda60
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -882,6 +882,10 @@ func (c *deviceConfig) DeviceKernelHeaderDirs() []string {
	return c.config.productVariables.DeviceKernelHeaders
}

func (c *deviceConfig) TargetSpecificHeaderPath() string {
        return String(c.config.productVariables.TargetSpecificHeaderPath)
}

func (c *deviceConfig) SpecificCameraParametersLibrary() string {
	return String(c.config.productVariables.Lineage.Specific_camera_parameter_library)
}
+2 −0
Original line number Diff line number Diff line
@@ -258,6 +258,8 @@ type productVariables struct {

	DeviceKernelHeaders []string `json:",omitempty"`

	TargetSpecificHeaderPath *string `json:",omitempty"`

	ExtraVndkVersions []string `json:",omitempty"`

	NamespacesToExport []string `json:",omitempty"`
+10 −0
Original line number Diff line number Diff line
@@ -368,6 +368,16 @@ func (library *libraryDecorator) linkerFlags(ctx ModuleContext, flags Flags) Fla
}

func (library *libraryDecorator) compilerFlags(ctx ModuleContext, flags Flags, deps PathDeps) Flags {
	additionalIncludeDirs := ctx.DeviceConfig().TargetSpecificHeaderPath()
	if len(additionalIncludeDirs) > 0 {
		// devices can have multiple paths in TARGET_SPECIFIC_HEADER_PATH
		// add -I in front of all of them
		if (strings.Contains(additionalIncludeDirs, " ")) {
			additionalIncludeDirs = strings.ReplaceAll(additionalIncludeDirs, " ", " -I")
		}
		flags.GlobalFlags = append(flags.GlobalFlags, "-I" + additionalIncludeDirs)
	}

	exportIncludeDirs := library.flagExporter.exportedIncludes(ctx)
	if len(exportIncludeDirs) > 0 {
		f := includeDirsToFlags(exportIncludeDirs)