Create a make variable for all lsdump files.

This is needed so that we can embed the paths of lsdump files in a file,
in order to make lookup faster, while creating reference dumps.

Test: mm -j64 in external/libjpeg-turbo for aosp_arm64_ab;
      out/soong/make_vars-aosp_arm64_ab.mk contains
      SOONG_LSDUMP_PATHS := <list of lsdump paths>

Change-Id: I04608429e1add307cc1ee79d2f0c348fb041613c
This commit is contained in:
Jayant Chowdhary 2018-02-23 16:43:23 -08:00
parent ac066c6b90
commit dcd33b6c29
3 changed files with 12 additions and 0 deletions

View file

@ -687,6 +687,9 @@ func TransformObjToDynamicBinary(ctx android.ModuleContext,
func TransformDumpToLinkedDump(ctx android.ModuleContext, sAbiDumps android.Paths, soFile android.Path,
baseName, exportedHeaderFlags string) android.OptionalPath {
outputFile := android.PathForModuleOut(ctx, baseName+".lsdump")
sabiLock.Lock()
lsdumpPaths = append(lsdumpPaths, outputFile.String())
sabiLock.Unlock()
symbolFilterStr := "-so " + soFile.String()
ctx.Build(pctx, android.BuildParams{
Rule: sAbiLink,

View file

@ -100,6 +100,9 @@ func makeVarsProvider(ctx android.MakeVarsContext) {
ctx.Strict("LLNDK_LIBRARIES", strings.Join(llndkLibraries, " "))
ctx.Strict("VNDK_PRIVATE_LIBRARIES", strings.Join(vndkPrivateLibraries, " "))
sort.Strings(lsdumpPaths)
ctx.Strict("LSDUMP_PATHS", strings.Join(lsdumpPaths, " "))
ctx.Strict("ANDROID_WARNING_ALLOWED_PROJECTS", makeStringOfWarningAllowedProjects())
ctx.Strict("SOONG_MODULES_ADDED_WALL", makeStringOfKeys(ctx, modulesAddedWall))
ctx.Strict("SOONG_MODULES_USING_WNO_ERROR", makeStringOfKeys(ctx, modulesUsingWnoError))

View file

@ -16,11 +16,17 @@ package cc
import (
"strings"
"sync"
"android/soong/android"
"android/soong/cc/config"
)
var (
lsdumpPaths []string
sabiLock sync.Mutex
)
type SAbiProperties struct {
CreateSAbiDumps bool `blueprint:"mutated"`
ReexportedIncludeFlags []string