4264917141
This fallback loading path was for backwards compatibility with devices being upgraded from pre-Oreo (i.e. pre-Treble) to Oreo or later. Those devices weren't required to follow a lot of the Treble rules, so linker namespaces (or binaries compatible with them) couldn't be enforced. This change removes it so that we can discover issues around loading Vulkan driver from sphal namespace. Bug: 156021362 Test: build, flash and boot Change-Id: I505bdbdb40a06e1d837f1d0b75822b0c60de96c9 |
||
---|---|---|
.. | ||
include | ||
libvulkan | ||
nulldrv | ||
scripts | ||
vkjson | ||
.clang-format | ||
Android.bp | ||
OWNERS | ||
README.md | ||
TEST_MAPPING |
frameworks/native/vulkan
This subdirectory contains Android's Vulkan loader, as well as some Vulkan-related tools useful to platform developers.
Documentation
The former contents of doc/implementors_guide/ are now at https://source.android.com/devices/graphics/implement-vulkan.
Coding Style
We follow the Chromium coding style for naming and formatting, except with four-space indentation instead of two spaces. In general, any C++ features supported by the prebuilt platform toolchain are allowed.
Use "clang-format -style=file" to format all C/C++ code, except code imported verbatim from elsewhere. Setting up git-clang-format in your environment is recommended.
Code Generation
We generate several parts of the loader and tools driectly from the Vulkan Registry (external/vulkan-headers/registry/vk.xml). Code generation must be done manually because the generator is not part of the platform toolchain (yet?). Files named foo_gen.*
are generated by the code generator.
Run The Code Generator
Install Python3 (if not already installed) and execute below:
$ ./scripts/code_generator.py