commit | d26759f8caa3572f304b9bfcbe22a0bd72914c47 | [log] [tgz] |
---|---|---|
author | Jiyong Park <jiyong@google.com> | Mon Apr 09 12:22:18 2018 +0900 |
committer | Jiyong Park <jiyong@google.com> | Thu Apr 19 10:08:46 2018 +0900 |
tree | b3a7ce874a46746efb57a15eb92531a4b4222bfc | |
parent | f43bb1e46c2922ac186c94e2fe16e16d86932856 [diff] |
Mark some hidl interface libs as double_loadable Following interface libs are explicitly marked as double_loadable since they are one of the (indirect) dependencies of LLNDK libraries and at the same time are member of VNDK. Such lib can be double loaded inside a vendor process. * android.hardware.configstore@: due to libgui * android.hardware.graphics.allocator@: due to libgui * android.hardware.graphics.bufferqueue@: due to libgui * android.hardware.media@: due to android.hardware.graphics.bufferqueue@ * android.hardware.media.omx@: due to libmedia_omx * android.hardware.media.omx@*: due to dependency from libmedia_omx * android.hidl.token@: due to libgui * android.hardware.neuralnetworks and android.hidl.allocator: due to dependency from libneuralnetworks Note: even without this change, the library is already capable of being double loaded due to the dependency graph around it. This change is to make it explicit so that double loading of a library is carefully tracked and signed-off by the owner of the lib. Bug: 77155589 Test: m -j Merged-In: I7194df66d265bb865d918ffb491d9eed64b83067 Change-Id: I7194df66d265bb865d918ffb491d9eed64b83067 (cherry picked from commit ee9921ab975d3982167ddf9c1e127978b576ed2f)
Full documentation can be found here: https://source.android.com/devices/architecture/hidl/
hidl-gen is a compiler for the HIDL (HAL Interface Design Language) which generates C++ and Java endpoints for RPC mechanisms. The main userspace libraries which this compiler uses can be found at system/libhidl.
m hidl-gen
Note that options for hidl-gen expected to be invoked by the build system are marked with 'internal' in the help menu.
hidl-gen -h hidl-gen -o output -L c++-impl -r android.hardware:hardware/interfaces -r android.hidl:system/libhidl/transport android.hardware.nfc@1.0
Some defaults for package roots are also provided
hidl-gen -o output -L c++-impl android.hardware.nfc@1.0 hidl-gen -o output -L vts android.hardware.nfc@1.0 hidl-gen -L hash android.hardware.nfc@1.0
Example command for vendor project
hidl-gen -L c++-impl -r vendor.foo:vendor/foo/interfaces vendor.foo.nfc@1.0
See update-makefiles-helper.sh and update-all-google-makefiles.sh for examples of how to generate HIDL makefiles (using the -Landroidbp option).
This is a helper tool to convert C headers to valid .hal files.
m c2hal && c2hal -h
This tool generates html documentation for hal interfaces.
m hidl-doc && hidl-doc -h