diff --git a/android/variable.go b/android/variable.go
index b0639ae..d2dc5b9 100644
--- a/android/variable.go
+++ b/android/variable.go
@@ -58,6 +58,10 @@
 		Schedboost struct {
 			Cflags []string
 		}
+
+		Binder32bit struct {
+			Cflags []string
+		}
 	} `android:"arch_variant"`
 }
 
@@ -96,6 +100,7 @@
 	HostStaticBinaries         *bool `json:",omitempty"`
 	Cpusets                    *bool `json:",omitempty"`
 	Schedboost                 *bool `json:",omitempty"`
+	Binder32bit                *bool `json:",omitempty"`
 
 	SanitizeHost   *[]string `json:",omitempty"`
 	SanitizeDevice *[]string `json:",omitempty"`
diff --git a/cc/androidmk.go b/cc/androidmk.go
index 70e1f47..4f76dc9 100644
--- a/cc/androidmk.go
+++ b/cc/androidmk.go
@@ -99,6 +99,7 @@
 		}
 
 		fmt.Fprintln(w, "LOCAL_MODULE_SUFFIX := "+outputFile.Ext())
+		fmt.Fprintln(w, "LOCAL_BUILT_MODULE_STEM := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX)")
 
 		fmt.Fprintln(w, "LOCAL_SYSTEM_SHARED_LIBRARIES :=")
 
diff --git a/cc/cc.go b/cc/cc.go
index acc807f..51760fc 100644
--- a/cc/cc.go
+++ b/cc/cc.go
@@ -402,6 +402,9 @@
 	// local file name to pass to the linker as -force_symbols_weak_list
 	Force_symbols_weak_list *string `android:"arch_variant"`
 
+	// rename host libraries to prevent overlap with system installed libraries
+	Unique_host_soname *bool
+
 	VariantName string `blueprint:"mutated"`
 }
 
@@ -1605,11 +1608,23 @@
 		&library.stripper.StripProperties)
 }
 
+func (library *libraryLinker) getLibName(ctx ModuleContext) string {
+	name := ctx.ModuleName()
+
+	if ctx.Host() && Bool(library.Properties.Unique_host_soname) {
+		if !strings.HasSuffix(name, "-host") {
+			name = name + "-host"
+		}
+	}
+
+	return name + library.Properties.VariantName
+}
+
 func (library *libraryLinker) flags(ctx ModuleContext, flags Flags) Flags {
 	flags = library.baseLinker.flags(ctx, flags)
 
 	if !library.static() {
-		libName := ctx.ModuleName() + library.Properties.VariantName
+		libName := library.getLibName(ctx)
 		// GCC for Android assumes that -shared means -Bsymbolic, use -Wl,-shared instead
 		sharedFlag := "-Wl,-shared"
 		if flags.Clang || ctx.Host() {
@@ -1729,7 +1744,7 @@
 		}
 	}
 
-	fileName := ctx.ModuleName() + library.Properties.VariantName + flags.Toolchain.ShlibSuffix()
+	fileName := library.getLibName(ctx) + flags.Toolchain.ShlibSuffix()
 	outputFile := android.PathForModuleOut(ctx, fileName)
 	ret := outputFile
 
