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 name of the rule.
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.
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