summaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/libmatchbox
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-graphics/libmatchbox')
-rw-r--r--meta/recipes-graphics/libmatchbox/files/16bppfixes-2.patch258
-rw-r--r--meta/recipes-graphics/libmatchbox/files/16bppfixes.patch36
-rw-r--r--meta/recipes-graphics/libmatchbox/files/autofoo.patch19
-rw-r--r--meta/recipes-graphics/libmatchbox/files/check.m4133
-rw-r--r--meta/recipes-graphics/libmatchbox/files/configure_fixes.patch79
-rw-r--r--meta/recipes-graphics/libmatchbox/files/fix-configure-for-1.9.patch14
-rw-r--r--meta/recipes-graphics/libmatchbox/libmatchbox.inc17
-rw-r--r--meta/recipes-graphics/libmatchbox/libmatchbox_1.9.bb12
-rw-r--r--meta/recipes-graphics/libmatchbox/libmatchbox_svn.bb16
9 files changed, 584 insertions, 0 deletions
diff --git a/meta/recipes-graphics/libmatchbox/files/16bppfixes-2.patch b/meta/recipes-graphics/libmatchbox/files/16bppfixes-2.patch
new file mode 100644
index 0000000000..ab9cdc74a5
--- /dev/null
+++ b/meta/recipes-graphics/libmatchbox/files/16bppfixes-2.patch
@@ -0,0 +1,258 @@
+--- libmatchbox/libmb/mbpixbuf.c.orig 2007-05-04 14:41:55.000000000 +0100
++++ libmatchbox/libmb/mbpixbuf.c 2007-05-04 14:41:55.000000000 +0100
+@@ -710,46 +710,19 @@
+ return colnum;
+ }
+
+-
+-static unsigned long
+-mb_pixbuf_get_pixel(MBPixbuf *pb, int r, int g, int b, int a)
++/*
++ * Split the mb_pixbuf_get_pixel() function into several specialized
++ * functions which we will inline; this allows us to optimize
++ * mb_pixbuf_img_render_to_drawable_with_gc () by taking some of the
++ * decision taking outside of the double loop
++ */
++
++/*
++ * Get pixel value for rgb values and pixel depth <= 8
++ */
++static inline unsigned long
++mb_pixbuf_get_pixel_le8_rgb (MBPixbuf *pb, int r, int g, int b)
+ {
+- if (pb->depth > 8)
+- {
+- switch (pb->depth)
+- {
+- case 15:
+- return ((r & 0xf8) << 7) | ((g & 0xf8) << 2) | ((b & 0xf8) >> 3);
+- case 16:
+- return ((r & 0xf8) << 8) | ((g & 0xfc) << 3) | ((b & 0xf8) >> 3);
+- case 24:
+- case 32:
+- switch (pb->byte_order)
+- {
+- case BYTE_ORD_24_RGB:
+- return ((r & 0xff) << 16) | ((g & 0xff) << 8) | (b & 0xff);
+- case BYTE_ORD_24_RBG:
+- return ((r & 0xff) << 16) | ((b & 0xff) << 8) | (g & 0xff);
+- case BYTE_ORD_24_BRG:
+- return ((b & 0xff) << 16) | ((r & 0xff) << 8) | (g & 0xff);
+- case BYTE_ORD_24_BGR:
+- return ((b & 0xff) << 16) | ((g & 0xff) << 8) | (r & 0xff);
+- case BYTE_ORD_24_GRB:
+- return ((g & 0xff) << 16) | ((r & 0xff) << 8) | (b & 0xff);
+- case BYTE_ORD_24_GBR:
+- return ((g & 0xff) << 16) | ((b & 0xff) << 8) | (r & 0xff);
+- case BYTE_ORD_32_ARGB:
+- return (a << 24) | (r << 16) | (g << 8) | b;
+- default:
+- return 0;
+- }
+- default:
+- return 0;
+- }
+- return 0;
+- }
+-
+- /* pb->depth <= 8 */
+ switch(pb->vis->class)
+ {
+ case PseudoColor:
+@@ -794,6 +767,111 @@
+ return 0;
+ }
+
++/*
++ * Get pixel value from a pointer to 16bbp value for pixel depth <= 8
++ * and advance the pointer
++ */
++static inline unsigned long
++mb_pixbuf_get_pixel_le8_16bpp_advance (MBPixbuf *pb, unsigned char ** p)
++{
++ unsigned short s = SHORT_FROM_2BYTES(*p);
++ int r, b, g;
++
++ r = (s & 0xf800) >> 8;
++ g = (s & 0x07e0) >> 3;
++ b = (s & 0x001f) << 3;
++
++ *p += 2;
++
++ return mb_pixbuf_get_pixel_le8_rgb (pb, r, g, b);
++}
++
++/*
++ * Get pixel value for rgba values and pixel depth > 8
++ *
++ */
++static inline unsigned long
++mb_pixbuf_get_pixel_gt8_rgba (MBPixbuf *pb, int r, int g, int b, int a)
++{
++ switch (pb->depth)
++ {
++ case 15:
++ switch (pb->byte_order)
++ {
++ case BYTE_ORD_24_RGB:
++ return ((r & 0xf8) << 7) | ((g & 0xf8) << 2) | ((b & 0xf8) >> 3);
++ case BYTE_ORD_24_BGR:
++ return ((b & 0xf8) << 7) | ((g & 0xf8) << 2) | ((r & 0xf8) >> 3);
++ }
++ case 16:
++ switch (pb->byte_order)
++ {
++ case BYTE_ORD_24_RGB:
++ return ((r & 0xf8) << 8) | ((g & 0xfc) << 3) | ((b & 0xf8) >> 3);
++ case BYTE_ORD_24_BGR:
++ return ((b & 0xf8) << 8) | ((g & 0xfc) << 3) | ((r & 0xf8) >> 3);
++ }
++ case 24:
++ case 32:
++ switch (pb->byte_order)
++ {
++ case BYTE_ORD_24_RGB:
++ return ((r & 0xff) << 16) | ((g & 0xff) << 8) | (b & 0xff);
++ case BYTE_ORD_24_RBG:
++ return ((r & 0xff) << 16) | ((b & 0xff) << 8) | (g & 0xff);
++ case BYTE_ORD_24_BRG:
++ return ((b & 0xff) << 16) | ((r & 0xff) << 8) | (g & 0xff);
++ case BYTE_ORD_24_BGR:
++ return ((b & 0xff) << 16) | ((g & 0xff) << 8) | (r & 0xff);
++ case BYTE_ORD_24_GRB:
++ return ((g & 0xff) << 16) | ((r & 0xff) << 8) | (b & 0xff);
++ case BYTE_ORD_24_GBR:
++ return ((g & 0xff) << 16) | ((b & 0xff) << 8) | (r & 0xff);
++ case BYTE_ORD_32_ARGB:
++ return (a << 24) | (r << 16) | (g << 8) | b;
++ default:
++ return 0;
++ }
++ default:
++ return 0;
++ }
++}
++
++/*
++ * Get pixel value from pointer to 16bpp data for pixel depth > 8
++ * and advance the pointer
++ *
++ * TODO ? We could take the 32bit case out of here, which would allow
++ * to ignore the alpha value for <15, 24>, but we might not gain that
++ * much by this on arm due to the conditional execution.
++ */
++static inline unsigned long
++mb_pixbuf_get_pixel_gt8_16bpp_advance (MBPixbuf *pb, unsigned char ** p,
++ int has_alpha)
++{
++ unsigned short s = SHORT_FROM_2BYTES(*p);
++ int r, b, g, a;
++
++ r = (s & 0xf800) >> 8;
++ g = (s & 0x07e0) >> 3;
++ b = (s & 0x001f) << 3;
++
++ *p += 2;
++
++ a = has_alpha ? *(*p)++ : 0xff;
++
++ return mb_pixbuf_get_pixel_gt8_rgba (pb, r, g, b, a);
++}
++
++static inline unsigned long
++mb_pixbuf_get_pixel(MBPixbuf *pb, int r, int g, int b, int a)
++{
++ if (pb->depth > 8)
++ return mb_pixbuf_get_pixel_gt8_rgba (pb, r, g, b, a);
++
++ return mb_pixbuf_get_pixel_le8_rgb (pb, r, g, b);
++}
++
+ unsigned long
+ mb_pixbuf_lookup_x_pixel(MBPixbuf *pb, int r, int g, int b, int a)
+ {
+@@ -1825,7 +1903,6 @@
+ mb_pixbuf_img_render_to_drawable_with_gc(pb, img, drw, drw_x, drw_y, pb->gc);
+ }
+
+-
+ void
+ mb_pixbuf_img_render_to_drawable_with_gc(MBPixbuf *pb,
+ MBPixbufImage *img,
+@@ -1883,31 +1960,57 @@
+
+ if (pb->internal_bytespp == 2)
+ {
+- for(y=0; y<img->height; y++)
+- for(x=0; x<img->width; x++)
+- {
+- /* Below is potentially dangerous.
+- */
+- pixel = ( *p | (*(p+1) << 8));
+-
+- p += ((img->has_alpha) ? 3 : 2);
+-
+- XPutPixel(img->ximg, x, y, pixel);
+- }
++ if (pb->depth > 8)
++ {
++ for(y=0; y<img->height; y++)
++ for(x=0; x<img->width; x++)
++ {
++ pixel = mb_pixbuf_get_pixel_gt8_16bpp_advance(pb, &p,
++ img->has_alpha);
++ XPutPixel(img->ximg, x, y, pixel);
++ }
++ }
++ else
++ {
++ for(y=0; y<img->height; y++)
++ for(x=0; x<img->width; x++)
++ {
++ pixel = mb_pixbuf_get_pixel_le8_16bpp_advance(pb, &p);
++ XPutPixel(img->ximg, x, y, pixel);
++ }
++ }
+ }
+ else
+ {
+- for(y=0; y<img->height; y++)
++ if (pb->depth > 8)
+ {
+- for(x=0; x<img->width; x++)
++ for(y=0; y<img->height; y++)
+ {
+- r = ( *p++ );
+- g = ( *p++ );
+- b = ( *p++ );
+- a = ((img->has_alpha) ? *p++ : 0xff);
++ for(x=0; x<img->width; x++)
++ {
++ r = ( *p++ );
++ g = ( *p++ );
++ b = ( *p++ );
++ a = ((img->has_alpha) ? *p++ : 0xff);
+
+- pixel = mb_pixbuf_get_pixel(pb, r, g, b, a);
+- XPutPixel(img->ximg, x, y, pixel);
++ pixel = mb_pixbuf_get_pixel_gt8_rgba(pb, r, g, b, a);
++ XPutPixel(img->ximg, x, y, pixel);
++ }
++ }
++ }
++ else
++ {
++ for(y=0; y<img->height; y++)
++ {
++ for(x=0; x<img->width; x++)
++ {
++ r = ( *p++ );
++ g = ( *p++ );
++ b = ( *p++ );
++
++ pixel = mb_pixbuf_get_pixel_le8_rgb(pb, r, g, b);
++ XPutPixel(img->ximg, x, y, pixel);
++ }
+ }
+ }
+ }
diff --git a/meta/recipes-graphics/libmatchbox/files/16bppfixes.patch b/meta/recipes-graphics/libmatchbox/files/16bppfixes.patch
new file mode 100644
index 0000000000..09a0347809
--- /dev/null
+++ b/meta/recipes-graphics/libmatchbox/files/16bppfixes.patch
@@ -0,0 +1,36 @@
+Index: libmb/mbpixbuf.c
+===================================================================
+--- libmatchbox/libmb.orig/mbpixbuf.c 2006-02-01 12:45:55.000000000 +0000
++++ libmatchbox/libmb/mbpixbuf.c 2006-03-11 15:20:47.000000000 +0000
+@@ -716,7 +716,13 @@
+ case 15:
+ return ((r & 0xf8) << 7) | ((g & 0xf8) << 2) | ((b & 0xf8) >> 3);
+ case 16:
+- return ((r & 0xf8) << 8) | ((g & 0xfc) << 3) | ((b & 0xf8) >> 3);
++ switch (pb->byte_order)
++ {
++ case BYTE_ORD_24_RGB:
++ return ((r & 0xf8) << 8) | ((g & 0xfc) << 3) | ((b & 0xf8) >> 3);
++ case BYTE_ORD_24_BGR:
++ return ((b & 0xf8) << 8) | ((g & 0xfc) << 3) | ((r & 0xf8) >> 3);
++ }
+ case 24:
+ case 32:
+ switch (pb->byte_order)
+@@ -1880,12 +1886,11 @@
+ for(y=0; y<img->height; y++)
+ for(x=0; x<img->width; x++)
+ {
+- /* Below is potentially dangerous.
+- */
+- pixel = ( *p | (*(p+1) << 8));
++ internal_16bpp_pixel_to_rgb(p, r, g, b);
++ internal_16bpp_pixel_next(p);
++ a = ((img->has_alpha) ? *p++ : 0xff);
+
+- p += ((img->has_alpha) ? 3 : 2);
+-
++ pixel = mb_pixbuf_get_pixel(pb, r, g, b, a);
+ XPutPixel(img->ximg, x, y, pixel);
+ }
+ }
diff --git a/meta/recipes-graphics/libmatchbox/files/autofoo.patch b/meta/recipes-graphics/libmatchbox/files/autofoo.patch
new file mode 100644
index 0000000000..ad3be578e4
--- /dev/null
+++ b/meta/recipes-graphics/libmatchbox/files/autofoo.patch
@@ -0,0 +1,19 @@
+
+#
+# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher
+#
+
+--- libmatchbox-1.5/configure.ac~autofoo 2004-12-21 12:56:46.000000000 -0500
++++ libmatchbox-1.5/configure.ac 2005-01-18 16:40:04.421179624 -0500
+@@ -1,10 +1,10 @@
+ AC_PREREQ(2.53)
+ AC_INIT([libmatchbox], 1.5, [mallum@handhelds.org])
+ AC_CONFIG_SRCDIR([libmb/mbtray.c])
++AC_CONFIG_AUX_DIR(.)
+
+ AM_INIT_AUTOMAKE()
+ AM_CONFIG_HEADER([config.h])
+-AC_CONFIG_AUX_DIR(.)
+
+ # Checks for programs.
+ AC_GNU_SOURCE
diff --git a/meta/recipes-graphics/libmatchbox/files/check.m4 b/meta/recipes-graphics/libmatchbox/files/check.m4
new file mode 100644
index 0000000000..97bfd9c478
--- /dev/null
+++ b/meta/recipes-graphics/libmatchbox/files/check.m4
@@ -0,0 +1,133 @@
+dnl AM_PATH_CHECK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
+dnl Test for check, and define CHECK_CFLAGS and CHECK_LIBS
+dnl
+
+AC_DEFUN(AM_PATH_CHECK,
+[
+ AC_ARG_WITH(check,
+ [ --with-check=PATH prefix where check is installed [default=auto]])
+
+ min_check_version=ifelse([$1], ,0.8.2,$1)
+
+ AC_MSG_CHECKING(for check - version >= $min_check_version)
+
+ if test x$with_check = xno; then
+ AC_MSG_RESULT(disabled)
+ ifelse([$3], , AC_MSG_ERROR([disabling check is not supported]), [$3])
+ else
+ if test "x$with_check" != x; then
+ CHECK_CFLAGS="-I$with_check/include"
+ CHECK_LIBS="-L$with_check/lib -lcheck"
+ else
+ CHECK_CFLAGS=""
+ CHECK_LIBS="-lcheck"
+ fi
+
+ ac_save_CFLAGS="$CFLAGS"
+ ac_save_LIBS="$LIBS"
+
+ CFLAGS="$CFLAGS $CHECK_CFLAGS"
+ LIBS="$CHECK_LIBS $LIBS"
+
+ rm -f conf.check-test
+ AC_TRY_RUN([
+#include <stdio.h>
+#include <stdlib.h>
+
+#include <check.h>
+
+int main ()
+{
+ int major, minor, micro;
+ char *tmp_version;
+
+ system ("touch conf.check-test");
+
+ /* HP/UX 9 (%@#!) writes to sscanf strings */
+ tmp_version = strdup("$min_check_version");
+ if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
+ printf("%s, bad version string\n", "$min_check_version");
+ return 1;
+ }
+
+ if ((CHECK_MAJOR_VERSION != check_major_version) ||
+ (CHECK_MINOR_VERSION != check_minor_version) ||
+ (CHECK_MICRO_VERSION != check_micro_version))
+ {
+ printf("\n*** The check header file (version %d.%d.%d) does not match\n",
+ CHECK_MAJOR_VERSION, CHECK_MINOR_VERSION, CHECK_MICRO_VERSION);
+ printf("*** the check library (version %d.%d.%d).\n",
+ check_major_version, check_minor_version, check_micro_version);
+ return 1;
+ }
+
+ if ((check_major_version > major) ||
+ ((check_major_version == major) && (check_minor_version > minor)) ||
+ ((check_major_version == major) && (check_minor_version == minor) && (check_micro_version >= micro)))
+ {
+ return 0;
+ }
+ else
+ {
+ printf("\n*** An old version of check (%d.%d.%d) was found.\n",
+ check_major_version, check_minor_version, check_micro_version);
+ printf("*** You need a version of check being at least %d.%d.%d.\n", major, minor, micro);
+ printf("***\n");
+ printf("*** If you have already installed a sufficiently new version, this error\n");
+ printf("*** probably means that the wrong copy of the check library and header\n");
+ printf("*** file is being found. Rerun configure with the --with-check=PATH option\n");
+ printf("*** to specify the prefix where the correct version was installed.\n");
+ }
+
+ return 1;
+}
+],, no_check=yes, [echo $ac_n "cross compiling; assumed OK... $ac_c"])
+
+ CFLAGS="$ac_save_CFLAGS"
+ LIBS="$ac_save_LIBS"
+
+ if test "x$no_check" = x ; then
+ AC_MSG_RESULT(yes)
+ ifelse([$2], , :, [$2])
+ else
+ AC_MSG_RESULT(no)
+ if test -f conf.check-test ; then
+ :
+ else
+ echo "*** Could not run check test program, checking why..."
+ CFLAGS="$CFLAGS $CHECK_CFLAGS"
+ LIBS="$CHECK_LIBS $LIBS"
+ AC_TRY_LINK([
+#include <stdio.h>
+#include <stdlib.h>
+
+#include <check.h>
+], , [ echo "*** The test program compiled, but did not run. This usually means"
+ echo "*** that the run-time linker is not finding check. You'll need to set your"
+ echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
+ echo "*** to the installed location Also, make sure you have run ldconfig if that"
+ echo "*** is required on your system"
+ echo "***"
+ echo "*** If you have an old version installed, it is best to remove it, although"
+ echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
+ [ echo "*** The test program failed to compile or link. See the file config.log for"
+ echo "*** the exact error that occured." ])
+
+ CFLAGS="$ac_save_CFLAGS"
+ LIBS="$ac_save_LIBS"
+ fi
+
+ CHECK_CFLAGS=""
+ CHECK_LIBS=""
+
+ rm -f conf.check-test
+ ifelse([$3], , AC_MSG_ERROR([check not found]), [$3])
+ fi
+
+ AC_SUBST(CHECK_CFLAGS)
+ AC_SUBST(CHECK_LIBS)
+
+ rm -f conf.check-test
+
+ fi
+])
diff --git a/meta/recipes-graphics/libmatchbox/files/configure_fixes.patch b/meta/recipes-graphics/libmatchbox/files/configure_fixes.patch
new file mode 100644
index 0000000000..083d32a04f
--- /dev/null
+++ b/meta/recipes-graphics/libmatchbox/files/configure_fixes.patch
@@ -0,0 +1,79 @@
+---
+ configure.ac | 15 +++++++--------
+ libmb.pc.in | 2 +-
+ 2 files changed, 8 insertions(+), 9 deletions(-)
+
+Index: libmatchbox-1.9/configure.ac
+===================================================================
+--- libmatchbox-1.9.orig/configure.ac 2007-11-11 22:26:43.000000000 +0000
++++ libmatchbox-1.9/configure.ac 2007-11-11 22:52:09.000000000 +0000
+@@ -84,6 +84,7 @@ if test $have_libx11pc = yes; then
+ xft_pkg=xft
+ SUPPORTS_XFT=1
+ AC_DEFINE(USE_XFT, [1], [Use Xft])
++ XFT_REQUIRED="xft"
+ fi
+ # XXX : xau is missing from x11.pc - workaround is too add here
+ PKG_CHECK_MODULES(XLIBS, x11 xext $xft_pkg)
+@@ -108,6 +109,7 @@ if test x$enable_xft != xno; then
+ AC_DEFINE(USE_XFT, [1], [Use Xft])
+ SUPPORTS_XFT=1
+ AC_MSG_RESULT(yes)
++ XFT_REQUIRED="xft"
+ else
+
+ AC_PATH_PROG(XFT_CONFIG, xft-config, no)
+@@ -122,21 +124,17 @@ if test x$enable_xft != xno; then
+ AC_DEFINE(USE_XFT, [1], [Use Xft])
+ SUPPORTS_XFT=1
+ AC_MSG_RESULT(yes)
++ MB_EXTRA_CFLAGS="$MB_EXTRA_CFLAGS $XFT_CFLAGS"
++ MB_EXTRA_LIBS="$MB_EXTRA_LIBS $XFT_LIBS"
+ fi
+ fi
+ fi
+
+ XLIBS_CFLAGS="$XLIBS_CLAGS $XFT_CFLAGS"
+-XLIBS_LIBS="$X_LIBS $XFT_LIBS -lX11 -lXext"
+-
+-MB_EXTRA_LIBS="$MB_EXTRA_LIBS $XLIBS_LIBS"
++XLIBS_LIBS="$XLIBS_LIBS $XFT_LIBS -lX11 -lXext"
+
+ fi
+
+-# do this here for freetype include
+-MB_EXTRA_CFLAGS="$MB_EXTRA_CFLAGS $XLIBS_CFLAGS"
+-
+-
+ dnl ------ Check for Pango ---------------------------------------------------
+
+ if test x$enable_pango != xno; then
+@@ -172,7 +170,7 @@ if test x$enable_png != xno; then
+ AC_DEFINE(USE_PNG, [1], [Use Png])
+ SUPPORTS_PNG=1
+ PNG_LIBS="-lpng -lz"
+- MB_EXTRA_LIBS="$MB_EXTRA_LIBS $XLIBS_LIBS $PNG_LIBS"
++ MB_EXTRA_LIBS="$MB_EXTRA_LIBS $PNG_LIBS"
+ else
+ AC_MSG_WARN([*** Cannot find PNG, disabling support])
+ enable_png=no
+@@ -340,6 +338,7 @@ AC_SUBST(MB_EXTRA_CFLAGS)
+ AC_SUBST(XLIBS_REQUIRED)
+ AC_SUBST(PANGO_REQUIRED)
+ AC_SUBST(PNG_REQUIRED)
++AC_SUBST(XFT_REQUIRED)
+
+ dnl ------ Below used for mbconfig.h ----------------------------------------
+
+Index: libmatchbox-1.9/libmb.pc.in
+===================================================================
+--- libmatchbox-1.9.orig/libmb.pc.in 2007-11-11 22:30:47.000000000 +0000
++++ libmatchbox-1.9/libmb.pc.in 2007-11-11 22:31:01.000000000 +0000
+@@ -7,6 +7,6 @@ Name: libmb
+ Description: Utility Library used by Matchbox utilities.
+ Version: @VERSION@
+
+-Requires: @XLIBS_REQUIRED@ @PANGO_REQUIRED@ @PNG_REQUIRED@
++Requires: @XLIBS_REQUIRED@ @PANGO_REQUIRED@ @PNG_REQUIRED@ @XFT_REQUIRED@
+ Libs: -L${libdir} -lmb @MB_EXTRA_LIBS@
+ Cflags: -I${includedir} @MB_EXTRA_CFLAGS@
diff --git a/meta/recipes-graphics/libmatchbox/files/fix-configure-for-1.9.patch b/meta/recipes-graphics/libmatchbox/files/fix-configure-for-1.9.patch
new file mode 100644
index 0000000000..990b738e66
--- /dev/null
+++ b/meta/recipes-graphics/libmatchbox/files/fix-configure-for-1.9.patch
@@ -0,0 +1,14 @@
+diff -urNd ../libmatchbox-1.6-r1/libmatchbox-1.6/configure.ac libmatchbox-1.6/configure.ac
+--- ../libmatchbox-1.6-r1/libmatchbox-1.6/configure.ac 2005-01-11 21:47:39 +00:00
++++ libmatchbox-1.6/configure.ac 2005-03-14 03:06:25 +00:00
+@@ -2,9 +2,9 @@
+ AC_INIT([libmatchbox], 1.6, [mallum@handhelds.org])
+ AC_CONFIG_SRCDIR([libmb/mbtray.c])
+
++AC_CONFIG_AUX_DIR(.)
+ AM_INIT_AUTOMAKE()
+ AM_CONFIG_HEADER([config.h])
+-AC_CONFIG_AUX_DIR(.)
+
+ # Checks for programs.
+ AC_GNU_SOURCE
diff --git a/meta/recipes-graphics/libmatchbox/libmatchbox.inc b/meta/recipes-graphics/libmatchbox/libmatchbox.inc
new file mode 100644
index 0000000000..fdc866fe02
--- /dev/null
+++ b/meta/recipes-graphics/libmatchbox/libmatchbox.inc
@@ -0,0 +1,17 @@
+DESCRIPTION = "Matchbox window manager core library"
+HOMEPAGE = "http://matchbox-project.org/"
+BUGTRACKER = "http://bugzilla.openedhand.com/"
+
+LICENSE = "LGPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34 \
+ file://libmb/mbexp.c;endline=20;md5=28c0aef3b23e308464f5dae6a11b0d2f \
+ file://libmb/mbdotdesktop.c;endline=21;md5=5a287156b3207e851c1d68d09c439b51"
+
+SECTION = "x11/libs"
+DEPENDS = "virtual/libx11 libxext expat libxft jpeg libpng zlib libxsettings-client startup-notification"
+
+inherit autotools pkgconfig
+
+EXTRA_OECONF = "--enable-jpeg --enable-expat --enable-xsettings --enable-startup-notification"
+
+S = "${WORKDIR}/libmatchbox-${PV}"
diff --git a/meta/recipes-graphics/libmatchbox/libmatchbox_1.9.bb b/meta/recipes-graphics/libmatchbox/libmatchbox_1.9.bb
new file mode 100644
index 0000000000..1d7d9c8f44
--- /dev/null
+++ b/meta/recipes-graphics/libmatchbox/libmatchbox_1.9.bb
@@ -0,0 +1,12 @@
+require libmatchbox.inc
+
+PR = "r7"
+
+SRC_URI = "http://projects.o-hand.com/matchbox/sources/${PN}/${PV}/${PN}-${PV}.tar.gz \
+ file://16bppfixes.patch;patch=1 \
+ file://configure_fixes.patch;patch=1 \
+ file://check.m4"
+
+do_configure_prepend () {
+ cp ${WORKDIR}/check.m4 ${S}/
+}
diff --git a/meta/recipes-graphics/libmatchbox/libmatchbox_svn.bb b/meta/recipes-graphics/libmatchbox/libmatchbox_svn.bb
new file mode 100644
index 0000000000..3cdcd324f4
--- /dev/null
+++ b/meta/recipes-graphics/libmatchbox/libmatchbox_svn.bb
@@ -0,0 +1,16 @@
+require libmatchbox.inc
+
+PV = "1.7+svnr${SRCREV}"
+PR = "r4"
+DEFAULT_PREFERENCE = "-1"
+
+SRC_URI = "svn://svn.o-hand.com/repos/matchbox/trunk;module=${PN};proto=http \
+ file://configure_fixes.patch;patch=1 \
+ file://check.m4 \
+ file://16bppfixes.patch;patch=1"
+
+S = "${WORKDIR}/libmatchbox"
+
+do_configure_prepend () {
+ cp ${WORKDIR}/check.m4 ${S}/
+}