diff --git a/cc/cc.go b/cc/cc.go
index ded89d4..062e6d9 100644
--- a/cc/cc.go
+++ b/cc/cc.go
@@ -1175,15 +1175,9 @@
 			depTag = headerExportDepTag
 		}
 		if buildStubs {
-			imageVariation := "core"
-			if c.useVndk() {
-				imageVariation = "vendor"
-			} else if c.inRecovery() {
-				imageVariation = "recovery"
-			}
 			actx.AddFarVariationDependencies([]blueprint.Variation{
 				{Mutator: "arch", Variation: ctx.Target().String()},
-				{Mutator: "image", Variation: imageVariation},
+				{Mutator: "image", Variation: c.imageVariation()},
 			}, depTag, lib)
 		} else {
 			actx.AddVariationDependencies(nil, depTag, lib)
@@ -1845,6 +1839,16 @@
 	return false
 }
 
+func (c *Module) imageVariation() string {
+	variation := "core"
+	if c.useVndk() {
+		variation = "vendor"
+	} else if c.inRecovery() {
+		variation = "recovery"
+	}
+	return variation
+}
+
 //
 // Defaults
 //
diff --git a/cc/sanitize.go b/cc/sanitize.go
index b95e2a8..4576aa1 100644
--- a/cc/sanitize.go
+++ b/cc/sanitize.go
@@ -787,7 +787,7 @@
 		}
 
 		if mctx.Device() && runtimeLibrary != "" {
-			if inList(runtimeLibrary, llndkLibraries) && !c.static() {
+			if inList(runtimeLibrary, llndkLibraries) && !c.static() && c.useVndk() {
 				runtimeLibrary = runtimeLibrary + llndkLibrarySuffix
 			}
 
@@ -802,12 +802,14 @@
 				// static executable gets static runtime libs
 				mctx.AddFarVariationDependencies([]blueprint.Variation{
 					{Mutator: "link", Variation: "static"},
+					{Mutator: "image", Variation: c.imageVariation()},
 					{Mutator: "arch", Variation: mctx.Target().String()},
 				}, staticDepTag, runtimeLibrary)
 			} else if !c.static() {
-				// dynamic executable andshared libs get shared runtime libs
+				// dynamic executable and shared libs get shared runtime libs
 				mctx.AddFarVariationDependencies([]blueprint.Variation{
 					{Mutator: "link", Variation: "shared"},
+					{Mutator: "image", Variation: c.imageVariation()},
 					{Mutator: "arch", Variation: mctx.Target().String()},
 				}, earlySharedDepTag, runtimeLibrary)
 			}
