[Mesa-dev] [PATCH] Android: move drivers' symlinks to /vendor

Emil Velikov emil.l.velikov at gmail.com
Fri Oct 27 11:41:05 UTC 2017


On 26 October 2017 at 23:48, Mauro Rossi <issor.oruam at gmail.com> wrote:
> Having moved gallium_dri.so library to /vendor/lib/dri
> also symlinks need to be coherently created using TARGET_OUT_VENDOR insted of TARGET_OUT
> or all non Intel drivers will not be loaded with Android N and earlier,
> thus causing SurfaceFlinger SIGABRT
>
> Fixes: c3f75d483c ("Android: move libraries to /vendor")
>
> Cc: 17.3 <mesa-stable at lists.freedesktop.org>
> ---
>  src/gallium/targets/dri/Android.mk | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/src/gallium/targets/dri/Android.mk b/src/gallium/targets/dri/Android.mk
> index 61b65769ff..3fa86a2d56 100644
> --- a/src/gallium/targets/dri/Android.mk
> +++ b/src/gallium/targets/dri/Android.mk
> @@ -70,8 +70,8 @@ LOCAL_SHARED_LIBRARIES += $(sort $(GALLIUM_SHARED_LIBS))
>  ifneq ($(filter 5 6 7, $(MESA_ANDROID_MAJOR_VERSION)),)
>  LOCAL_POST_INSTALL_CMD := \
>         $(foreach l, lib $(if $(filter true,$(TARGET_IS_64_BIT)),lib64), \
> -         mkdir -p $(TARGET_OUT)/$(l)/$(MESA_DRI_MODULE_REL_PATH); \
> -         $(foreach d, $(GALLIUM_TARGET_DRIVERS), ln -sf gallium_dri.so $(TARGET_OUT)/$(l)/$(MESA_DRI_MODULE_REL_PATH)/$(d)_dri.so;) \
> +         mkdir -p $(TARGET_OUT_VENDOR)/$(l)/$(MESA_DRI_MODULE_REL_PATH); \
> +         $(foreach d, $(GALLIUM_TARGET_DRIVERS), ln -sf gallium_dri.so $(TARGET_OUT_VENDOR)/$(l)/$(MESA_DRI_MODULE_REL_PATH)/$(d)_dri.so;) \
Can we fold the long path into a variable and then reuse it?
This code will be around for a bit, so it might be worth it.

foo=$(TARGET_OUT_VENDOR)/$(l)/$(MESA_DRI_MODULE_REL_PATH)
mkdir -p $(foo)
$(foreach d, $(GALLIUM_TARGET_DRIVERS), ln -sf gallium_dri.so
$(foo)/$(d)_dri.so;)

-Emil
*Please use better variable name than foo


More information about the mesa-dev mailing list