It seems the patch is necessary in Android 8.1, otherwise we got the errors: bootable/recovery/minui/Android.mk: error: libminui (STATIC_LIBRARIES android-x86_64) missing libdrm_platform (STATIC_LIBRARIES android-x86_64) You can set ALLOW_MISSING_DEPENDENCIES=true in your environment if this is intentional, but that may defer real problems until later in the build. bootable/recovery/minui/Android.mk: error: libminui (STATIC_LIBRARIES android-x86) missing libdrm_platform (STATIC_LIBRARIES android-x86) You can set ALLOW_MISSING_DEPENDENCIES=true in your environment if this is intentional, but that may defer real problems until later in the build. build/core/main.mk:728: error: exiting from previous errors. Please rebase to the latest master and re-submit the patch. In particular, please consider the master already has a Rob Herring's patch which moved libdrm* to /vendor. 2017-07-26 18:08 GMT+08:00 Jiyong Park <jiyong@xxxxxxxxxx>: > libdrm_<vendor>.so are moved to the vendor partition (/vendor/lib or > /system/vendor/lib if there is no dedicated vendor partition), since > they are vendor-specific extension that must not be in the system > partition which should be generic. > > libdrm.so (which is generic) is built/installed twice: once to > /vendor/lib to satisfy the dependency for the libdrm_<vendor>.so libs > and once to /system/lib for platform clients such as the recovery > executable. > > The platform variant of libdrm is named as libdrm_platform.so since > in Android.mk we can't have two different shared libs having > same soname. In the near future, this will be fixed by converting these > Android.mk files to Android.bp and mark the module libdrm as > 'vendor_available: true'. (See > https://android-review.googlesource.com/c/368372/ for further detail on > the property) > > Signed-off-by: Jiyong Park <jiyong@xxxxxxxxxx> > --- > Android.mk | 39 +++++++++++++++++++++++++++++++++++++++ > amdgpu/Android.mk | 2 +- > etnaviv/Android.mk | 1 + > freedreno/Android.mk | 2 +- > intel/Android.mk | 1 + > libkms/Android.mk | 1 + > nouveau/Android.mk | 1 + > radeon/Android.mk | 1 + > tests/modetest/Android.mk | 2 +- > tests/proptest/Android.mk | 2 +- > tests/util/Android.mk | 2 +- > 11 files changed, 49 insertions(+), 5 deletions(-) > > diff --git a/Android.mk b/Android.mk > index 292be236..a5986b4e 100644 > --- a/Android.mk > +++ b/Android.mk > @@ -21,6 +21,10 @@ > # IN THE SOFTWARE. > # > > +# Two identical libs are defined here. > +# libdrm: for vendors. installed to /vendor/lib. libdrm_<vendor> uses this. > +# libdrm_platform: for platform modules (such as libminui). installed to /system/lib > + > LIBDRM_COMMON_MK := $(call my-dir)/Android.common.mk > > LOCAL_PATH := $(call my-dir) > @@ -33,7 +37,41 @@ include $(LOCAL_PATH)/Makefile.sources > > #static library for the device (recovery) > include $(CLEAR_VARS) > + > +LOCAL_MODULE := libdrm_platform > + > +LOCAL_SRC_FILES := $(LIBDRM_FILES) > +LOCAL_EXPORT_C_INCLUDE_DIRS := \ > + $(LOCAL_PATH) \ > + $(LOCAL_PATH)/include/drm > + > +LOCAL_C_INCLUDES := \ > + $(LOCAL_PATH)/include/drm > + > +include $(LIBDRM_COMMON_MK) > +include $(BUILD_STATIC_LIBRARY) > + > +# Dynamic library for the device > +include $(CLEAR_VARS) > + > +LOCAL_MODULE := libdrm_platform > + > +LOCAL_SRC_FILES := $(LIBDRM_FILES) > +LOCAL_EXPORT_C_INCLUDE_DIRS := \ > + $(LOCAL_PATH) \ > + $(LOCAL_PATH)/include/drm > + > +LOCAL_C_INCLUDES := \ > + $(LOCAL_PATH)/include/drm > + > +include $(LIBDRM_COMMON_MK) > +include $(BUILD_SHARED_LIBRARY) > + > +# Static library for the device (recovery) > +include $(CLEAR_VARS) > + > LOCAL_MODULE := libdrm > +LOCAL_VENDOR_MODULE := true > > LOCAL_SRC_FILES := $(LIBDRM_FILES) > LOCAL_EXPORT_C_INCLUDE_DIRS := \ > @@ -49,6 +87,7 @@ include $(BUILD_STATIC_LIBRARY) > # Shared library for the device > include $(CLEAR_VARS) > LOCAL_MODULE := libdrm > +LOCAL_VENDOR_MODULE := true > > LOCAL_SRC_FILES := $(LIBDRM_FILES) > LOCAL_EXPORT_C_INCLUDE_DIRS := \ > diff --git a/amdgpu/Android.mk b/amdgpu/Android.mk > index bf0611ba..1df84b3e 100644 > --- a/amdgpu/Android.mk > +++ b/amdgpu/Android.mk > @@ -5,7 +5,7 @@ include $(CLEAR_VARS) > include $(LOCAL_PATH)/Makefile.sources > > LOCAL_MODULE := libdrm_amdgpu > - > +LOCAL_VENDOR_MODULE := true > LOCAL_SHARED_LIBRARIES := libdrm > > LOCAL_SRC_FILES := $(LIBDRM_AMDGPU_FILES) > diff --git a/etnaviv/Android.mk b/etnaviv/Android.mk > index 390f9a98..1143eac5 100644 > --- a/etnaviv/Android.mk > +++ b/etnaviv/Android.mk > @@ -5,6 +5,7 @@ include $(CLEAR_VARS) > include $(LOCAL_PATH)/Makefile.sources > > LOCAL_MODULE := libdrm_etnaviv > +LOCAL_VENDOR_MODULE := true > > LOCAL_SHARED_LIBRARIES := libdrm > > diff --git a/freedreno/Android.mk b/freedreno/Android.mk > index 2b582aed..c1289145 100644 > --- a/freedreno/Android.mk > +++ b/freedreno/Android.mk > @@ -5,7 +5,7 @@ include $(CLEAR_VARS) > include $(LOCAL_PATH)/Makefile.sources > > LOCAL_MODULE := libdrm_freedreno > - > +LOCAL_VENDOR_MODULE := true > LOCAL_SHARED_LIBRARIES := libdrm > > LOCAL_SRC_FILES := $(LIBDRM_FREEDRENO_FILES) > diff --git a/intel/Android.mk b/intel/Android.mk > index 5407ff3e..902b8633 100644 > --- a/intel/Android.mk > +++ b/intel/Android.mk > @@ -28,6 +28,7 @@ include $(CLEAR_VARS) > include $(LOCAL_PATH)/Makefile.sources > > LOCAL_MODULE := libdrm_intel > +LOCAL_VENDOR_MODULE := true > > LOCAL_SRC_FILES := $(LIBDRM_INTEL_FILES) > > diff --git a/libkms/Android.mk b/libkms/Android.mk > index 0be72054..d0a16149 100644 > --- a/libkms/Android.mk > +++ b/libkms/Android.mk > @@ -45,6 +45,7 @@ LOCAL_SRC_FILES += $(LIBKMS_RADEON_FILES) > endif > > LOCAL_MODULE := libkms > +LOCAL_VENDOR_MODULE := true > LOCAL_SHARED_LIBRARIES := libdrm > > include $(LIBDRM_COMMON_MK) > diff --git a/nouveau/Android.mk b/nouveau/Android.mk > index b430af4f..27433d87 100644 > --- a/nouveau/Android.mk > +++ b/nouveau/Android.mk > @@ -5,6 +5,7 @@ include $(CLEAR_VARS) > include $(LOCAL_PATH)/Makefile.sources > > LOCAL_MODULE := libdrm_nouveau > +LOCAL_VENDOR_MODULE := true > > LOCAL_SHARED_LIBRARIES := libdrm > > diff --git a/radeon/Android.mk b/radeon/Android.mk > index 71040dab..7bc9cee9 100644 > --- a/radeon/Android.mk > +++ b/radeon/Android.mk > @@ -5,6 +5,7 @@ include $(CLEAR_VARS) > include $(LOCAL_PATH)/Makefile.sources > > LOCAL_MODULE := libdrm_radeon > +LOCAL_VENDOR_MODULE := true > > LOCAL_SHARED_LIBRARIES := libdrm > > diff --git a/tests/modetest/Android.mk b/tests/modetest/Android.mk > index c1a71fd9..a2a52dfe 100644 > --- a/tests/modetest/Android.mk > +++ b/tests/modetest/Android.mk > @@ -7,7 +7,7 @@ LOCAL_SRC_FILES := $(MODETEST_FILES) > > LOCAL_MODULE := modetest > > -LOCAL_SHARED_LIBRARIES := libdrm > +LOCAL_SHARED_LIBRARIES := libdrm_platform > LOCAL_STATIC_LIBRARIES := libdrm_util > > include $(LIBDRM_COMMON_MK) > diff --git a/tests/proptest/Android.mk b/tests/proptest/Android.mk > index 91a590fc..26aea514 100644 > --- a/tests/proptest/Android.mk > +++ b/tests/proptest/Android.mk > @@ -7,7 +7,7 @@ LOCAL_SRC_FILES := $(PROPTEST_FILES) > > LOCAL_MODULE := proptest > > -LOCAL_SHARED_LIBRARIES := libdrm > +LOCAL_SHARED_LIBRARIES := libdrm_platform > LOCAL_STATIC_LIBRARIES := libdrm_util > > include $(LIBDRM_COMMON_MK) > diff --git a/tests/util/Android.mk b/tests/util/Android.mk > index 12eccb42..6c5c924d 100644 > --- a/tests/util/Android.mk > +++ b/tests/util/Android.mk > @@ -28,7 +28,7 @@ include $(LOCAL_PATH)/Makefile.sources > > LOCAL_MODULE := libdrm_util > > -LOCAL_SHARED_LIBRARIES := libdrm > +LOCAL_SHARED_LIBRARIES := libdrm_platform > > LOCAL_SRC_FILES := $(UTIL_FILES) > > -- > 2.14.0.rc0.284.gd933b75aa4-goog > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/dri-devel -- Chih-Wei Android-x86 project http://www.android-x86.org _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel