Merge "Add pom2mk, a maven repo -> Android.mk tool"
diff --git a/android/paths.go b/android/paths.go
index 26b72d1..aa06127 100644
--- a/android/paths.go
+++ b/android/paths.go
@@ -672,15 +672,17 @@
 func PathForModuleInstall(ctx ModuleContext, pathComponents ...string) OutputPath {
 	var outPaths []string
 	if ctx.Device() {
-		partition := "system"
+		var partition string
 		if ctx.Vendor() {
 			partition = ctx.DeviceConfig().VendorPath()
+		} else if ctx.InstallInData() {
+			partition = "data"
+		} else {
+			partition = "system"
 		}
 
 		if ctx.InstallInSanitizerDir() {
 			partition = "data/asan/" + partition
-		} else if ctx.InstallInData() {
-			partition = "data"
 		}
 		outPaths = []string{"target", "product", ctx.AConfig().DeviceName(), partition}
 	} else {
diff --git a/cc/sanitize.go b/cc/sanitize.go
index fcb3289..168e6c8 100644
--- a/cc/sanitize.go
+++ b/cc/sanitize.go
@@ -351,7 +351,10 @@
 		if ctx.Host() {
 			flags.CFlags = append(flags.CFlags, "-fno-sanitize-recover=all")
 			flags.LdFlags = append(flags.LdFlags, sanitizeArg)
-			flags.LdFlags = append(flags.LdFlags, "-lrt", "-ldl")
+			if ctx.Os() == android.Linux {
+				flags.LdFlags = append(flags.LdFlags, "-lrt")
+			}
+			flags.LdFlags = append(flags.LdFlags, "-ldl")
 			// Host sanitizers only link symbols in the final executable, so
 			// there will always be undefined symbols in intermediate libraries.
 			_, flags.LdFlags = removeFromList("-Wl,--no-undefined", flags.LdFlags)