summaryrefslogtreecommitdiffstats
path: root/meta/packages/libmatchbox
diff options
context:
space:
mode:
Diffstat (limited to 'meta/packages/libmatchbox')
-rw-r--r--meta/packages/libmatchbox/files/16bppfixes.patch36
-rw-r--r--meta/packages/libmatchbox/files/autofoo.patch19
-rw-r--r--meta/packages/libmatchbox/files/check.m4133
-rw-r--r--meta/packages/libmatchbox/files/fix-configure-for-1.9.patch14
-rw-r--r--meta/packages/libmatchbox/libmatchbox.inc23
-rw-r--r--meta/packages/libmatchbox/libmatchbox_1.7.bb8
-rw-r--r--meta/packages/libmatchbox/libmatchbox_svn.bb13
7 files changed, 246 insertions, 0 deletions
diff --git a/meta/packages/libmatchbox/files/16bppfixes.patch b/meta/packages/libmatchbox/files/16bppfixes.patch
new file mode 100644
index 0000000000..09a0347809
--- /dev/null
+++ b/meta/packages/libmatchbox/files/16bppfixes.patch
@@ -0,0 +1,36 @@
1Index: libmb/mbpixbuf.c
2===================================================================
3--- libmatchbox/libmb.orig/mbpixbuf.c 2006-02-01 12:45:55.000000000 +0000
4+++ libmatchbox/libmb/mbpixbuf.c 2006-03-11 15:20:47.000000000 +0000
5@@ -716,7 +716,13 @@
6 case 15:
7 return ((r & 0xf8) << 7) | ((g & 0xf8) << 2) | ((b & 0xf8) >> 3);
8 case 16:
9- return ((r & 0xf8) << 8) | ((g & 0xfc) << 3) | ((b & 0xf8) >> 3);
10+ switch (pb->byte_order)
11+ {
12+ case BYTE_ORD_24_RGB:
13+ return ((r & 0xf8) << 8) | ((g & 0xfc) << 3) | ((b & 0xf8) >> 3);
14+ case BYTE_ORD_24_BGR:
15+ return ((b & 0xf8) << 8) | ((g & 0xfc) << 3) | ((r & 0xf8) >> 3);
16+ }
17 case 24:
18 case 32:
19 switch (pb->byte_order)
20@@ -1880,12 +1886,11 @@
21 for(y=0; y<img->height; y++)
22 for(x=0; x<img->width; x++)
23 {
24- /* Below is potentially dangerous.
25- */
26- pixel = ( *p | (*(p+1) << 8));
27+ internal_16bpp_pixel_to_rgb(p, r, g, b);
28+ internal_16bpp_pixel_next(p);
29+ a = ((img->has_alpha) ? *p++ : 0xff);
30
31- p += ((img->has_alpha) ? 3 : 2);
32-
33+ pixel = mb_pixbuf_get_pixel(pb, r, g, b, a);
34 XPutPixel(img->ximg, x, y, pixel);
35 }
36 }
diff --git a/meta/packages/libmatchbox/files/autofoo.patch b/meta/packages/libmatchbox/files/autofoo.patch
new file mode 100644
index 0000000000..ad3be578e4
--- /dev/null
+++ b/meta/packages/libmatchbox/files/autofoo.patch
@@ -0,0 +1,19 @@
1
2#
3# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher
4#
5
6--- libmatchbox-1.5/configure.ac~autofoo 2004-12-21 12:56:46.000000000 -0500
7+++ libmatchbox-1.5/configure.ac 2005-01-18 16:40:04.421179624 -0500
8@@ -1,10 +1,10 @@
9 AC_PREREQ(2.53)
10 AC_INIT([libmatchbox], 1.5, [mallum@handhelds.org])
11 AC_CONFIG_SRCDIR([libmb/mbtray.c])
12+AC_CONFIG_AUX_DIR(.)
13
14 AM_INIT_AUTOMAKE()
15 AM_CONFIG_HEADER([config.h])
16-AC_CONFIG_AUX_DIR(.)
17
18 # Checks for programs.
19 AC_GNU_SOURCE
diff --git a/meta/packages/libmatchbox/files/check.m4 b/meta/packages/libmatchbox/files/check.m4
new file mode 100644
index 0000000000..97bfd9c478
--- /dev/null
+++ b/meta/packages/libmatchbox/files/check.m4
@@ -0,0 +1,133 @@
1dnl AM_PATH_CHECK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
2dnl Test for check, and define CHECK_CFLAGS and CHECK_LIBS
3dnl
4
5AC_DEFUN(AM_PATH_CHECK,
6[
7 AC_ARG_WITH(check,
8 [ --with-check=PATH prefix where check is installed [default=auto]])
9
10 min_check_version=ifelse([$1], ,0.8.2,$1)
11
12 AC_MSG_CHECKING(for check - version >= $min_check_version)
13
14 if test x$with_check = xno; then
15 AC_MSG_RESULT(disabled)
16 ifelse([$3], , AC_MSG_ERROR([disabling check is not supported]), [$3])
17 else
18 if test "x$with_check" != x; then
19 CHECK_CFLAGS="-I$with_check/include"
20 CHECK_LIBS="-L$with_check/lib -lcheck"
21 else
22 CHECK_CFLAGS=""
23 CHECK_LIBS="-lcheck"
24 fi
25
26 ac_save_CFLAGS="$CFLAGS"
27 ac_save_LIBS="$LIBS"
28
29 CFLAGS="$CFLAGS $CHECK_CFLAGS"
30 LIBS="$CHECK_LIBS $LIBS"
31
32 rm -f conf.check-test
33 AC_TRY_RUN([
34#include <stdio.h>
35#include <stdlib.h>
36
37#include <check.h>
38
39int main ()
40{
41 int major, minor, micro;
42 char *tmp_version;
43
44 system ("touch conf.check-test");
45
46 /* HP/UX 9 (%@#!) writes to sscanf strings */
47 tmp_version = strdup("$min_check_version");
48 if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
49 printf("%s, bad version string\n", "$min_check_version");
50 return 1;
51 }
52
53 if ((CHECK_MAJOR_VERSION != check_major_version) ||
54 (CHECK_MINOR_VERSION != check_minor_version) ||
55 (CHECK_MICRO_VERSION != check_micro_version))
56 {
57 printf("\n*** The check header file (version %d.%d.%d) does not match\n",
58 CHECK_MAJOR_VERSION, CHECK_MINOR_VERSION, CHECK_MICRO_VERSION);
59 printf("*** the check library (version %d.%d.%d).\n",
60 check_major_version, check_minor_version, check_micro_version);
61 return 1;
62 }
63
64 if ((check_major_version > major) ||
65 ((check_major_version == major) && (check_minor_version > minor)) ||
66 ((check_major_version == major) && (check_minor_version == minor) && (check_micro_version >= micro)))
67 {
68 return 0;
69 }
70 else
71 {
72 printf("\n*** An old version of check (%d.%d.%d) was found.\n",
73 check_major_version, check_minor_version, check_micro_version);
74 printf("*** You need a version of check being at least %d.%d.%d.\n", major, minor, micro);
75 printf("***\n");
76 printf("*** If you have already installed a sufficiently new version, this error\n");
77 printf("*** probably means that the wrong copy of the check library and header\n");
78 printf("*** file is being found. Rerun configure with the --with-check=PATH option\n");
79 printf("*** to specify the prefix where the correct version was installed.\n");
80 }
81
82 return 1;
83}
84],, no_check=yes, [echo $ac_n "cross compiling; assumed OK... $ac_c"])
85
86 CFLAGS="$ac_save_CFLAGS"
87 LIBS="$ac_save_LIBS"
88
89 if test "x$no_check" = x ; then
90 AC_MSG_RESULT(yes)
91 ifelse([$2], , :, [$2])
92 else
93 AC_MSG_RESULT(no)
94 if test -f conf.check-test ; then
95 :
96 else
97 echo "*** Could not run check test program, checking why..."
98 CFLAGS="$CFLAGS $CHECK_CFLAGS"
99 LIBS="$CHECK_LIBS $LIBS"
100 AC_TRY_LINK([
101#include <stdio.h>
102#include <stdlib.h>
103
104#include <check.h>
105], , [ echo "*** The test program compiled, but did not run. This usually means"
106 echo "*** that the run-time linker is not finding check. You'll need to set your"
107 echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
108 echo "*** to the installed location Also, make sure you have run ldconfig if that"
109 echo "*** is required on your system"
110 echo "***"
111 echo "*** If you have an old version installed, it is best to remove it, although"
112 echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
113 [ echo "*** The test program failed to compile or link. See the file config.log for"
114 echo "*** the exact error that occured." ])
115
116 CFLAGS="$ac_save_CFLAGS"
117 LIBS="$ac_save_LIBS"
118 fi
119
120 CHECK_CFLAGS=""
121 CHECK_LIBS=""
122
123 rm -f conf.check-test
124 ifelse([$3], , AC_MSG_ERROR([check not found]), [$3])
125 fi
126
127 AC_SUBST(CHECK_CFLAGS)
128 AC_SUBST(CHECK_LIBS)
129
130 rm -f conf.check-test
131
132 fi
133])
diff --git a/meta/packages/libmatchbox/files/fix-configure-for-1.9.patch b/meta/packages/libmatchbox/files/fix-configure-for-1.9.patch
new file mode 100644
index 0000000000..990b738e66
--- /dev/null
+++ b/meta/packages/libmatchbox/files/fix-configure-for-1.9.patch
@@ -0,0 +1,14 @@
1diff -urNd ../libmatchbox-1.6-r1/libmatchbox-1.6/configure.ac libmatchbox-1.6/configure.ac
2--- ../libmatchbox-1.6-r1/libmatchbox-1.6/configure.ac 2005-01-11 21:47:39 +00:00
3+++ libmatchbox-1.6/configure.ac 2005-03-14 03:06:25 +00:00
4@@ -2,9 +2,9 @@
5 AC_INIT([libmatchbox], 1.6, [mallum@handhelds.org])
6 AC_CONFIG_SRCDIR([libmb/mbtray.c])
7
8+AC_CONFIG_AUX_DIR(.)
9 AM_INIT_AUTOMAKE()
10 AM_CONFIG_HEADER([config.h])
11-AC_CONFIG_AUX_DIR(.)
12
13 # Checks for programs.
14 AC_GNU_SOURCE
diff --git a/meta/packages/libmatchbox/libmatchbox.inc b/meta/packages/libmatchbox/libmatchbox.inc
new file mode 100644
index 0000000000..b5618315a0
--- /dev/null
+++ b/meta/packages/libmatchbox/libmatchbox.inc
@@ -0,0 +1,23 @@
1SECTION = "x11/libs"
2DESCRIPTION = "Matchbox window manager core library"
3LICENSE = "GPL"
4DEPENDS = "libx11 libxext expat libxft jpeg libpng zlib libxsettings-client startup-notification"
5PR="r3"
6
7inherit autotools pkgconfig
8
9EXTRA_OECONF = "--enable-jpeg --enable-expat --enable-xsettings --enable-startup-notification"
10
11S = "${WORKDIR}/libmatchbox-${PV}"
12
13headers = "hash.h mbconfig.h mbdotdesktop.h mbexp.h \
14 mb.h mbmenu.h mbpixbuf.h mbtray.h mbutil.h"
15
16do_stage () {
17 install -d ${STAGING_INCDIR}/libmb
18 for h in ${headers}; do
19 install -m 0644 ${S}/libmb/$h ${STAGING_INCDIR}/libmb/
20 done
21
22 oe_libinstall -a -so -C libmb libmb ${STAGING_LIBDIR}
23}
diff --git a/meta/packages/libmatchbox/libmatchbox_1.7.bb b/meta/packages/libmatchbox/libmatchbox_1.7.bb
new file mode 100644
index 0000000000..afcf058663
--- /dev/null
+++ b/meta/packages/libmatchbox/libmatchbox_1.7.bb
@@ -0,0 +1,8 @@
1include libmatchbox.inc
2
3SRC_URI = "http://projects.o-hand.com/matchbox/sources/${PN}/${PV}/${PN}-${PV}.tar.gz \
4 file://check.m4"
5
6do_configure_prepend () {
7 mv ${WORKDIR}/check.m4 ${S}/
8}
diff --git a/meta/packages/libmatchbox/libmatchbox_svn.bb b/meta/packages/libmatchbox/libmatchbox_svn.bb
new file mode 100644
index 0000000000..aa3bfcd444
--- /dev/null
+++ b/meta/packages/libmatchbox/libmatchbox_svn.bb
@@ -0,0 +1,13 @@
1include libmatchbox.inc
2
3PV = "1.7+svn${SRCDATE}"
4DEFAULT_PREFERENCE = "-1"
5
6SRC_URI = "svn://svn.o-hand.com/repos/matchbox/trunk;module=${PN};proto=http\
7 file://check.m4 \
8 file://16bppfixes.patch;patch=1"
9S = "${WORKDIR}/libmatchbox"
10
11do_configure_prepend () {
12 mv ${WORKDIR}/check.m4 ${S}/
13}