diff --git a/cc/builder.go b/cc/builder.go
index ab0e40c..e35cebb 100644
--- a/cc/builder.go
+++ b/cc/builder.go
@@ -277,7 +277,7 @@
 // Generate a rule for compiling multiple .o files, plus static libraries, whole static libraries,
 // and shared libraires, to a shared library (.so) or dynamic executable
 func TransformObjToDynamicBinary(ctx common.AndroidModuleContext,
-	objFiles, sharedLibs, staticLibs, lateStaticLibs, wholeStaticLibs []string,
+	objFiles, sharedLibs, staticLibs, lateStaticLibs, wholeStaticLibs, deps []string,
 	crtBegin, crtEnd string, groupLate bool, flags builderFlags, outputFile string) {
 
 	var ldCmd string
@@ -323,7 +323,7 @@
 		libFlagsList = append(libFlagsList, "-Wl,--end-group")
 	}
 
-	deps := []string{ldCmd}
+	deps = append(deps, ldCmd)
 	deps = append(deps, sharedLibs...)
 	deps = append(deps, staticLibs...)
 	deps = append(deps, lateStaticLibs...)
diff --git a/cc/cc.go b/cc/cc.go
index 2cc4ffb..4b78479 100644
--- a/cc/cc.go
+++ b/cc/cc.go
@@ -947,6 +947,9 @@
 		Static_libs       []string `android:"arch_variant"`
 		Shared_libs       []string `android:"arch_variant"`
 	} `android:"arch_variant"`
+
+	// local file name to pass to the linker as --version_script
+	Version_script string `android:"arch_variant"`
 }
 
 type CCLibrary struct {
@@ -1128,8 +1131,16 @@
 
 	outputFile := filepath.Join(common.ModuleOutDir(ctx), ctx.ModuleName()+sharedLibraryExtension)
 
+	var linkerDeps []string
+
+	if c.LibraryProperties.Version_script != "" {
+		versionScript := filepath.Join(common.ModuleSrcDir(ctx), c.LibraryProperties.Version_script)
+		sharedFlags.LdFlags = append(sharedFlags.LdFlags, "-Wl,--version-script,"+versionScript)
+		linkerDeps = append(linkerDeps, versionScript)
+	}
+
 	TransformObjToDynamicBinary(ctx, objFiles, deps.SharedLibs, deps.StaticLibs,
-		deps.LateStaticLibs, deps.WholeStaticLibs, deps.CrtBegin, deps.CrtEnd, false,
+		deps.LateStaticLibs, deps.WholeStaticLibs, linkerDeps, deps.CrtBegin, deps.CrtEnd, false,
 		ccFlagsToBuilderFlags(flags), outputFile)
 
 	c.out = outputFile
@@ -1398,8 +1409,10 @@
 			ccFlagsToBuilderFlags(flags), afterPrefixSymbols)
 	}
 
+	var linkerDeps []string
+
 	TransformObjToDynamicBinary(ctx, objFiles, deps.SharedLibs, deps.StaticLibs,
-		deps.LateStaticLibs, deps.WholeStaticLibs, deps.CrtBegin, deps.CrtEnd, true,
+		deps.LateStaticLibs, deps.WholeStaticLibs, linkerDeps, deps.CrtBegin, deps.CrtEnd, true,
 		ccFlagsToBuilderFlags(flags), outputFile)
 }
 
