aboutsummaryrefslogtreecommitdiffstats
path: root/cc/binary.go
diff options
context:
space:
mode:
authorDan Albert <danalbert@google.com>2016-11-08 15:06:22 -0800
committerDan Albert <danalbert@google.com>2016-11-10 14:01:08 -0800
commitebedf678de4a013590c29bfb97bd445c12e7b010 (patch)
treefee625ec8367866645ecf35c9c1e53349135efd9 /cc/binary.go
parent90f7a4dcab5b6309dd5b0cc458622e7ad52cf616 (diff)
downloadbuild_soong-ebedf678de4a013590c29bfb97bd445c12e7b010.tar.gz
build_soong-ebedf678de4a013590c29bfb97bd445c12e7b010.tar.bz2
build_soong-ebedf678de4a013590c29bfb97bd445c12e7b010.zip
Support `sdk_version: "current"` for the NDK.
We need to fall back to the old CRT objects since we aren't generating those yet. Test: Created a test module using "current", checked that it linked the libs from current. Bug: None Change-Id: I5fe170d7b26154da8877672ac2acb7da0262fe38
Diffstat (limited to 'cc/binary.go')
-rw-r--r--cc/binary.go17
1 files changed, 13 insertions, 4 deletions
diff --git a/cc/binary.go b/cc/binary.go
index b0294394..c16dae60 100644
--- a/cc/binary.go
+++ b/cc/binary.go
@@ -101,15 +101,24 @@ func (binary *binaryDecorator) linkerDeps(ctx BaseModuleContext, deps Deps) Deps
}
deps.CrtEnd = "crtend_android"
} else {
+ // TODO(danalbert): Add generation of crt objects.
+ // For `sdk_version: "current"`, we don't actually have a
+ // freshly generated set of CRT objects. Use the last stable
+ // version.
+ version := ctx.sdkVersion()
+ if version == "current" {
+ version = ctx.AConfig().PlatformSdkVersion()
+ }
+
if binary.static() {
- deps.CrtBegin = "ndk_crtbegin_static." + ctx.sdkVersion()
+ deps.CrtBegin = "ndk_crtbegin_static." + version
} else {
if binary.static() {
- deps.CrtBegin = "ndk_crtbegin_static." + ctx.sdkVersion()
+ deps.CrtBegin = "ndk_crtbegin_static." + version
} else {
- deps.CrtBegin = "ndk_crtbegin_dynamic." + ctx.sdkVersion()
+ deps.CrtBegin = "ndk_crtbegin_dynamic." + version
}
- deps.CrtEnd = "ndk_crtend_android." + ctx.sdkVersion()
+ deps.CrtEnd = "ndk_crtend_android." + version
}
}
}