diff options
author | Vishwath Mohan <vishwath@google.com> | 2017-03-29 22:00:18 -0700 |
---|---|---|
committer | Colin Cross <ccross@android.com> | 2017-03-31 01:03:56 +0000 |
commit | 1dd88392869fc72463553b65537e5f8d8e33c118 (patch) | |
tree | 131df99770f6b5de62a3b079300f85f1c09b1c6b /cc/installer.go | |
parent | c31994825a4846382147931022b2fcd2654e16f6 (diff) | |
download | build_soong-1dd88392869fc72463553b65537e5f8d8e33c118.tar.gz build_soong-1dd88392869fc72463553b65537e5f8d8e33c118.tar.bz2 build_soong-1dd88392869fc72463553b65537e5f8d8e33c118.zip |
Refactor sanitized library on-disk layout - Soong.
This CL moves the location of ASAN-ified libraries on disk in the
following manner:
/data/lib* --> /data/asan/system/lib*
/data/vendor/* --> /data/asan/vendor/*
There are a couple of advantages to this, including better isolation
from other components, and more transparent linker renaming and
SELinux policies.
Bug: 36574794
Bug: 36674745
Test: m -j40 && SANITIZE_TARGET="address" m -j40 and the device
boots. All sanitized libraries are correctly located in /data/asan/*.
Change-Id: I06bf459260ec451d4495a02562f640ad622f34c2
Diffstat (limited to 'cc/installer.go')
-rw-r--r-- | cc/installer.go | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/cc/installer.go b/cc/installer.go index 64f87d96..c4de5897 100644 --- a/cc/installer.go +++ b/cc/installer.go @@ -30,8 +30,9 @@ type InstallerProperties struct { type installLocation int const ( - InstallInSystem installLocation = 0 - InstallInData = iota + InstallInSystem installLocation = 0 + InstallInData = iota + InstallInSanitizerDir = iota ) func NewBaseInstaller(dir, dir64 string, location installLocation) *baseInstaller { @@ -78,6 +79,10 @@ func (installer *baseInstaller) inData() bool { return installer.location == InstallInData } +func (installer *baseInstaller) inSanitizerDir() bool { + return installer.location == InstallInSanitizerDir +} + func (installer *baseInstaller) hostToolPath() android.OptionalPath { return android.OptionalPath{} } |