summaryrefslogtreecommitdiff
path: root/rust/builder.go
diff options
context:
space:
mode:
author Colin Cross <ccross@android.com> 2022-01-23 20:46:16 -0800
committer Colin Cross <ccross@android.com> 2022-01-24 17:33:05 -0800
commitfe605e14ee71dae43d384968fffd3aea7ac53bba (patch)
treec3424360a4556c6db1ea85b08514d9e4b77a78c8 /rust/builder.go
parent41f7a4a788a15de36c51544ec78b9deba2605ebf (diff)
Support multiple crtbegin and crtend dependencies
Musl libc with an embedded linker uses multiple crtbegin dependencies, convert rust's CrtBegin and CrtEnd to lists. Bug: 190084016 Test: m USE_HOST_MUSL=true host-native Change-Id: Ie843801e87b1f38ace84502d9e4f938a92ec1fa2
Diffstat (limited to 'rust/builder.go')
-rw-r--r--rust/builder.go9
1 files changed, 4 insertions, 5 deletions
diff --git a/rust/builder.go b/rust/builder.go
index a7efc282a..cfb9fe1e9 100644
--- a/rust/builder.go
+++ b/rust/builder.go
@@ -246,9 +246,8 @@ func transformSrctoCrate(ctx ModuleContext, main android.Path, deps PathDeps, fl
implicits = append(implicits, deps.SharedLibDeps...)
implicits = append(implicits, deps.srcProviderFiles...)
- if deps.CrtBegin.Valid() {
- implicits = append(implicits, deps.CrtBegin.Path(), deps.CrtEnd.Path())
- }
+ implicits = append(implicits, deps.CrtBegin...)
+ implicits = append(implicits, deps.CrtEnd...)
if len(deps.SrcDeps) > 0 {
moduleGenDir := ctx.RustModule().compiler.CargoOutDir()
@@ -318,8 +317,8 @@ func transformSrctoCrate(ctx ModuleContext, main android.Path, deps PathDeps, fl
"rustcFlags": strings.Join(rustcFlags, " "),
"linkFlags": strings.Join(linkFlags, " "),
"libFlags": strings.Join(libFlags, " "),
- "crtBegin": deps.CrtBegin.String(),
- "crtEnd": deps.CrtEnd.String(),
+ "crtBegin": strings.Join(deps.CrtBegin.Strings(), " "),
+ "crtEnd": strings.Join(deps.CrtEnd.Strings(), " "),
"envVars": strings.Join(envVars, " "),
},
})