[Mesa-dev] [PATCH 2/8] android: fix building on lollipop

Zhen Wu wuzhen at jidemail.com
Mon Jan 9 07:05:49 UTC 2017


Sorry, my bad, I'll post a new revision incorporating Rob's review comment

2017-01-09 7:07 GMT+08:00 Mauro Rossi <issor.oruam at gmail.com>:

> 2017-01-06 18:35 GMT+01:00 Wu Zhen <wuzhen at jidemail.com>:
> > From: WuZhen <wuzhen at jidemail.com>
> >
> > this commit fixes mesa building on lollipop, however,
> > llvm on lollipop is too old to build amdgpu
> >
> > based on initial work by Mauro Rossi <issor.oruam at gmail.com>
> >
> > Change-Id: I98d646f9e1c61fe2754479382885718386a8bbb7
> > Reviewed-by: Mauro Rossi <issor.oruam at gmail.com>
> > Reviewed-by: Chih-Wei Huang <cwhuang at linux.org.tw>
> > ---
> >  Android.common.mk                   | 2 +-
> >  Android.mk                          | 5 ++++-
> >  src/gbm/Android.mk                  | 1 +
> >  src/mesa/Android.libmesa_st_mesa.mk | 1 +
> >  4 files changed, 7 insertions(+), 2 deletions(-)
> >
> > diff --git a/Android.common.mk b/Android.common.mk
> > index 9f64c220f8..7ab3942ee2 100644
> > --- a/Android.common.mk
> > +++ b/Android.common.mk
> > @@ -91,7 +91,7 @@ endif
> >  endif
> >
> >  LOCAL_CPPFLAGS += \
> > -       $(if $(filter true,$(MESA_LOLLIPOP_BUILD)),-D_USING_LIBCXX) \
> > +       $(if $(filter true,$(MESA_LOLLIPOP_BUILD)),-std=c++11) \
> >         -Wno-error=non-virtual-dtor \
> >         -Wno-non-virtual-dtor
> >
> > diff --git a/Android.mk b/Android.mk
> > index fb29105a60..b52e7f8232 100644
> > --- a/Android.mk
> > +++ b/Android.mk
> > @@ -95,10 +95,13 @@ SUBDIRS := \
> >         src/mesa \
> >         src/util \
> >         src/egl \
> > -       src/amd \
> >         src/intel \
> >         src/mesa/drivers/dri
> >
> > +ifneq ($(filter r300g r600g radeonsi, $(MESA_GPU_DRIVERS)),)
> > +SUBDIRS += src/amd
> > +endif
> > +
> >  INC_DIRS := $(call all-named-subdir-makefiles,$(SUBDIRS))
> >
> >  ifeq ($(strip $(MESA_BUILD_GALLIUM)),true)
> > diff --git a/src/gbm/Android.mk b/src/gbm/Android.mk
> > index a3f8fbbeab..89127766e6 100644
> > --- a/src/gbm/Android.mk
> > +++ b/src/gbm/Android.mk
> > @@ -33,6 +33,7 @@ LOCAL_C_INCLUDES := \
> >         $(LOCAL_PATH)/main
> >
> >  LOCAL_STATIC_LIBRARIES := libmesa_loader
> > +LOCAL_SHARED_LIBRARIES := libdl
> >  LOCAL_MODULE := libgbm
> >
> >  LOCAL_SRC_FILES := \
> > diff --git a/src/mesa/Android.libmesa_st_mesa.mk b/src/mesa/
> Android.libmesa_st_mesa.mk
> > index 3905ddcf24..90e4ccd210 100644
> > --- a/src/mesa/Android.libmesa_st_mesa.mk
> > +++ b/src/mesa/Android.libmesa_st_mesa.mk
> > @@ -67,6 +67,7 @@ LOCAL_WHOLE_STATIC_LIBRARIES += \
> >
> >  LOCAL_STATIC_LIBRARIES += libmesa_nir libmesa_glsl
> >
> > +include external/libcxx/libcxx.mk
>
> Hi, if I recall correctly, we reviewed an updated version,
> because libcxx.mk is not present in Android 6 and 7 (this would stop
> the android build)
> and stlport is used in kitkat
>
> Similar scenario in src/gallium/drivers/r600 and
> src/gallium/drivers/nouveau,
> has the following if/else/endif, and it works also here:
>
> +ifeq ($(MESA_LOLLIPOP_BUILD),true)
> +LOCAL_C_INCLUDES += external/libcxx/include
> +else
> +include external/stlport/libstlport.mk
> +endif
>
> NOTE: MESA_LOLLIPOP_BUILD currently has the meaning of "lollipop and
> later",
> equivalent to say "we're using c++11"
>
> >  include $(LOCAL_PATH)/Android.gen.mk
> >  include $(MESA_COMMON_MK)
> >  include $(BUILD_STATIC_LIBRARY)
> > --
> > 2.11.0
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170109/5fdd8917/attachment-0001.html>


More information about the mesa-dev mailing list