summaryrefslogtreecommitdiff
path: root/rust/library.go
diff options
context:
space:
mode:
Diffstat (limited to 'rust/library.go')
-rw-r--r--rust/library.go10
1 files changed, 10 insertions, 0 deletions
diff --git a/rust/library.go b/rust/library.go
index 386ea4713..ba4754192 100644
--- a/rust/library.go
+++ b/rust/library.go
@@ -19,6 +19,7 @@ import (
"strings"
"android/soong/android"
+ "android/soong/rust/config"
)
func init() {
@@ -304,6 +305,15 @@ func (library *libraryDecorator) compilerProps() []interface{} {
}
func (library *libraryDecorator) compilerDeps(ctx DepsContext, deps Deps) Deps {
+
+ // TODO(b/144861059) Remove if C libraries support dylib linkage in the future.
+ if !ctx.Host() && (library.static() || library.shared()) {
+ library.setNoStdlibs()
+ for _, stdlib := range config.Stdlibs {
+ deps.Rlibs = append(deps.Rlibs, stdlib+".static")
+ }
+ }
+
deps = library.baseCompiler.compilerDeps(ctx, deps)
if ctx.toolchain().Bionic() && (library.dylib() || library.shared()) {