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

Commit c71193ae authored by Christopher Ferris's avatar Christopher Ferris
Browse files

Add whole_static_libs to non-svelte configs.

This is to support enabling scudo only for non-svelte configs.

Also, add exclude_static_libs to allow removing the jemalloc libs.

Bug: 137795072

Test: Verified that a svelte and non-svelte config can use this method
Test: to properly choose between scudo and jemalloc.

Change-Id: Iec6bfe159f8491138e93dde1d225a8c874c7ce31
parent 699cf17f
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -45,6 +45,8 @@ type variableProperties struct {
		Malloc_not_svelte struct {
			Cflags              []string `android:"arch_variant"`
			Shared_libs         []string `android:"arch_variant"`
			Whole_static_libs   []string `android:"arch_variant"`
			Exclude_static_libs []string `android:"arch_variant"`
		} `android:"arch_variant"`

		Safestack struct {
+5 −0
Original line number Diff line number Diff line
@@ -164,6 +164,9 @@ type BaseLinkerProperties struct {

	// local file name to pass to the linker as --version_script
	Version_script *string `android:"path,arch_variant"`

	// list of static libs that should not be used to build this module
	Exclude_static_libs []string
}

func NewBaseLinker(sanitize *sanitize) *baseLinker {
@@ -209,6 +212,8 @@ func (linker *baseLinker) linkerDeps(ctx DepsContext, deps Deps) Deps {
	deps.ReexportSharedLibHeaders = append(deps.ReexportSharedLibHeaders, linker.Properties.Export_shared_lib_headers...)
	deps.ReexportGeneratedHeaders = append(deps.ReexportGeneratedHeaders, linker.Properties.Export_generated_headers...)

	deps.WholeStaticLibs = removeListFromList(deps.WholeStaticLibs, linker.Properties.Exclude_static_libs)

	if Bool(linker.Properties.Use_version_lib) {
		deps.WholeStaticLibs = append(deps.WholeStaticLibs, "libbuildversion")
	}