ndk_library()is used to define a set of C/C++ files, an
Application.mkfile that are used by the NDK's
ndk-buildtool to generate one or more shared objects.
The short name for this build target.
The set of files to compile for this rule. If not provided,
buckassumes that all files with the following extensions are part of the build:
c, cpp, cc, cxx, h, hpp, mk.
List of build targets to build before this rule.
Array of strings passed verbatim to
ndk-build. Normally this is not needed, but in some cases you may want to put something here. For example, this can be used to build the libraries in debug mode (
NDK_DEBUG=1) or set the number of jobs spawned by
ndk-build(by default, the same as the number of cores).
Normally native shared objects end up in a directory in the root of the APK named
lib/. If this parameter is set to
True, then these objects are placed in
assets/lib/. Placing shared objects in a non-standard location prevents Android from extracting them to the device's internal storage.
List of build target patterns that identify the build rules that can include this rule as a dependency, for example, by listing it in their
exported_depsattributes. For more information, see visibility.
Set of license files for this library. To get the list of license files for a given build rule and all of its dependencies, you can use
Set of arbitrary strings which allow you to annotate a build rule with tags that can be searched for over an entire dependency tree using
buck query attrfilter().
android_binary() that includes this library will aggregate all of the native shared objects into a directory in the root of the APK named
Unlike the default invocation of
buck will put all intermediate files and build output into a subdirectory under