]> code.ossystems Code Review - openembedded-core.git/commitdiff
libmatchbox: fix libpng detection
authorRoss Burton <ross.burton@intel.com>
Tue, 10 Dec 2013 12:13:36 +0000 (12:13 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 10 Dec 2013 14:13:01 +0000 (14:13 +0000)
The configure script looks for libpng12 though pkg-config and if that fails
falls back to looking for library files directly.  The result of this is that
the linkage can change between libpng12 or libpng16 depending on what is
installed in the sysroot.

To resolve this, take a patch from upstream to just link using pkg-config.

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-graphics/libmatchbox/libmatchbox/libpng.patch [new file with mode: 0644]
meta/recipes-graphics/libmatchbox/libmatchbox_1.11.bb

diff --git a/meta/recipes-graphics/libmatchbox/libmatchbox/libpng.patch b/meta/recipes-graphics/libmatchbox/libmatchbox/libpng.patch
new file mode 100644 (file)
index 0000000..8cd507f
--- /dev/null
@@ -0,0 +1,69 @@
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+From 19c3d242034748b3c60765683e1ff4e2df970205 Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@intel.com>
+Date: Tue, 10 Dec 2013 11:37:32 +0000
+Subject: [PATCH] configure: improve libpng detection
+
+Instead of looking for "libpng12" explicitly though pkg-config and then falling
+back to library hunting, just use pkg-config to find "libpng" which is provided
+by both libpng12 and libpng16.
+
+This also makes the libpng detection deterministic.
+
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+---
+ configure.ac | 29 +++++------------------------
+ 1 file changed, 5 insertions(+), 24 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 8a28076..65d7c79 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -34,7 +34,7 @@ AC_ARG_ENABLE(jpeg,
+   enable_jpeg=$enableval, enable_jpeg=no)
+ AC_ARG_ENABLE(png,
+-  [  --disable-png           disable png support [default=no]],
++  [  --disable-png           disable PNG support [default=enabled]],
+      enable_png=$enableval, enable_png=yes )
+ AC_ARG_ENABLE(doxygen-docs,     
+@@ -156,29 +156,10 @@ fi
+ dnl ------ Check for PNG ---------------------------------------------------
+ if test x$enable_png != xno; then
+-  AC_MSG_CHECKING(for libpng12)
+-  if test x$PKG_CONFIG != xno && $PKG_CONFIG --exists libpng12; then 
+-        AC_MSG_RESULT(yes)
+-        PNG_LIBS=`$PKG_CONFIG --libs libpng12`
+-      PNG_CFLAGS=`$PKG_CONFIG --cflags libpng12`
+-        AC_DEFINE(USE_PNG, [1], [Use Png])
+-      SUPPORTS_PNG=1
+-      PNG_REQUIRED="libpng12"
+-  else
+-      AC_MSG_RESULT(no)
+-        # AC_CHECK_HEADERS(png.h, [ have_png_h="yes" ], [ have_png_h="no" ] )
+-        AC_CHECK_LIB([png], [png_create_read_struct], [have_png="yes"], [have_png="no"])
+-
+-        if test x$have_png=xyes && test x$have_png_h=xyes; then 
+-            AC_DEFINE(USE_PNG, [1], [Use Png])
+-          SUPPORTS_PNG=1
+-            PNG_LIBS="-lpng -lz"
+-            MB_EXTRA_LIBS="$MB_EXTRA_LIBS $PNG_LIBS"
+-        else
+-          AC_MSG_WARN([*** Cannot find PNG, disabling support])
+-            enable_png=no
+-      fi
+-  fi
++  PKG_CHECK_MODULES(PNG, libpng)
++  AC_DEFINE(USE_PNG, [1], [Use PNG])
++  SUPPORTS_PNG=1
++  PNG_REQUIRED="libpng"
+ fi
+-- 
+1.8.5
+
index d162a78d7d9fd311c009914d28b253480a9c248a..118c808cfcfe73611db26efdf5c5d0580dbbe6a7 100644 (file)
@@ -10,7 +10,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34 \
 
 DEPENDS = "virtual/libx11 libxext expat libxft jpeg libpng zlib libxsettings-client startup-notification"
 
-SRC_URI = "http://downloads.yoctoproject.org/releases/matchbox/${BPN}/${PV}/${BPN}-${PV}.tar.bz2"
+SRC_URI = "http://downloads.yoctoproject.org/releases/matchbox/${BPN}/${PV}/${BPN}-${PV}.tar.bz2 \
+           file://libpng.patch"
+
 SRC_URI[md5sum] = "fc6cc807f55a3e7c752d8013176875d7"
 SRC_URI[sha256sum] = "254cab52e304a3512c8df4be59d690cf3921bbb68a28ede7fe26b93534217b53"