diff --git a/cc/llndk_library.go b/cc/llndk_library.go index 5a36b7f22..3e25481ac 100644 --- a/cc/llndk_library.go +++ b/cc/llndk_library.go @@ -189,6 +189,14 @@ func NewLLndkStubLibrary() *Module { return module } +// llndk_library creates a stub llndk shared library based on the provided +// version file. Example: +// +// llndk_library { +// name: "libfoo", +// symbol_file: "libfoo.map.txt", +// export_include_dirs: ["include_vndk"], +// } func LlndkLibraryFactory() android.Module { module := NewLLndkStubLibrary() android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibBoth) @@ -203,6 +211,8 @@ func (headers *llndkHeadersDecorator) Name(name string) string { return name + llndkHeadersSuffix } +// llndk_headers contains a set of c/c++ llndk headers files which are imported +// by other soongs cc modules. func llndkHeadersFactory() android.Module { module, library := NewLibrary(android.DeviceSupported) library.HeaderOnly() diff --git a/cc/toolchain_library.go b/cc/toolchain_library.go index ae08b1c71..6494a261b 100644 --- a/cc/toolchain_library.go +++ b/cc/toolchain_library.go @@ -48,6 +48,9 @@ func (library *toolchainLibraryDecorator) linkerProps() []interface{} { return append(props, &library.Properties) } +// toolchain_library is used internally by the build tool to link the specified +// static library in src property to the device libraries that are shipped with +// gcc. func ToolchainLibraryFactory() android.Module { module, library := NewLibrary(android.HostAndDeviceSupported) library.BuildOnlyStatic() diff --git a/cc/vendor_public_library.go b/cc/vendor_public_library.go index da41cbc31..2072ad992 100644 --- a/cc/vendor_public_library.go +++ b/cc/vendor_public_library.go @@ -122,6 +122,15 @@ func (stub *vendorPublicLibraryStubDecorator) link(ctx ModuleContext, flags Flag return stub.libraryDecorator.link(ctx, flags, deps, objs) } +// vendor_public_library creates a stub shared library for a vendor public +// library. This stub library is a build-time only artifact that provides +// symbols that are exposed from a vendor public library. Example: +// +// vendor_public_library { +// name: "libfoo", +// symbol_file: "libfoo.map.txt", +// export_public_headers: ["libfoo_headers"], +// } func vendorPublicLibraryFactory() android.Module { module, library := NewLibrary(android.DeviceSupported) library.BuildOnlyShared()