Add a property in ndk_library for header contributions
The new property will be used to determine the header file contributions of
ndk_library(s) to the Public API surface. This should be a no-op for
regular Soong builds.
This will be used by a future bp2build converter to populate
the BUILD files for Multi-tree `cc_api_contribution` targets
(Also noticed that sdk_test.go was never added to testSrcs, which this
CL should fix)
Test: go test ./cc
Test: TH
Change-Id: Ieea093e4aac68e341c6414b6cafe02c441643cdf
diff --git a/cc/ndk_library.go b/cc/ndk_library.go
index 2bbfc4a..e2b9682 100644
--- a/cc/ndk_library.go
+++ b/cc/ndk_library.go
@@ -84,11 +84,13 @@
//
// Example:
//
-// ndk_library {
-// name: "libfoo",
-// symbol_file: "libfoo.map.txt",
-// first_version: "9",
-// }
+// ndk_library {
+//
+// name: "libfoo",
+// symbol_file: "libfoo.map.txt",
+// first_version: "9",
+//
+// }
type libraryProperties struct {
// Relative path to the symbol map.
// An example file can be seen here: TODO(danalbert): Make an example.
@@ -109,6 +111,9 @@
// where it is enabled pending a fix for http://b/190554910 (no debug info
// for asm implemented symbols).
Allow_untyped_symbols *bool
+
+ // Headers presented by this library to the Public API Surface
+ Export_header_libs []string
}
type stubDecorator struct {
@@ -483,8 +488,11 @@
return objs
}
+// Add a dependency on the header modules of this ndk_library
func (linker *stubDecorator) linkerDeps(ctx DepsContext, deps Deps) Deps {
- return Deps{}
+ return Deps{
+ HeaderLibs: linker.properties.Export_header_libs,
+ }
}
func (linker *stubDecorator) Name(name string) string {