[OE-core] [PATCH] libdrm: Explicitly disable the cairo dependency

Richard Purdie richard.purdie at linuxfoundation.org
Fri Oct 5 11:47:29 UTC 2012


We don't want the cairo dependency. Unfortunately simply checking whether its present
isn't good enough. If its not in DEPENDS, it can disappear half way through building.
We therefore need to explicitly disable it.

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
diff --git a/meta/recipes-graphics/drm/libdrm.inc b/meta/recipes-graphics/drm/libdrm.inc
index cc09791..2ed9c14 100644
--- a/meta/recipes-graphics/drm/libdrm.inc
+++ b/meta/recipes-graphics/drm/libdrm.inc
@@ -18,6 +18,8 @@ DEPENDS += " libpciaccess"
 
 inherit autotools pkgconfig
 
+EXTRA_OECONF += "--disable-cairo"
+
 PACKAGES =+ "${PN}-tests ${PN}-drivers ${PN}-kms"
 FILES_${PN}-tests = "${bindir}/dr* ${bindir}/mode*"
 FILES_${PN}-drivers = "${libdir}/libdrm_*.so.*"
diff --git a/meta/recipes-graphics/drm/libdrm/nocairo.patch b/meta/recipes-graphics/drm/libdrm/nocairo.patch
new file mode 100644
index 0000000..f9b7f3a
--- a/dev/null
+++ b/meta/recipes-graphics/drm/libdrm/nocairo.patch
@@ -0,0 +1,39 @@
+We don't want the cairo dependency. Unfortunately simply checking whether its present 
+isn't good enough. If its not in DEPENDS, it can disappear half way through building.
+We therefore need to explictly disable it.
+
+RP
+2012/10/5
+
+Index: libdrm-2.4.39/configure.ac
+===================================================================
+--- libdrm-2.4.39.orig/configure.ac	2012-08-24 14:54:42.000000000 +0000
++++ libdrm-2.4.39/configure.ac	2012-10-05 11:37:52.484821221 +0000
+@@ -63,6 +63,11 @@
+ 	      [Disable KMS mm abstraction library (default: auto)]),
+ 	      [LIBKMS=$enableval], [LIBKMS=auto])
+ 
++AC_ARG_ENABLE(cairo,
++	      AS_HELP_STRING([--disable-cairo],
++	      [Disable cairo (default: auto)]),
++	      [ENABLECAIRO=$enableval], [ENABLECAIRO=auto])
++
+ AC_ARG_ENABLE(intel,
+ 	      AS_HELP_STRING([--disable-intel],
+ 	      [Enable support for intel's KMS API (default: auto)]),
+@@ -201,9 +206,12 @@
+ 	AC_DEFINE(HAVE_EXYNOS, 1, [Have EXYNOS support])
+ fi
+ 
+-PKG_CHECK_MODULES(CAIRO, cairo, [HAVE_CAIRO=yes], [HAVE_CAIRO=no])
+-if test "x$HAVE_CAIRO" = xyes; then
+-	AC_DEFINE(HAVE_CAIRO, 1, [Have cairo support])
++HAVE_CAIRO=no
++if test "x$ENABLECAIRO" = xyes; then
++	PKG_CHECK_MODULES(CAIRO, cairo, [HAVE_CAIRO=yes], [HAVE_CAIRO=no])
++	if test "x$HAVE_CAIRO" = xyes; then
++		AC_DEFINE(HAVE_CAIRO, 1, [Have cairo support])
++	fi
+ fi
+ AM_CONDITIONAL(HAVE_CAIRO, [test "x$HAVE_CAIRO" = xyes])
+ 
diff --git a/meta/recipes-graphics/drm/libdrm_2.4.39.bb b/meta/recipes-graphics/drm/libdrm_2.4.39.bb
index 4e6a8d5..cb1f7f9 100644
--- a/meta/recipes-graphics/drm/libdrm_2.4.39.bb
+++ b/meta/recipes-graphics/drm/libdrm_2.4.39.bb
@@ -4,6 +4,7 @@ PR = "${INC_PR}.0"
 
 SRC_URI += "file://installtests.patch \
             file://GNU_SOURCE_definition.patch \
+            file://nocairo.patch \
            "
 
 SRC_URI[md5sum] = "9a299e021d81bab6c82307582c78319d"






More information about the Openembedded-core mailing list