* [PATCH 1/2] libmatchbox: fix libpng detection
@ 2013-12-10 12:13 Ross Burton
2013-12-10 12:13 ` [PATCH 2/2] libmatchbox: use PACKAGECONFIG Ross Burton
0 siblings, 1 reply; 4+ messages in thread
From: Ross Burton @ 2013-12-10 12:13 UTC (permalink / raw)
To: openembedded-core
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>
---
.../libmatchbox/libmatchbox/libpng.patch | 69 ++++++++++++++++++++
.../libmatchbox/libmatchbox_1.11.bb | 4 +-
2 files changed, 72 insertions(+), 1 deletion(-)
create mode 100644 meta/recipes-graphics/libmatchbox/libmatchbox/libpng.patch
diff --git a/meta/recipes-graphics/libmatchbox/libmatchbox/libpng.patch b/meta/recipes-graphics/libmatchbox/libmatchbox/libpng.patch
new file mode 100644
index 0000000..8cd507f
--- /dev/null
+++ b/meta/recipes-graphics/libmatchbox/libmatchbox/libpng.patch
@@ -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
+
diff --git a/meta/recipes-graphics/libmatchbox/libmatchbox_1.11.bb b/meta/recipes-graphics/libmatchbox/libmatchbox_1.11.bb
index d162a78..118c808 100644
--- a/meta/recipes-graphics/libmatchbox/libmatchbox_1.11.bb
+++ b/meta/recipes-graphics/libmatchbox/libmatchbox_1.11.bb
@@ -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"
--
1.7.10.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/2] libmatchbox: use PACKAGECONFIG
2013-12-10 12:13 [PATCH 1/2] libmatchbox: fix libpng detection Ross Burton
@ 2013-12-10 12:13 ` Ross Burton
2013-12-14 14:18 ` Trevor Woerner
0 siblings, 1 reply; 4+ messages in thread
From: Ross Burton @ 2013-12-10 12:13 UTC (permalink / raw)
To: openembedded-core
Use PACKAGECONFIG to offer some flexibility to the libmatchbox configuration,
and remove two spurious build dependencies (expat and libstartup-notification).
Signed-off-by: Ross Burton <ross.burton@intel.com>
---
meta/recipes-graphics/libmatchbox/libmatchbox_1.11.bb | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/meta/recipes-graphics/libmatchbox/libmatchbox_1.11.bb b/meta/recipes-graphics/libmatchbox/libmatchbox_1.11.bb
index 118c808..e2e971e 100644
--- a/meta/recipes-graphics/libmatchbox/libmatchbox_1.11.bb
+++ b/meta/recipes-graphics/libmatchbox/libmatchbox_1.11.bb
@@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34 \
file://libmb/mbexp.c;endline=20;md5=28c0aef3b23e308464f5dae6a11b0d2f \
file://libmb/mbdotdesktop.c;endline=21;md5=5a287156b3207e851c1d68d09c439b51"
-DEPENDS = "virtual/libx11 libxext expat libxft jpeg libpng zlib libxsettings-client startup-notification"
+DEPENDS = "virtual/libx11 libxext"
SRC_URI = "http://downloads.yoctoproject.org/releases/matchbox/${BPN}/${PV}/${BPN}-${PV}.tar.bz2 \
file://libpng.patch"
@@ -18,4 +18,9 @@ SRC_URI[sha256sum] = "254cab52e304a3512c8df4be59d690cf3921bbb68a28ede7fe26b93534
inherit autotools pkgconfig
-EXTRA_OECONF = "--enable-jpeg --enable-xsettings"
+PACKAGECONFIG ??= "jpeg png xft xsettings"
+PACKAGECONFIG[jpeg] = "--enable-jpeg,--disable-jpeg,jpeg"
+PACKAGECONFIG[pango] = "--enable-pango,--disable-pango,pango"
+PACKAGECONFIG[png] = "--enable-png,--disable-png,libpng"
+PACKAGECONFIG[xft] = "--enable-xft,--disable-xft,libxft"
+PACKAGECONFIG[xsettings] = "--enable-xsettings,--disable-xsettings,libxsettings-client"
--
1.7.10.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 2/2] libmatchbox: use PACKAGECONFIG
2013-12-10 12:13 ` [PATCH 2/2] libmatchbox: use PACKAGECONFIG Ross Burton
@ 2013-12-14 14:18 ` Trevor Woerner
2013-12-16 12:06 ` Burton, Ross
0 siblings, 1 reply; 4+ messages in thread
From: Trevor Woerner @ 2013-12-14 14:18 UTC (permalink / raw)
To: Ross Burton, openembedded-core
Hi Ross,
Your commit message and your commit don't seem to agree. I.e. you say
you've removed 2 dependencies, but it looks like you've actually removed
more than just 2.
On 12/10/13 07:13, Ross Burton wrote:
> Use PACKAGECONFIG to offer some flexibility to the libmatchbox configuration,
> and remove two spurious build dependencies (expat and libstartup-notification).
[snip]
> -DEPENDS = "virtual/libx11 libxext expat libxft jpeg libpng zlib libxsettings-client startup-notification"
> +DEPENDS = "virtual/libx11 libxext"
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 2/2] libmatchbox: use PACKAGECONFIG
2013-12-14 14:18 ` Trevor Woerner
@ 2013-12-16 12:06 ` Burton, Ross
0 siblings, 0 replies; 4+ messages in thread
From: Burton, Ross @ 2013-12-16 12:06 UTC (permalink / raw)
To: Trevor Woerner; +Cc: OE-core
On 14 December 2013 14:18, Trevor Woerner <trevor.woerner@linaro.org> wrote:
> Hi Ross,
>
> Your commit message and your commit don't seem to agree. I.e. you say
> you've removed 2 dependencies, but it looks like you've actually removed
> more than just 2.
The other dependencies just moved into PACKAGECONFIG statements.
Ross
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-12-16 12:06 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-12-10 12:13 [PATCH 1/2] libmatchbox: fix libpng detection Ross Burton
2013-12-10 12:13 ` [PATCH 2/2] libmatchbox: use PACKAGECONFIG Ross Burton
2013-12-14 14:18 ` Trevor Woerner
2013-12-16 12:06 ` Burton, Ross
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.