Age | Commit message (Collapse) | Author |
|
Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
|
|
Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
|
|
gralloc.h is a very old API that has been deprecated at least since
Android P (9).
Switch over to a higher level abstraction of gralloc from libui, which
is compatible with Android 11 and up.
Libui:
* is provided in the VNDK (so it's available to vendors).
* is also used in the camera vts test named VtsAidlHalCameraProvider_TargetTest.
Notes:
* GraphicsBufferAllocator being a Singleton, buffer lifecycle
management is easier.
* The imported headers from Android generate the -Wextra-semi warning.
To avoid patching the files, a pragma has been added before inclusion.
* libdl was used for dlclosing() the legacy hal, so the dep has been dropped
Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
|
|
The Android HAL has quite some Android-specific dependencies (such as
libhardware) which are not part of regular linux distributions.
To compile-test the HAL on a Linux x86 system, we have added some stubs.
This means that each time we add a new Android specific dependency, we need to
write an associated stub for it, which can get tricky, especially for complex
C++ classes such as GraphicBufferAllocator.
It would be easier if we could import the includes and the required libraries we
need from Android so that we can build-test the HAL.
The Vendor Native Development Kit (VNDK) provides all the libraries
that a vendor service (such as the libcamera HAL) can link against.
Add the VNDK as a subproject of libcamera and add the necessary meson bits so
that we can compile test the Android HAL on linux without having to stub
anything.
Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
|