summaryrefslogtreecommitdiffstats
path: root/meta-demoapps
diff options
context:
space:
mode:
Diffstat (limited to 'meta-demoapps')
-rw-r--r--meta-demoapps/recipes-connectivity/farsight/farsight2_0.0.9.bb24
-rw-r--r--meta-demoapps/recipes-connectivity/farsight/libnice_0.0.6.bb24
-rw-r--r--meta-demoapps/recipes-connectivity/libetpan/files/cxx-is-here.patch18
-rw-r--r--meta-demoapps/recipes-connectivity/libetpan/libetpan_0.54.bb20
-rw-r--r--meta-demoapps/recipes-connectivity/loudmouth/loudmouth_1.4.0.bb10
-rw-r--r--meta-demoapps/recipes-connectivity/openswan/openswan-2.4.7/installflags.patch13
-rw-r--r--meta-demoapps/recipes-connectivity/openswan/openswan-2.4.7/ld-library-path-breakage.patch26
-rw-r--r--meta-demoapps/recipes-connectivity/openswan/openswan-2.4.7/openswan-2.4.7-gentoo.patch377
-rw-r--r--meta-demoapps/recipes-connectivity/openswan/openswan_2.4.7.bb37
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libopensync-0.37/build-in-src.patch18
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libopensync-0.37/cmake.patch17
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libopensync-0.37/no-python-check.patch16
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-evolution2/0.37-fixes.patch23
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-evolution2_0.36.bb8
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-file_0.37.bb2
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-google-calendar_0.36.bb2
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-irmc_0.36.bb4
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-syncml/fixerror.patch13
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-syncml_0.38.bb8
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-vformat_0.37.bb4
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libopensync-plugin_0.36.inc11
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libopensync_0.37.bb26
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libsync_svn.bb20
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libsyncml/build-in-src.patch19
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/libsyncml_0.5.4.bb17
-rw-r--r--meta-demoapps/recipes-connectivity/opensync/msynctool_0.38.bb20
-rw-r--r--meta-demoapps/recipes-connectivity/telepathy/empathy/no-gnome-doc.patch39
-rw-r--r--meta-demoapps/recipes-connectivity/telepathy/empathy_2.26.1.bb29
-rw-r--r--meta-demoapps/recipes-connectivity/telepathy/telepathy-farsight_0.0.7.bb18
-rw-r--r--meta-demoapps/recipes-connectivity/telepathy/telepathy-gabble/gabble.manager33
-rw-r--r--meta-demoapps/recipes-connectivity/telepathy/telepathy-gabble_0.7.8.bb18
-rw-r--r--meta-demoapps/recipes-connectivity/wbxml/files/no-doc-install.patch15
-rw-r--r--meta-demoapps/recipes-connectivity/wbxml/wbxml2_0.9.2.bb24
-rw-r--r--meta-demoapps/recipes-gnome/abiword/abiword-2.5.inc63
-rw-r--r--meta-demoapps/recipes-gnome/abiword/abiword-embedded_2.5.2.bb10
-rw-r--r--meta-demoapps/recipes-gnome/abiword/abiword.inc63
-rw-r--r--meta-demoapps/recipes-gnome/abiword/abiword_2.5.2.bb5
-rw-r--r--meta-demoapps/recipes-gnome/abiword/abiword_cvs.bb9
-rw-r--r--meta-demoapps/recipes-gnome/gcalctool/gcalctool/fix-includedir.patch31
-rw-r--r--meta-demoapps/recipes-gnome/gcalctool/gcalctool_5.7.32.bb13
-rw-r--r--meta-demoapps/recipes-gnome/gcalctool/gcalctool_5.8.17.bb12
-rw-r--r--meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/configurefix.patch30
-rw-r--r--meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/desktop-moblin.patch11
-rw-r--r--meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/gnome-settings-daemon-2.24.0-catch-deviceadded.patch19
-rw-r--r--meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/gnome-settings-daemon-fix-gthread.patch13
-rw-r--r--meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/mojito-cleanup.patch74
-rw-r--r--meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/mount-plugin.patch618
-rw-r--r--meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon_2.26.1.bb25
-rw-r--r--meta-demoapps/recipes-gnome/gnome/gnome-terminal/30f29e7d8e1b67c40cd18a7155ba30c4382692d5.patch20
-rw-r--r--meta-demoapps/recipes-gnome/gnome/gnome-terminal_2.26.3.bb16
-rw-r--r--meta-demoapps/recipes-gnome/gnome/libgnomecanvas_2.20.0.bb14
-rw-r--r--meta-demoapps/recipes-gnome/gnome/libgnomekbd_2.26.0.bb14
-rw-r--r--meta-demoapps/recipes-gnome/libgsf/libgsf_1.14.5.bb20
-rw-r--r--meta-demoapps/recipes-gnome/libgtkstylus/files/gtkstylus.sh5
-rw-r--r--meta-demoapps/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb24
-rw-r--r--meta-demoapps/recipes-gnome/wv/wv-1.2.0/pkgconfig.patch13
-rw-r--r--meta-demoapps/recipes-gnome/wv/wv_1.2.0.bb14
-rw-r--r--meta-demoapps/recipes-graphics/clutter/table/fixes.patch14
-rw-r--r--meta-demoapps/recipes-graphics/libxklavier/libxklavier/pkgconfigfix.patch15
-rw-r--r--meta-demoapps/recipes-graphics/libxklavier/libxklavier_3.9.bb12
-rw-r--r--meta-demoapps/recipes-graphics/pong-clock/pong-clock/pong-clock-no-flicker.c410
-rw-r--r--meta-demoapps/recipes-graphics/pong-clock/pong-clock_1.0.bb16
-rw-r--r--meta-demoapps/recipes-graphics/xorg-app/xbacklight_1.1.bb4
-rw-r--r--meta-demoapps/recipes-graphics/xorg-app/xev/diet-x11.patch80
-rw-r--r--meta-demoapps/recipes-graphics/xorg-app/xev_1.0.3.bb7
-rw-r--r--meta-demoapps/recipes-graphics/xorg-app/xeyes_1.0.1.bb4
-rw-r--r--meta-demoapps/recipes-graphics/xorg-app/xrdb/60XDefaults.sh3
-rw-r--r--meta-demoapps/recipes-graphics/xorg-app/xrdb_1.0.5.bb14
-rw-r--r--meta-demoapps/recipes-graphics/xorg-lib/liblbxutil/mkg3states.patch63
-rw-r--r--meta-demoapps/recipes-graphics/xorg-lib/liblbxutil_1.1.0.bb11
-rw-r--r--meta-demoapps/recipes-graphics/xorg-lib/libxaw_1.0.5.bb21
-rw-r--r--meta-demoapps/recipes-graphics/xorg-lib/libxevie_1.0.2.bb8
-rw-r--r--meta-demoapps/recipes-graphics/xorg-lib/libxkbui_1.0.2.bb8
-rw-r--r--meta-demoapps/recipes-graphics/xorg-proto/xproxymanagementprotocol_1.0.3.bb5
-rw-r--r--meta-demoapps/recipes-graphics/xournal/files/ldflags.patch15
-rw-r--r--meta-demoapps/recipes-graphics/xournal/files/no-printing.diff178
-rw-r--r--meta-demoapps/recipes-graphics/xournal/xournal_0.2.bb12
-rw-r--r--meta-demoapps/recipes-kernel/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch15
-rw-r--r--meta-demoapps/recipes-kernel/fuse/fuse.inc13
-rw-r--r--meta-demoapps/recipes-kernel/fuse/fuse_2.7.2.bb22
-rw-r--r--meta-demoapps/recipes-sato/claws-mail/claws-mail.inc57
-rw-r--r--meta-demoapps/recipes-sato/claws-mail/claws-mail_2.9.1.bb1
-rw-r--r--meta-demoapps/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.15.bb14
-rw-r--r--meta-demoapps/recipes-sato/claws-mail/claws-plugin-maildir_0.24.4.bb14
-rw-r--r--meta-demoapps/recipes-sato/claws-mail/claws-plugin-mailmbox_1.13.bb14
-rw-r--r--meta-demoapps/recipes-sato/claws-mail/claws-plugin-rssyl_0.13.bb14
-rw-r--r--meta-demoapps/recipes-sato/claws-mail/files/desktop.patch19
-rw-r--r--meta-demoapps/recipes-sato/claws-mail/files/fix-build.patch24
-rw-r--r--meta-demoapps/recipes-sato/claws-mail/files/owl-window-menu.patch1009
-rw-r--r--meta-demoapps/recipes-sato/claws-mail/files/streamline-ui.patch1008
-rw-r--r--meta-demoapps/recipes-sato/clipboard-manager/clipboard-manager_0.6.4.bb33
-rw-r--r--meta-demoapps/recipes-sato/clipboard-manager/files/daemonize.patch44
-rw-r--r--meta-demoapps/recipes-sato/clipboard-manager/files/makefile.patch18
-rw-r--r--meta-demoapps/recipes-sato/clipboard-manager/files/script.patch39
-rw-r--r--meta-demoapps/recipes-sato/epdfview/epdfview/epdfview-ui-print.xml12
-rw-r--r--meta-demoapps/recipes-sato/epdfview/epdfview/epdfview-ui.xml57
-rw-r--r--meta-demoapps/recipes-sato/epdfview/epdfview/epdfview.desktop10
-rw-r--r--meta-demoapps/recipes-sato/epdfview/epdfview/owl-menus.patch325
-rw-r--r--meta-demoapps/recipes-sato/epdfview/epdfview_0.1.6.bb21
-rw-r--r--meta-demoapps/recipes-sato/epdfview/epdfview_0.1.7.bb21
-rw-r--r--meta-demoapps/recipes-sato/kf/files/fix-configure.patch25
-rw-r--r--meta-demoapps/recipes-sato/kf/files/fix-desktop-file.patch20
-rw-r--r--meta-demoapps/recipes-sato/kf/files/gcc4.patch30
-rw-r--r--meta-demoapps/recipes-sato/kf/kf_0.5.4.1.bb16
-rw-r--r--meta-demoapps/recipes-sato/matchbox-themes-extra/matchbox-themes-extra_0.3.bb25
-rw-r--r--meta-demoapps/recipes-sato/matchbox-themes-extra/matchbox-themes-extra_svn.bb30
-rw-r--r--meta-demoapps/recipes-sato/matchbox-themes-gtk/files/gtkrc1
-rw-r--r--meta-demoapps/recipes-sato/matchbox-themes-gtk/matchbox-themes-gtk.bb17
-rw-r--r--meta-demoapps/recipes-support/iso-codes/iso-codes_3.3.bb14
-rw-r--r--meta-demoapps/recipes-support/libfribidi/files/libtool-update.patch11
-rw-r--r--meta-demoapps/recipes-support/libfribidi/libfribidi_0.10.4.bb24
-rw-r--r--meta-demoapps/recipes-support/openobex/files/disable-cable-test.patch16
-rw-r--r--meta-demoapps/recipes-support/openobex/files/libusb_crosscompile_check.patch13
-rw-r--r--meta-demoapps/recipes-support/openobex/openobex_1.5.bb23
-rw-r--r--meta-demoapps/recipes-support/poppler/poppler-data_0.1.bb16
-rw-r--r--meta-demoapps/recipes-support/poppler/poppler-fpu.inc6
-rw-r--r--meta-demoapps/recipes-support/poppler/poppler.inc18
-rw-r--r--meta-demoapps/recipes-support/poppler/poppler_0.9.2.bb2
118 files changed, 6100 insertions, 0 deletions
diff --git a/meta-demoapps/recipes-connectivity/farsight/farsight2_0.0.9.bb b/meta-demoapps/recipes-connectivity/farsight/farsight2_0.0.9.bb
new file mode 100644
index 0000000000..e20ec33d64
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/farsight/farsight2_0.0.9.bb
@@ -0,0 +1,24 @@
1DESCRIPTION = "FarSight is an audio/video conferencing framework specifically designed for Instant Messengers."
2HOMEPAGE = "http://farsight.sf.net"
3SRC_URI = "http://farsight.freedesktop.org/releases/farsight2/${P}.tar.gz"
4LICENSE = "GPLv2.1"
5DEPENDS = "libnice glib-2.0 libxml2 zlib dbus gstreamer gst-plugins-base"
6
7inherit autotools
8AUTOTOOLS_STAGE_PKGCONFIG = "1"
9
10PR = "r1"
11
12EXTRA_OECONF = " \
13 --disable-debug \
14 --disable-gtk-doc \
15 --disable-python \
16"
17
18FILES_${PN} += "${libdir}/*/*.so"
19FILES_${PN}-dev += "${libdir}/f*/*a ${libdir}/g*/*a"
20FILES_${PN}-dbg += "${libdir}/*/.debug"
21
22
23
24
diff --git a/meta-demoapps/recipes-connectivity/farsight/libnice_0.0.6.bb b/meta-demoapps/recipes-connectivity/farsight/libnice_0.0.6.bb
new file mode 100644
index 0000000000..a837cadee0
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/farsight/libnice_0.0.6.bb
@@ -0,0 +1,24 @@
1SUMMARY = "IETF draft Interactice Connectivity Establishment standard"
2DESCRIPTION = "Libnice is an implementation of the IETF's draft Interactice Connectivity Establishment standard (ICE)."
3HOMEPAGE = "http://nice.freedesktop.org/wiki/"
4SRC_URI = "http://nice.freedesktop.org/releases/libnice-${PV}.tar.gz"
5
6LICENSE = "LGPL/MPL"
7DEPENDS = "glib-2.0 gstreamer"
8
9inherit autotools
10AUTOTOOLS_STAGE_PKGCONFIG = "1"
11
12FILES_${PN} += "${libdir}/gstreamer-0.10/*.so"
13FILES_${PN}-dev += "${libdir}/gstreamer-0.10/*a"
14FILES_${PN}-dbg += "${libdir}/gstreamer-0.10/.debug"
15
16do_compile_append() {
17 for i in $(find ${S} -name "*.pc") ; do
18 sed -i -e s:${STAGING_DIR_TARGET}::g \
19 -e s:/${TARGET_SYS}::g \
20 $i
21 done
22}
23
24
diff --git a/meta-demoapps/recipes-connectivity/libetpan/files/cxx-is-here.patch b/meta-demoapps/recipes-connectivity/libetpan/files/cxx-is-here.patch
new file mode 100644
index 0000000000..d910daab17
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/libetpan/files/cxx-is-here.patch
@@ -0,0 +1,18 @@
1---
2 configure.ac | 1 +
3 1 file changed, 1 insertion(+)
4
5--- libetpan-0.54.orig/configure.ac
6+++ libetpan-0.54/configure.ac
7@@ -104,10 +104,11 @@ if test "$have_w32_system" = yes; then
8 fi
9 AM_CONDITIONAL(HAVE_MINGW32_SYSTEM, test "$have_w32_system" = yes)
10
11 # Check the C compiler.
12 AC_PROG_CC
13+AC_PROG_CXX
14
15 # Compiler flags.
16 AC_ARG_ENABLE(debug, [ --enable-debug setup flags (gcc) for debugging (default=no)],
17 if test "x$GCC" = xyes; then
18 CFLAGS="$CFLAGS -O2 -g"
diff --git a/meta-demoapps/recipes-connectivity/libetpan/libetpan_0.54.bb b/meta-demoapps/recipes-connectivity/libetpan/libetpan_0.54.bb
new file mode 100644
index 0000000000..9b69471753
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/libetpan/libetpan_0.54.bb
@@ -0,0 +1,20 @@
1SUMMARY = "Library for communicating with mail and news services"
2DESCRIPTION = "libetpan is a library for communicating with mail and news servers. \
3It supports the protocols SMTP, POP3, IMAP and NNTP."
4HOMEPAGE = "http://www.etpan.org"
5SECTION = "libs"
6DEPENDS = "curl expat gnutls"
7LICENSE = "BSD"
8PR = "r1"
9
10SRC_URI = "${SOURCEFORGE_MIRROR}/libetpan/libetpan-${PV}.tar.gz \
11 file://cxx-is-here.patch;patch=1"
12
13inherit autotools pkgconfig gettext binconfig
14
15EXTRA_OECONF = "--without-openssl --with-gnutls --disable-db"
16
17PARALLEL_MAKE = ""
18
19FILES_${PN} = "${libdir}/lib*.so.*"
20FILES_${PN}-dev = "${bindir} ${includedir} ${libdir}/lib*.so ${libdir}/*.la ${libdir}/*.a ${libdir}/pkgconfig"
diff --git a/meta-demoapps/recipes-connectivity/loudmouth/loudmouth_1.4.0.bb b/meta-demoapps/recipes-connectivity/loudmouth/loudmouth_1.4.0.bb
new file mode 100644
index 0000000000..e20c41709a
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/loudmouth/loudmouth_1.4.0.bb
@@ -0,0 +1,10 @@
1SUMMARY = "XMPP/Jabber library"
2DESCRIPTION = "Loudmouth is a lightweight and easy-to-use C library for programming with the XMPP/Jabber protocol."
3HOMEPAGE = "http://www.loudmouth-project.org/"
4LICENSE = "LGPL"
5DEPENDS = "glib-2.0 gnutls libcheck"
6PR = "r2"
7
8SRC_URI = "http://ftp.imendio.com/pub/imendio/${PN}/src/${PN}-${PV}.tar.bz2"
9
10inherit autotools pkgconfig
diff --git a/meta-demoapps/recipes-connectivity/openswan/openswan-2.4.7/installflags.patch b/meta-demoapps/recipes-connectivity/openswan/openswan-2.4.7/installflags.patch
new file mode 100644
index 0000000000..e6da2eaa5f
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/openswan/openswan-2.4.7/installflags.patch
@@ -0,0 +1,13 @@
1Index: openswan-2.4.7/Makefile.inc
2===================================================================
3--- openswan-2.4.7.orig/Makefile.inc 2006-12-25 18:05:40.608503250 +0100
4+++ openswan-2.4.7/Makefile.inc 2006-12-25 18:06:39.028154250 +0100
5@@ -158,7 +158,7 @@
6 # how backup names are composed.
7 # Note that the install procedures will never overwrite an existing config
8 # file, which is why -b is not specified for them.
9-INSTBINFLAGS=-b --suffix=.old
10+INSTBINFLAGS=
11 INSTSUIDFLAGS=--mode=u+rxs,g+rx,o+rx --group=root -b --suffix=.old
12 INSTMANFLAGS=
13 INSTCONFFLAGS=
diff --git a/meta-demoapps/recipes-connectivity/openswan/openswan-2.4.7/ld-library-path-breakage.patch b/meta-demoapps/recipes-connectivity/openswan/openswan-2.4.7/ld-library-path-breakage.patch
new file mode 100644
index 0000000000..e3cc8762cc
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/openswan/openswan-2.4.7/ld-library-path-breakage.patch
@@ -0,0 +1,26 @@
1--- openswan-2.2.0.orig/programs/Makefile.program 2004-06-03 03:06:27.000000000 +0200
2+++ openswan-2.2.0/programs/Makefile.program 2005-03-05 13:50:19.000000000 +0100
3@@ -30,10 +30,6 @@
4
5 CFLAGS+= ${WERROR}
6
7-ifneq ($(LD_LIBRARY_PATH),)
8-LDFLAGS=-L$(LD_LIBRARY_PATH)
9-endif
10-
11 MANDIR8=$(MANTREE)/man8
12 MANDIR5=$(MANTREE)/man5
13
14--- openswan-2.2.0.orig/programs/pluto/Makefile 2005-01-03 20:40:45.000000000 +0100
15+++ openswan-2.2.0/programs/pluto/Makefile 2005-03-05 13:51:21.000000000 +0100
16@@ -234,10 +234,6 @@
17 LIBSPLUTO+=${CURL_LIBS}
18 LIBSPLUTO+= -lgmp -lresolv # -lefence
19
20-ifneq ($(LD_LIBRARY_PATH),)
21-LDFLAGS=-L$(LD_LIBRARY_PATH)
22-endif
23-
24 LIBSADNS = $(OPENSWANLIB)
25 LIBSADNS += -lresolv # -lefence
26
diff --git a/meta-demoapps/recipes-connectivity/openswan/openswan-2.4.7/openswan-2.4.7-gentoo.patch b/meta-demoapps/recipes-connectivity/openswan/openswan-2.4.7/openswan-2.4.7-gentoo.patch
new file mode 100644
index 0000000000..b3863a584b
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/openswan/openswan-2.4.7/openswan-2.4.7-gentoo.patch
@@ -0,0 +1,377 @@
1diff -Nru openswan-2.4.7.orig/doc/Makefile openswan-2.4.7/doc/Makefile
2--- openswan-2.4.7.orig/doc/Makefile 2005-11-08 23:32:45.000000000 +0200
3+++ openswan-2.4.7/doc/Makefile 2006-12-06 22:46:54.732830840 +0200
4@@ -1,6 +1,6 @@
5 # Makefile to generate various formats from HTML source
6 #
7-# Assumes the htmldoc utility is available.
8+# No longer cares if the htmldoc utility is available.
9 # This can be downloaded from www.easysw.com
10 #
11 # Also needs lynx(1) for HTML-to-text conversion
12diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/crypt586.pl openswan-2.4.7/lib/libcrypto/libdes/asm/crypt586.pl
13--- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/crypt586.pl 2004-07-16 03:24:45.000000000 +0300
14+++ openswan-2.4.7/lib/libcrypto/libdes/asm/crypt586.pl 2006-12-06 22:46:54.732830840 +0200
15@@ -1,4 +1,4 @@
16-#!/usr/local/bin/perl
17+#!/usr/bin/perl
18 #
19 # The inner loop instruction sequence and the IP/FP modifications are from
20 # Svend Olaf Mikkelsen <svolaf@inet.uni-c.dk>
21diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/cbc.pl openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/cbc.pl
22--- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/cbc.pl 2004-07-10 11:07:06.000000000 +0300
23+++ openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/cbc.pl 2006-12-06 22:46:54.736831090 +0200
24@@ -1,4 +1,4 @@
25-#!/usr/local/bin/perl
26+#!/usr/bin/perl
27
28 # void des_ncbc_encrypt(input, output, length, schedule, ivec, enc)
29 # des_cblock (*input);
30diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86asm.pl openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86asm.pl
31--- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86asm.pl 2004-07-10 11:07:06.000000000 +0300
32+++ openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86asm.pl 2006-12-06 22:46:54.736831090 +0200
33@@ -1,4 +1,4 @@
34-#!/usr/local/bin/perl
35+#!/usr/bin/perl
36
37 # require 'x86asm.pl';
38 # &asm_init("cpp","des-586.pl");
39diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86ms.pl openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86ms.pl
40--- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86ms.pl 2004-07-10 11:07:07.000000000 +0300
41+++ openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86ms.pl 2006-12-06 22:46:54.736831090 +0200
42@@ -1,4 +1,4 @@
43-#!/usr/local/bin/perl
44+#!/usr/bin/perl
45
46 package x86ms;
47
48diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86unix.pl openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86unix.pl
49--- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86unix.pl 2004-07-10 11:07:07.000000000 +0300
50+++ openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86unix.pl 2006-12-06 22:46:54.736831090 +0200
51@@ -1,4 +1,4 @@
52-#!/usr/local/bin/perl
53+#!/usr/bin/perl
54
55 package x86unix;
56
57diff -Nru openswan-2.4.7.orig/lib/liblwres/Makefile openswan-2.4.7/lib/liblwres/Makefile
58--- openswan-2.4.7.orig/lib/liblwres/Makefile 2004-12-18 20:13:34.000000000 +0200
59+++ openswan-2.4.7/lib/liblwres/Makefile 2006-12-06 22:46:54.736831090 +0200
60@@ -20,7 +20,7 @@
61 CDEFINES = -g
62 CWARNINGS = -Werror
63
64-CFLAGS=${CINCLUDES} ${CDEFINES} ${CWARNINGS}
65+CFLAGS=${CINCLUDES} ${CDEFINES} ${CWARNINGS} $(USERCOMPILE)
66
67 VERSION="@(\#) openswan-hacking-9.3-for-osw2"
68 LIBINTERFACE=2
69diff -Nru openswan-2.4.7.orig/linux/net/ipsec/des/asm/des-586.pl openswan-2.4.7/linux/net/ipsec/des/asm/des-586.pl
70--- openswan-2.4.7.orig/linux/net/ipsec/des/asm/des-586.pl 2004-07-10 11:06:50.000000000 +0300
71+++ openswan-2.4.7/linux/net/ipsec/des/asm/des-586.pl 2006-12-06 22:46:54.736831090 +0200
72@@ -1,4 +1,4 @@
73-#!/usr/local/bin/perl
74+#!/usr/bin/perl
75 #
76 # The inner loop instruction sequence and the IP/FP modifications are from
77 # Svend Olaf Mikkelsen <svolaf@inet.uni-c.dk>
78diff -Nru openswan-2.4.7.orig/linux/net/ipsec/des/asm/des686.pl openswan-2.4.7/linux/net/ipsec/des/asm/des686.pl
79--- openswan-2.4.7.orig/linux/net/ipsec/des/asm/des686.pl 2004-07-10 11:06:50.000000000 +0300
80+++ openswan-2.4.7/linux/net/ipsec/des/asm/des686.pl 2006-12-06 22:46:54.740831340 +0200
81@@ -1,4 +1,4 @@
82-#!/usr/local/bin/perl
83+#!/usr/bin/perl
84
85 $prog="des686.pl";
86
87diff -Nru openswan-2.4.7.orig/linux/net/ipsec/des/asm/desboth.pl openswan-2.4.7/linux/net/ipsec/des/asm/desboth.pl
88--- openswan-2.4.7.orig/linux/net/ipsec/des/asm/desboth.pl 2004-07-10 11:06:50.000000000 +0300
89+++ openswan-2.4.7/linux/net/ipsec/des/asm/desboth.pl 2006-12-06 22:46:54.740831340 +0200
90@@ -1,4 +1,4 @@
91-#!/usr/local/bin/perl
92+#!/usr/bin/perl
93
94 $L="edi";
95 $R="esi";
96diff -Nru openswan-2.4.7.orig/Makefile.inc openswan-2.4.7/Makefile.inc
97--- openswan-2.4.7.orig/Makefile.inc 2006-11-14 19:56:09.000000000 +0200
98+++ openswan-2.4.7/Makefile.inc 2006-12-06 22:48:32.534943089 +0200
99@@ -46,7 +46,7 @@
100 DESTDIR?=
101
102 # "local" part of tree, used in building other pathnames
103-INC_USRLOCAL=/usr/local
104+INC_USRLOCAL?=/usr
105
106 # PUBDIR is where the "ipsec" command goes; beware, many things define PATH
107 # settings which are assumed to include it (or at least, to include *some*
108@@ -80,7 +80,7 @@
109 MANPLACES=man3 man5 man8
110
111 # where configuration files go
112-FINALCONFFILE?=/etc/ipsec.conf
113+FINALCONFFILE?=/etc/ipsec/ipsec.conf
114 CONFFILE=$(DESTDIR)$(FINALCONFFILE)
115
116 FINALCONFDIR?=/etc
117@@ -91,7 +91,7 @@
118
119 # sample configuration files go into
120 INC_DOCDIR?=share/doc
121-FINALEXAMPLECONFDIR=${INC_USRLOCAL}/${INC_DOCDIR}/openswan
122+FINALEXAMPLECONFDIR?=${INC_USRLOCAL}/${INC_DOCDIR}/openswan
123 EXAMPLECONFDIR=${DESTDIR}${FINALEXAMPLECONFDIR}
124
125 FINALDOCDIR?=${INC_USRLOCAL}/${INC_DOCDIR}/openswan
126@@ -239,7 +239,7 @@
127 # installed one in RH 7.2, won't work - you wind up depending upon
128 # openssl.
129
130-BIND9STATICLIBDIR?=/usr/local/lib
131+BIND9STATICLIBDIR?=/usr/lib
132
133 # if you install elsewere, you may need to point the include files to it.
134 #BIND9STATICLIBDIR?=/sandel/lib
135diff -Nru openswan-2.4.7.orig/programs/barf/barf.in openswan-2.4.7/programs/barf/barf.in
136--- openswan-2.4.7.orig/programs/barf/barf.in 2006-11-07 05:49:18.000000000 +0200
137+++ openswan-2.4.7/programs/barf/barf.in 2006-12-06 22:46:54.740831340 +0200
138@@ -16,7 +16,7 @@
139
140 LOGS=${LOGS-/var/log}
141 CONFS=${IPSEC_CONFS-/etc}
142-CONFDDIR=${IPSEC_CONFDDIR-/etc/ipsec.d}
143+CONFDDIR=${IPSEC_CONFDDIR-/etc/ipsec/ipsec.d}
144 me="ipsec barf"
145 # Max lines to use for things like 'route -n'
146 maxlines=100
147@@ -238,13 +238,13 @@
148 done
149 fi
150 _________________________ ipsec/ls-libdir
151-ls -l ${IPSEC_LIBDIR-/usr/local/lib/ipsec}
152+ls -l ${IPSEC_LIBDIR-/usr/lib/ipsec}
153 _________________________ ipsec/ls-execdir
154-ls -l ${IPSEC_EXECDIR-/usr/local/libexec/ipsec}
155+ls -l ${IPSEC_EXECDIR-/usr/libexec/ipsec}
156 _________________________ ipsec/updowns
157-for f in `ls ${IPSEC_EXECDIR-/usr/local/libexec/ipsec} | egrep updown`
158+for f in `ls ${IPSEC_EXECDIR-/usr/libexec/ipsec} | egrep updown`
159 do
160- cat ${IPSEC_EXECDIR-/usr/local/libexec/ipsec}/$f
161+ cat ${IPSEC_EXECDIR-/usr/libexec/ipsec}/$f
162 done
163 _________________________ /proc/net/dev
164 cat /proc/net/dev
165diff -Nru openswan-2.4.7.orig/programs/eroute/eroute.5 openswan-2.4.7/programs/eroute/eroute.5
166--- openswan-2.4.7.orig/programs/eroute/eroute.5 2006-10-26 23:40:43.000000000 +0300
167+++ openswan-2.4.7/programs/eroute/eroute.5 2006-12-06 22:57:19.307864340 +0200
168@@ -168,7 +168,7 @@
169 .SH "FILES"
170
171 .PP
172-/proc/net/ipsec_eroute, /usr/local/bin/ipsec
173+/proc/net/ipsec_eroute, /usr/bin/ipsec
174
175 .SH "SEE ALSO"
176
177diff -Nru openswan-2.4.7.orig/programs/eroute/eroute.8 openswan-2.4.7/programs/eroute/eroute.8
178--- openswan-2.4.7.orig/programs/eroute/eroute.8 2003-10-31 04:32:27.000000000 +0200
179+++ openswan-2.4.7/programs/eroute/eroute.8 2006-12-06 22:46:54.740831340 +0200
180@@ -308,7 +308,7 @@
181 .br
182 .LP
183 .SH FILES
184-/proc/net/ipsec_eroute, /usr/local/bin/ipsec
185+/proc/net/ipsec_eroute, /usr/bin/ipsec
186 .SH "SEE ALSO"
187 ipsec(8), ipsec_manual(8), ipsec_tncfg(8), ipsec_spi(8),
188 ipsec_spigrp(8), ipsec_klipsdebug(8), ipsec_eroute(5)
189diff -Nru openswan-2.4.7.orig/programs/_include/_include.in openswan-2.4.7/programs/_include/_include.in
190--- openswan-2.4.7.orig/programs/_include/_include.in 2003-01-06 23:44:04.000000000 +0200
191+++ openswan-2.4.7/programs/_include/_include.in 2006-12-06 22:46:54.740831340 +0200
192@@ -47,10 +47,10 @@
193 do
194 if test ! -r "$f"
195 then
196- if test ! "$f" = "/etc/ipsec.conf"
197+ if test ! "$f" = "/etc/ipsec/ipsec.conf"
198 then
199 echo "#:cannot open configuration file \'$f\'"
200- if test "$f" = "/etc/ipsec.secrets"
201+ if test "$f" = "/etc/ipsec/ipsec.secrets"
202 then
203 echo "#:Your secrets file will be created when you start FreeS/WAN for the first time."
204 fi
205diff -Nru openswan-2.4.7.orig/programs/ipsec/ipsec.8 openswan-2.4.7/programs/ipsec/ipsec.8
206--- openswan-2.4.7.orig/programs/ipsec/ipsec.8 2003-02-27 18:51:54.000000000 +0200
207+++ openswan-2.4.7/programs/ipsec/ipsec.8 2006-12-06 22:46:54.744831590 +0200
208@@ -81,7 +81,7 @@
209 .I ipsec
210 thinks the IPsec configuration files are stored.
211 .SH FILES
212-/usr/local/lib/ipsec usual utilities directory
213+/usr/lib/ipsec usual utilities directory
214 .SH ENVIRONMENT
215 .PP
216 The following environment variables control where FreeS/WAN finds its
217diff -Nru openswan-2.4.7.orig/programs/klipsdebug/klipsdebug.5 openswan-2.4.7/programs/klipsdebug/klipsdebug.5
218--- openswan-2.4.7.orig/programs/klipsdebug/klipsdebug.5 2006-10-27 01:21:25.000000000 +0300
219+++ openswan-2.4.7/programs/klipsdebug/klipsdebug.5 2006-12-06 22:58:04.150666840 +0200
220@@ -114,7 +114,7 @@
221 .SH "FILES"
222
223 .PP
224-/proc/net/ipsec_klipsdebug, /usr/local/bin/ipsec
225+/proc/net/ipsec_klipsdebug, /usr/bin/ipsec
226
227 .SH "SEE ALSO"
228
229diff -Nru openswan-2.4.7.orig/programs/klipsdebug/klipsdebug.8 openswan-2.4.7/programs/klipsdebug/klipsdebug.8
230--- openswan-2.4.7.orig/programs/klipsdebug/klipsdebug.8 2006-10-27 01:21:25.000000000 +0300
231+++ openswan-2.4.7/programs/klipsdebug/klipsdebug.8 2006-12-06 22:58:22.295800840 +0200
232@@ -111,7 +111,7 @@
233 .SH "FILES"
234
235 .PP
236-/proc/net/ipsec_klipsdebug, /usr/local/bin/ipsec
237+/proc/net/ipsec_klipsdebug, /usr/bin/ipsec
238
239 .SH "SEE ALSO"
240
241diff -Nru openswan-2.4.7.orig/programs/mailkey/mailkey.in openswan-2.4.7/programs/mailkey/mailkey.in
242--- openswan-2.4.7.orig/programs/mailkey/mailkey.in 2006-10-29 02:49:23.000000000 +0300
243+++ openswan-2.4.7/programs/mailkey/mailkey.in 2006-12-06 22:46:54.828836839 +0200
244@@ -60,7 +60,7 @@
245
246 "$test1st"
247
248-Common concerns: This account must be able to read /etc/ipsec.secrets.
249+Common concerns: This account must be able to read /etc/ipsec/ipsec.secrets.
250 If you haven't generated your key yet, please run 'ipsec newhostkey'."
251 exit 0
252 }
253diff -Nru openswan-2.4.7.orig/programs/pluto/Makefile openswan-2.4.7/programs/pluto/Makefile
254--- openswan-2.4.7.orig/programs/pluto/Makefile 2006-11-07 17:55:52.000000000 +0200
255+++ openswan-2.4.7/programs/pluto/Makefile 2006-12-06 22:46:54.832837088 +0200
256@@ -256,7 +256,7 @@
257 -DPOLICYGROUPSDIR=\"${FINALCONFDDIR}/policies\" \
258 -DPERPEERLOGDIR=\"${FINALLOGDIR}/pluto/peer\"
259
260-ALLFLAGS = $(CPPFLAGS) $(CFLAGS)
261+ALLFLAGS = $(CPPFLAGS) $(CFLAGS) $(USERCOMPILE)
262
263 # libefence is a free memory allocation debugger
264 # Solaris 2 needs -lsocket -lnsl
265diff -Nru openswan-2.4.7.orig/programs/setup/Makefile openswan-2.4.7/programs/setup/Makefile
266--- openswan-2.4.7.orig/programs/setup/Makefile 2004-12-18 20:13:43.000000000 +0200
267+++ openswan-2.4.7/programs/setup/Makefile 2006-12-06 22:46:54.832837088 +0200
268@@ -33,25 +33,10 @@
269 @rm -f $(BINDIR)/setup
270 @$(INSTALL) $(INSTBINFLAGS) setup $(RCDIR)/ipsec
271 @ln -s $(FINALRCDIR)/ipsec $(BINDIR)/setup
272- -@for i in 0 1 2 3 4 5 6; do mkdir -p $(RCDIR)/../rc$$i.d; done
273- -@cd $(RCDIR)/../rc0.d && ln -f -s ../init.d/ipsec K76ipsec
274- -@cd $(RCDIR)/../rc1.d && ln -f -s ../init.d/ipsec K76ipsec
275- -@cd $(RCDIR)/../rc2.d && ln -f -s ../init.d/ipsec S47ipsec
276- -@cd $(RCDIR)/../rc3.d && ln -f -s ../init.d/ipsec S47ipsec
277- -@cd $(RCDIR)/../rc4.d && ln -f -s ../init.d/ipsec S47ipsec
278- -@cd $(RCDIR)/../rc5.d && ln -f -s ../init.d/ipsec S47ipsec
279- -@cd $(RCDIR)/../rc6.d && ln -f -s ../init.d/ipsec K76ipsec
280
281 install_file_list::
282 @echo $(RCDIR)/ipsec
283 @echo $(BINDIR)/setup
284- @echo $(RCDIR)/../rc0.d/K76ipsec
285- @echo $(RCDIR)/../rc1.d/K76ipsec
286- @echo $(RCDIR)/../rc2.d/S47ipsec
287- @echo $(RCDIR)/../rc3.d/S47ipsec
288- @echo $(RCDIR)/../rc4.d/S47ipsec
289- @echo $(RCDIR)/../rc5.d/S47ipsec
290- @echo $(RCDIR)/../rc6.d/K76ipsec
291
292 clean::
293 @rm -f setup
294diff -Nru openswan-2.4.7.orig/programs/showhostkey/showhostkey.in openswan-2.4.7/programs/showhostkey/showhostkey.in
295--- openswan-2.4.7.orig/programs/showhostkey/showhostkey.in 2004-11-14 15:40:41.000000000 +0200
296+++ openswan-2.4.7/programs/showhostkey/showhostkey.in 2006-12-06 22:46:54.844837840 +0200
297@@ -18,7 +18,7 @@
298 usage="Usage: $me [--file secrets] [--left] [--right] [--txt gateway] [--id id]
299 [--dhclient] [--ipseckey]"
300
301-file=/etc/ipsec.secrets
302+file=/etc/ipsec/ipsec.secrets
303 fmt=""
304 gw=
305 id=
306diff -Nru openswan-2.4.7.orig/programs/spi/spi.5 openswan-2.4.7/programs/spi/spi.5
307--- openswan-2.4.7.orig/programs/spi/spi.5 2006-10-26 23:53:59.000000000 +0300
308+++ openswan-2.4.7/programs/spi/spi.5 2006-12-06 23:00:11.910340779 +0200
309@@ -157,7 +157,7 @@
310 .SH "FILES"
311
312 .PP
313-/proc/net/ipsec_spi, /usr/local/bin/ipsec
314+/proc/net/ipsec_spi, /usr/bin/ipsec
315
316 .SH "SEE ALSO"
317
318diff -Nru openswan-2.4.7.orig/programs/spi/spi.8 openswan-2.4.7/programs/spi/spi.8
319--- openswan-2.4.7.orig/programs/spi/spi.8 2006-10-30 22:00:04.000000000 +0200
320+++ openswan-2.4.7/programs/spi/spi.8 2006-12-06 23:00:27.043286530 +0200
321@@ -215,7 +215,7 @@
322 .SH "FILES"
323
324 .PP
325-/proc/net/ipsec_spi, /usr/local/bin/ipsec
326+/proc/net/ipsec_spi, /usr/bin/ipsec
327
328 .SH "SEE ALSO"
329
330diff -Nru openswan-2.4.7.orig/programs/spigrp/spigrp.5 openswan-2.4.7/programs/spigrp/spigrp.5
331--- openswan-2.4.7.orig/programs/spigrp/spigrp.5 2006-10-26 23:50:29.000000000 +0300
332+++ openswan-2.4.7/programs/spigrp/spigrp.5 2006-12-06 23:01:25.650949280 +0200
333@@ -67,7 +67,7 @@
334 .SH "FILES"
335
336 .PP
337-/proc/net/ipsec_spigrp, /usr/local/bin/ipsec
338+/proc/net/ipsec_spigrp, /usr/bin/ipsec
339
340 .SH "SEE ALSO"
341
342diff -Nru openswan-2.4.7.orig/programs/spigrp/spigrp.8 openswan-2.4.7/programs/spigrp/spigrp.8
343--- openswan-2.4.7.orig/programs/spigrp/spigrp.8 2006-10-26 23:50:29.000000000 +0300
344+++ openswan-2.4.7/programs/spigrp/spigrp.8 2006-12-06 23:01:39.079788532 +0200
345@@ -87,7 +87,7 @@
346 .SH "FILES"
347
348 .PP
349-/proc/net/ipsec_spigrp, /usr/local/bin/ipsec
350+/proc/net/ipsec_spigrp, /usr/bin/ipsec
351
352 .SH "SEE ALSO"
353
354diff -Nru openswan-2.4.7.orig/programs/tncfg/tncfg.5 openswan-2.4.7/programs/tncfg/tncfg.5
355--- openswan-2.4.7.orig/programs/tncfg/tncfg.5 2006-10-26 23:58:11.000000000 +0300
356+++ openswan-2.4.7/programs/tncfg/tncfg.5 2006-12-06 23:01:59.385057530 +0200
357@@ -101,7 +101,7 @@
358 .SH "FILES"
359
360 .PP
361-/proc/net/ipsec_tncfg, /usr/local/bin/ipsec
362+/proc/net/ipsec_tncfg, /usr/bin/ipsec
363
364 .SH "SEE ALSO"
365
366diff -Nru openswan-2.4.7.orig/programs/tncfg/tncfg.8 openswan-2.4.7/programs/tncfg/tncfg.8
367--- openswan-2.4.7.orig/programs/tncfg/tncfg.8 2006-10-26 23:58:11.000000000 +0300
368+++ openswan-2.4.7/programs/tncfg/tncfg.8 2006-12-06 23:02:09.245673780 +0200
369@@ -63,7 +63,7 @@
370 .SH "FILES"
371
372 .PP
373-/proc/net/ipsec_tncfg, /usr/local/bin/ipsec
374+/proc/net/ipsec_tncfg, /usr/bin/ipsec
375
376 .SH "SEE ALSO"
377
diff --git a/meta-demoapps/recipes-connectivity/openswan/openswan_2.4.7.bb b/meta-demoapps/recipes-connectivity/openswan/openswan_2.4.7.bb
new file mode 100644
index 0000000000..022f709f99
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/openswan/openswan_2.4.7.bb
@@ -0,0 +1,37 @@
1SECTION = "console/network"
2SUMMARY = "IPsec implementation"
3DESCRIPTION = "Openswan is an Open Source implementation of IPsec for the \
4Linux operating system."
5HOMEPAGE = "http://www.openswan.org"
6LICENSE = "GPLv2"
7DEPENDS = "gmp flex-native"
8RRECOMMENDS = "kernel-module-ipsec"
9RDEPENDS_nylon = "perl"
10PR = "r0"
11
12SRC_URI = "http://www.openswan.org/download/old/openswan-${PV}.tar.gz \
13 file://openswan-2.4.7-gentoo.patch;patch=1 \
14 file://installflags.patch;patch=1 \
15 file://ld-library-path-breakage.patch;patch=1"
16S = "${WORKDIR}/openswan-${PV}"
17
18PARALLEL_MAKE = ""
19EXTRA_OEMAKE = "DESTDIR=${D} \
20 USERCOMPILE="${CFLAGS}" \
21 FINALCONFDIR=${sysconfdir}/ipsec \
22 INC_RCDEFAULT=${sysconfdir}/init.d \
23 INC_USRLOCAL=${prefix} \
24 INC_MANDIR=share/man WERROR=''"
25
26do_compile () {
27 oe_runmake programs
28}
29
30do_install () {
31 oe_runmake install
32}
33
34FILES_${PN} = "${sysconfdir} ${libdir}/ipsec/* ${sbindir}/* ${libexecdir}/ipsec/*"
35FILES_${PN}-dbg += "${libdir}/ipsec/.debug ${libexecdir}/ipsec/.debug"
36
37CONFFILES_${PN} = "${sysconfdir}/ipsec/ipsec.conf"
diff --git a/meta-demoapps/recipes-connectivity/opensync/libopensync-0.37/build-in-src.patch b/meta-demoapps/recipes-connectivity/opensync/libopensync-0.37/build-in-src.patch
new file mode 100644
index 0000000000..1810b339a6
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libopensync-0.37/build-in-src.patch
@@ -0,0 +1,18 @@
1---
2 cmake/OpenSyncInternal.cmake.in | 1 -
3 1 file changed, 1 deletion(-)
4
5--- libopensync-0.36.orig/cmake/OpenSyncInternal.cmake.in
6+++ libopensync-0.36/cmake/OpenSyncInternal.cmake.in
7@@ -5,11 +5,10 @@ INCLUDE( OpenSyncTesting )
8 INCLUDE( OpenSyncPackaging )
9 INCLUDE( OpenSyncPlugin )
10 INCLUDE( OpenSyncPlatforms )
11 INCLUDE( MacroEnsureOutOfSourceBuild )
12
13-MACRO_ENSURE_OUT_OF_SOURCE_BUILD("${CMAKE_PROJECT_NAME} doesn't allow to build within the source directory. Please, create a seperate build directory and run 'cmake ${PROJECT_SOURCE_DIR} [options]'!")
14
15
16 SET( OPENSYNC_PLUGINDIR "@OPENSYNC_PLUGINDIR@" )
17 SET( OPENSYNC_FORMATSDIR "@OPENSYNC_FORMATSDIR@" )
18 SET( OPENSYNC_PYTHON_PLUGINDIR "@OPENSYNC_PYTHON_PLUGINDIR@" )
diff --git a/meta-demoapps/recipes-connectivity/opensync/libopensync-0.37/cmake.patch b/meta-demoapps/recipes-connectivity/opensync/libopensync-0.37/cmake.patch
new file mode 100644
index 0000000000..7ea4613548
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libopensync-0.37/cmake.patch
@@ -0,0 +1,17 @@
1---
2 opensync/CMakeLists.txt | 1 -
3 1 file changed, 1 deletion(-)
4
5Index: libopensync-0.37/opensync/CMakeLists.txt
6===================================================================
7--- libopensync-0.37.orig/opensync/CMakeLists.txt 2008-10-15 13:56:45.000000000 +0100
8+++ libopensync-0.37/opensync/CMakeLists.txt 2008-10-15 13:59:03.000000000 +0100
9@@ -67,8 +67,6 @@
10 SET_TARGET_PROPERTIES( opensync PROPERTIES VERSION ${OPENSYNC_LIBVERSION_VERSION} )
11 SET_TARGET_PROPERTIES( opensync PROPERTIES SOVERSION ${OPENSYNC_LIBVERSION_SOVERSION} )
12
13-SET_TARGET_PROPERTIES( opensync PROPERTIES COMPILE_FLAGS ${SYMBOLS_VISIBILITY} )
14-
15 IF ( OPENSYNC_UNITTESTS )
16 ADD_LIBRARY( opensync-testing SHARED ${libopensync_LIB_SRCS} )
17 TARGET_LINK_LIBRARIES( opensync-testing ${GLIB2_LIBRARIES} ${GTHREAD2_LIBRARIES} ${GMODULE2_LIBRARIES} ${LIBXML2_LIBRARIES} ${LIBXSLT_LIBRARIES} ${LIBEXSLT_LIBRARIES} ${SQLITE3_LIBRARIES} )
diff --git a/meta-demoapps/recipes-connectivity/opensync/libopensync-0.37/no-python-check.patch b/meta-demoapps/recipes-connectivity/opensync/libopensync-0.37/no-python-check.patch
new file mode 100644
index 0000000000..04257bc623
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libopensync-0.37/no-python-check.patch
@@ -0,0 +1,16 @@
1---
2 CMakeLists.txt | 1 -
3 1 file changed, 1 deletion(-)
4
5Index: libopensync-0.37/CMakeLists.txt
6===================================================================
7--- libopensync-0.37.orig/CMakeLists.txt 2008-08-18 16:14:24.000000000 +0100
8+++ libopensync-0.37/CMakeLists.txt 2008-10-15 14:00:12.000000000 +0100
9@@ -65,7 +65,6 @@
10 FIND_PACKAGE( LibXslt REQUIRED )
11 FIND_PACKAGE( LibExslt REQUIRED )
12 FIND_PACKAGE( SWIG )
13-FIND_PACKAGE( PythonLibs )
14 FIND_PACKAGE( Check )
15
16 ADD_SUBDIRECTORY( opensync )
diff --git a/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-evolution2/0.37-fixes.patch b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-evolution2/0.37-fixes.patch
new file mode 100644
index 0000000000..4a1802ce17
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-evolution2/0.37-fixes.patch
@@ -0,0 +1,23 @@
1Index: libopensync-plugin-evolution2-0.36/cmake/modules/FindOpenSync.cmake
2===================================================================
3--- libopensync-plugin-evolution2-0.36.orig/cmake/modules/FindOpenSync.cmake 2008-10-20 13:07:14.000000000 +0100
4+++ libopensync-plugin-evolution2-0.36/cmake/modules/FindOpenSync.cmake 2008-10-20 13:08:09.000000000 +0100
5@@ -23,15 +23,15 @@
6 ENDIF ( OpenSync_FIND_REQUIRED )
7
8 IF ( OPENSYNC_MIN_VERSION )
9- PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} opensync-1.0>=${OPENSYNC_MIN_VERSION} )
10+ PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} libopensync>=${OPENSYNC_MIN_VERSION} )
11 ELSE ( OPENSYNC_MIN_VERSION )
12- PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} opensync-1.0 )
13+ PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} libopensync )
14 ENDIF ( OPENSYNC_MIN_VERSION )
15
16 FIND_PROGRAM( PKGCONFIG_EXECUTABLE NAMES pkg-config )
17
18 IF ( PKGCONFIG_EXECUTABLE )
19- EXEC_PROGRAM( ${PKGCONFIG_EXECUTABLE} ARGS opensync-1.0 --variable=datadir OUTPUT_VARIABLE _opensync_data_DIR )
20+ EXEC_PROGRAM( ${PKGCONFIG_EXECUTABLE} ARGS libopensync --variable=datadir OUTPUT_VARIABLE _opensync_data_DIR )
21 STRING( REGEX REPLACE "[\r\n]" " " _opensync_data_DIR "${_opensync_data_DIR}" )
22 ENDIF ( PKGCONFIG_EXECUTABLE )
23
diff --git a/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-evolution2_0.36.bb b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-evolution2_0.36.bb
new file mode 100644
index 0000000000..6548c206a5
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-evolution2_0.36.bb
@@ -0,0 +1,8 @@
1require libopensync-plugin_0.36.inc
2LICENSE = "LGPL"
3
4DEPENDS += " eds-dbus"
5
6SRC_URI += "file://0.37-fixes.patch;patch=1"
7
8PR = "r1"
diff --git a/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-file_0.37.bb b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-file_0.37.bb
new file mode 100644
index 0000000000..404c172490
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-file_0.37.bb
@@ -0,0 +1,2 @@
1require libopensync-plugin_0.36.inc
2LICENSE = "LGPL"
diff --git a/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-google-calendar_0.36.bb b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-google-calendar_0.36.bb
new file mode 100644
index 0000000000..dbcb2aac12
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-google-calendar_0.36.bb
@@ -0,0 +1,2 @@
1require libopensync-plugin_0.36.inc
2LICENSE = "GPLv2"
diff --git a/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-irmc_0.36.bb b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-irmc_0.36.bb
new file mode 100644
index 0000000000..cb601f2dc7
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-irmc_0.36.bb
@@ -0,0 +1,4 @@
1require libopensync-plugin_0.36.inc
2LICENSE = "GPLv2"
3
4DEPENDS += "openobex bluez4"
diff --git a/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-syncml/fixerror.patch b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-syncml/fixerror.patch
new file mode 100644
index 0000000000..7dad889422
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-syncml/fixerror.patch
@@ -0,0 +1,13 @@
1Index: libopensync-plugin-syncml-0.38/src/syncml_callbacks.c
2===================================================================
3--- libopensync-plugin-syncml-0.38.orig/src/syncml_callbacks.c 2009-07-31 10:30:33.000000000 +0100
4+++ libopensync-plugin-syncml-0.38/src/syncml_callbacks.c 2009-07-31 10:30:39.000000000 +0100
5@@ -405,7 +405,7 @@
6 } else {
7 /* This problem should be fixed with the next SLOW-SYNC. */
8 osync_trace(TRACE_EXIT_ERROR, "%s - unexpected Add or Replace command", __func__);
9- smlErrorSet(error, SML_ERROR_TEMPORARY, "Unwanted Add or Replace command on second OMA DS session.");
10+ smlErrorSet(error, SML_ERROR_GENERIC, "Unwanted Add or Replace command on second OMA DS session.");
11 return FALSE;
12 }
13 }
diff --git a/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-syncml_0.38.bb b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-syncml_0.38.bb
new file mode 100644
index 0000000000..e33336f57e
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-syncml_0.38.bb
@@ -0,0 +1,8 @@
1require libopensync-plugin_0.36.inc
2LICENSE = "LGPL"
3
4DEPENDS += " libsyncml (>= 0.4.7)"
5
6SRC_URI += "file://fixerror.patch;patch=1"
7
8PR = "r1"
diff --git a/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-vformat_0.37.bb b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-vformat_0.37.bb
new file mode 100644
index 0000000000..a7d50dc615
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin-vformat_0.37.bb
@@ -0,0 +1,4 @@
1require libopensync-plugin_0.36.inc
2LICENSE = "LGPL"
3
4DEPENDS += "libcheck"
diff --git a/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin_0.36.inc b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin_0.36.inc
new file mode 100644
index 0000000000..147fcfb5ed
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libopensync-plugin_0.36.inc
@@ -0,0 +1,11 @@
1DEPENDS = "libopensync (>= 0.36)"
2
3DESCRIPTION ?= "OpenSync plugin"
4
5SRC_URI = "http://opensync.org/download/releases/${PV}/${P}.tar.bz2"
6
7inherit cmake
8
9FILES_${PN} += "${libdir}/opensync*/plugins/*.so \
10 ${libdir}/opensync*/formats/*.so \
11 ${datadir}/opensync*/defaults/"
diff --git a/meta-demoapps/recipes-connectivity/opensync/libopensync_0.37.bb b/meta-demoapps/recipes-connectivity/opensync/libopensync_0.37.bb
new file mode 100644
index 0000000000..437bdd2885
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libopensync_0.37.bb
@@ -0,0 +1,26 @@
1LICENSE = "LGPL"
2HOMEPAGE = "http://www.opensync.org/"
3SUMMARY = "Synchronization framwork"
4DESCRIPTION = "The OpenSync project is an ongoing effort to create a synchronization framework that will be a platform independent, general purpose synchronization engine utilizing modular plugins for content formats and different kind of connection types. OpenSync's modularity should allow it to be extended easily to new devices and purposes without radically changing the architecture itself, allowing it to support wide variety of devices used today and in the future."
5DEPENDS = "sqlite3 libxml2 glib-2.0 libcheck zlib libxslt"
6
7PR = "r1"
8
9SRC_URI = "http://opensync.org/download/releases/${PV}/libopensync-${PV}.tar.bz2\
10 file://cmake.patch;patch=1 \
11 file://build-in-src.patch;patch=1 \
12 file://no-python-check.patch;patch=1"
13
14inherit cmake pkgconfig
15
16LEAD_SONAME = "libopensync.so"
17
18FILES_${PN} += " ${libdir}/opensync*/formats/*.so \
19 ${libdir}/opensync*/osplugin \
20 ${datadir}/opensync*/schemas \
21 ${datadir}/opensync*/capabilities \
22 ${datadir}/opensync*/descriptions \
23 "
24FILES_${PN}-dbg += " ${libdir}/opensync*/formats/.debug/*.so \
25 ${libdir}/opensync*/.debug/osplugin "
26
diff --git a/meta-demoapps/recipes-connectivity/opensync/libsync_svn.bb b/meta-demoapps/recipes-connectivity/opensync/libsync_svn.bb
new file mode 100644
index 0000000000..74ca752ad6
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libsync_svn.bb
@@ -0,0 +1,20 @@
1SUMMARY = "GObject-based sync library"
2DESCRIPTION = "LibSync is a GObject-based framework for more convenient use of \
3OpenSync in GLib applications."
4LICENSE = "LGPL"
5SECTION = "x11"
6DEPENDS = "glib-2.0 gtk+ libglade libopensync avahi"
7RRECOMMENDS = "\
8 libopensync-plugin-file \
9 "
10PV = "0.0+svnr${SRCREV}"
11
12SRC_URI = "svn://svn.o-hand.com/repos/sync/trunk;module=sync;proto=http"
13
14inherit autotools pkgconfig
15
16S = "${WORKDIR}/sync"
17
18PACKAGES += "synctool"
19FILES_${PN} = "${libdir}/lib*.so.*"
20FILES_synctool = "${bindir} ${datadir}"
diff --git a/meta-demoapps/recipes-connectivity/opensync/libsyncml/build-in-src.patch b/meta-demoapps/recipes-connectivity/opensync/libsyncml/build-in-src.patch
new file mode 100644
index 0000000000..d8106bdfc7
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libsyncml/build-in-src.patch
@@ -0,0 +1,19 @@
1---
2 CMakeLists.txt | 4 ----
3 1 file changed, 4 deletions(-)
4
5Index: libsyncml-0.5.4/CMakeLists.txt
6===================================================================
7--- libsyncml-0.5.4.orig/CMakeLists.txt 2009-07-31 09:56:16.000000000 +0100
8+++ libsyncml-0.5.4/CMakeLists.txt 2009-07-31 09:57:33.000000000 +0100
9@@ -72,10 +72,6 @@
10 CHECK_TYPE_SIZE( uint32_t UINT32_T )
11 CHECK_TYPE_SIZE( uint8_t UINT8_T )
12
13-# ensure out od source build
14-INCLUDE( MacroEnsureOutOfSourceBuild )
15-MACRO_ENSURE_OUT_OF_SOURCE_BUILD("${CMAKE_PROJECT_NAME} doesn't allow to build within the source directory. Please, create a seperate build directory and run 'cmake ${PROJECT_SOURCE_DIR} [options]'!")
16-
17 # find requirements
18 SET ( GLIB2_MIN_VERSION "2.12" )
19 SET ( OPENOBEX_MIN_VERSION "1.1" )
diff --git a/meta-demoapps/recipes-connectivity/opensync/libsyncml_0.5.4.bb b/meta-demoapps/recipes-connectivity/opensync/libsyncml_0.5.4.bb
new file mode 100644
index 0000000000..c045698031
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/libsyncml_0.5.4.bb
@@ -0,0 +1,17 @@
1DESCRIPTION = "Libsyncml is a implementation of the SyncML protocol."
2HOMEPAGE = "http://libsyncml.opensync.org/"
3LICENSE = "LGPL"
4DEPENDS = "sed-native wbxml2 libsoup libxml2 bluez4 openobex libcheck"
5PR = "r1"
6
7SRC_URI = "${SOURCEFORGE_MIRROR}/libsyncml/0.5.4/libsyncml-0.5.4.tar.bz2 \
8 file://build-in-src.patch;patch=1"
9
10inherit cmake pkgconfig
11
12PACKAGES += "${PN}-tools"
13
14FILES_${PN}-tools = "${bindir}"
15FILES_${PN} = "${libdir}/*.so.*"
16
17export VERBOSE=1
diff --git a/meta-demoapps/recipes-connectivity/opensync/msynctool_0.38.bb b/meta-demoapps/recipes-connectivity/opensync/msynctool_0.38.bb
new file mode 100644
index 0000000000..ff86a0b103
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/opensync/msynctool_0.38.bb
@@ -0,0 +1,20 @@
1SUMMARY = "Calendar (and other PIM data) synchronization program"
2DESCRIPTION = "msynctool is a program to synchronize calendars, \
3addressbooks and other PIM data between programs on your computer and \
4other computers, mobile devices, PDAs or cell phones. It uses the \
5OpenSync plugins when synchronizing data."
6HOMEPAGE = "http://www.opensync.org/"
7LICENSE = "GPLv2+"
8LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
9 file://tools/msynctool.c;beginline=1;endline=20;md5=0b71ef245b75c74bff7d7ec58b9b4527"
10
11DEPENDS = "libopensync glib-2.0"
12
13SRC_URI = "http://www.opensync.org/download/releases/${PV}/msynctool-${PV}.tar.bz2"
14
15inherit cmake pkgconfig
16
17PR = "r0"
18
19SRC_URI[md5sum] = "495c45d6f12d3523a736864b0ced6ce5"
20SRC_URI[sha256sum] = "4a903d4db05bf2f677a675ec47e9791da9b1752c9feda0026157e82aa97e372b"
diff --git a/meta-demoapps/recipes-connectivity/telepathy/empathy/no-gnome-doc.patch b/meta-demoapps/recipes-connectivity/telepathy/empathy/no-gnome-doc.patch
new file mode 100644
index 0000000000..13e7943da5
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/telepathy/empathy/no-gnome-doc.patch
@@ -0,0 +1,39 @@
1---
2 Makefile.am | 2 +-
3 configure.ac | 1 -
4 help/Makefile.am | 1 -
5 3 files changed, 1 insertion(+), 3 deletions(-)
6
7--- empathy-0.23.4.orig/Makefile.am
8+++ empathy-0.23.4/Makefile.am
9@@ -1,6 +1,6 @@
10-SUBDIRS = tools extensions po data libempathy libempathy-gtk src docs help
11+SUBDIRS = tools extensions po data libempathy libempathy-gtk src
12
13 if HAVE_MEGAPHONE
14 SUBDIRS += megaphone
15 endif
16
17--- empathy-0.23.4.orig/configure.ac
18+++ empathy-0.23.4/configure.ac
19@@ -55,11 +55,10 @@ AM_PROG_LIBTOOL
20 AM_PROG_MKDIR_P
21 AM_PATH_GLIB_2_0
22 AC_PATH_XTRA
23 IT_PROG_INTLTOOL([0.35.0])
24 GTK_DOC_CHECK([1.3])
25-GNOME_DOC_INIT
26 IDT_COMPILE_WARNINGS
27 AC_PATH_PROG(DBUS_BINDING_TOOL, dbus-binding-tool)
28 AC_PATH_PROG(GCONFTOOL, gconftool-2)
29 AM_GCONF_SOURCE_2
30 GLIB_GENMARSHAL=`$PKG_CONFIG glib-2.0 --variable=glib_genmarshal`
31--- empathy-0.23.4.orig/help/Makefile.am
32+++ empathy-0.23.4/help/Makefile.am
33@@ -1,6 +1,5 @@
34-include $(top_srcdir)/gnome-doc-utils.make
35
36 DOC_MODULE = empathy
37 DOC_ENTITIES = legal.xml
38 DOC_FIGURES = \
39 figures/empathy-main-window.png \
diff --git a/meta-demoapps/recipes-connectivity/telepathy/empathy_2.26.1.bb b/meta-demoapps/recipes-connectivity/telepathy/empathy_2.26.1.bb
new file mode 100644
index 0000000000..2e07b19c16
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/telepathy/empathy_2.26.1.bb
@@ -0,0 +1,29 @@
1SUMMARY = "a Telepathy based IM client"
2DESCRIPTION = "Instant messaging program supporting text, voice, video, file \
3transfers and interapplication communication over many different protocols, \
4include: AIM, MSN, Google Talk (Jabber/XMPP), Facebook, Yahoo!, Salut, \
5Gadu-Gadu, Groupwise, ICQ and QQ."
6HOMEPAGE = "http://blogs.gnome.org/view/xclaesse/2007/04/26/0"
7LICENSE = "GPL"
8DEPENDS = "libcanberra telepathy-farsight gnome-doc-utils python-native telepathy-python telepathy-mission-control libtelepathy telepathy-glib gtk+ gconf libglade eds-dbus"
9RDEPENDS = "telepathy-mission-control"
10RRECOMMENDS = "telepathy-gabble"
11PR = "r2"
12
13inherit gnome
14
15PARALLEL_MAKE = ""
16
17EXTRA_OECONF += "--disable-scrollkeeper"
18
19PACKAGES =+ "empathy-scrollkeeper-junk"
20FILES_empathy-scrollkeeper-junk = "/var/lib/scrollkeeper"
21
22FILES_${PN} += "${datadir}/mission-control/profiles/*.profile \
23 ${datadir}/dbus-1/services/*.service \
24 ${datadir}/telepathy/managers/*.chandler \
25 ${datadir}/icons \
26 ${libdir}/python*"
27
28FILES_${PN}-dbg += "${libdir}/python*/*/.debug"
29
diff --git a/meta-demoapps/recipes-connectivity/telepathy/telepathy-farsight_0.0.7.bb b/meta-demoapps/recipes-connectivity/telepathy/telepathy-farsight_0.0.7.bb
new file mode 100644
index 0000000000..3e8d10fe50
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/telepathy/telepathy-farsight_0.0.7.bb
@@ -0,0 +1,18 @@
1SUMMARY = "Telepathy fasrsight"
2DESCRIPTION = "Glue library for telepathy media signalling and the media \
3streaming capabilities of Farsight2."
4HOMEPAGE = "http://telepathy.freedesktop.org/wiki/"
5DEPENDS = "glib-2.0 dbus telepathy-glib farsight2"
6LICENSE = "LGPLv2"
7
8SRC_URI = "http://telepathy.freedesktop.org/releases/telepathy-farsight/${P}.tar.gz \
9"
10
11inherit autotools
12
13EXTRA_OECONF = "--disable-python"
14
15AUTOTOOLS_STAGE_PKGCONFIG = "1"
16
17FILES_${PN} += "${datadir}/telepathy \
18 ${datadir}/dbus-1"
diff --git a/meta-demoapps/recipes-connectivity/telepathy/telepathy-gabble/gabble.manager b/meta-demoapps/recipes-connectivity/telepathy/telepathy-gabble/gabble.manager
new file mode 100644
index 0000000000..9000cd41cc
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/telepathy/telepathy-gabble/gabble.manager
@@ -0,0 +1,33 @@
1
2[ConnectionManager]
3BusName=org.freedesktop.Telepathy.ConnectionManager.gabble
4ObjectPath=/org/freedesktop/Telepathy/ConnectionManager/gabble
5
6[Protocol jabber]
7param-account=s required register
8param-password=s required register
9param-server=s
10param-resource=s
11param-priority=n
12param-port=q
13param-old-ssl=b
14param-register=b
15param-low-bandwidth=b
16param-https-proxy-server=s
17param-https-proxy-port=q
18param-fallback-conference-server=s
19param-stun-server=s
20param-stun-port=q
21param-ignore-ssl-errors=b
22param-alias=s
23param-mac=s
24param-btid=s
25default-resource=Telepathy
26default-priority=0
27default-port=5222
28default-old-ssl=false
29default-register=false
30default-low-bandwidth=false
31default-https-proxy-port=443
32default-stun-port=3478
33default-ignore-ssl-errors=false
diff --git a/meta-demoapps/recipes-connectivity/telepathy/telepathy-gabble_0.7.8.bb b/meta-demoapps/recipes-connectivity/telepathy/telepathy-gabble_0.7.8.bb
new file mode 100644
index 0000000000..ff49418540
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/telepathy/telepathy-gabble_0.7.8.bb
@@ -0,0 +1,18 @@
1SUMMARY = "Telepathy Jabber/XMPP connection manager"
2DESCRIPTION = "Telepathy implementation of the Jabber/XMPP protocols."
3HOMEPAGE = "http://telepathy.freedesktop.org/wiki/"
4DEPENDS = "glib-2.0 dbus loudmouth telepathy-glib dbus-glib"
5LICENSE = "LGPL"
6
7# gabble.manager needs to get regenerated every release, so please don't copy it over blindly
8SRC_URI = "http://telepathy.freedesktop.org/releases/telepathy-gabble/${P}.tar.gz \
9 file://gabble.manager"
10
11inherit autotools pkgconfig
12
13do_compile_prepend() {
14 cp ${WORKDIR}/gabble.manager ${S}/data/
15}
16
17FILES_${PN} += "${datadir}/telepathy \
18 ${datadir}/dbus-1"
diff --git a/meta-demoapps/recipes-connectivity/wbxml/files/no-doc-install.patch b/meta-demoapps/recipes-connectivity/wbxml/files/no-doc-install.patch
new file mode 100644
index 0000000000..16084e60e6
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/wbxml/files/no-doc-install.patch
@@ -0,0 +1,15 @@
1--- wbxml2-0.9.2/Makefile.am.old 2007-01-03 19:50:24.000000000 +0000
2+++ wbxml2-0.9.2/Makefile.am 2007-01-03 19:50:39.000000000 +0000
3@@ -24,9 +24,9 @@
4 TODO\
5 doxygen.h
6
7-install-data-local:
8- $(mkinstalldirs) $(DESTDIR)$(wbxmldocdir)/manual
9- cp -Rp doc/* $(DESTDIR)$(wbxmldocdir)/manual
10+#install-data-local:
11+# $(mkinstalldirs) $(DESTDIR)$(wbxmldocdir)/manual
12+# cp -Rp doc/* $(DESTDIR)$(wbxmldocdir)/manual
13
14 dist-bz2: distdir
15 sed -e "s/tar.gz/tar.bz2/g" $(distdir)/wbxml2.spec > $(distdir)/wbxml2.spec.aux
diff --git a/meta-demoapps/recipes-connectivity/wbxml/wbxml2_0.9.2.bb b/meta-demoapps/recipes-connectivity/wbxml/wbxml2_0.9.2.bb
new file mode 100644
index 0000000000..e3ac0017ff
--- /dev/null
+++ b/meta-demoapps/recipes-connectivity/wbxml/wbxml2_0.9.2.bb
@@ -0,0 +1,24 @@
1SUMMARY = "Parsing and Encoding of WBXML documents"
2DESCRIPTION = "The WBXML Library (aka libwbxml) contains a library and \
3its associated tools to Parse, Encode and Handle WBXML documents. The \
4WBXML format is a binary representation of XML, defined by the Wap \
5Forum, and used to reduce bandwidth in mobile communications."
6LICENSE = "GPLv2"
7
8DEPENDS = "libxml2 sed-native expat"
9
10SRC_URI = "${SOURCEFORGE_MIRROR}/wbxmllib/${P}.tar.gz \
11 file://no-doc-install.patch;patch=1"
12
13inherit autotools pkgconfig
14
15do_configure_append() {
16 sed -i s:-I/usr/include::g Makefile
17 sed -i s:-I/usr/include::g */Makefile
18}
19
20PACKAGES += "${PN}-tools"
21
22FILES_${PN}-tools = "${bindir}"
23FILES_${PN} = "${libdir}/*.so.*"
24
diff --git a/meta-demoapps/recipes-gnome/abiword/abiword-2.5.inc b/meta-demoapps/recipes-gnome/abiword/abiword-2.5.inc
new file mode 100644
index 0000000000..dcd3b85534
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/abiword/abiword-2.5.inc
@@ -0,0 +1,63 @@
1DESCRIPTION = "AbiWord is free word processing program similar to Microsoft(r) Word"
2HOMEPAGE = "http://www.abiword.org"
3SECTION = "x11/office"
4LICENSE = "GPLv2"
5DEPENDS = "perl-native wv libgsf libglade libfribidi jpeg libpng libxml2"
6RDEPENDS = "glibc-gconv-ibm850 glibc-gconv-cp1252 \
7 glibc-gconv-iso8859-15 glibc-gconv-iso8859-1"
8
9SRC_URI = "http://www.abiword.org/downloads/abiword/${PV}/source/abiword-${PV}.tar.gz"
10
11#want 2.x from 2.x.y for the installation directory
12SHRT_VER = "${@bb.data.getVar('PV',d,1).split('.')[0]}.${@bb.data.getVar('PV',d,1).split('.')[1]}"
13
14FILES_${PN} += " \
15 ${datadir}/icons/* \
16 ${datadir}/abiword-${SHRT_VER}/glade \
17 ${datadir}/abiword-${SHRT_VER}/scripts \
18 ${datadir}/abiword-${SHRT_VER}/system.profile-en \
19 ${datadir}/abiword-${SHRT_VER}/system.profile-en_GB \
20# ${datadir}/abiword-${SHRT_VER}/templates/A4.awt \
21# ${datadir}/abiword-${SHRT_VER}/templates/US-Letter.awt \
22 ${datadir}/abiword-${SHRT_VER}/templates/normal.awt \
23 ${datadir}/abiword-${SHRT_VER}/templates/normal.awt-en_GB \
24 ${datadir}/abiword-${SHRT_VER}/templates/Employee-Directory.awt \
25 ${datadir}/abiword-${SHRT_VER}/templates/Business-Report.awt \
26 ${datadir}/abiword-${SHRT_VER}/templates/Fax-Coversheet.awt \
27 ${datadir}/abiword-${SHRT_VER}/templates/Resume.awt \
28 ${datadir}/abiword-${SHRT_VER}/templates/Two-Columns.awt \
29 ${datadir}/abiword-${SHRT_VER}/templates/Memo.awt \
30 ${datadir}/abiword-${SHRT_VER}/templates/Press-Release.awt "
31
32inherit autotools pkgconfig
33
34PARALLEL_MAKE = ""
35
36EXTRA_OECONF = " --disable-pspell \
37 --disable-spellcheck \
38 --disable-printing \
39 --disable-exports \
40 --with-sys-wv"
41
42# AbiWord configure.ac does not play nicely with autoreconf
43# so use the autogen.sh script that comes with AbiWord
44#
45do_configure() {
46 cd ${S}
47 export NOCONFIGURE="no"; ./autogen.sh
48 oe_runconf
49}
50
51
52do_install_append() {
53 install -d ${D}${datadir}/pixmaps/
54 mv ${D}${datadir}/icons/* ${D}${datadir}/pixmaps/
55}
56
57PACKAGES += " abiword-clipart abiword-icons abiword-strings abiword-systemprofiles abiword-templates "
58
59FILES_abiword-clipart += "${datadir}/abiword-${SHRT_VER}/clipart"
60FILES_abiword-icons += "${datadir}/abiword-${SHRT_VER}/icons"
61FILES_abiword-strings += "${datadir}/abiword-${SHRT_VER}/AbiWord/strings"
62FILES_abiword-systemprofiles += "${datadir}/abiword-${SHRT_VER}/AbiWord/system.profile*"
63FILES_abiword-templates += "${datadir}/abiword-${SHRT_VER}/templates"
diff --git a/meta-demoapps/recipes-gnome/abiword/abiword-embedded_2.5.2.bb b/meta-demoapps/recipes-gnome/abiword/abiword-embedded_2.5.2.bb
new file mode 100644
index 0000000000..47cf9e03c0
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/abiword/abiword-embedded_2.5.2.bb
@@ -0,0 +1,10 @@
1require abiword-2.5.inc
2
3EXTRA_OECONF += "--enable-embedded"
4
5S = "${WORKDIR}/abiword-${PV}"
6
7RCONFLICTS = "abiword"
8RPROVIDES += "abiword"
9
10
diff --git a/meta-demoapps/recipes-gnome/abiword/abiword.inc b/meta-demoapps/recipes-gnome/abiword/abiword.inc
new file mode 100644
index 0000000000..d2fabf931c
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/abiword/abiword.inc
@@ -0,0 +1,63 @@
1DESCRIPTION = "AbiWord is free word processing program similar to Microsoft(r) Word"
2SECTION = "gnome/office"
3HOMEPAGE = "http://www.abiword.org""
4LICENSE = "GPLv2"
5
6DEPENDS = "libgsf libglade libfribidi libxml2 wv"
7RRECOMMENDS = "glibc-gconv-ibm850 glibc-gconv-cp1252 \
8 glibc-gconv-iso8859-15 glibc-gconv-iso8859-1"
9
10# Share this file between recipes that use cvs and that pull tarballs
11# (one day change this to differentiate automatically based on PV and set the
12# SRC_URI and S var directly)
13RELURI = "http://www.abiword.org/downloads/abiword/${PV}/source/abiword-${PV}.tar.gz"
14RELSRC = "${WORKDIR}/abiword-${PV}/abi"
15
16CVSURI = "cvs://anoncvs:anoncvs@anoncvs.abisource.com/cvsroot;module=abi"
17CVSSRC = "${WORKDIR}/abi"
18
19#want 2.x from 2.x.y for the installation directory
20SHRT_VER = "${@bb.data.getVar('PV',d,1).split('.')[0]}.${@bb.data.getVar('PV',d,1).split('.')[1]}"
21
22FILES_${PN} += " \
23 ${datadir}/icons/* \
24 ${datadir}/mime-info \
25 ${datadir}/abiword-${SHRT_VER}/glade \
26 ${datadir}/abiword-${SHRT_VER}/system.profile-en \
27 ${datadir}/abiword-${SHRT_VER}/system.profile-en-GB \
28# ${datadir}/abiword-${SHRT_VER}/templates/normal.awt \
29# ${datadir}/abiword-${SHRT_VER}/templates/normal.awt-en_GB \
30 "
31
32inherit autotools pkgconfig
33
34PARALLEL_MAKE = ""
35
36# This is a minimalistic AbiWord build
37#
38# if you are planning to build plugins, make sure to comment out the
39# --disable-exports options
40
41EXTRA_OECONF = " --enable-embedded=poky \
42 --disable-printing \
43 --with-sys-wv \
44 --disable-exports \
45 --disable-spellcheck"
46
47# TODO -- refactor this, so that instead of two strings and profiles
48# packages we have lots of locale packages, each with a set of strings and
49# a profile
50#
51PACKAGES += " abiword-strings abiword-systemprofiles"
52
53FILES_abiword-strings += "${datadir}/abiword-${SHRT_VER}/strings"
54FILES_abiword-systemprofiles += "${datadir}/abiword-${SHRT_VER}/system.profile*"
55
56# AbiWord configure.ac does not play nicely with autoreconf
57# so use the autogen.sh script that comes with AbiWord
58#
59do_configure() {
60 cd ${S}
61 export NOCONFIGURE="no"; ./autogen.sh
62 oe_runconf
63}
diff --git a/meta-demoapps/recipes-gnome/abiword/abiword_2.5.2.bb b/meta-demoapps/recipes-gnome/abiword/abiword_2.5.2.bb
new file mode 100644
index 0000000000..566d0fa203
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/abiword/abiword_2.5.2.bb
@@ -0,0 +1,5 @@
1require abiword-2.5.inc
2
3PR = "r1"
4
5RCONFLICTS = "abiword-embedded"
diff --git a/meta-demoapps/recipes-gnome/abiword/abiword_cvs.bb b/meta-demoapps/recipes-gnome/abiword/abiword_cvs.bb
new file mode 100644
index 0000000000..e0e3bd7d60
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/abiword/abiword_cvs.bb
@@ -0,0 +1,9 @@
1require abiword.inc
2
3PV="2.5.0+cvs${SRCDATE}"
4PR = "r3"
5
6SRC_URI = "${CVSURI}"
7
8S = "${CVSSRC}"
9
diff --git a/meta-demoapps/recipes-gnome/gcalctool/gcalctool/fix-includedir.patch b/meta-demoapps/recipes-gnome/gcalctool/gcalctool/fix-includedir.patch
new file mode 100644
index 0000000000..aeb02ab2c1
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gcalctool/gcalctool/fix-includedir.patch
@@ -0,0 +1,31 @@
1---
2 Makefile.am | 2 +-
3 gcalctool/Makefile.am | 2 --
4 2 files changed, 1 insertion(+), 3 deletions(-)
5
6Index: gcalctool-5.8.17/gcalctool/Makefile.am
7===================================================================
8--- gcalctool-5.8.17.orig/gcalctool/Makefile.am 2005-12-19 15:46:57.000000000 +0000
9+++ gcalctool-5.8.17/gcalctool/Makefile.am 2007-05-16 16:03:26.000000000 +0100
10@@ -1,8 +1,6 @@
11 ## Process this file with automake to produce Makefile.in
12
13 INCLUDES = \
14- -I$(includedir) \
15- -DG_DISABLE_DEPRECATED \
16 -DGDK_PIXBUF_DISABLE_DEPRECATED \
17 -DGDK_DISABLE_DEPRECATED \
18 -DGNOME_DISABLE_DEPRECATED \
19Index: gcalctool-5.8.17/Makefile.am
20===================================================================
21--- gcalctool-5.8.17.orig/Makefile.am 2007-05-16 15:35:44.000000000 +0100
22+++ gcalctool-5.8.17/Makefile.am 2007-05-16 16:06:46.000000000 +0100
23@@ -29,7 +29,7 @@ DISTCLEANFILES = \
24 gnome-doc-utils.make \
25 gcalctool.desktop
26
27-SUBDIRS = po gcalctool help
28+SUBDIRS = po gcalctool
29
30 SCHEMAS_FILE = gcalctool.schemas
31
diff --git a/meta-demoapps/recipes-gnome/gcalctool/gcalctool_5.7.32.bb b/meta-demoapps/recipes-gnome/gcalctool/gcalctool_5.7.32.bb
new file mode 100644
index 0000000000..f12e6c402a
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gcalctool/gcalctool_5.7.32.bb
@@ -0,0 +1,13 @@
1LICENSE = "GPL"
2SECTION = "x11"
3DEPENDS = "gtk+"
4DESCRIPTION = "gcalctool is a powerful calculator"
5PR = "r2"
6
7SRC_URI = "http://download.gnome.org/sources/${PN}/5.7/${PN}-${PV}.tar.gz \
8 file://makefile-fix.diff;patch=1\
9 file://fix-includedir.patch;patch=1"
10
11inherit autotools pkgconfig
12
13EXTRA_OECONF = "--disable-gnome"
diff --git a/meta-demoapps/recipes-gnome/gcalctool/gcalctool_5.8.17.bb b/meta-demoapps/recipes-gnome/gcalctool/gcalctool_5.8.17.bb
new file mode 100644
index 0000000000..c72860c8f5
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gcalctool/gcalctool_5.8.17.bb
@@ -0,0 +1,12 @@
1LICENSE = "GPL"
2SECTION = "x11"
3DEPENDS = "gtk+ gnome-doc-utils"
4DESCRIPTION = "gcalctool is a powerful calculator"
5PR = "r0"
6
7SRC_URI = "http://download.gnome.org/sources/${PN}/5.8/${PN}-${PV}.tar.gz \
8 file://fix-includedir.patch;patch=1"
9
10inherit autotools pkgconfig
11
12EXTRA_OECONF = "--disable-gnome"
diff --git a/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/configurefix.patch b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/configurefix.patch
new file mode 100644
index 0000000000..01b4f64191
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/configurefix.patch
@@ -0,0 +1,30 @@
1Index: gnome-settings-daemon-2.26.1/configure.ac
2===================================================================
3--- gnome-settings-daemon-2.26.1.orig/configure.ac 2009-09-16 22:57:31.000000000 +0100
4+++ gnome-settings-daemon-2.26.1/configure.ac 2009-09-16 22:58:45.000000000 +0100
5@@ -133,9 +133,6 @@
6 #
7 AC_DEFUN([AC_CHECK_X_HEADERS], [
8 ac_save_CPPFLAGS="$CPPFLAGS"
9- if test \! -z "$includedir" ; then
10- CPPFLAGS="$CPPFLAGS -I$includedir"
11- fi
12 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
13 AC_CHECK_HEADERS([$1],[$2],[$3],[$4])
14 CPPFLAGS="$ac_save_CPPFLAGS"])
15@@ -148,15 +145,9 @@
16 ac_save_LDFLAGS="$LDFLAGS"
17 # ac_save_LIBS="$LIBS"
18
19- if test \! -z "$includedir" ; then
20- CPPFLAGS="$CPPFLAGS -I$includedir"
21- fi
22 # note: $X_CFLAGS includes $x_includes
23 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
24
25- if test \! -z "$libdir" ; then
26- LDFLAGS="$LDFLAGS -L$libdir"
27- fi
28 # note: $X_LIBS includes $x_libraries
29 LDFLAGS="$LDFLAGS $ALL_X_LIBS"
30
diff --git a/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/desktop-moblin.patch b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/desktop-moblin.patch
new file mode 100644
index 0000000000..d3fd76c621
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/desktop-moblin.patch
@@ -0,0 +1,11 @@
1--- gnome-settings-daemon-2.26.1/data/gnome-settings-daemon.desktop.in.in~ 2009-04-24 20:59:51.000000000 -0700
2+++ gnome-settings-daemon-2.26.1/data/gnome-settings-daemon.desktop.in.in 2009-04-24 20:59:51.000000000 -0700
3@@ -2,7 +2,7 @@
4 Type=Application
5 _Name=GNOME Settings Daemon
6 Exec=@LIBEXECDIR@/gnome-settings-daemon
7-OnlyShowIn=GNOME;
8+OnlyShowIn=GNOME;MOBLIN;
9 X-GNOME-Autostart-Phase=Initialization
10 X-GNOME-Autostart-Notify=true
11 X-GNOME-AutoRestart=true
diff --git a/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/gnome-settings-daemon-2.24.0-catch-deviceadded.patch b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/gnome-settings-daemon-2.24.0-catch-deviceadded.patch
new file mode 100644
index 0000000000..8e1d0ce9ce
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/gnome-settings-daemon-2.24.0-catch-deviceadded.patch
@@ -0,0 +1,19 @@
1============================================================
2 Listen for DeviceAdded in addition to DeviceEnabled
3
4 This should help address problems like left-handed
5mouse, and acceleration settings getting lost after
6resume, or when new devices gets plugged in.
7
8diff --git a/plugins/mouse/gsd-mouse-manager.c b/plugins/mouse/gsd-mouse-manager.c
9--- a/plugins/mouse/gsd-mouse-manager.c
10+++ b/plugins/mouse/gsd-mouse-manager.c
11@@ -320,7 +320,7 @@ devicepresence_filter (GdkXEvent *xevent,
12 if (xev->type == xi_presence)
13 {
14 XDevicePresenceNotifyEvent *dpn = (XDevicePresenceNotifyEvent *) xev;
15- if (dpn->devchange == DeviceEnabled)
16+ if (dpn->devchange == DeviceEnabled || dpn->devchange == DeviceAdded)
17 set_mouse_settings ((GsdMouseManager *) data);
18 }
19 return GDK_FILTER_CONTINUE;
diff --git a/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/gnome-settings-daemon-fix-gthread.patch b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/gnome-settings-daemon-fix-gthread.patch
new file mode 100644
index 0000000000..d77063eba7
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/gnome-settings-daemon-fix-gthread.patch
@@ -0,0 +1,13 @@
1Index: gnome-settings-daemon-2.25.90/configure.ac
2===================================================================
3--- gnome-settings-daemon-2.25.90.orig/configure.ac
4+++ gnome-settings-daemon-2.25.90/configure.ac
5@@ -85,6 +85,8 @@ AC_PATH_PROG(GCONFTOOL, gconftool-2)
6
7 AM_GCONF_SOURCE_2
8
9+AC_CHECK_LIB(gthread-2.0, g_thread_init)
10+
11 dnl ---------------------------------------------------------------------------
12 dnl - Check for libnotify
13 dnl ---------------------------------------------------------------------------
diff --git a/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/mojito-cleanup.patch b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/mojito-cleanup.patch
new file mode 100644
index 0000000000..1aff2d6d6f
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/mojito-cleanup.patch
@@ -0,0 +1,74 @@
1diff --git a/plugins/housekeeping/gsd-housekeeping-manager.c b/plugins/housekeeping/gsd-housekeeping-manager.c
2index f84cfad..e8f474a 100644
3--- a/plugins/housekeeping/gsd-housekeeping-manager.c
4+++ b/plugins/housekeeping/gsd-housekeeping-manager.c
5@@ -85,9 +85,13 @@ thumb_data_free (gpointer data)
6 }
7 }
8
9+typedef enum {
10+ HASH,
11+ HASH_PNG
12+} FileType;
13
14 static GList *
15-read_dir_for_purge (const char *path, GList *files)
16+read_dir_for_purge (const char *path, GList *files, FileType type)
17 {
18 GFile *read_path;
19 GFileEnumerator *enum_dir;
20@@ -105,9 +109,20 @@ read_dir_for_purge (const char *path, GList *files)
21 GFileInfo *info;
22 while ((info = g_file_enumerator_next_file (enum_dir, NULL, NULL)) != NULL) {
23 const char *name;
24+ gboolean prune = FALSE;
25+
26 name = g_file_info_get_name (info);
27
28- if (strlen (name) == 36 && strcmp (name + 32, ".png") == 0) {
29+ switch (type) {
30+ case HASH:
31+ prune = (strlen (name) == 36);
32+ break;
33+ case HASH_PNG:
34+ prune = (strlen (name) == 36 && strcmp (name + 32, ".png") == 0);
35+ break;
36+ }
37+
38+ if (prune) {
39 ThumbData *td;
40 GFile *entry;
41 char *entry_path;
42@@ -197,14 +212,14 @@ purge_thumbnail_cache (void)
43 ".thumbnails",
44 "normal",
45 NULL);
46- files = read_dir_for_purge (path, NULL);
47+ files = read_dir_for_purge (path, NULL, HASH_PNG);
48 g_free (path);
49
50 path = g_build_filename (g_get_home_dir (),
51 ".thumbnails",
52 "large",
53 NULL);
54- files = read_dir_for_purge (path, files);
55+ files = read_dir_for_purge (path, files, HASH_PNG);
56 g_free (path);
57
58 path = g_build_filename (g_get_home_dir (),
59@@ -212,7 +227,14 @@ purge_thumbnail_cache (void)
60 "fail",
61 "gnome-thumbnail-factory",
62 NULL);
63- files = read_dir_for_purge (path, files);
64+ files = read_dir_for_purge (path, files, HASH_PNG);
65+ g_free (path);
66+
67+ path = g_build_filename (g_get_user_cache_dir (),
68+ "mojito",
69+ "thumbnails",
70+ NULL);
71+ files = read_dir_for_purge (path, files, HASH);
72 g_free (path);
73
74 g_get_current_time (&current_time);
diff --git a/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/mount-plugin.patch b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/mount-plugin.patch
new file mode 100644
index 0000000000..67f056b505
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon/mount-plugin.patch
@@ -0,0 +1,618 @@
1diff --git a/configure.ac b/configure.ac
2index 135f2ce..ba737a5 100644
3--- a/configure.ac
4+++ b/configure.ac
5@@ -356,6 +356,7 @@ plugins/keybindings/Makefile
6 plugins/keyboard/Makefile
7 plugins/media-keys/Makefile
8 plugins/media-keys/cut-n-paste/Makefile
9+plugins/mount/Makefile
10 plugins/mouse/Makefile
11 plugins/screensaver/Makefile
12 plugins/sound/Makefile
13diff --git a/data/gnome-settings-daemon.schemas.in b/data/gnome-settings-daemon.schemas.in
14index 4920ae3..502e9e6 100644
15--- a/data/gnome-settings-daemon.schemas.in
16+++ b/data/gnome-settings-daemon.schemas.in
17@@ -557,5 +557,29 @@
18 </locale>
19 </schema>
20
21+ <schema>
22+ <key>/schemas/apps/gnome_settings_daemon/plugins/mount/active</key>
23+ <applyto>/apps/gnome_settings_daemon/plugins/mount/active</applyto>
24+ <owner>gnome-settings-daemon</owner>
25+ <type>bool</type>
26+ <default>TRUE</default>
27+ <locale name="C">
28+ <short>Enable mount plugin</short>
29+ <long>Set to True to enable the plugin to automount media.</long>
30+ </locale>
31+ </schema>
32+ <schema>
33+ <key>/schemas/apps/gnome_settings_daemon/plugins/mount/priority</key>
34+ <applyto>/apps/gnome_settings_daemon/plugins/mount/priority</applyto>
35+ <owner>gnome-settings-daemon</owner>
36+ <type>int</type>
37+ <default>99</default>
38+ <locale name="C">
39+ <short></short>
40+ <long></long>
41+ </locale>
42+ </schema>
43+
44+
45 </schemalist>
46 </gconfschemafile>
47diff --git a/plugins/Makefile.am b/plugins/Makefile.am
48index 2d33061..46615c1 100644
49--- a/plugins/Makefile.am
50+++ b/plugins/Makefile.am
51@@ -11,6 +11,7 @@ SUBDIRS = \
52 keybindings \
53 keyboard \
54 media-keys \
55+ mount \
56 mouse \
57 screensaver \
58 sound \
59diff --git a/plugins/mount/Makefile.am b/plugins/mount/Makefile.am
60new file mode 100644
61index 0000000..188c83d
62--- /dev/null
63+++ b/plugins/mount/Makefile.am
64@@ -0,0 +1,39 @@
65+plugin_LTLIBRARIES = \
66+ libmount.la
67+
68+libmount_la_SOURCES = \
69+ gsd-mount-manager.c \
70+ gsd-mount-manager.h \
71+ gsd-mount-plugin.c \
72+ gsd-mount-plugin.h
73+
74+libmount_la_CPPFLAGS = \
75+ -I$(top_srcdir)/gnome-settings-daemon \
76+ -DGNOME_SETTINGS_LOCALEDIR=\""$(datadir)/locale"\" \
77+ $(AM_CPPFLAGS)
78+
79+libmount_la_CFLAGS = \
80+ $(SETTINGS_PLUGIN_CFLAGS) \
81+ $(AM_CFLAGS)
82+
83+libmount_la_LDFLAGS = \
84+ $(GSD_PLUGIN_LDFLAGS)
85+
86+libmount_la_LIBADD = \
87+ $(SETTINGS_PLUGIN_LIBS)
88+
89+plugin_in_files = \
90+ mount.gnome-settings-plugin.in
91+
92+plugin_DATA = $(plugin_in_files:.gnome-settings-plugin.in=.gnome-settings-plugin)
93+
94+EXTRA_DIST = \
95+ $(plugin_in_files)
96+
97+CLEANFILES = \
98+ $(plugin_DATA)
99+
100+DISTCLEANFILES = \
101+ $(plugin_DATA)
102+
103+@GSD_INTLTOOL_PLUGIN_RULE@
104diff --git a/plugins/mount/gsd-mount-manager.c b/plugins/mount/gsd-mount-manager.c
105new file mode 100644
106index 0000000..a768f03
107--- /dev/null
108+++ b/plugins/mount/gsd-mount-manager.c
109@@ -0,0 +1,261 @@
110+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
111+ *
112+ * Copyright (C) 2009 Intel Corporation
113+ *
114+ * This program is free software; you can redistribute it and/or modify it under
115+ * the terms of the GNU General Public License as published by the Free Software
116+ * Foundation; either version 2 of the License, or (at your option) any later
117+ * version.
118+ *
119+ * This program is distributed in the hope that it will be useful, but WITHOUT
120+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
121+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
122+ * details.
123+ *
124+ * You should have received a copy of the GNU General Public License along with
125+ * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
126+ * Place - Suite 330, Boston, MA 02111-1307, USA.
127+ *
128+ */
129+
130+#include <config.h>
131+
132+#include <glib.h>
133+#include <glib/gi18n.h>
134+#include <gio/gio.h>
135+#include <gtk/gtk.h>
136+
137+#include "gsd-mount-manager.h"
138+
139+#define GSD_MOUNT_MANAGER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GSD_TYPE_MOUNT_MANAGER, GsdMountManagerPrivate))
140+
141+struct GsdMountManagerPrivate
142+{
143+ GVolumeMonitor *monitor;
144+};
145+
146+G_DEFINE_TYPE (GsdMountManager, gsd_mount_manager, G_TYPE_OBJECT)
147+
148+static gpointer manager_object = NULL;
149+
150+#if 0
151+static void
152+drive_connected_cb (GVolumeMonitor *monitor,
153+ GDrive *drive,
154+ GsdMountManager *manager)
155+{
156+ /* TODO: listen for the eject button */
157+}
158+#endif
159+
160+static void
161+volume_mounted_cb (GObject *source_object, GAsyncResult *result, gpointer user_data)
162+{
163+ GError *error = NULL;
164+ char *name;
165+
166+ name = g_volume_get_name (G_VOLUME (source_object));
167+
168+ if (!g_volume_mount_finish (G_VOLUME (source_object), result, &error)) {
169+ g_debug ("Failed to mount '%s': %s", name, error->message);
170+
171+ if (error->code != G_IO_ERROR_FAILED_HANDLED) {
172+ char *primary;
173+ GtkWidget *dialog;
174+
175+ primary = g_strdup_printf (_("Unable to mount %s"), name);
176+
177+ dialog = gtk_message_dialog_new (NULL, 0,
178+ GTK_MESSAGE_ERROR,
179+ GTK_BUTTONS_CLOSE,
180+ primary);
181+
182+ g_free (primary);
183+ gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog), error->message);
184+
185+ gtk_dialog_run (GTK_DIALOG (dialog));
186+ gtk_widget_destroy (dialog);
187+ }
188+ g_error_free (error);
189+ } else {
190+ g_debug ("Mounted '%s'", name);
191+ }
192+
193+ g_free (name);
194+}
195+
196+static void
197+volume_added_cb (GVolumeMonitor *monitor,
198+ GVolume *volume,
199+ GsdMountManager *manager)
200+{
201+ char *name;
202+
203+ name = g_volume_get_name (volume);
204+ g_debug ("Volme '%s' added", name);
205+
206+ if (g_volume_can_mount (volume)) {
207+ GMountOperation *mount_op;
208+
209+ g_debug ("Mounting '%s'", name);
210+
211+ mount_op = gtk_mount_operation_new (NULL);
212+ g_volume_mount (volume, G_MOUNT_MOUNT_NONE,
213+ mount_op, NULL,
214+ volume_mounted_cb, manager);
215+ }
216+
217+ g_free (name);
218+}
219+
220+static void
221+mount_added_cb (GVolumeMonitor *monitor,
222+ GMount *mount,
223+ GsdMountManager *manager)
224+{
225+ GFile *file;
226+ char *uri;
227+
228+ file = g_mount_get_root (mount);
229+ uri = g_file_get_uri (file);
230+
231+ g_debug ("%s mounted, starting file manager", uri);
232+
233+ /* TODO: error */
234+ gtk_show_uri (NULL, uri, GDK_CURRENT_TIME, NULL);
235+
236+ g_free (uri);
237+ g_object_unref (file);
238+}
239+
240+static void
241+mount_existing_volumes (GsdMountManager *manager)
242+{
243+ /* TODO: iterate over drives to hook up eject */
244+ GList *l;
245+
246+ g_debug ("Mounting existing volumes");
247+
248+ l = g_volume_monitor_get_volumes (manager->priv->monitor);
249+ while (l) {
250+ GVolume *volume = l->data;
251+ GMount *mount;
252+
253+ mount = g_volume_get_mount (volume);
254+ if (mount == NULL &&
255+ g_volume_can_mount (volume) &&
256+ g_volume_should_automount (volume)) {
257+ GMountOperation *mount_op;
258+ char *name;
259+
260+ name = g_volume_get_name (volume);
261+ g_debug ("Mounting '%s'", name);
262+ g_free (name);
263+
264+ mount_op = gtk_mount_operation_new (NULL);
265+ g_volume_mount (volume, G_MOUNT_MOUNT_NONE,
266+ mount_op, NULL,
267+ volume_mounted_cb, manager);
268+ }
269+
270+ if (mount)
271+ g_object_unref (mount);
272+ g_object_unref (volume);
273+ l = g_list_delete_link (l, l);
274+ }
275+}
276+
277+gboolean
278+gsd_mount_manager_start (GsdMountManager *manager,
279+ GError **error)
280+{
281+ g_debug ("Starting mount manager");
282+
283+ manager->priv->monitor = g_volume_monitor_get ();
284+
285+#if 0
286+ g_signal_connect_object (manager->priv->monitor, "drive-connected",
287+ G_CALLBACK (drive_connected_cb), manager, 0);
288+#endif
289+ g_signal_connect_object (manager->priv->monitor, "volume-added",
290+ G_CALLBACK (volume_added_cb), manager, 0);
291+ g_signal_connect_object (manager->priv->monitor, "mount-added",
292+ G_CALLBACK (mount_added_cb), manager, 0);
293+
294+ /* TODO: handle eject buttons */
295+
296+#if 0
297+ mount_existing_volumes (manager);
298+#endif
299+
300+ return TRUE;
301+}
302+
303+void
304+gsd_mount_manager_stop (GsdMountManager *manager)
305+{
306+ g_debug ("Stopping mount manager");
307+}
308+
309+static void
310+gsd_mount_manager_dispose (GObject *object)
311+{
312+ GsdMountManager *manager = GSD_MOUNT_MANAGER (object);
313+
314+ if (manager->priv->monitor) {
315+ g_signal_handlers_disconnect_by_func
316+ (manager->priv->monitor, volume_added_cb, manager);
317+ g_signal_handlers_disconnect_by_func
318+ (manager->priv->monitor, mount_added_cb, manager);
319+ g_object_unref (manager->priv->monitor);
320+ manager->priv->monitor = NULL;
321+ }
322+
323+ G_OBJECT_CLASS (gsd_mount_manager_parent_class)->dispose (object);
324+}
325+
326+static void
327+gsd_mount_manager_init (GsdMountManager *manager)
328+{
329+ manager->priv = GSD_MOUNT_MANAGER_GET_PRIVATE (manager);
330+}
331+
332+static void
333+gsd_mount_manager_finalize (GObject *object)
334+{
335+ GsdMountManager *mount_manager;
336+
337+ g_return_if_fail (object != NULL);
338+ g_return_if_fail (GSD_IS_MOUNT_MANAGER (object));
339+
340+ mount_manager = GSD_MOUNT_MANAGER (object);
341+
342+ g_return_if_fail (mount_manager->priv != NULL);
343+
344+ G_OBJECT_CLASS (gsd_mount_manager_parent_class)->finalize (object);
345+}
346+
347+static void
348+gsd_mount_manager_class_init (GsdMountManagerClass *klass)
349+{
350+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
351+
352+ object_class->dispose = gsd_mount_manager_dispose;
353+ object_class->finalize = gsd_mount_manager_finalize;
354+
355+ g_type_class_add_private (klass, sizeof (GsdMountManagerPrivate));
356+}
357+
358+GsdMountManager *
359+gsd_mount_manager_new (void)
360+{
361+ if (manager_object != NULL) {
362+ g_object_ref (manager_object);
363+ } else {
364+ manager_object = g_object_new (GSD_TYPE_MOUNT_MANAGER, NULL);
365+ g_object_add_weak_pointer (manager_object,
366+ (gpointer *) &manager_object);
367+ }
368+
369+ return GSD_MOUNT_MANAGER (manager_object);
370+}
371diff --git a/plugins/mount/gsd-mount-manager.h b/plugins/mount/gsd-mount-manager.h
372new file mode 100644
373index 0000000..9093fff
374--- /dev/null
375+++ b/plugins/mount/gsd-mount-manager.h
376@@ -0,0 +1,58 @@
377+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
378+ *
379+ * Copyright (C) 2009 Intel Corporation
380+ *
381+ * This program is free software; you can redistribute it and/or modify it under
382+ * the terms of the GNU General Public License as published by the Free Software
383+ * Foundation; either version 2 of the License, or (at your option) any later
384+ * version.
385+ *
386+ * This program is distributed in the hope that it will be useful, but WITHOUT
387+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
388+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
389+ * details.
390+ *
391+ * You should have received a copy of the GNU General Public License along with
392+ * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
393+ * Place - Suite 330, Boston, MA 02111-1307, USA.
394+ *
395+ */
396+
397+#ifndef __GSD_MOUNT_MANAGER_H
398+#define __GSD_MOUNT_MANAGER_H
399+
400+#include <glib-object.h>
401+
402+G_BEGIN_DECLS
403+
404+#define GSD_TYPE_MOUNT_MANAGER (gsd_mount_manager_get_type ())
405+#define GSD_MOUNT_MANAGER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GSD_TYPE_MOUNT_MANAGER, GsdMountManager))
406+#define GSD_MOUNT_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), GSD_TYPE_MOUNT_MANAGER, GsdMountManagerClass))
407+#define GSD_IS_MOUNT_MANAGER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GSD_TYPE_MOUNT_MANAGER))
408+#define GSD_IS_MOUNT_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GSD_TYPE_MOUNT_MANAGER))
409+#define GSD_MOUNT_MANAGER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GSD_TYPE_MOUNT_MANAGER, GsdMountManagerClass))
410+
411+typedef struct GsdMountManagerPrivate GsdMountManagerPrivate;
412+
413+typedef struct
414+{
415+ GObject parent;
416+ GsdMountManagerPrivate *priv;
417+} GsdMountManager;
418+
419+typedef struct
420+{
421+ GObjectClass parent_class;
422+} GsdMountManagerClass;
423+
424+GType gsd_mount_manager_get_type (void);
425+
426+GsdMountManager * gsd_mount_manager_new (void);
427+
428+gboolean gsd_mount_manager_start (GsdMountManager *manager,
429+ GError **error);
430+void gsd_mount_manager_stop (GsdMountManager *manager);
431+
432+G_END_DECLS
433+
434+#endif /* __GSD_MOUNT_MANAGER_H */
435diff --git a/plugins/mount/gsd-mount-plugin.c b/plugins/mount/gsd-mount-plugin.c
436new file mode 100644
437index 0000000..af295a5
438--- /dev/null
439+++ b/plugins/mount/gsd-mount-plugin.c
440@@ -0,0 +1,103 @@
441+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
442+ *
443+ * Copyright (C) 2009 Intel Corporation
444+ *
445+ * This program is free software; you can redistribute it and/or modify it under
446+ * the terms of the GNU General Public License as published by the Free Software
447+ * Foundation; either version 2, or (at your option) any later version.
448+ *
449+ * This program is distributed in the hope that it will be useful, but WITHOUT
450+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
451+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
452+ * details.
453+ *
454+ * You should have received a copy of the GNU General Public License along with
455+ * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
456+ * Place - Suite 330, Boston, MA 02111-1307, USA.
457+ *
458+ */
459+
460+#include <config.h>
461+
462+#include <glib/gi18n.h>
463+#include <gmodule.h>
464+#include <gnome-settings-daemon/gnome-settings-plugin.h>
465+
466+#include "gsd-mount-plugin.h"
467+#include "gsd-mount-manager.h"
468+
469+struct GsdMountPluginPrivate {
470+ GsdMountManager *manager;
471+};
472+
473+#define GSD_MOUNT_PLUGIN_GET_PRIVATE(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), GSD_TYPE_MOUNT_PLUGIN, GsdMountPluginPrivate))
474+
475+GNOME_SETTINGS_PLUGIN_REGISTER (GsdMountPlugin, gsd_mount_plugin)
476+
477+static void
478+gsd_mount_plugin_init (GsdMountPlugin *plugin)
479+{
480+ plugin->priv = GSD_MOUNT_PLUGIN_GET_PRIVATE (plugin);
481+
482+ g_debug ("GsdMountPlugin initializing");
483+
484+ plugin->priv->manager = gsd_mount_manager_new ();
485+}
486+
487+static void
488+gsd_mount_plugin_finalize (GObject *object)
489+{
490+ GsdMountPlugin *plugin;
491+
492+ g_return_if_fail (object != NULL);
493+ g_return_if_fail (GSD_IS_MOUNT_PLUGIN (object));
494+
495+ g_debug ("GsdMountPlugin finalizing");
496+
497+ plugin = GSD_MOUNT_PLUGIN (object);
498+
499+ g_return_if_fail (plugin->priv != NULL);
500+
501+ if (plugin->priv->manager != NULL) {
502+ g_object_unref (plugin->priv->manager);
503+ }
504+
505+ G_OBJECT_CLASS (gsd_mount_plugin_parent_class)->finalize (object);
506+}
507+
508+static void
509+impl_activate (GnomeSettingsPlugin *plugin)
510+{
511+ gboolean res;
512+ GError *error;
513+
514+ g_debug ("Activating mount plugin");
515+
516+ error = NULL;
517+ res = gsd_mount_manager_start (GSD_MOUNT_PLUGIN (plugin)->priv->manager, &error);
518+ if (! res) {
519+ g_warning ("Unable to start mount manager: %s", error->message);
520+ g_error_free (error);
521+ }
522+}
523+
524+static void
525+impl_deactivate (GnomeSettingsPlugin *plugin)
526+{
527+ g_debug ("Deactivating mount plugin");
528+ gsd_mount_manager_stop (GSD_MOUNT_PLUGIN (plugin)->priv->manager);
529+}
530+
531+static void
532+gsd_mount_plugin_class_init (GsdMountPluginClass *klass)
533+{
534+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
535+ GnomeSettingsPluginClass *plugin_class = GNOME_SETTINGS_PLUGIN_CLASS (klass);
536+
537+ object_class->finalize = gsd_mount_plugin_finalize;
538+
539+ plugin_class->activate = impl_activate;
540+ plugin_class->deactivate = impl_deactivate;
541+
542+ g_type_class_add_private (klass, sizeof (GsdMountPluginPrivate));
543+}
544diff --git a/plugins/mount/gsd-mount-plugin.h b/plugins/mount/gsd-mount-plugin.h
545new file mode 100644
546index 0000000..526a41f
547--- /dev/null
548+++ b/plugins/mount/gsd-mount-plugin.h
549@@ -0,0 +1,55 @@
550+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
551+ *
552+ * Copyright (C) 2009 Intel Corporation
553+ *
554+ * This program is free software; you can redistribute it and/or modify it under
555+ * the terms of the GNU General Public License as published by the Free Software
556+ * Foundation; either version 2, or (at your option) any later version.
557+ *
558+ * This program is distributed in the hope that it will be useful, but WITHOUT
559+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
560+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
561+ * details.
562+ *
563+ * You should have received a copy of the GNU General Public License along with
564+ * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
565+ * Place - Suite 330, Boston, MA 02111-1307, USA.
566+ *
567+ */
568+
569+#ifndef __GSD_MOUNT_PLUGIN_H__
570+#define __GSD_MOUNT_PLUGIN_H__
571+
572+#include <glib-object.h>
573+#include <gmodule.h>
574+#include <gnome-settings-daemon/gnome-settings-plugin.h>
575+
576+G_BEGIN_DECLS
577+
578+#define GSD_TYPE_MOUNT_PLUGIN (gsd_mount_plugin_get_type ())
579+#define GSD_MOUNT_PLUGIN(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GSD_TYPE_MOUNT_PLUGIN, GsdMountPlugin))
580+#define GSD_MOUNT_PLUGIN_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), GSD_TYPE_MOUNT_PLUGIN, GsdMountPluginClass))
581+#define GSD_IS_MOUNT_PLUGIN(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GSD_TYPE_MOUNT_PLUGIN))
582+#define GSD_IS_MOUNT_PLUGIN_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GSD_TYPE_MOUNT_PLUGIN))
583+#define GSD_MOUNT_PLUGIN_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GSD_TYPE_MOUNT_PLUGIN, GsdMountPluginClass))
584+
585+typedef struct GsdMountPluginPrivate GsdMountPluginPrivate;
586+
587+typedef struct
588+{
589+ GnomeSettingsPlugin parent;
590+ GsdMountPluginPrivate *priv;
591+} GsdMountPlugin;
592+
593+typedef struct
594+{
595+ GnomeSettingsPluginClass parent_class;
596+} GsdMountPluginClass;
597+
598+GType gsd_mount_plugin_get_type (void) G_GNUC_CONST;
599+
600+G_MODULE_EXPORT GType register_gnome_settings_plugin (GTypeModule *module);
601+
602+G_END_DECLS
603+
604+#endif /* __GSD_MOUNT_PLUGIN_H__ */
605diff --git a/plugins/mount/mount.gnome-settings-plugin.in b/plugins/mount/mount.gnome-settings-plugin.in
606new file mode 100644
607index 0000000..ca29ad1
608--- /dev/null
609+++ b/plugins/mount/mount.gnome-settings-plugin.in
610@@ -0,0 +1,8 @@
611+[GNOME Settings Plugin]
612+Module=mount
613+IAge=0
614+_Name=Mount
615+_Description=Mount removable media
616+Authors=Ross Burton
617+Copyright=Copyright © 2009 Intel Corporation
618+Website=
diff --git a/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon_2.26.1.bb b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon_2.26.1.bb
new file mode 100644
index 0000000000..cb216b2753
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gnome/gnome-settings-daemon_2.26.1.bb
@@ -0,0 +1,25 @@
1DESCRIPTION = "GNOME settings daemon"
2LICENSE = "GPL"
3DEPENDS = "libxklavier gnome-doc-utils gtk+ libglade libgnomekbd gnome-desktop librsvg libxml2 libart-lgpl"
4
5PR = "r3"
6
7inherit gnome
8
9SRC_URI += "file://desktop-moblin.patch;patch=1 \
10 file://gnome-settings-daemon-fix-gthread.patch;patch=1 \
11 file://mount-plugin.patch;patch=1 \
12 file://gnome-settings-daemon-2.24.0-catch-deviceadded.patch;patch=1 \
13 file://configurefix.patch;patch=1 \
14 file://mojito-cleanup.patch;patch=1"
15
16EXTRA_OECONF = "--disable-esd --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR}"
17ASNEEDED = ""
18
19FILES_${PN} += "${libdir}/gnome-settings-daemon-2.0/*.so ${libdir}/gnome-settings-daemon-2.0/*plugin \
20 ${datadir}/dbus-1/ \
21 ${datadir}/icon* \
22 ${datadir}/xsession*"
23
24FILES_${PN}-dbg += "${libdir}/gnome-settings-daemon-2.0/.debug"
25FILES_${PN}-dev += "${libdir}/gnome-settings-daemon-2.0/*.a ${libdir}/gnome-settings-daemon-2.0/*.la"
diff --git a/meta-demoapps/recipes-gnome/gnome/gnome-terminal/30f29e7d8e1b67c40cd18a7155ba30c4382692d5.patch b/meta-demoapps/recipes-gnome/gnome/gnome-terminal/30f29e7d8e1b67c40cd18a7155ba30c4382692d5.patch
new file mode 100644
index 0000000000..0358ed8a64
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gnome/gnome-terminal/30f29e7d8e1b67c40cd18a7155ba30c4382692d5.patch
@@ -0,0 +1,20 @@
1From 30f29e7d8e1b67c40cd18a7155ba30c4382692d5 Mon Sep 17 00:00:00 2001
2From: Seán de Búrca <leftmostcat@gmail.com>
3Date: Fri, 07 Aug 2009 00:38:52 +0000
4Subject: Remove useless Plural-Forms line which breaks build with gnome-doc-utils master
5
6---
7diff --git a/help/el/el.po b/help/el/el.po
8index ab77264..635b68f 100644
9--- a/help/el/el.po
10+++ b/help/el/el.po
11@@ -10,7 +10,6 @@ msgstr ""
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15-"Plural-Forms: 2\n"
16 "X-Poedit-Language: Greek\n"
17 "X-Poedit-Country: GREECE\n"
18 "X-Generator: Lokalize 0.2\n"
19--
20cgit v0.8.3.1
diff --git a/meta-demoapps/recipes-gnome/gnome/gnome-terminal_2.26.3.bb b/meta-demoapps/recipes-gnome/gnome/gnome-terminal_2.26.3.bb
new file mode 100644
index 0000000000..73f0b99eac
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gnome/gnome-terminal_2.26.3.bb
@@ -0,0 +1,16 @@
1DESCRIPTION = "GNOME Terminal"
2LICENSE = "GPL"
3DEPENDS = "gtk+ glib-2.0 startup-notification dbus-glib vte"
4PR = "r2"
5
6inherit gnome
7
8SRC_URI += "file://30f29e7d8e1b67c40cd18a7155ba30c4382692d5.patch;patch=1"
9
10EXTRA_OECONF += "--disable-scrollkeeper"
11
12# Remove an autogenerated file that needs to be rebuilt
13do_configure_prepend () {
14 rm -f ${S}/src/terminal-type-builtins.c
15}
16
diff --git a/meta-demoapps/recipes-gnome/gnome/libgnomecanvas_2.20.0.bb b/meta-demoapps/recipes-gnome/gnome/libgnomecanvas_2.20.0.bb
new file mode 100644
index 0000000000..266d44b050
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gnome/libgnomecanvas_2.20.0.bb
@@ -0,0 +1,14 @@
1LICENSE = "GPL"
2SECTION = "x11/gnome/libs"
3DESCRIPTION = "A powerful object-oriented display"
4PR = "r2"
5
6inherit gnome
7
8DEPENDS = "libglade libart-lgpl virtual/gail"
9
10EXTRA_OECONF = "--disable-gtk-doc"
11
12FILES_${PN} += "${libdir}/libglade/*/libcanvas.so"
13FILES_${PN}-dbg += "${libdir}/libglade/*/.debug/"
14FILES_${PN}-dev += "${libdir}/libglade/*/libcanvas.*a"
diff --git a/meta-demoapps/recipes-gnome/gnome/libgnomekbd_2.26.0.bb b/meta-demoapps/recipes-gnome/gnome/libgnomekbd_2.26.0.bb
new file mode 100644
index 0000000000..f2e4ec533e
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/gnome/libgnomekbd_2.26.0.bb
@@ -0,0 +1,14 @@
1DESCRIPTION = "GNOME keyboard library"
2LICENSE = "LGPL"
3
4DEPENDS = "gconf-dbus dbus libxklavier gtk+"
5
6inherit gnome
7
8do_configure_append() {
9 find ${S} -name Makefile | xargs sed -i s:'-I$(includedir)':'-I.':g
10 find ${S} -name Makefile | xargs sed -i s:'-I/usr/include':'-I${STAGING_INCDIR}':g
11}
12
13
14
diff --git a/meta-demoapps/recipes-gnome/libgsf/libgsf_1.14.5.bb b/meta-demoapps/recipes-gnome/libgsf/libgsf_1.14.5.bb
new file mode 100644
index 0000000000..10b6390722
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/libgsf/libgsf_1.14.5.bb
@@ -0,0 +1,20 @@
1LICENSE = "GPL"
2SECTION = "libs"
3PR = "r0"
4
5DEPENDS= "libxml2 bzip2 glib-2.0 zlib"
6RDEPENDS = "gconf gnome-vfs"
7
8
9PACKAGES =+ "${PN}-gnome ${PN}-gnome-dev "
10
11FILES_${PN}-gnome = "${libdir}/libgsf-gnome-1.so.*"
12FILES_${PN}-gnome-dev = "${libdir}/libgsf-gnome-1.* ${includedir}/libgsf-1/gsf-gnome"
13
14inherit autotools pkgconfig gnome gconf
15
16EXTRA_OECONF = "\
17 --without-python \
18 --without-gnome \
19 --disable-gtk-doc \
20 --with-bz2"
diff --git a/meta-demoapps/recipes-gnome/libgtkstylus/files/gtkstylus.sh b/meta-demoapps/recipes-gnome/libgtkstylus/files/gtkstylus.sh
new file mode 100644
index 0000000000..b1302ede0e
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/libgtkstylus/files/gtkstylus.sh
@@ -0,0 +1,5 @@
1#!/bin/sh
2
3GTK_MODULES=libgtkstylus.so
4
5export GTK_MODULES
diff --git a/meta-demoapps/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb b/meta-demoapps/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb
new file mode 100644
index 0000000000..f614048a16
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb
@@ -0,0 +1,24 @@
1DESCRIPTION = "GTK plugin for stylus based systems"
2SECTION = "libs"
3DEPENDS = "gtk+"
4LICENSE = "LGPL"
5PR = "r2"
6
7inherit autotools
8
9SRC_URI = "http://burtonini.com/temp/${PN}-${PV}.tar.gz \
10 file://gtkstylus.sh"
11
12do_install_append() {
13 install -d ${D}/${sysconfdir}/X11/Xsession.d
14 install -m 755 ${WORKDIR}/gtkstylus.sh ${D}/${sysconfdir}/X11/Xsession.d/45gtkstylus
15}
16
17# Horrible but rpm falls over if you use '*'
18GTKVER = "2.10.0"
19
20FILES_${PN} = "${sysconfdir} \
21 ${libdir}/gtk-2.0/${GTKVER}/modules/libgtkstylus.so.*"
22FILES_${PN}-dbg += "${libdir}/gtk-2.0/${GTKVER}/modules/.debug"
23FILES_${PN}-dev += "${libdir}/gtk-2.0/${GTKVER}/modules/libgtkstylus.so \
24 ${libdir}/gtk-2.0/${GTKVER}/modules/libgtkstylus.*a"
diff --git a/meta-demoapps/recipes-gnome/wv/wv-1.2.0/pkgconfig.patch b/meta-demoapps/recipes-gnome/wv/wv-1.2.0/pkgconfig.patch
new file mode 100644
index 0000000000..136d89341f
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/wv/wv-1.2.0/pkgconfig.patch
@@ -0,0 +1,13 @@
1Index: wv-1.2.0/wv-1.0.pc.in
2===================================================================
3--- wv-1.2.0.orig/wv-1.0.pc.in 2008-03-19 22:25:18.000000000 +0000
4+++ wv-1.2.0/wv-1.0.pc.in 2008-03-19 22:26:32.000000000 +0000
5@@ -6,5 +6,6 @@
6 Name: wvWare
7 Description: Word Document Filter library and utilities
8 Version: @VERSION@
9-Libs: -L${libdir} -lwv @WMF_LIBS@ @XML_LIBS@ @GLIB_LIBS@ @GSF_LIBS@ @PNG_LIBS@ @ZLIB_LIBS@ @LIBS@ -lm
10-Cflags: -I${includedir}/wv @GSF_CFLAGS@
11+Requires: libgsf-1
12+Libs: -L${libdir} -lwv @WMF_LIBS@ @XML_LIBS@ @PNG_LIBS@ @ZLIB_LIBS@ @LIBS@ -lm
13+Cflags: -I${includedir}/wv
diff --git a/meta-demoapps/recipes-gnome/wv/wv_1.2.0.bb b/meta-demoapps/recipes-gnome/wv/wv_1.2.0.bb
new file mode 100644
index 0000000000..c4c115b90e
--- /dev/null
+++ b/meta-demoapps/recipes-gnome/wv/wv_1.2.0.bb
@@ -0,0 +1,14 @@
1DESCRIPTION = "Programs for accessing Microsoft Word documents"
2HOMEPAGE = "http://wvware.sourceforge.net/"
3LICENSE = "GPLv2"
4DEPENDS = "libgsf glib-2.0"
5PR = "r3"
6
7SRC_URI = "${SOURCEFORGE_MIRROR}/wvware/wv-${PV}.tar.gz \
8 file://pkgconfig.patch;patch=1"
9
10inherit autotools pkgconfig
11
12S = "${WORKDIR}/${PN}-${PV}"
13
14EXTRA_OECONF = ""
diff --git a/meta-demoapps/recipes-graphics/clutter/table/fixes.patch b/meta-demoapps/recipes-graphics/clutter/table/fixes.patch
new file mode 100644
index 0000000000..a7cdc43713
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/clutter/table/fixes.patch
@@ -0,0 +1,14 @@
1Index: table/Makefile
2===================================================================
3--- table.orig/Makefile 2007-07-10 13:24:18.000000000 +0100
4+++ table/Makefile 2007-07-10 13:28:10.000000000 +0100
5@@ -8,7 +8,7 @@ all: table
6
7
8 table: table.o clutter-dominatrix.o clutter-video-player.o
9- $(CC) -g -Wall $(CFLAGS) -o $@ table.o clutter-dominatrix.o clutter-video-player.o $(LIBS)
10+ $(CC) -g -Wall $(CFLAGS) $(LDFLAGS) -o $@ table.o clutter-dominatrix.o clutter-video-player.o $(LIBS)
11
12 clean:
13 rm -fr *.o table
14\ No newline at end of file
diff --git a/meta-demoapps/recipes-graphics/libxklavier/libxklavier/pkgconfigfix.patch b/meta-demoapps/recipes-graphics/libxklavier/libxklavier/pkgconfigfix.patch
new file mode 100644
index 0000000000..4aaafb2b1e
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/libxklavier/libxklavier/pkgconfigfix.patch
@@ -0,0 +1,15 @@
1Index: libxklavier-3.7/libxklavier.pc.in
2===================================================================
3--- libxklavier-3.7.orig/libxklavier.pc.in 2009-06-10 15:58:46.000000000 +0100
4+++ libxklavier-3.7/libxklavier.pc.in 2009-06-10 16:00:45.000000000 +0100
5@@ -5,7 +5,7 @@
6
7 Name: libxklavier
8 Description: libxklavier library
9-Requires: libxml-2.0
10+Requires: libxml-2.0 glib-2.0
11 Version: @VERSION@
12-Libs: -L${libdir} -lxklavier @GLIB_LIBS@ @XML_LIBS@
13-Cflags: -I${includedir} @GLIB_CFLAGS@
14+Libs: -L${libdir} -lxklavier
15+Cflags: -I${includedir}
diff --git a/meta-demoapps/recipes-graphics/libxklavier/libxklavier_3.9.bb b/meta-demoapps/recipes-graphics/libxklavier/libxklavier_3.9.bb
new file mode 100644
index 0000000000..1d9b6f21a4
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/libxklavier/libxklavier_3.9.bb
@@ -0,0 +1,12 @@
1DESCRIPTION = "Utility library to make using XKB easier"
2SECTION = "x11/libs"
3PRIORITY = "optional"
4DEPENDS = "iso-codes libxml2 glib-2.0 libxkbfile"
5LICENSE = "LGPL"
6PR = "r2"
7
8SRC_URI = "${SOURCEFORGE_MIRROR}/gswitchit/libxklavier-${PV}.tar.bz2 \
9 file://pkgconfigfix.patch;patch=1"
10
11inherit autotools
12
diff --git a/meta-demoapps/recipes-graphics/pong-clock/pong-clock/pong-clock-no-flicker.c b/meta-demoapps/recipes-graphics/pong-clock/pong-clock/pong-clock-no-flicker.c
new file mode 100644
index 0000000000..41cebc58a7
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/pong-clock/pong-clock/pong-clock-no-flicker.c
@@ -0,0 +1,410 @@
1/*
2 * Pong Clock - A clock that plays pong.
3 * See http://mocoloco.com/archives/001766.php for the inspiration.
4 *
5 * Copyright (C) 2005 Matthew Allum
6 *
7 * Author: Matthew Allum mallum@openedhand.com
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22 *
23 */
24
25#include <stdlib.h>
26#include <time.h>
27#include <sys/time.h>
28#include <sys/types.h>
29#include <string.h>
30#include <stdio.h>
31#include <unistd.h>
32#include <signal.h>
33
34#include <X11/Xlib.h>
35#include <X11/Xutil.h>
36#include <X11/Xatom.h>
37
38/* Tweak values for different hw setups */
39
40#define FPS 50
41#define RESX 40
42#define RESY 40
43#define TO_MISS_SECS 55
44#define BALLDX 16
45#define BALLDY 4
46
47
48typedef struct PongClock
49{
50 Display *xdpy;
51 int xscreen;
52 Window xwin, xwin_root;
53 Pixmap backbuffer;
54 GC xgc;
55 int xwin_width, xwin_height;
56 int pixelw, pixelh;
57
58 int ball_x, ball_y, ball_dx, ball_dy;
59 int bata_y, batb_y;
60 Bool bata_to_miss, batb_to_miss;
61
62}
63PongClock;
64
65void
66get_time(int *hour, int *min, int *sec)
67{
68 struct timeval tv;
69 struct tm *localTime = NULL;
70 time_t actualTime;
71
72 gettimeofday(&tv, 0);
73 actualTime = tv.tv_sec;
74 localTime = localtime(&actualTime);
75
76 if (hour)
77 *hour = localTime->tm_hour;
78
79 if (min)
80 *min = localTime->tm_min;
81
82 if (sec)
83 *sec = localTime->tm_sec;
84}
85
86void
87draw_rect (PongClock *pong_clock,
88 int x,
89 int y,
90 int width,
91 int height)
92{
93 XFillRectangle (pong_clock->xdpy,
94 pong_clock->backbuffer,
95 pong_clock->xgc,
96 x * pong_clock->pixelw,
97 y * pong_clock->pixelh,
98 width * pong_clock->pixelw,
99 height * pong_clock->pixelh);
100}
101
102void
103draw_field (PongClock *pong_clock)
104{
105 int i;
106
107 draw_rect (pong_clock, 0, 0, RESX+1, 1);
108 draw_rect (pong_clock, 0, RESY-1, RESX+1, 1);
109
110 for (i=0; i < RESY/2; i++)
111 draw_rect (pong_clock, (RESX/2)-1, i*2, 2, 1);
112}
113
114void
115draw_digit (PongClock *pong_clock,
116 int x,
117 int y,
118 int digit)
119{
120 int digits[] = { 0x1f8c63f, 0x1f21086, 0x1f0fe1f, 0x1f87e1f, 0x1087e31,
121 0x1f87c3f, 0x1f8fc3f, 0x84421f, 0x1f8fe3f, 0x1087e3f };
122
123 XRectangle rects[5*5];
124 int i,j,k;
125
126 i = 0;
127
128 for (k=0; k<5; k++)
129 for (j=0; j<5; j++)
130 if (digits[digit] & (1 << ((k*5)+j)))
131 {
132 rects[i].x = (x + j) * pong_clock->pixelw;
133 rects[i].y = (y + k) * pong_clock->pixelh;
134 rects[i].width = pong_clock->pixelw;
135 rects[i].height = pong_clock->pixelh;
136 i++;
137 }
138
139 XFillRectangles (pong_clock->xdpy,
140 pong_clock->backbuffer,
141 pong_clock->xgc,
142 rects, i);
143}
144
145void
146draw_time (PongClock *pong_clock)
147{
148 int hour, min;
149
150 get_time(&hour, &min, NULL);
151
152 draw_digit (pong_clock,
153 (RESX/2) - 14,
154 5,
155 hour / 10 );
156
157 draw_digit (pong_clock,
158 (RESX/2) - 8,
159 5,
160 hour % 10 );
161
162 draw_digit (pong_clock,
163 (RESX/2) + 3,
164 5,
165 min / 10 );
166
167 draw_digit (pong_clock,
168 (RESX/2) + 9,
169 5,
170 min % 10 );
171}
172
173void
174draw_bat_and_ball (PongClock *pong_clock)
175{
176 /* ball */
177
178 XFillRectangle (pong_clock->xdpy,
179 pong_clock->backbuffer,
180 pong_clock->xgc,
181 pong_clock->ball_x,
182 pong_clock->ball_y,
183 pong_clock->pixelw,
184 pong_clock->pixelh);
185
186 /* bat a */
187
188 XFillRectangle (pong_clock->xdpy,
189 pong_clock->backbuffer,
190 pong_clock->xgc,
191 0,
192 pong_clock->bata_y - (2 * pong_clock->pixelh),
193 pong_clock->pixelw,
194 pong_clock->pixelh * 5);
195
196 /* bat b */
197
198 XFillRectangle (pong_clock->xdpy,
199 pong_clock->backbuffer,
200 pong_clock->xgc,
201 (pong_clock->xwin_width - pong_clock->pixelw),
202 pong_clock->batb_y - (2 * pong_clock->pixelh),
203 pong_clock->pixelw,
204 pong_clock->pixelh * 5);
205
206}
207
208void
209update_state (PongClock *pong_clock)
210{
211 int sec, min, hour;
212
213 get_time(&hour, &min, &sec);
214
215 /* Check ball is on field and no ones dues to miss a shot.
216 */
217 if ( (pong_clock->ball_x < 0 && !pong_clock->bata_to_miss)
218 || (pong_clock->ball_x > (pong_clock->xwin_width - pong_clock->pixelw)
219 && !pong_clock->batb_to_miss) )
220 pong_clock->ball_dx *= -1;
221
222 if ((pong_clock->ball_y < pong_clock->pixelh)
223 || pong_clock->ball_y > (pong_clock->xwin_height - (2*pong_clock->pixelh)))
224 pong_clock->ball_dy *= -1;
225
226 pong_clock->ball_x += pong_clock->ball_dx;
227 pong_clock->ball_y += pong_clock->ball_dy;
228
229 /* Set up someone to miss if we getting close to an hour or min.
230 */
231 if (sec > TO_MISS_SECS)
232 {
233 if (min == 59)
234 pong_clock->batb_to_miss = True;
235 else
236 pong_clock->bata_to_miss = True;
237 }
238 else
239 {
240 /* Reset the game */
241 if (pong_clock->bata_to_miss)
242 {
243 pong_clock->bata_to_miss = False;
244 pong_clock->ball_y = pong_clock->bata_y;
245 pong_clock->ball_x = pong_clock->pixelw;
246 pong_clock->ball_dx *= -1;
247 }
248
249 if (pong_clock->batb_to_miss)
250 {
251 pong_clock->batb_to_miss = False;
252 pong_clock->ball_y = pong_clock->batb_y;
253 pong_clock->ball_x = pong_clock->xwin_width - pong_clock->pixelw;
254 pong_clock->ball_dx *= -1;
255 }
256 }
257
258 /* Keep bats on field and only move in not setup to miss */
259 if (pong_clock->ball_y >= (3*pong_clock->pixelh)
260 && pong_clock->ball_y <= (pong_clock->xwin_height - (5*pong_clock->pixelh)))
261 {
262 if (!pong_clock->batb_to_miss)
263 pong_clock->batb_y = pong_clock->ball_y;
264
265 if (!pong_clock->bata_to_miss)
266 pong_clock->bata_y = pong_clock->ball_y;
267 }
268}
269
270void
271draw_frame (PongClock *pong_clock)
272{
273 update_state (pong_clock);
274
275 /* Clear playfield */
276 XSetForeground (pong_clock->xdpy,
277 pong_clock->xgc,
278 BlackPixel(pong_clock->xdpy,
279 pong_clock->xscreen));
280
281 XFillRectangle (pong_clock->xdpy,
282 pong_clock->backbuffer,
283 pong_clock->xgc,
284 0, 0,
285 pong_clock->xwin_width,
286 pong_clock->xwin_height);
287
288 XSetForeground (pong_clock->xdpy,
289 pong_clock->xgc,
290 WhitePixel(pong_clock->xdpy,
291 pong_clock->xscreen));
292
293 draw_field (pong_clock);
294
295 draw_time (pong_clock);
296
297 draw_bat_and_ball (pong_clock);
298
299 /* flip 'backbuffer' */
300 XSetWindowBackgroundPixmap (pong_clock->xdpy,
301 pong_clock->xwin,
302 pong_clock->backbuffer);
303 XClearWindow(pong_clock->xdpy, pong_clock->xwin);
304
305 XSync(pong_clock->xdpy, False);
306}
307
308int
309main (int argc, char **argv)
310{
311 XGCValues gcv;
312 Atom atoms_WINDOW_STATE, atoms_WINDOW_STATE_FULLSCREEN;
313 PongClock *pong_clock;
314
315 pong_clock = malloc(sizeof(PongClock));
316 memset(pong_clock, 0, sizeof(PongClock));
317
318 if ((pong_clock->xdpy = XOpenDisplay(getenv("DISPLAY"))) == NULL) {
319 fprintf(stderr, "Cannot connect to X server on display %s.",
320 getenv("DISPLAY"));
321 exit(-1);
322 }
323
324 pong_clock->xscreen = DefaultScreen(pong_clock->xdpy);
325 pong_clock->xwin_root = DefaultRootWindow(pong_clock->xdpy);
326 pong_clock->xwin_width = DisplayWidth(pong_clock->xdpy,
327 pong_clock->xscreen);
328 pong_clock->xwin_height = DisplayHeight(pong_clock->xdpy,
329 pong_clock->xscreen);
330
331 pong_clock->pixelw = pong_clock->xwin_width / RESX;
332 pong_clock->pixelh = pong_clock->xwin_height / RESY;
333
334 pong_clock->ball_x = 0;
335 pong_clock->ball_y = pong_clock->xwin_height / 2;
336
337 pong_clock->ball_dx = BALLDX;
338 pong_clock->ball_dy = BALLDY;
339
340 pong_clock->batb_y = pong_clock->bata_y = pong_clock->ball_y;
341
342 gcv.background = BlackPixel(pong_clock->xdpy,
343 pong_clock->xscreen);
344 gcv.foreground = WhitePixel(pong_clock->xdpy,
345 pong_clock->xscreen);
346 gcv.graphics_exposures = False;
347
348 pong_clock->xgc = XCreateGC (pong_clock->xdpy, pong_clock->xwin_root,
349 GCForeground|GCBackground|GCGraphicsExposures,
350 &gcv);
351
352 atoms_WINDOW_STATE
353 = XInternAtom(pong_clock->xdpy, "_NET_WM_STATE",False);
354 atoms_WINDOW_STATE_FULLSCREEN
355 = XInternAtom(pong_clock->xdpy, "_NET_WM_STATE_FULLSCREEN",False);
356
357 pong_clock->xwin = XCreateSimpleWindow(pong_clock->xdpy,
358 pong_clock->xwin_root,
359 0, 0,
360 pong_clock->xwin_width,
361 pong_clock->xwin_height,
362 0,
363 WhitePixel(pong_clock->xdpy,
364 pong_clock->xscreen),
365 BlackPixel(pong_clock->xdpy,
366 pong_clock->xscreen));
367
368 pong_clock->backbuffer = XCreatePixmap(pong_clock->xdpy,
369 pong_clock->xwin_root,
370 pong_clock->xwin_width,
371 pong_clock->xwin_height,
372 DefaultDepth(pong_clock->xdpy,
373 pong_clock->xscreen));
374
375 XSelectInput(pong_clock->xdpy, pong_clock->xwin, KeyPressMask);
376
377
378 /* Set the hints for fullscreen */
379 XChangeProperty(pong_clock->xdpy,
380 pong_clock->xwin,
381 atoms_WINDOW_STATE,
382 XA_ATOM,
383 32,
384 PropModeReplace,
385 (unsigned char *) &atoms_WINDOW_STATE_FULLSCREEN, 1);
386
387 XMapWindow(pong_clock->xdpy, pong_clock->xwin);
388
389 while (True)
390 {
391 struct timeval timeout;
392 XEvent xev;
393
394 timeout.tv_sec = 0;
395 timeout.tv_usec = 1000000 / FPS;
396 select (0, NULL, NULL, NULL, &timeout);
397
398 draw_frame (pong_clock);
399
400 XFlush(pong_clock->xdpy);
401
402 if (XPending(pong_clock->xdpy))
403 {
404 if (XCheckMaskEvent(pong_clock->xdpy,
405 KeyPressMask,
406 &xev))
407 exit(-1);
408 }
409 }
410}
diff --git a/meta-demoapps/recipes-graphics/pong-clock/pong-clock_1.0.bb b/meta-demoapps/recipes-graphics/pong-clock/pong-clock_1.0.bb
new file mode 100644
index 0000000000..8d3659ff91
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/pong-clock/pong-clock_1.0.bb
@@ -0,0 +1,16 @@
1DESCRIPTION = "A clock combined with a game of pong"
2LICENSE = "GPLv2+"
3DEPENDS = "virtual/libx11 xdmcp xau"
4
5SRC_URI = "file://pong-clock-no-flicker.c"
6
7S = "${WORKDIR}"
8
9do_compile () {
10 ${CC} -o pong-clock pong-clock-no-flicker.c `pkg-config --cflags --libs x11 xau xdmcp`
11}
12
13do_install () {
14 install -d ${D}${bindir}
15 install -m 0755 pong-clock ${D}${bindir}
16}
diff --git a/meta-demoapps/recipes-graphics/xorg-app/xbacklight_1.1.bb b/meta-demoapps/recipes-graphics/xorg-app/xbacklight_1.1.bb
new file mode 100644
index 0000000000..78804d734e
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xorg-app/xbacklight_1.1.bb
@@ -0,0 +1,4 @@
1require xorg-app-common.inc
2
3DESCRIPTION = "X Backlight Utility"
4DEPENDS += "libxrender libxrandr"
diff --git a/meta-demoapps/recipes-graphics/xorg-app/xev/diet-x11.patch b/meta-demoapps/recipes-graphics/xorg-app/xev/diet-x11.patch
new file mode 100644
index 0000000000..9f515e8c73
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xorg-app/xev/diet-x11.patch
@@ -0,0 +1,80 @@
1---
2 xev.c | 16 ++++++++--------
3 1 file changed, 8 insertions(+), 8 deletions(-)
4
5Index: xev-1.0.2/xev.c
6===================================================================
7--- xev-1.0.2.orig/xev.c 2006-06-02 00:25:44.000000000 +0100
8+++ xev-1.0.2/xev.c 2007-05-10 15:22:07.000000000 +0100
9@@ -109,7 +109,7 @@ do_KeyPress (XEvent *eventp)
10 nbytes = XLookupString (e, str, 256, &ks, NULL);
11
12 /* not supposed to call XmbLookupString on a key release event */
13- if (e->type == KeyPress && xic) {
14+ /*if (e->type == KeyPress && xic) {
15 do {
16 nmbbytes = XmbLookupString (xic, e, buf, bsize - 1, &ks, &status);
17 buf[nmbbytes] = '\0';
18@@ -119,7 +119,7 @@ do_KeyPress (XEvent *eventp)
19 buf = realloc (buf, bsize);
20 }
21 } while (status == XBufferOverflow);
22- }
23+ }*/
24
25 if (ks == NoSymbol)
26 ksname = "NoSymbol";
27@@ -149,7 +149,7 @@ do_KeyPress (XEvent *eventp)
28 }
29
30 /* not supposed to call XmbLookupString on a key release event */
31- if (e->type == KeyPress && xic) {
32+ /*if (e->type == KeyPress && xic) {
33 printf (" XmbLookupString gives %d bytes: ", nmbbytes);
34 if (nmbbytes > 0) {
35 dump (buf, nmbbytes);
36@@ -157,7 +157,7 @@ do_KeyPress (XEvent *eventp)
37 } else {
38 printf ("\n");
39 }
40- }
41+ } */
42
43 printf (" XFilterEvent returns: %s\n",
44 XFilterEvent (eventp, e->window) ? "True" : "False");
45@@ -804,7 +804,7 @@ main (int argc, char **argv)
46 fprintf (stderr, "%s: XSetLocaleModifiers failed\n", ProgramName);
47 }
48
49- xim = XOpenIM (dpy, NULL, NULL, NULL);
50+ /*xim = XOpenIM (dpy, NULL, NULL, NULL);
51 if (xim == NULL) {
52 fprintf (stderr, "%s: XOpenIM failed\n", ProgramName);
53 }
54@@ -831,7 +831,7 @@ main (int argc, char **argv)
55 }
56 XFree (xim_styles);
57 }
58- }
59+ }*/
60
61 screen = DefaultScreen (dpy);
62
63@@ -891,7 +891,7 @@ main (int argc, char **argv)
64 printf ("Outer window is 0x%lx, inner window is 0x%lx\n", w, subw);
65 }
66
67- if (xim && xim_style) {
68+ /*if (xim && xim_style) {
69 xic = XCreateIC (xim,
70 XNInputStyle, xim_style,
71 XNClientWindow, w,
72@@ -901,7 +901,7 @@ main (int argc, char **argv)
73 if (xic == NULL) {
74 fprintf (stderr, "XCreateIC failed\n");
75 }
76- }
77+ }*/
78
79 for (done = 0; !done; ) {
80 XEvent event;
diff --git a/meta-demoapps/recipes-graphics/xorg-app/xev_1.0.3.bb b/meta-demoapps/recipes-graphics/xorg-app/xev_1.0.3.bb
new file mode 100644
index 0000000000..b7a4070a8f
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xorg-app/xev_1.0.3.bb
@@ -0,0 +1,7 @@
1require xorg-app-common.inc
2
3DESCRIPTION = "X Event Viewer"
4LICENSE = "MIT"
5PE = "1"
6
7SRC_URI += "file://diet-x11.patch;patch=1"
diff --git a/meta-demoapps/recipes-graphics/xorg-app/xeyes_1.0.1.bb b/meta-demoapps/recipes-graphics/xorg-app/xeyes_1.0.1.bb
new file mode 100644
index 0000000000..07ce0724fa
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xorg-app/xeyes_1.0.1.bb
@@ -0,0 +1,4 @@
1require xorg-app-common.inc
2PE = "1"
3
4DEPENDS += " virtual/libx11 libxau libxt libxext libxmu"
diff --git a/meta-demoapps/recipes-graphics/xorg-app/xrdb/60XDefaults.sh b/meta-demoapps/recipes-graphics/xorg-app/xrdb/60XDefaults.sh
new file mode 100644
index 0000000000..08d8beca33
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xorg-app/xrdb/60XDefaults.sh
@@ -0,0 +1,3 @@
1if [ -e $HOME/.Xdefaults ]; then
2 xrdb -merge -nocpp < $HOME/.Xdefaults
3fi
diff --git a/meta-demoapps/recipes-graphics/xorg-app/xrdb_1.0.5.bb b/meta-demoapps/recipes-graphics/xorg-app/xrdb_1.0.5.bb
new file mode 100644
index 0000000000..906d7d8527
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xorg-app/xrdb_1.0.5.bb
@@ -0,0 +1,14 @@
1require xorg-app-common.inc
2
3DESCRIPTION = "X server resource database utility"
4LICENSE = "xrdb"
5DEPENDS += "libxmu"
6PE = "1"
7PR = "r2"
8
9SRC_URI += "file://60XDefaults.sh"
10
11do_install_append() {
12 install -d ${D}${sysconfdir}/X11/Xsession.d/
13 install -m 0755 ${WORKDIR}/60XDefaults.sh ${D}${sysconfdir}/X11/Xsession.d/
14}
diff --git a/meta-demoapps/recipes-graphics/xorg-lib/liblbxutil/mkg3states.patch b/meta-demoapps/recipes-graphics/xorg-lib/liblbxutil/mkg3states.patch
new file mode 100644
index 0000000000..029d761d95
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xorg-lib/liblbxutil/mkg3states.patch
@@ -0,0 +1,63 @@
1During the build process the mkg3states binary needs to be run. This patch
2allows it to be built with the build systems gcc allowing this to work.
3
4RP 31/3/10
5
6Index: liblbxutil-1.1.0/configure.ac
7===================================================================
8--- liblbxutil-1.1.0.orig/configure.ac 2009-12-04 22:52:04.000000000 +0000
9+++ liblbxutil-1.1.0/configure.ac 2010-03-31 15:26:33.000000000 +0100
10@@ -50,4 +50,5 @@
11
12 AC_OUTPUT([Makefile
13 src/Makefile
14+ src/image/Makefile
15 lbxutil.pc])
16Index: liblbxutil-1.1.0/src/Makefile.am
17===================================================================
18--- liblbxutil-1.1.0.orig/src/Makefile.am 2009-12-04 23:03:17.000000000 +0000
19+++ liblbxutil-1.1.0/src/Makefile.am 2010-03-31 15:27:25.000000000 +0100
20@@ -3,10 +3,7 @@
21 AM_CFLAGS = $(CWARNFLAGS) $(LBXUTIL_CFLAGS)
22 INCLUDES = -I$(top_srcdir)/include
23
24-noinst_PROGRAMS = mkg3states
25-
26-mkg3states_SOURCES = \
27- $(srcdir)/image/mkg3states.c
28+SUBDIRS = image
29
30 liblbxutil_la_SOURCES = \
31 $(srcdir)/lbx_zlib/reqstats.h \
32@@ -38,9 +35,8 @@
33
34 $(srcdir)/image/dfaxg42d.c: g3states.h
35
36-g3states.h: mkg3states
37- -rm -f g3states.h
38- $(AM_V_GEN) ./mkg3states -c > g3states.h_ && mv g3states.h_ g3states.h
39+g3states.h: image/mkg3states
40+ ./image/mkg3states -c > g3states.h_ && mv g3states.h_ g3states.h
41
42 liblbxutil_la_LDFLAGS = -version-number 1:0:0 -no-undefined
43
44Index: liblbxutil-1.1.0/src/image/Makefile.am
45===================================================================
46--- /dev/null 1970-01-01 00:00:00.000000000 +0000
47+++ liblbxutil-1.1.0/src/image/Makefile.am 2010-03-31 15:26:33.000000000 +0100
48@@ -0,0 +1,15 @@
49+# evil hack
50+CFLAGS=$(CFLAGS_FOR_BUILD)
51+CPPFLAGS=$(CPPFLAGS_FOR_BUILD)
52+LDFLAGS=$(LDFLAGS_FOR_BUILD)
53+
54+CC=$(CC_FOR_BUILD)
55+LIBTOOL = @LIBTOOL@ --tag=CC
56+
57+noinst_PROGRAMS = mkg3states
58+
59+mkg3states_SOURCES = \
60+ mkg3states.c
61+
62+mkg3states_CFLAGS=$(CFLAGS_FOR_BUILD)
63+mkg3states_LDFLAGS=$(LDFLAGS_FOR_BUILD)
diff --git a/meta-demoapps/recipes-graphics/xorg-lib/liblbxutil_1.1.0.bb b/meta-demoapps/recipes-graphics/xorg-lib/liblbxutil_1.1.0.bb
new file mode 100644
index 0000000000..cdf3509246
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xorg-lib/liblbxutil_1.1.0.bb
@@ -0,0 +1,11 @@
1require xorg-lib-common.inc
2
3DESCRIPTION = "XFIXES Extension"
4DEPENDS += " libxext xextproto xproto zlib"
5PROVIDES = "lbxutil"
6PE = "1"
7PR = "r1"
8
9SRC_URI += "file://mkg3states.patch;patch=1"
10
11export CC_FOR_BUILD = "gcc"
diff --git a/meta-demoapps/recipes-graphics/xorg-lib/libxaw_1.0.5.bb b/meta-demoapps/recipes-graphics/xorg-lib/libxaw_1.0.5.bb
new file mode 100644
index 0000000000..489f456647
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xorg-lib/libxaw_1.0.5.bb
@@ -0,0 +1,21 @@
1require xorg-lib-common.inc
2
3DESCRIPTION = "X Athena Widget Set"
4DEPENDS += "xproto virtual/libx11 libxext xextproto libxt libxmu libxpm libxp printproto libxau"
5PROVIDES = "xaw"
6PR = "r1"
7PE = "1"
8
9XORG_PN = "libXaw"
10
11do_install_append () {
12 ln -sf libXaw6.so.6 ${D}${libdir}/libXaw.so.6
13 ln -sf libXaw7.so.7 ${D}${libdir}/libXaw.so.7
14 ln -sf libXaw7.so.7 ${D}${libdir}/libXaw.so
15}
16
17PACKAGES =+ "libxaw6 libxaw7 libxaw8"
18
19FILES_libxaw6 = "${libdir}/libXaw6.so.6*"
20FILES_libxaw7 = "${libdir}/libXaw7.so.7*"
21FILES_libxaw8 = "${libdir}/libXaw8.so.8*"
diff --git a/meta-demoapps/recipes-graphics/xorg-lib/libxevie_1.0.2.bb b/meta-demoapps/recipes-graphics/xorg-lib/libxevie_1.0.2.bb
new file mode 100644
index 0000000000..6c6b4595aa
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xorg-lib/libxevie_1.0.2.bb
@@ -0,0 +1,8 @@
1require xorg-lib-common.inc
2
3DESCRIPTION = "X11 EvIE extension library"
4DEPENDS += "libxext evieext"
5PR = "r1"
6PE = "1"
7
8XORG_PN = "libXevie"
diff --git a/meta-demoapps/recipes-graphics/xorg-lib/libxkbui_1.0.2.bb b/meta-demoapps/recipes-graphics/xorg-lib/libxkbui_1.0.2.bb
new file mode 100644
index 0000000000..9a3f5f1327
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xorg-lib/libxkbui_1.0.2.bb
@@ -0,0 +1,8 @@
1require xorg-lib-common.inc
2
3DESCRIPTION = "X11 keyboard UI presentation library"
4LICENSE= "GPL"
5DEPENDS += "virtual/libx11 libxt libxkbfile"
6PROVIDES = "xkbui"
7PR = "r1"
8PE = "1"
diff --git a/meta-demoapps/recipes-graphics/xorg-proto/xproxymanagementprotocol_1.0.3.bb b/meta-demoapps/recipes-graphics/xorg-proto/xproxymanagementprotocol_1.0.3.bb
new file mode 100644
index 0000000000..9c3d9efa71
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xorg-proto/xproxymanagementprotocol_1.0.3.bb
@@ -0,0 +1,5 @@
1require xorg-proto-common.inc
2
3PROVIDES="xproxymngproto"
4PR = "r1"
5PE = "1"
diff --git a/meta-demoapps/recipes-graphics/xournal/files/ldflags.patch b/meta-demoapps/recipes-graphics/xournal/files/ldflags.patch
new file mode 100644
index 0000000000..7f6585befb
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xournal/files/ldflags.patch
@@ -0,0 +1,15 @@
1---
2 src/Makefile.am | 2 +-
3 1 file changed, 1 insertion(+), 1 deletion(-)
4
5Index: xournal-0.2/src/Makefile.am
6===================================================================
7--- xournal-0.2.orig/src/Makefile.am 2007-05-09 15:06:26.000000000 +0100
8+++ xournal-0.2/src/Makefile.am 2007-05-09 15:06:35.000000000 +0100
9@@ -21,5 +21,5 @@ xournal_SOURCES = \
10 xo-interface.c xo-interface.h \
11 xo-callbacks.c xo-callbacks.h
12
13-xournal_LDADD = @PACKAGE_LIBS@
14+xournal_LDADD = @PACKAGE_LIBS@ -lz
15
diff --git a/meta-demoapps/recipes-graphics/xournal/files/no-printing.diff b/meta-demoapps/recipes-graphics/xournal/files/no-printing.diff
new file mode 100644
index 0000000000..7a4724e696
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xournal/files/no-printing.diff
@@ -0,0 +1,178 @@
1diff -ru xournal-0.2/configure.in xournal-0.2.noprint/configure.in
2--- xournal-0.2/configure.in 2006-01-29 22:25:10.000000000 +0000
3+++ xournal-0.2.noprint/configure.in 2006-03-17 13:08:01.000000000 +0000
4@@ -10,11 +10,16 @@
5 AM_PROG_CC_STDC
6 AC_HEADER_STDC
7
8-pkg_modules="gtk+-2.0 >= 2.4.0 libgnomecanvas-2.0 >= 2.4.0 libgnomeprintui-2.2 >= 2.0.0"
9+pkg_modules="gtk+-2.0 >= 2.4.0 libgnomecanvas-2.0 >= 2.4.0"
10 PKG_CHECK_MODULES(PACKAGE, [$pkg_modules])
11 AC_SUBST(PACKAGE_CFLAGS)
12 AC_SUBST(PACKAGE_LIBS)
13
14+#PKG_CHECK_MODULES(GNOMEPRINT, libgnomeprintui-2.2 >= 2.0.0
15+#AC_SUBST(GNOMEPRINT_CFLAGS)
16+#AC_SUBST(GNOMEPRINT_LIBS)
17+AM_CONDITIONAL(ENABLE_PRINTING, false)
18+
19 AC_OUTPUT([
20 Makefile
21 src/Makefile
22diff -ru xournal-0.2/src/main.c xournal-0.2.noprint/src/main.c
23--- xournal-0.2/src/main.c 2006-01-29 22:22:52.000000000 +0000
24+++ xournal-0.2.noprint/src/main.c 2006-03-17 13:14:50.000000000 +0000
25@@ -28,7 +28,9 @@
26
27 void hide_unimplemented(void)
28 {
29+#if ENABLE_PRINTING
30 gtk_widget_hide(GET_COMPONENT("filePrintOptions"));
31+#endif
32 gtk_widget_hide(GET_COMPONENT("journalFlatten"));
33 gtk_widget_hide(GET_COMPONENT("papercolorOther"));
34 gtk_widget_hide(GET_COMPONENT("journalApplyAllPages"));
35diff -ru xournal-0.2/src/Makefile.am xournal-0.2.noprint/src/Makefile.am
36--- xournal-0.2/src/Makefile.am 2005-12-14 20:54:42.000000000 +0000
37+++ xournal-0.2.noprint/src/Makefile.am 2006-03-17 13:07:47.000000000 +0000
38@@ -7,12 +7,16 @@
39
40 bin_PROGRAMS = xournal
41
42+if ENABLE_PRINTING
43+PRINT_SOURCE = xo-print.c xo-print.h
44+endif
45+
46 xournal_SOURCES = \
47 main.c xournal.h \
48 xo-misc.c xo-misc.h \
49 xo-file.c xo-file.h \
50 xo-paint.c xo-paint.h \
51- xo-print.c xo-print.h \
52+ $(PRINT_SOURCE) \
53 xo-support.c xo-support.h \
54 xo-interface.c xo-interface.h \
55 xo-callbacks.c xo-callbacks.h
56diff -ru xournal-0.2/src/xo-callbacks.c xournal-0.2.noprint/src/xo-callbacks.c
57--- xournal-0.2/src/xo-callbacks.c 2006-01-29 19:39:22.000000000 +0000
58+++ xournal-0.2.noprint/src/xo-callbacks.c 2006-03-17 13:12:01.000000000 +0000
59@@ -7,7 +7,9 @@
60 #include <gtk/gtk.h>
61 #include <libgnomecanvas/libgnomecanvas.h>
62 #include <time.h>
63+#if ENABLE_PRINTING
64 #include <libgnomeprintui/gnome-print-dialog.h>
65+#endif
66 #include <glib/gstdio.h>
67
68 #include "xournal.h"
69@@ -17,7 +19,9 @@
70 #include "xo-misc.h"
71 #include "xo-file.h"
72 #include "xo-paint.h"
73+#if ENABLE_PRINTING
74 #include "xo-print.h"
75+#endif
76
77 void
78 on_fileNew_activate (GtkMenuItem *menuitem,
79@@ -261,7 +265,7 @@
80
81 }
82
83-
84+#if ENABLE_PRINTING
85 void
86 on_filePrint_activate (GtkMenuItem *menuitem,
87 gpointer user_data)
88@@ -407,7 +411,7 @@
89
90 g_free(filename);
91 }
92-
93+#endif
94
95 void
96 on_fileQuit_activate (GtkMenuItem *menuitem,
97diff -ru xournal-0.2/src/xo-callbacks.h xournal-0.2.noprint/src/xo-callbacks.h
98--- xournal-0.2/src/xo-callbacks.h 2006-01-26 20:47:00.000000000 +0000
99+++ xournal-0.2.noprint/src/xo-callbacks.h 2006-03-17 13:08:45.000000000 +0000
100@@ -24,6 +24,7 @@
101 on_filePrintOptions_activate (GtkMenuItem *menuitem,
102 gpointer user_data);
103
104+#if ENABLE_PRINTING
105 void
106 on_filePrint_activate (GtkMenuItem *menuitem,
107 gpointer user_data);
108@@ -32,6 +33,8 @@
109 on_filePrintPDF_activate (GtkMenuItem *menuitem,
110 gpointer user_data);
111
112+#endif
113+
114 void
115 on_fileQuit_activate (GtkMenuItem *menuitem,
116 gpointer user_data);
117diff -ru xournal-0.2/src/xo-interface.c xournal-0.2.noprint/src/xo-interface.c
118--- xournal-0.2/src/xo-interface.c 2006-01-29 18:58:25.000000000 +0000
119+++ xournal-0.2.noprint/src/xo-interface.c 2006-03-17 13:11:31.000000000 +0000
120@@ -41,10 +41,12 @@
121 GtkWidget *fileSave;
122 GtkWidget *fileSaveAs;
123 GtkWidget *separator1;
124+#if ENABLE_PRINTING
125 GtkWidget *filePrintOptions;
126 GtkWidget *image501;
127 GtkWidget *filePrint;
128 GtkWidget *filePrintPDF;
129+#endif
130 GtkWidget *separator2;
131 GtkWidget *fileQuit;
132 GtkWidget *menuEdit;
133@@ -327,6 +329,7 @@
134 gtk_container_add (GTK_CONTAINER (menuFile_menu), separator1);
135 gtk_widget_set_sensitive (separator1, FALSE);
136
137+#if ENABLE_PRINTING
138 filePrintOptions = gtk_image_menu_item_new_with_mnemonic ("Print Options");
139 gtk_widget_show (filePrintOptions);
140 gtk_container_add (GTK_CONTAINER (menuFile_menu), filePrintOptions);
141@@ -347,6 +350,7 @@
142 gtk_widget_show (separator2);
143 gtk_container_add (GTK_CONTAINER (menuFile_menu), separator2);
144 gtk_widget_set_sensitive (separator2, FALSE);
145+#endif
146
147 fileQuit = gtk_image_menu_item_new_from_stock ("gtk-quit", accel_group);
148 gtk_widget_show (fileQuit);
149@@ -1522,6 +1526,7 @@
150 g_signal_connect ((gpointer) fileSaveAs, "activate",
151 G_CALLBACK (on_fileSaveAs_activate),
152 NULL);
153+#if ENABLE_PRINTING
154 g_signal_connect ((gpointer) filePrintOptions, "activate",
155 G_CALLBACK (on_filePrintOptions_activate),
156 NULL);
157@@ -1531,6 +1536,7 @@
158 g_signal_connect ((gpointer) filePrintPDF, "activate",
159 G_CALLBACK (on_filePrintPDF_activate),
160 NULL);
161+#endif
162 g_signal_connect ((gpointer) fileQuit, "activate",
163 G_CALLBACK (on_fileQuit_activate),
164 NULL);
165@@ -1941,11 +1947,13 @@
166 GLADE_HOOKUP_OBJECT (winMain, fileSave, "fileSave");
167 GLADE_HOOKUP_OBJECT (winMain, fileSaveAs, "fileSaveAs");
168 GLADE_HOOKUP_OBJECT (winMain, separator1, "separator1");
169+#if ENABLE_PRINTING
170 GLADE_HOOKUP_OBJECT (winMain, filePrintOptions, "filePrintOptions");
171 GLADE_HOOKUP_OBJECT (winMain, image501, "image501");
172 GLADE_HOOKUP_OBJECT (winMain, filePrint, "filePrint");
173 GLADE_HOOKUP_OBJECT (winMain, filePrintPDF, "filePrintPDF");
174 GLADE_HOOKUP_OBJECT (winMain, separator2, "separator2");
175+#endif
176 GLADE_HOOKUP_OBJECT (winMain, fileQuit, "fileQuit");
177 GLADE_HOOKUP_OBJECT (winMain, menuEdit, "menuEdit");
178 GLADE_HOOKUP_OBJECT (winMain, menuEdit_menu, "menuEdit_menu");
diff --git a/meta-demoapps/recipes-graphics/xournal/xournal_0.2.bb b/meta-demoapps/recipes-graphics/xournal/xournal_0.2.bb
new file mode 100644
index 0000000000..1ca6e1ed7c
--- /dev/null
+++ b/meta-demoapps/recipes-graphics/xournal/xournal_0.2.bb
@@ -0,0 +1,12 @@
1HOMEPAGE = "http://www-math.mit.edu/~auroux/software/xournal/"
2DESCRIPTION = "Xournal is an application for notetaking, sketching, keeping a journal using a stylus."
3DEPENDS = "gtk+ libgnomecanvas zlib"
4SECTION = "x11"
5LICENSE = "GPL"
6PR = "r2"
7
8SRC_URI = "http://math.mit.edu/~auroux/software/xournal/xournal-0.2.tar.gz \
9 file://ldflags.patch;patch=1 \
10 file://no-printing.diff;patch=1"
11
12inherit autotools pkgconfig
diff --git a/meta-demoapps/recipes-kernel/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch b/meta-demoapps/recipes-kernel/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch
new file mode 100644
index 0000000000..903a8baa9e
--- /dev/null
+++ b/meta-demoapps/recipes-kernel/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch
@@ -0,0 +1,15 @@
1Index: fuse-2.7.2/util/Makefile.am
2===================================================================
3--- fuse-2.7.2.orig/util/Makefile.am 2007-04-26 01:36:47.000000000 +0930
4+++ fuse-2.7.2/util/Makefile.am 2008-02-10 16:43:19.000000000 +1030
5@@ -33,10 +33,6 @@
6 $(INSTALL_PROGRAM) $(srcdir)/mount.fuse $(DESTDIR)$(MOUNT_FUSE_PATH)/mount.fuse
7 $(mkdir_p) $(DESTDIR)$(INIT_D_PATH)
8 $(INSTALL_PROGRAM) $(srcdir)/init_script $(DESTDIR)$(INIT_D_PATH)/fuse
9- @if test -x /usr/sbin/update-rc.d; then \
10- echo "/usr/sbin/update-rc.d fuse start 34 S . start 41 0 6 . || true"; \
11- /usr/sbin/update-rc.d fuse start 34 S . start 41 0 6 . || true; \
12- fi
13
14 install-data-local:
15 $(mkdir_p) $(DESTDIR)$(UDEV_RULES_PATH)
diff --git a/meta-demoapps/recipes-kernel/fuse/fuse.inc b/meta-demoapps/recipes-kernel/fuse/fuse.inc
new file mode 100644
index 0000000000..c6755ac7c7
--- /dev/null
+++ b/meta-demoapps/recipes-kernel/fuse/fuse.inc
@@ -0,0 +1,13 @@
1DESCRIPTION = "With FUSE it is possible to implement a fully functional filesystem in a userspace program"
2HOMEPAGE = "http://fuse.sf.net"
3LICENSE = "GPL"
4DEPENDS = "virtual/fakeroot-native"
5RRECOMMENDS_fuse = "${@base_contains("MACHINE_FEATURES","kernel26","kernel-module-fuse","fuse-module",d)}"
6
7SRC_URI = "${SOURCEFORGE_MIRROR}/fuse/fuse-${PV}.tar.gz"
8
9inherit autotools pkgconfig
10
11fakeroot do_install() {
12 oe_runmake install DESTDIR=${D}
13}
diff --git a/meta-demoapps/recipes-kernel/fuse/fuse_2.7.2.bb b/meta-demoapps/recipes-kernel/fuse/fuse_2.7.2.bb
new file mode 100644
index 0000000000..d284a25f5f
--- /dev/null
+++ b/meta-demoapps/recipes-kernel/fuse/fuse_2.7.2.bb
@@ -0,0 +1,22 @@
1require fuse.inc
2
3PR = "r0"
4
5SRC_URI += "file://not-run-updaterc.d-on-host.patch;patch=1"
6
7EXTRA_OECONF = " --disable-kernel-module"
8
9#package utils in a sperate package and stop debian.bbclass renaming it to libfuse-utils, we want it to be fuse-utils
10PACKAGES =+ "fuse-utils-dbg fuse-utils libulockmgr libulockmgr-dev libulockmgr-dbg"
11FILES_${PN} += "${libdir}/libfuse.so.*"
12FILES_${PN}-dev += "${libdir}/libfuse*.la"
13
14FILES_libulockmgr = "${libdir}/libulockmgr.so.*"
15FILES_libulockmgr-dev += "${libdir}/libulock*.la"
16FILES_libulockmgr-dbg += "${libdir}/.debug/libulock*"
17
18FILES_fuse-utils = "${bindir} ${base_sbindir}"
19FILES_fuse-utils-dbg = "${bindir}/.debug ${base_sbindir}/.debug"
20DEBIAN_NOAUTONAME_fuse-utils = "1"
21DEBIAN_NOAUTONAME_fuse-utils-dbg = "1"
22
diff --git a/meta-demoapps/recipes-sato/claws-mail/claws-mail.inc b/meta-demoapps/recipes-sato/claws-mail/claws-mail.inc
new file mode 100644
index 0000000000..04401df2f5
--- /dev/null
+++ b/meta-demoapps/recipes-sato/claws-mail/claws-mail.inc
@@ -0,0 +1,57 @@
1SECTION = "x11/network"
2DESCRIPTION = "Mail user agent"
3#DEPENDS = "gtk+ gpgme libetpan libgnomeprint aspell openssl"
4DEPENDS = "gtk+ libetpan openssl libowl"
5LICENSE = "GPL"
6PR = "r6"
7
8SRC_URI = "\
9 ${SOURCEFORGE_MIRROR}/sylpheed-claws/claws-mail-${PV}.tar.bz2 \
10 file://desktop.patch;patch=1 \
11 file://streamline-ui.patch;patch=1 \
12 file://owl-window-menu.patch;patch=1 \
13 file://fix-build.patch;patch=1 \
14 "
15
16FILES_${PN} = "${bindir} ${datadir}/pixmaps ${datadir}/applications"
17
18#EXTRA_OECONF = "--disable-aspell-test \
19# --disable-dillo-viewer-plugin --with-aspell-prefix=${STAGING_DIR_HOST}${prefix} \
20# --enable-aspell"
21
22EXTRA_OECONF = "--disable-aspell-test \
23 --disable-aspell \
24 --disable-manual \
25# --disable-openssl \
26 --disable-crash-dialog \
27 --disable-jpilot \
28 --disable-trayicon-plugin \
29 --disable-spamassassin-plugin \
30 --disable-bogofilter-plugin \
31 --disable-pgpcore-plugin \
32 --disable-pgpmime-plugin \
33 --disable-pgpinline-plugin \
34 --disable-dillo-viewer-plugin \
35 --disable-clamav-plugin \
36# --disable-libetpan \
37 --disable-gnomeprint \
38 --disable-valgrind \
39 --disable-static \
40 "
41
42CFLAGS += "-D_GNU_SOURCE"
43
44inherit autotools pkgconfig gettext
45
46do_install_append() {
47 install -d ${D}${datadir}/applications
48 install -m 0644 claws-mail.desktop ${D}${datadir}/applications/
49 install -d ${D}${datadir}/pixmaps
50 install -m 0644 claws-mail.png ${D}${datadir}/pixmaps/
51}
52
53#python populate_packages_prepend () {
54# abiword_libdir = bb.data.expand('${libdir}/claws-mail/plugins', d)
55#
56# do_split_packages(d, abiword_libdir, '^(.*)\.so$', 'claws-mail-plugin-%s', 'Claws plugin for %s', extra_depends='')
57#}
diff --git a/meta-demoapps/recipes-sato/claws-mail/claws-mail_2.9.1.bb b/meta-demoapps/recipes-sato/claws-mail/claws-mail_2.9.1.bb
new file mode 100644
index 0000000000..f8a8396b95
--- /dev/null
+++ b/meta-demoapps/recipes-sato/claws-mail/claws-mail_2.9.1.bb
@@ -0,0 +1 @@
require claws-mail.inc
diff --git a/meta-demoapps/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.15.bb b/meta-demoapps/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.15.bb
new file mode 100644
index 0000000000..82918173e4
--- /dev/null
+++ b/meta-demoapps/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.15.bb
@@ -0,0 +1,14 @@
1SECTION = "x11/network"
2DESCRIPTION = "Mail user agent plugins"
3DEPENDS = "claws-mail gtkhtml2 curl"
4LICENSE = "GPL"
5PR = "r1"
6
7SRC_URI = "http://www.claws-mail.org/downloads/plugins/gtkhtml2_viewer-${PV}.tar.gz"
8
9inherit autotools pkgconfig gettext
10
11S = "${WORKDIR}/gtkhtml2_viewer-${PV}"
12
13FILES_${PN} = "${libdir}/claws-mail/plugins/*.so"
14
diff --git a/meta-demoapps/recipes-sato/claws-mail/claws-plugin-maildir_0.24.4.bb b/meta-demoapps/recipes-sato/claws-mail/claws-plugin-maildir_0.24.4.bb
new file mode 100644
index 0000000000..4351d1e5de
--- /dev/null
+++ b/meta-demoapps/recipes-sato/claws-mail/claws-plugin-maildir_0.24.4.bb
@@ -0,0 +1,14 @@
1SECTION = "x11/network"
2DESCRIPTION = "Mail user agent plugins"
3DEPENDS = "claws-mail db"
4LICENSE = "GPL"
5PR = "r1"
6
7SRC_URI = "http://www.claws-mail.org/downloads/plugins/maildir-${PV}.tar.gz"
8
9inherit autotools pkgconfig
10
11S = "${WORKDIR}/maildir-${PV}"
12
13FILES_${PN} = "${libdir}/claws-mail/plugins/*.so"
14
diff --git a/meta-demoapps/recipes-sato/claws-mail/claws-plugin-mailmbox_1.13.bb b/meta-demoapps/recipes-sato/claws-mail/claws-plugin-mailmbox_1.13.bb
new file mode 100644
index 0000000000..fe7041494f
--- /dev/null
+++ b/meta-demoapps/recipes-sato/claws-mail/claws-plugin-mailmbox_1.13.bb
@@ -0,0 +1,14 @@
1SECTION = "x11/network"
2DESCRIPTION = "Mail user agent plugins"
3DEPENDS = "claws-mail"
4LICENSE = "GPL"
5PR = "r2"
6
7SRC_URI = "http://www.claws-mail.org/downloads/plugins/mailmbox-${PV}.tar.gz"
8
9inherit autotools pkgconfig
10
11S = "${WORKDIR}/mailmbox-${PV}"
12
13FILES_${PN} = "${libdir}/claws-mail/plugins/*.so"
14FILES_${PN}-dbg = "${libdir}/claws-mail/plugins/.debug"
diff --git a/meta-demoapps/recipes-sato/claws-mail/claws-plugin-rssyl_0.13.bb b/meta-demoapps/recipes-sato/claws-mail/claws-plugin-rssyl_0.13.bb
new file mode 100644
index 0000000000..de0705c7fd
--- /dev/null
+++ b/meta-demoapps/recipes-sato/claws-mail/claws-plugin-rssyl_0.13.bb
@@ -0,0 +1,14 @@
1SECTION = "x11/network"
2DESCRIPTION = "Mail user agent plugins"
3DEPENDS = "claws-mail libxml2 curl glib-2.0 gtk+"
4LICENSE = "GPL"
5PR = "r1"
6
7SRC_URI = "http://www.claws-mail.org/downloads/plugins/rssyl-${PV}.tar.gz"
8
9inherit autotools pkgconfig gettext
10
11S = "${WORKDIR}/rssyl-${PV}"
12
13FILES_${PN} = "${libdir}/claws-mail/plugins/*.so"
14
diff --git a/meta-demoapps/recipes-sato/claws-mail/files/desktop.patch b/meta-demoapps/recipes-sato/claws-mail/files/desktop.patch
new file mode 100644
index 0000000000..c5ed7a9c7d
--- /dev/null
+++ b/meta-demoapps/recipes-sato/claws-mail/files/desktop.patch
@@ -0,0 +1,19 @@
1Index: claws-mail-2.9.1/claws-mail.desktop
2===================================================================
3--- claws-mail-2.9.1.orig/claws-mail.desktop 2007-04-24 17:40:20.000000000 +0100
4+++ claws-mail-2.9.1/claws-mail.desktop 2007-04-25 07:08:36.000000000 +0100
5@@ -1,11 +1,11 @@
6 [Desktop Entry]
7 Encoding=UTF-8
8-Name=Claws Mail
9+Name=Mail
10 Exec=claws-mail
11 Icon=claws-mail
12-Info="Claws Mail"
13+Info=Email Application
14 Categories=GTK;Network;Email;
15-Comment="Gtk+ based Mail Client"
16+Comment=Email Application
17 Terminal=false
18 Type=Application
19 StartupNotify=true
diff --git a/meta-demoapps/recipes-sato/claws-mail/files/fix-build.patch b/meta-demoapps/recipes-sato/claws-mail/files/fix-build.patch
new file mode 100644
index 0000000000..2f30899fe1
--- /dev/null
+++ b/meta-demoapps/recipes-sato/claws-mail/files/fix-build.patch
@@ -0,0 +1,24 @@
1Remove duplicate file entries as this breaks install with new Automake
2
3JL 19/03/10
4
5Index: claws-mail-2.9.1/src/gtk/Makefile.am
6===================================================================
7--- claws-mail-2.9.1.orig/src/gtk/Makefile.am 2007-03-22 07:52:47.000000000 +0000
8+++ claws-mail-2.9.1/src/gtk/Makefile.am 2010-03-19 14:54:06.565828281 +0000
9@@ -44,7 +44,6 @@
10 filesel.h \
11 foldersort.h \
12 gtkaspell.h \
13- gtksctree.h \
14 gtkshruler.h \
15 gtksctree.h \
16 gtksourceprintjob.h \
17@@ -57,7 +56,6 @@
18 menu.h \
19 pluginwindow.h \
20 prefswindow.h \
21- gtkvscrollbutton.h \
22 progressdialog.h \
23 quicksearch.h \
24 sslcertwindow.h \
diff --git a/meta-demoapps/recipes-sato/claws-mail/files/owl-window-menu.patch b/meta-demoapps/recipes-sato/claws-mail/files/owl-window-menu.patch
new file mode 100644
index 0000000000..54c61668a9
--- /dev/null
+++ b/meta-demoapps/recipes-sato/claws-mail/files/owl-window-menu.patch
@@ -0,0 +1,1009 @@
1Index: claws-mail-2.9.1/src/addressbook.c
2===================================================================
3--- claws-mail-2.9.1.orig/src/addressbook.c 2007-04-25 10:18:13.000000000 +0100
4+++ claws-mail-2.9.1/src/addressbook.c 2007-04-25 10:30:23.000000000 +0100
5@@ -941,7 +941,6 @@
6 sizeof(addressbook_entries[0]);
7 menubar = menubar_create(window, addressbook_entries, n_entries,
8 "<AddressBook>", NULL);
9- gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0);
10 menu_factory = gtk_item_factory_from_widget(menubar);
11
12 vbox2 = gtk_vbox_new(FALSE, BORDER_WIDTH);
13Index: claws-mail-2.9.1/src/gtk/menu.c
14===================================================================
15--- claws-mail-2.9.1.orig/src/gtk/menu.c 2007-04-25 10:18:13.000000000 +0100
16+++ claws-mail-2.9.1/src/gtk/menu.c 2007-04-25 10:30:23.000000000 +0100
17@@ -35,10 +35,7 @@
18 #include "menu.h"
19 #include "utils.h"
20
21-#ifdef MAEMO
22-#include <hildon-widgets/hildon-program.h>
23-#include <gtk/gtkmain.h>
24-#endif
25+#include <libowl/owlwindowmenu.h>
26
27 static void connect_accel_change_signals(GtkWidget* widget, GtkWidget *wid2) ;
28
29@@ -49,20 +46,14 @@
30 GtkItemFactory *factory;
31 GtkWidget *menubar;
32
33-#ifdef MAEMO
34 factory = gtk_item_factory_new(GTK_TYPE_MENU, path, NULL);
35-#else
36- factory = gtk_item_factory_new(GTK_TYPE_MENU_BAR, path, NULL);
37-#endif
38 gtk_item_factory_set_translate_func(factory, menu_translate,
39 NULL, NULL);
40 gtk_item_factory_create_items(factory, n_entries, entries, data);
41 gtk_window_add_accel_group (GTK_WINDOW (window), factory->accel_group);
42
43 menubar = gtk_item_factory_get_widget(factory, path);
44-#ifdef MAEMO
45- hildon_window_set_menu(HILDON_WINDOW(window), GTK_MENU(menubar));
46-#endif
47+ owl_set_window_menu(GTK_WINDOW(window), GTK_MENU(menubar));
48 return menubar;
49 }
50
51Index: claws-mail-2.9.1/src/mainwindow.c
52===================================================================
53--- claws-mail-2.9.1.orig/src/mainwindow.c 2007-04-25 10:26:40.000000000 +0100
54+++ claws-mail-2.9.1/src/mainwindow.c 2007-04-25 10:30:23.000000000 +0100
55@@ -1094,8 +1094,6 @@
56 n_menu_entries = sizeof(mainwin_entries) / sizeof(mainwin_entries[0]);
57 menubar = menubar_create(window, mainwin_entries,
58 n_menu_entries, "<Main>", mainwin);
59- gtk_widget_show(menubar);
60- gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0);
61 ifactory = gtk_item_factory_from_widget(menubar);
62
63 /* gtk_widget_show(gtk_item_factory_get_item(ifactory,"/Message/Mailing-List"));
64Index: claws-mail-2.9.1/src/messageview.c
65===================================================================
66--- claws-mail-2.9.1.orig/src/messageview.c 2007-04-25 10:18:13.000000000 +0100
67+++ claws-mail-2.9.1/src/messageview.c 2007-04-25 10:30:23.000000000 +0100
68@@ -414,8 +414,6 @@
69 n_menu_entries = sizeof(msgview_entries) / sizeof(msgview_entries[0]);
70 menubar = menubar_create(window, msgview_entries,
71 n_menu_entries, "<MessageView>", msgview);
72- gtk_widget_show(menubar);
73- gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0);
74
75 if (prefs_common.toolbar_detachable) {
76 handlebox = gtk_handle_box_new();
77@@ -478,6 +476,7 @@
78 g_signal_connect(G_OBJECT(window), "key_press_event",
79 G_CALLBACK(key_pressed), msgview);
80 #endif
81+ gtk_widget_realize(window);
82 messageview_add_toolbar(msgview, window);
83
84 if (show) {
85Index: claws-mail-2.9.1/configure.ac
86===================================================================
87--- claws-mail-2.9.1.orig/configure.ac 2007-04-25 10:18:13.000000000 +0100
88+++ claws-mail-2.9.1/configure.ac 2007-04-25 10:30:23.000000000 +0100
89@@ -406,6 +406,11 @@
90 AC_SUBST(GTK_CFLAGS)
91 AC_SUBST(GTK_LIBS)
92
93+OWL_CFLAGS=""
94+OWL_LIBS="-lowl"
95+AC_SUBST(OWL_CFLAGS)
96+AC_SUBST(OWL_LIBS)
97+
98 dnl GNU/Aspell is used for spell checking
99 AC_ARG_ENABLE(aspell,
100 [ --disable-aspell Disable GNU/aspell support [default=yes]],
101Index: claws-mail-2.9.1/src/Makefile.am
102===================================================================
103--- claws-mail-2.9.1.orig/src/Makefile.am 2007-04-25 10:18:13.000000000 +0100
104+++ claws-mail-2.9.1/src/Makefile.am 2007-04-25 10:30:23.000000000 +0100
105@@ -471,7 +471,8 @@
106 $(LIBICONV) \
107 $(STARTUP_NOTIFICATION_LIBS) \
108 $(LIBETPAN_LIBS) \
109- $(MAEMO_LIBS)
110+ $(MAEMO_LIBS) \
111+ $(OWL_LIBS)
112
113 AM_CPPFLAGS = \
114 -DG_LOG_DOMAIN=\"Claws-Mail\" \
115@@ -489,6 +490,7 @@
116 $(LIBETPAN_CPPFLAGS) \
117 $(STARTUP_NOTIFICATION_CFLAGS) \
118 $(MAEMO_CFLAGS) \
119+ $(OWL_CFLAGS) \
120 -Wno-unused-function
121
122 #no-unused-function is there because of bison stuff
123Index: claws-mail-2.9.1/configure
124===================================================================
125--- claws-mail-2.9.1.orig/configure 2007-04-25 10:18:13.000000000 +0100
126+++ claws-mail-2.9.1/configure 2007-04-25 10:30:23.000000000 +0100
127@@ -769,7 +769,6 @@
128 # include <unistd.h>
129 #endif"
130
131-gt_needs=
132 ac_subst_vars='SHELL
133 PATH_SEPARATOR
134 PACKAGE_NAME
135@@ -942,6 +941,8 @@
136 PASSCRYPT_KEY
137 GTK_CFLAGS
138 GTK_LIBS
139+OWL_LIBS
140+OWL_CFLAGS
141 ASPELL
142 ASPELL_CFLAGS
143 ASPELL_LIBS
144@@ -2063,7 +2064,6 @@
145 >$cache_file
146 fi
147
148-gt_needs="$gt_needs "
149 # Check that the precious variables saved in the cache have kept the same
150 # value.
151 ac_cache_corrupted=false
152@@ -3001,9 +3001,7 @@
153 # Put the nasty error message in config.log where it belongs
154 echo "$GNOME2_PKG_ERRORS" >&5
155
156- { echo "$as_me:$LINENO: result: no" >&5
157-echo "${ECHO_T}no" >&6; }
158- ac_enable_gnome2=no
159+ ac_enable_gnome2=no
160 elif test $pkg_failed = untried; then
161 ac_enable_gnome2=no
162 else
163@@ -4147,14 +4145,12 @@
164
165
166
167-
168- { echo "$as_me:$LINENO: checking for strerror in -lcposix" >&5
169-echo $ECHO_N "checking for strerror in -lcposix... $ECHO_C" >&6; }
170-if test "${ac_cv_lib_cposix_strerror+set}" = set; then
171+{ echo "$as_me:$LINENO: checking for library containing strerror" >&5
172+echo $ECHO_N "checking for library containing strerror... $ECHO_C" >&6; }
173+if test "${ac_cv_search_strerror+set}" = set; then
174 echo $ECHO_N "(cached) $ECHO_C" >&6
175 else
176- ac_check_lib_save_LIBS=$LIBS
177-LIBS="-lcposix $LIBS"
178+ ac_func_search_save_LIBS=$LIBS
179 cat >conftest.$ac_ext <<_ACEOF
180 /* confdefs.h. */
181 _ACEOF
182@@ -4177,7 +4173,14 @@
183 return 0;
184 }
185 _ACEOF
186-rm -f conftest.$ac_objext conftest$ac_exeext
187+for ac_lib in '' cposix; do
188+ if test -z "$ac_lib"; then
189+ ac_res="none required"
190+ else
191+ ac_res=-l$ac_lib
192+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
193+ fi
194+ rm -f conftest.$ac_objext conftest$ac_exeext
195 if { (ac_try="$ac_link"
196 case "(($ac_try" in
197 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
198@@ -4195,25 +4198,35 @@
199 test ! -s conftest.err
200 } && test -s conftest$ac_exeext &&
201 $as_test_x conftest$ac_exeext; then
202- ac_cv_lib_cposix_strerror=yes
203+ ac_cv_search_strerror=$ac_res
204 else
205 echo "$as_me: failed program was:" >&5
206 sed 's/^/| /' conftest.$ac_ext >&5
207
208- ac_cv_lib_cposix_strerror=no
209+
210 fi
211
212 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
213- conftest$ac_exeext conftest.$ac_ext
214-LIBS=$ac_check_lib_save_LIBS
215+ conftest$ac_exeext
216+ if test "${ac_cv_search_strerror+set}" = set; then
217+ break
218+fi
219+done
220+if test "${ac_cv_search_strerror+set}" = set; then
221+ :
222+else
223+ ac_cv_search_strerror=no
224 fi
225-{ echo "$as_me:$LINENO: result: $ac_cv_lib_cposix_strerror" >&5
226-echo "${ECHO_T}$ac_cv_lib_cposix_strerror" >&6; }
227-if test $ac_cv_lib_cposix_strerror = yes; then
228- LIBS="$LIBS -lcposix"
229+rm conftest.$ac_ext
230+LIBS=$ac_func_search_save_LIBS
231 fi
232+{ echo "$as_me:$LINENO: result: $ac_cv_search_strerror" >&5
233+echo "${ECHO_T}$ac_cv_search_strerror" >&6; }
234+ac_res=$ac_cv_search_strerror
235+if test "$ac_res" != no; then
236+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
237
238-
239+fi
240
241 # Find a good install program. We prefer a C program (faster),
242 # so one script is as good as another. But avoid the broken or
243@@ -5769,7 +5782,7 @@
244 ;;
245 *-*-irix6*)
246 # Find out which ABI we are using.
247- echo '#line 5772 "configure"' > conftest.$ac_ext
248+ echo '#line 5785 "configure"' > conftest.$ac_ext
249 if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
250 (eval $ac_compile) 2>&5
251 ac_status=$?
252@@ -8555,11 +8568,11 @@
253 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
254 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
255 -e 's:$: $lt_compiler_flag:'`
256- (eval echo "\"\$as_me:8558: $lt_compile\"" >&5)
257+ (eval echo "\"\$as_me:8571: $lt_compile\"" >&5)
258 (eval "$lt_compile" 2>conftest.err)
259 ac_status=$?
260 cat conftest.err >&5
261- echo "$as_me:8562: \$? = $ac_status" >&5
262+ echo "$as_me:8575: \$? = $ac_status" >&5
263 if (exit $ac_status) && test -s "$ac_outfile"; then
264 # The compiler can only warn and ignore the option if not recognized
265 # So say no if there are warnings other than the usual output.
266@@ -8823,11 +8836,11 @@
267 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
268 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
269 -e 's:$: $lt_compiler_flag:'`
270- (eval echo "\"\$as_me:8826: $lt_compile\"" >&5)
271+ (eval echo "\"\$as_me:8839: $lt_compile\"" >&5)
272 (eval "$lt_compile" 2>conftest.err)
273 ac_status=$?
274 cat conftest.err >&5
275- echo "$as_me:8830: \$? = $ac_status" >&5
276+ echo "$as_me:8843: \$? = $ac_status" >&5
277 if (exit $ac_status) && test -s "$ac_outfile"; then
278 # The compiler can only warn and ignore the option if not recognized
279 # So say no if there are warnings other than the usual output.
280@@ -8927,11 +8940,11 @@
281 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
282 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
283 -e 's:$: $lt_compiler_flag:'`
284- (eval echo "\"\$as_me:8930: $lt_compile\"" >&5)
285+ (eval echo "\"\$as_me:8943: $lt_compile\"" >&5)
286 (eval "$lt_compile" 2>out/conftest.err)
287 ac_status=$?
288 cat out/conftest.err >&5
289- echo "$as_me:8934: \$? = $ac_status" >&5
290+ echo "$as_me:8947: \$? = $ac_status" >&5
291 if (exit $ac_status) && test -s out/conftest2.$ac_objext
292 then
293 # The compiler can only warn and ignore the option if not recognized
294@@ -11224,7 +11237,7 @@
295 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
296 lt_status=$lt_dlunknown
297 cat > conftest.$ac_ext <<EOF
298-#line 11227 "configure"
299+#line 11240 "configure"
300 #include "confdefs.h"
301
302 #if HAVE_DLFCN_H
303@@ -11324,7 +11337,7 @@
304 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
305 lt_status=$lt_dlunknown
306 cat > conftest.$ac_ext <<EOF
307-#line 11327 "configure"
308+#line 11340 "configure"
309 #include "confdefs.h"
310
311 #if HAVE_DLFCN_H
312@@ -13660,11 +13673,11 @@
313 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
314 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
315 -e 's:$: $lt_compiler_flag:'`
316- (eval echo "\"\$as_me:13663: $lt_compile\"" >&5)
317+ (eval echo "\"\$as_me:13676: $lt_compile\"" >&5)
318 (eval "$lt_compile" 2>conftest.err)
319 ac_status=$?
320 cat conftest.err >&5
321- echo "$as_me:13667: \$? = $ac_status" >&5
322+ echo "$as_me:13680: \$? = $ac_status" >&5
323 if (exit $ac_status) && test -s "$ac_outfile"; then
324 # The compiler can only warn and ignore the option if not recognized
325 # So say no if there are warnings other than the usual output.
326@@ -13764,11 +13777,11 @@
327 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
328 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
329 -e 's:$: $lt_compiler_flag:'`
330- (eval echo "\"\$as_me:13767: $lt_compile\"" >&5)
331+ (eval echo "\"\$as_me:13780: $lt_compile\"" >&5)
332 (eval "$lt_compile" 2>out/conftest.err)
333 ac_status=$?
334 cat out/conftest.err >&5
335- echo "$as_me:13771: \$? = $ac_status" >&5
336+ echo "$as_me:13784: \$? = $ac_status" >&5
337 if (exit $ac_status) && test -s out/conftest2.$ac_objext
338 then
339 # The compiler can only warn and ignore the option if not recognized
340@@ -15325,11 +15338,11 @@
341 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
342 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
343 -e 's:$: $lt_compiler_flag:'`
344- (eval echo "\"\$as_me:15328: $lt_compile\"" >&5)
345+ (eval echo "\"\$as_me:15341: $lt_compile\"" >&5)
346 (eval "$lt_compile" 2>conftest.err)
347 ac_status=$?
348 cat conftest.err >&5
349- echo "$as_me:15332: \$? = $ac_status" >&5
350+ echo "$as_me:15345: \$? = $ac_status" >&5
351 if (exit $ac_status) && test -s "$ac_outfile"; then
352 # The compiler can only warn and ignore the option if not recognized
353 # So say no if there are warnings other than the usual output.
354@@ -15429,11 +15442,11 @@
355 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
356 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
357 -e 's:$: $lt_compiler_flag:'`
358- (eval echo "\"\$as_me:15432: $lt_compile\"" >&5)
359+ (eval echo "\"\$as_me:15445: $lt_compile\"" >&5)
360 (eval "$lt_compile" 2>out/conftest.err)
361 ac_status=$?
362 cat out/conftest.err >&5
363- echo "$as_me:15436: \$? = $ac_status" >&5
364+ echo "$as_me:15449: \$? = $ac_status" >&5
365 if (exit $ac_status) && test -s out/conftest2.$ac_objext
366 then
367 # The compiler can only warn and ignore the option if not recognized
368@@ -17616,11 +17629,11 @@
369 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
370 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
371 -e 's:$: $lt_compiler_flag:'`
372- (eval echo "\"\$as_me:17619: $lt_compile\"" >&5)
373+ (eval echo "\"\$as_me:17632: $lt_compile\"" >&5)
374 (eval "$lt_compile" 2>conftest.err)
375 ac_status=$?
376 cat conftest.err >&5
377- echo "$as_me:17623: \$? = $ac_status" >&5
378+ echo "$as_me:17636: \$? = $ac_status" >&5
379 if (exit $ac_status) && test -s "$ac_outfile"; then
380 # The compiler can only warn and ignore the option if not recognized
381 # So say no if there are warnings other than the usual output.
382@@ -17884,11 +17897,11 @@
383 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
384 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
385 -e 's:$: $lt_compiler_flag:'`
386- (eval echo "\"\$as_me:17887: $lt_compile\"" >&5)
387+ (eval echo "\"\$as_me:17900: $lt_compile\"" >&5)
388 (eval "$lt_compile" 2>conftest.err)
389 ac_status=$?
390 cat conftest.err >&5
391- echo "$as_me:17891: \$? = $ac_status" >&5
392+ echo "$as_me:17904: \$? = $ac_status" >&5
393 if (exit $ac_status) && test -s "$ac_outfile"; then
394 # The compiler can only warn and ignore the option if not recognized
395 # So say no if there are warnings other than the usual output.
396@@ -17988,11 +18001,11 @@
397 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
398 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
399 -e 's:$: $lt_compiler_flag:'`
400- (eval echo "\"\$as_me:17991: $lt_compile\"" >&5)
401+ (eval echo "\"\$as_me:18004: $lt_compile\"" >&5)
402 (eval "$lt_compile" 2>out/conftest.err)
403 ac_status=$?
404 cat out/conftest.err >&5
405- echo "$as_me:17995: \$? = $ac_status" >&5
406+ echo "$as_me:18008: \$? = $ac_status" >&5
407 if (exit $ac_status) && test -s out/conftest2.$ac_objext
408 then
409 # The compiler can only warn and ignore the option if not recognized
410@@ -20960,16 +20973,9 @@
411 found_so=
412 found_a=
413 if test $use_additional = yes; then
414- if test -n "$shlibext" \
415- && { test -f "$additional_libdir/lib$name.$shlibext" \
416- || { test "$shlibext" = dll \
417- && test -f "$additional_libdir/lib$name.dll.a"; }; }; then
418+ if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
419 found_dir="$additional_libdir"
420- if test -f "$additional_libdir/lib$name.$shlibext"; then
421- found_so="$additional_libdir/lib$name.$shlibext"
422- else
423- found_so="$additional_libdir/lib$name.dll.a"
424- fi
425+ found_so="$additional_libdir/lib$name.$shlibext"
426 if test -f "$additional_libdir/lib$name.la"; then
427 found_la="$additional_libdir/lib$name.la"
428 fi
429@@ -20997,16 +21003,9 @@
430 case "$x" in
431 -L*)
432 dir=`echo "X$x" | sed -e 's/^X-L//'`
433- if test -n "$shlibext" \
434- && { test -f "$dir/lib$name.$shlibext" \
435- || { test "$shlibext" = dll \
436- && test -f "$dir/lib$name.dll.a"; }; }; then
437+ if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
438 found_dir="$dir"
439- if test -f "$dir/lib$name.$shlibext"; then
440- found_so="$dir/lib$name.$shlibext"
441- else
442- found_so="$dir/lib$name.dll.a"
443- fi
444+ found_so="$dir/lib$name.$shlibext"
445 if test -f "$dir/lib$name.la"; then
446 found_la="$dir/lib$name.la"
447 fi
448@@ -21927,13 +21926,6 @@
449
450
451
452-
453-
454-
455-
456-
457-
458-
459 { echo "$as_me:$LINENO: checking for CFPreferencesCopyAppValue" >&5
460 echo $ECHO_N "checking for CFPreferencesCopyAppValue... $ECHO_C" >&6; }
461 if test "${gt_cv_func_CFPreferencesCopyAppValue+set}" = set; then
462@@ -22070,37 +22062,17 @@
463 LTLIBINTL=
464 POSUB=
465
466- case " $gt_needs " in
467- *" need-formatstring-macros "*) gt_api_version=3 ;;
468- *" need-ngettext "*) gt_api_version=2 ;;
469- *) gt_api_version=1 ;;
470- esac
471- gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc"
472- gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl"
473-
474 if test "$USE_NLS" = "yes"; then
475 gt_use_preinstalled_gnugettext=no
476
477
478- if test $gt_api_version -ge 3; then
479- gt_revision_test_code='
480-#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
481-#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
482-#endif
483-typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
484-'
485- else
486- gt_revision_test_code=
487- fi
488- if test $gt_api_version -ge 2; then
489- gt_expression_test_code=' + * ngettext ("", "", 0)'
490- else
491- gt_expression_test_code=
492- fi
493+
494+
495+
496
497 { echo "$as_me:$LINENO: checking for GNU gettext in libc" >&5
498 echo $ECHO_N "checking for GNU gettext in libc... $ECHO_C" >&6; }
499-if { as_var=$gt_func_gnugettext_libc; eval "test \"\${$as_var+set}\" = set"; }; then
500+if test "${gt_cv_func_gnugettext1_libc+set}" = set; then
501 echo $ECHO_N "(cached) $ECHO_C" >&6
502 else
503 cat >conftest.$ac_ext <<_ACEOF
504@@ -22110,14 +22082,13 @@
505 cat >>conftest.$ac_ext <<_ACEOF
506 /* end confdefs.h. */
507 #include <libintl.h>
508-$gt_revision_test_code
509 extern int _nl_msg_cat_cntr;
510 extern int *_nl_domain_bindings;
511 int
512 main ()
513 {
514 bindtextdomain ("", "");
515-return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings
516+return * gettext ("") + _nl_msg_cat_cntr + *_nl_domain_bindings
517 ;
518 return 0;
519 }
520@@ -22140,22 +22111,21 @@
521 test ! -s conftest.err
522 } && test -s conftest$ac_exeext &&
523 $as_test_x conftest$ac_exeext; then
524- eval "$gt_func_gnugettext_libc=yes"
525+ gt_cv_func_gnugettext1_libc=yes
526 else
527 echo "$as_me: failed program was:" >&5
528 sed 's/^/| /' conftest.$ac_ext >&5
529
530- eval "$gt_func_gnugettext_libc=no"
531+ gt_cv_func_gnugettext1_libc=no
532 fi
533
534 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
535 conftest$ac_exeext conftest.$ac_ext
536 fi
537-ac_res=`eval echo '${'$gt_func_gnugettext_libc'}'`
538- { echo "$as_me:$LINENO: result: $ac_res" >&5
539-echo "${ECHO_T}$ac_res" >&6; }
540+{ echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libc" >&5
541+echo "${ECHO_T}$gt_cv_func_gnugettext1_libc" >&6; }
542
543- if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then
544+ if test "$gt_cv_func_gnugettext1_libc" != "yes"; then
545
546
547
548@@ -22398,16 +22368,9 @@
549 found_so=
550 found_a=
551 if test $use_additional = yes; then
552- if test -n "$shlibext" \
553- && { test -f "$additional_libdir/lib$name.$shlibext" \
554- || { test "$shlibext" = dll \
555- && test -f "$additional_libdir/lib$name.dll.a"; }; }; then
556+ if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
557 found_dir="$additional_libdir"
558- if test -f "$additional_libdir/lib$name.$shlibext"; then
559- found_so="$additional_libdir/lib$name.$shlibext"
560- else
561- found_so="$additional_libdir/lib$name.dll.a"
562- fi
563+ found_so="$additional_libdir/lib$name.$shlibext"
564 if test -f "$additional_libdir/lib$name.la"; then
565 found_la="$additional_libdir/lib$name.la"
566 fi
567@@ -22435,16 +22398,9 @@
568 case "$x" in
569 -L*)
570 dir=`echo "X$x" | sed -e 's/^X-L//'`
571- if test -n "$shlibext" \
572- && { test -f "$dir/lib$name.$shlibext" \
573- || { test "$shlibext" = dll \
574- && test -f "$dir/lib$name.dll.a"; }; }; then
575+ if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
576 found_dir="$dir"
577- if test -f "$dir/lib$name.$shlibext"; then
578- found_so="$dir/lib$name.$shlibext"
579- else
580- found_so="$dir/lib$name.dll.a"
581- fi
582+ found_so="$dir/lib$name.$shlibext"
583 if test -f "$dir/lib$name.la"; then
584 found_la="$dir/lib$name.la"
585 fi
586@@ -22712,7 +22668,7 @@
587
588 { echo "$as_me:$LINENO: checking for GNU gettext in libintl" >&5
589 echo $ECHO_N "checking for GNU gettext in libintl... $ECHO_C" >&6; }
590-if { as_var=$gt_func_gnugettext_libintl; eval "test \"\${$as_var+set}\" = set"; }; then
591+if test "${gt_cv_func_gnugettext1_libintl+set}" = set; then
592 echo $ECHO_N "(cached) $ECHO_C" >&6
593 else
594 gt_save_CPPFLAGS="$CPPFLAGS"
595@@ -22726,7 +22682,6 @@
596 cat >>conftest.$ac_ext <<_ACEOF
597 /* end confdefs.h. */
598 #include <libintl.h>
599-$gt_revision_test_code
600 extern int _nl_msg_cat_cntr;
601 extern
602 #ifdef __cplusplus
603@@ -22737,7 +22692,7 @@
604 main ()
605 {
606 bindtextdomain ("", "");
607-return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")
608+return * gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias ("")
609 ;
610 return 0;
611 }
612@@ -22760,17 +22715,17 @@
613 test ! -s conftest.err
614 } && test -s conftest$ac_exeext &&
615 $as_test_x conftest$ac_exeext; then
616- eval "$gt_func_gnugettext_libintl=yes"
617+ gt_cv_func_gnugettext1_libintl=yes
618 else
619 echo "$as_me: failed program was:" >&5
620 sed 's/^/| /' conftest.$ac_ext >&5
621
622- eval "$gt_func_gnugettext_libintl=no"
623+ gt_cv_func_gnugettext1_libintl=no
624 fi
625
626 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
627 conftest$ac_exeext conftest.$ac_ext
628- if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then
629+ if test "$gt_cv_func_gnugettext1_libintl" != yes && test -n "$LIBICONV"; then
630 LIBS="$LIBS $LIBICONV"
631 cat >conftest.$ac_ext <<_ACEOF
632 /* confdefs.h. */
633@@ -22779,7 +22734,6 @@
634 cat >>conftest.$ac_ext <<_ACEOF
635 /* end confdefs.h. */
636 #include <libintl.h>
637-$gt_revision_test_code
638 extern int _nl_msg_cat_cntr;
639 extern
640 #ifdef __cplusplus
641@@ -22790,7 +22744,7 @@
642 main ()
643 {
644 bindtextdomain ("", "");
645-return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")
646+return * gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias ("")
647 ;
648 return 0;
649 }
650@@ -22815,7 +22769,7 @@
651 $as_test_x conftest$ac_exeext; then
652 LIBINTL="$LIBINTL $LIBICONV"
653 LTLIBINTL="$LTLIBINTL $LTLIBICONV"
654- eval "$gt_func_gnugettext_libintl=yes"
655+ gt_cv_func_gnugettext1_libintl=yes
656
657 else
658 echo "$as_me: failed program was:" >&5
659@@ -22830,13 +22784,12 @@
660 CPPFLAGS="$gt_save_CPPFLAGS"
661 LIBS="$gt_save_LIBS"
662 fi
663-ac_res=`eval echo '${'$gt_func_gnugettext_libintl'}'`
664- { echo "$as_me:$LINENO: result: $ac_res" >&5
665-echo "${ECHO_T}$ac_res" >&6; }
666+{ echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libintl" >&5
667+echo "${ECHO_T}$gt_cv_func_gnugettext1_libintl" >&6; }
668 fi
669
670- if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \
671- || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \
672+ if test "$gt_cv_func_gnugettext1_libc" = "yes" \
673+ || { test "$gt_cv_func_gnugettext1_libintl" = "yes" \
674 && test "$PACKAGE" != gettext-runtime \
675 && test "$PACKAGE" != gettext-tools; }; then
676 gt_use_preinstalled_gnugettext=yes
677@@ -22876,7 +22829,7 @@
678 { echo "$as_me:$LINENO: checking where the gettext function comes from" >&5
679 echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6; }
680 if test "$gt_use_preinstalled_gnugettext" = "yes"; then
681- if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
682+ if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then
683 gt_source="external libintl"
684 else
685 gt_source="libc"
686@@ -22891,7 +22844,7 @@
687 if test "$USE_NLS" = "yes"; then
688
689 if test "$gt_use_preinstalled_gnugettext" = "yes"; then
690- if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
691+ if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then
692 { echo "$as_me:$LINENO: checking how to link with libintl" >&5
693 echo $ECHO_N "checking how to link with libintl... $ECHO_C" >&6; }
694 { echo "$as_me:$LINENO: result: $LIBINTL" >&5
695@@ -26592,12 +26545,8 @@
696 esac
697 done
698
699-
700-
701-if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
702- if test -n "$ac_tool_prefix"; then
703- # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
704-set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
705+ # Extract the first word of "pkg-config", so it can be a program name with args.
706+set dummy pkg-config; ac_word=$2
707 { echo "$as_me:$LINENO: checking for $ac_word" >&5
708 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
709 if test "${ac_cv_path_PKG_CONFIG+set}" = set; then
710@@ -26623,6 +26572,7 @@
711 done
712 IFS=$as_save_IFS
713
714+ test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no"
715 ;;
716 esac
717 fi
718@@ -26636,88 +26586,19 @@
719 fi
720
721
722-fi
723-if test -z "$ac_cv_path_PKG_CONFIG"; then
724- ac_pt_PKG_CONFIG=$PKG_CONFIG
725- # Extract the first word of "pkg-config", so it can be a program name with args.
726-set dummy pkg-config; ac_word=$2
727-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
728-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
729-if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then
730- echo $ECHO_N "(cached) $ECHO_C" >&6
731-else
732- case $ac_pt_PKG_CONFIG in
733- [\\/]* | ?:[\\/]*)
734- ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
735- ;;
736- *)
737- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
738-for as_dir in $PATH
739-do
740- IFS=$as_save_IFS
741- test -z "$as_dir" && as_dir=.
742- for ac_exec_ext in '' $ac_executable_extensions; do
743- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
744- ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
745- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
746- break 2
747- fi
748-done
749-done
750-IFS=$as_save_IFS
751-
752- ;;
753-esac
754-fi
755-ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
756-if test -n "$ac_pt_PKG_CONFIG"; then
757- { echo "$as_me:$LINENO: result: $ac_pt_PKG_CONFIG" >&5
758-echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6; }
759-else
760- { echo "$as_me:$LINENO: result: no" >&5
761-echo "${ECHO_T}no" >&6; }
762-fi
763-
764- if test "x$ac_pt_PKG_CONFIG" = x; then
765- PKG_CONFIG=""
766- else
767- case $cross_compiling:$ac_tool_warned in
768-yes:)
769-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
770-whose name does not start with the host triplet. If you think this
771-configuration is useful to you, please write to autoconf@gnu.org." >&5
772-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
773-whose name does not start with the host triplet. If you think this
774-configuration is useful to you, please write to autoconf@gnu.org." >&2;}
775-ac_tool_warned=yes ;;
776-esac
777- PKG_CONFIG=$ac_pt_PKG_CONFIG
778- fi
779-else
780- PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
781-fi
782-
783-fi
784-if test -n "$PKG_CONFIG"; then
785- _pkg_min_version=0.7
786- { echo "$as_me:$LINENO: checking pkg-config is at least version $_pkg_min_version" >&5
787-echo $ECHO_N "checking pkg-config is at least version $_pkg_min_version... $ECHO_C" >&6; }
788- if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
789- { echo "$as_me:$LINENO: result: yes" >&5
790-echo "${ECHO_T}yes" >&6; }
791- else
792- { echo "$as_me:$LINENO: result: no" >&5
793-echo "${ECHO_T}no" >&6; }
794- PKG_CONFIG=""
795- fi
796-
797-fi
798
799 no_glib=""
800
801- if test "x$PKG_CONFIG" = x ; then
802+ if test x$PKG_CONFIG != xno ; then
803+ if $PKG_CONFIG --atleast-pkgconfig-version 0.7 ; then
804+ :
805+ else
806+ echo *** pkg-config too old; version 0.7 or better required.
807+ no_glib=yes
808+ PKG_CONFIG=no
809+ fi
810+ else
811 no_glib=yes
812- PKG_CONFIG=no
813 fi
814
815 min_glib_version=2.6.0
816@@ -27223,9 +27104,7 @@
817 # Put the nasty error message in config.log where it belongs
818 echo "$OPENSSL_PKG_ERRORS" >&5
819
820- { echo "$as_me:$LINENO: result: no" >&5
821-echo "${ECHO_T}no" >&6; }
822- ac_cv_enable_openssl=no
823+ ac_cv_enable_openssl=no
824 elif test $pkg_failed = untried; then
825 ac_cv_enable_openssl=no
826 else
827@@ -27793,6 +27672,11 @@
828
829
830
831+OWL_LIBS="-lowl"
832+OLS_CFLAGS=""
833+
834+
835+
836 # Check whether --enable-aspell was given.
837 if test "${enable_aspell+set}" = set; then
838 enableval=$enable_aspell; ac_cv_enable_aspell=$enableval
839@@ -28242,9 +28126,7 @@
840 # Put the nasty error message in config.log where it belongs
841 echo "$MAEMO_PKG_ERRORS" >&5
842
843- { echo "$as_me:$LINENO: result: no" >&5
844-echo "${ECHO_T}no" >&6; }
845- ac_cv_enable_maemo=no
846+ ac_cv_enable_maemo=no
847 elif test $pkg_failed = untried; then
848 ac_cv_enable_maemo=no
849 else
850@@ -29796,8 +29678,6 @@
851 # Put the nasty error message in config.log where it belongs
852 echo "$STARTUP_NOTIFICATION_PKG_ERRORS" >&5
853
854- { echo "$as_me:$LINENO: result: no" >&5
855-echo "${ECHO_T}no" >&6; }
856
857 echo "Building without libstartup-notification"
858 enable_startup_notification=no
859@@ -31300,9 +31180,7 @@
860 # Put the nasty error message in config.log where it belongs
861 echo "$CLAMAV_PKG_ERRORS" >&5
862
863- { echo "$as_me:$LINENO: result: no" >&5
864-echo "${ECHO_T}no" >&6; }
865- ac_cv_enable_clamav_plugin=no
866+ ac_cv_enable_clamav_plugin=no
867 elif test $pkg_failed = untried; then
868 ac_cv_enable_clamav_plugin=no
869 else
870@@ -31684,9 +31562,7 @@
871 # Put the nasty error message in config.log where it belongs
872 echo "$GNOMEPRINT_PKG_ERRORS" >&5
873
874- { echo "$as_me:$LINENO: result: no" >&5
875-echo "${ECHO_T}no" >&6; }
876- ac_cv_enable_gnomeprint=no
877+ ac_cv_enable_gnomeprint=no
878 elif test $pkg_failed = untried; then
879 ac_cv_enable_gnomeprint=no
880 else
881@@ -31794,9 +31670,7 @@
882 # Put the nasty error message in config.log where it belongs
883 echo "$VALGRIND_PKG_ERRORS" >&5
884
885- { echo "$as_me:$LINENO: result: no" >&5
886-echo "${ECHO_T}no" >&6; }
887- ac_cv_enable_valgrind=no
888+ ac_cv_enable_valgrind=no
889 elif test $pkg_failed = untried; then
890 ac_cv_enable_valgrind=no
891 else
892@@ -32884,6 +32758,8 @@
893 PASSCRYPT_KEY!$PASSCRYPT_KEY$ac_delim
894 GTK_CFLAGS!$GTK_CFLAGS$ac_delim
895 GTK_LIBS!$GTK_LIBS$ac_delim
896+OWL_LIBS!$OWL_LIBS$ac_delim
897+OWL_CFLAGS!$OWL_CFLAGS$ac_delim
898 ASPELL!$ASPELL$ac_delim
899 ASPELL_CFLAGS!$ASPELL_CFLAGS$ac_delim
900 ASPELL_LIBS!$ASPELL_LIBS$ac_delim
901@@ -32904,8 +32780,6 @@
902 BUILD_SPAMASSASSIN_PLUGIN_FALSE!$BUILD_SPAMASSASSIN_PLUGIN_FALSE$ac_delim
903 BUILD_BOGOFILTER_PLUGIN_TRUE!$BUILD_BOGOFILTER_PLUGIN_TRUE$ac_delim
904 BUILD_BOGOFILTER_PLUGIN_FALSE!$BUILD_BOGOFILTER_PLUGIN_FALSE$ac_delim
905-GPGME_CONFIG!$GPGME_CONFIG$ac_delim
906-GPGME_CFLAGS!$GPGME_CFLAGS$ac_delim
907 _ACEOF
908
909 if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
910@@ -32947,6 +32821,8 @@
911 ac_delim='%!_!# '
912 for ac_last_try in false false false false false :; do
913 cat >conf$$subs.sed <<_ACEOF
914+GPGME_CONFIG!$GPGME_CONFIG$ac_delim
915+GPGME_CFLAGS!$GPGME_CFLAGS$ac_delim
916 GPGME_LIBS!$GPGME_LIBS$ac_delim
917 BUILD_PGPCORE_PLUGIN_TRUE!$BUILD_PGPCORE_PLUGIN_TRUE$ac_delim
918 BUILD_PGPCORE_PLUGIN_FALSE!$BUILD_PGPCORE_PLUGIN_FALSE$ac_delim
919@@ -32979,7 +32855,7 @@
920 LTLIBOBJS!$LTLIBOBJS$ac_delim
921 _ACEOF
922
923- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 30; then
924+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 32; then
925 break
926 elif $ac_last_try; then
927 { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
928Index: claws-mail-2.9.1/src/Makefile.in
929===================================================================
930--- claws-mail-2.9.1.orig/src/Makefile.in 2007-04-25 10:18:13.000000000 +0100
931+++ claws-mail-2.9.1/src/Makefile.in 2007-04-25 10:30:23.000000000 +0100
932@@ -45,8 +45,7 @@
933 $(top_srcdir)/m4/aspell.m4 $(top_srcdir)/m4/check-type.m4 \
934 $(top_srcdir)/m4/gnupg-check-typedef.m4 \
935 $(top_srcdir)/m4/gnupg.m4 $(top_srcdir)/m4/gpgme.m4 \
936- $(top_srcdir)/m4/isc-posix.m4 $(top_srcdir)/m4/spamassassin.m4 \
937- $(top_srcdir)/configure.ac
938+ $(top_srcdir)/m4/spamassassin.m4 $(top_srcdir)/configure.ac
939 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
940 $(ACLOCAL_M4)
941 mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs
942@@ -122,7 +121,7 @@
943 $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) \
944 $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) \
945 $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) \
946- $(am__DEPENDENCIES_2)
947+ $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2)
948 claws_mail_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
949 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
950 $(claws_mail_LDFLAGS) $(LDFLAGS) -o $@
951@@ -272,6 +271,8 @@
952 OBJEXT = @OBJEXT@
953 OPENSSL_CFLAGS = @OPENSSL_CFLAGS@
954 OPENSSL_LIBS = @OPENSSL_LIBS@
955+OWL_CFLAGS = @OWL_CFLAGS@
956+OWL_LIBS = @OWL_LIBS@
957 PACKAGE = @PACKAGE@
958 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
959 PACKAGE_NAME = @PACKAGE_NAME@
960@@ -815,7 +816,8 @@
961 $(LIBICONV) \
962 $(STARTUP_NOTIFICATION_LIBS) \
963 $(LIBETPAN_LIBS) \
964- $(MAEMO_LIBS)
965+ $(MAEMO_LIBS) \
966+ $(OWL_LIBS)
967
968 AM_CPPFLAGS = \
969 -DG_LOG_DOMAIN=\"Claws-Mail\" \
970@@ -833,7 +835,7 @@
971 $(LIBETPAN_CPPFLAGS) \
972 $(STARTUP_NOTIFICATION_CFLAGS) \
973 $(MAEMO_CFLAGS) \
974- -Wno-unused-function
975+ $(OWL_CFLAGS)
976
977
978 #no-unused-function is there because of bison stuff
979@@ -1406,6 +1408,7 @@
980 install-exec-hook:
981 @rm -f $(DESTDIR)$(bindir)/sylpheed-claws
982 @ln -s claws-mail $(DESTDIR)$(bindir)/sylpheed-claws
983+ -Wno-unused-function
984
985 @CYGWIN_TRUE@claws-mail$(EXEEXT): $(claws_mail_OBJECTS) $(claws_mail_DEPENDENCIES)
986 @CYGWIN_TRUE@ @rm -f claws-mail$(EXEEXT)
987Index: claws-mail-2.9.1/autogen.sh
988===================================================================
989--- claws-mail-2.9.1.orig/autogen.sh 2007-04-25 10:18:13.000000000 +0100
990+++ claws-mail-2.9.1/autogen.sh 2007-04-25 10:30:23.000000000 +0100
991@@ -74,5 +74,4 @@
992 && libtoolize --force --copy \
993 && autoheader \
994 && automake --add-missing --foreign --copy \
995- && autoconf \
996- && ./configure --enable-maintainer-mode $@
997+ && autoconf
998Index: claws-mail-2.9.1/src/compose.c
999===================================================================
1000--- claws-mail-2.9.1.orig/src/compose.c 2007-04-25 10:18:13.000000000 +0100
1001+++ claws-mail-2.9.1/src/compose.c 2007-04-25 10:30:23.000000000 +0100
1002@@ -6192,7 +6192,6 @@
1003 n_menu_entries = sizeof(compose_entries) / sizeof(compose_entries[0]);
1004 menubar = menubar_create(window, compose_entries,
1005 n_menu_entries, "<Compose>", compose);
1006- gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0);
1007
1008 handlebox = gtk_hbox_new(FALSE, 0);
1009 gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0);
diff --git a/meta-demoapps/recipes-sato/claws-mail/files/streamline-ui.patch b/meta-demoapps/recipes-sato/claws-mail/files/streamline-ui.patch
new file mode 100644
index 0000000000..29a52ff795
--- /dev/null
+++ b/meta-demoapps/recipes-sato/claws-mail/files/streamline-ui.patch
@@ -0,0 +1,1008 @@
1Index: claws-mail-2.9.1/src/mainwindow.c
2===================================================================
3--- claws-mail-2.9.1.orig/src/mainwindow.c 2007-04-25 07:40:10.000000000 +0100
4+++ claws-mail-2.9.1/src/mainwindow.c 2007-04-25 10:26:40.000000000 +0100
5@@ -189,9 +189,6 @@
6 static void toggle_statusbar_cb (MainWindow *mainwin,
7 guint action,
8 GtkWidget *widget);
9-static void set_layout_cb (MainWindow *mainwin,
10- guint action,
11- GtkWidget *widget);
12
13 static void addressbook_open_cb (MainWindow *mainwin,
14 guint action,
15@@ -538,94 +535,24 @@
16 {N_("/_Edit/_Search folder..."), "<shift><control>F", search_cb, 1, NULL},
17 {N_("/_Edit/_Quick search"), "slash", mainwindow_quicksearch, 0, NULL},
18 {N_("/_View"), NULL, NULL, 0, "<Branch>"},
19- {N_("/_View/Show or hi_de"), NULL, NULL, 0, "<Branch>"},
20- {N_("/_View/Show or hi_de/_Message view"),
21- "V", toggle_message_cb, 0, "<ToggleItem>"},
22- {N_("/_View/Show or hi_de/_Toolbar"),
23- NULL, NULL, 0, "<Branch>"},
24- {N_("/_View/Show or hi_de/_Toolbar/Text _below icons"),
25- NULL, toggle_toolbar_cb, TOOLBAR_BOTH, "<RadioItem>"},
26- {N_("/_View/Show or hi_de/_Toolbar/Text be_side icons"),
27- NULL, toggle_toolbar_cb, TOOLBAR_BOTH_HORIZ, "/View/Show or hide/Toolbar/Text below icons"},
28- {N_("/_View/Show or hi_de/_Toolbar/_Icons only"),
29- NULL, toggle_toolbar_cb, TOOLBAR_ICON, "/View/Show or hide/Toolbar/Text below icons"},
30- {N_("/_View/Show or hi_de/_Toolbar/_Text only"),
31- NULL, toggle_toolbar_cb, TOOLBAR_TEXT, "/View/Show or hide/Toolbar/Text below icons"},
32- {N_("/_View/Show or hi_de/_Toolbar/_Hide"),
33- NULL, toggle_toolbar_cb, TOOLBAR_NONE, "/View/Show or hide/Toolbar/Text below icons"},
34- {N_("/_View/Show or hi_de/Status _bar"),
35- NULL, toggle_statusbar_cb, 0, "<ToggleItem>"},
36 {N_("/_View/Set displayed _columns"), NULL, NULL, 0, "<Branch>"},
37 {N_("/_View/Set displayed _columns/in _Folder list..."), NULL, set_folder_display_item_cb, 0, NULL},
38 {N_("/_View/Set displayed _columns/in _Message list..."),NULL, set_summary_display_item_cb, 0, NULL},
39
40 {N_("/_View/---"), NULL, NULL, 0, "<Separator>"},
41- {N_("/_View/La_yout"), NULL, NULL, 0, "<Branch>"},
42- {N_("/_View/Layout/_Standard"), NULL, set_layout_cb, NORMAL_LAYOUT, "<RadioItem>"},
43- {N_("/_View/Layout/_Three columns"), NULL, set_layout_cb, VERTICAL_LAYOUT, "/View/Layout/Standard"},
44- {N_("/_View/Layout/_Wide message"), NULL, set_layout_cb, WIDE_LAYOUT, "/View/Layout/Standard"},
45- {N_("/_View/Layout/W_ide message list"),NULL, set_layout_cb, WIDE_MSGLIST_LAYOUT, "/View/Layout/Standard"},
46- {N_("/_View/Layout/S_mall screen"), NULL, set_layout_cb, SMALL_LAYOUT, "/View/Layout/Standard"},
47- {N_("/_View/---"), NULL, NULL, 0, "<Separator>"},
48 {N_("/_View/_Sort"), NULL, NULL, 0, "<Branch>"},
49- {N_("/_View/_Sort/by _number"), NULL, sort_summary_cb, SORT_BY_NUMBER, "<RadioItem>"},
50- {N_("/_View/_Sort/by S_ize"), NULL, sort_summary_cb, SORT_BY_SIZE, "/View/Sort/by number"},
51- {N_("/_View/_Sort/by _Date"), NULL, sort_summary_cb, SORT_BY_DATE, "/View/Sort/by number"},
52- {N_("/_View/_Sort/by _From"), NULL, sort_summary_cb, SORT_BY_FROM, "/View/Sort/by number"},
53- {N_("/_View/_Sort/by _To"), NULL, sort_summary_cb, SORT_BY_TO, "/View/Sort/by number"},
54- {N_("/_View/_Sort/by S_ubject"), NULL, sort_summary_cb, SORT_BY_SUBJECT, "/View/Sort/by number"},
55- {N_("/_View/_Sort/by _color label"),
56- NULL, sort_summary_cb, SORT_BY_LABEL, "/View/Sort/by number"},
57- {N_("/_View/_Sort/by _mark"), NULL, sort_summary_cb, SORT_BY_MARK, "/View/Sort/by number"},
58- {N_("/_View/_Sort/by _status"), NULL, sort_summary_cb, SORT_BY_STATUS, "/View/Sort/by number"},
59- {N_("/_View/_Sort/by a_ttachment"),
60- NULL, sort_summary_cb, SORT_BY_MIME, "/View/Sort/by number"},
61- {N_("/_View/_Sort/by score"), NULL, sort_summary_cb, SORT_BY_SCORE, "/View/Sort/by number"},
62- {N_("/_View/_Sort/by locked"), NULL, sort_summary_cb, SORT_BY_LOCKED, "/View/Sort/by number"},
63- {N_("/_View/_Sort/D_on't sort"), NULL, sort_summary_cb, SORT_BY_NONE, "/View/Sort/by number"},
64+ {N_("/_View/_Sort/by _Date"), NULL, sort_summary_cb, SORT_BY_DATE, "<RadioItem>"},
65+ {N_("/_View/_Sort/by _From"), NULL, sort_summary_cb, SORT_BY_FROM, "/View/Sort/by Date"},
66+ {N_("/_View/_Sort/by _To"), NULL, sort_summary_cb, SORT_BY_TO, "/View/Sort/by Date"},
67+ {N_("/_View/_Sort/by S_ubject"), NULL, sort_summary_cb, SORT_BY_SUBJECT, "/View/Sort/by Date"},
68 {N_("/_View/_Sort/---"), NULL, NULL, 0, "<Separator>"},
69 {N_("/_View/_Sort/Ascending"), NULL, sort_summary_type_cb, SORT_ASCENDING, "<RadioItem>"},
70 {N_("/_View/_Sort/Descending"), NULL, sort_summary_type_cb, SORT_DESCENDING, "/View/Sort/Ascending"},
71- {N_("/_View/_Sort/---"), NULL, NULL, 0, "<Separator>"},
72- {N_("/_View/_Sort/_Attract by subject"),
73- NULL, attract_by_subject_cb, 0, NULL},
74 {N_("/_View/Th_read view"), "<control>T", thread_cb, 0, "<ToggleItem>"},
75 {N_("/_View/E_xpand all threads"), NULL, expand_threads_cb, 0, NULL},
76 {N_("/_View/Co_llapse all threads"), NULL, collapse_threads_cb, 0, NULL},
77 {N_("/_View/_Hide read messages"), NULL, hide_read_messages, 0, "<ToggleItem>"},
78
79- {N_("/_View/---"), NULL, NULL, 0, "<Separator>"},
80- {N_("/_View/_Go to"), NULL, NULL, 0, "<Branch>"},
81- {N_("/_View/_Go to/_Previous message"), "P", prev_cb, 0, NULL},
82- {N_("/_View/_Go to/_Next message"), "N", next_cb, 0, NULL},
83- {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
84- {N_("/_View/_Go to/P_revious unread message"),
85- "<shift>P", prev_unread_cb, 0, NULL},
86- {N_("/_View/_Go to/N_ext unread message"),
87- "<shift>N", next_unread_cb, 0, NULL},
88- {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
89- {N_("/_View/_Go to/Previous ne_w message"), NULL, prev_new_cb, 0, NULL},
90- {N_("/_View/_Go to/Ne_xt new message"), NULL, next_new_cb, 0, NULL},
91- {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
92- {N_("/_View/_Go to/Previous _marked message"),
93- NULL, prev_marked_cb, 0, NULL},
94- {N_("/_View/_Go to/Next m_arked message"),
95- NULL, next_marked_cb, 0, NULL},
96- {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
97- {N_("/_View/_Go to/Previous _labeled message"),
98- NULL, prev_labeled_cb, 0, NULL},
99- {N_("/_View/_Go to/Next la_beled message"),
100- NULL, next_labeled_cb, 0, NULL},
101- {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
102- {N_("/_View/_Go to/Last read message"),
103- NULL, last_read_cb, 0, NULL},
104- {N_("/_View/_Go to/Parent message"),
105- "<control>Up", parent_cb, 0, NULL},
106- {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
107- {N_("/_View/_Go to/Next unread _folder"), "<shift>G", goto_unread_folder_cb, 0, NULL},
108- {N_("/_View/_Go to/_Other folder..."), "G", goto_folder_cb, 0, NULL},
109- {N_("/_View/---"), NULL, NULL, 0, "<Separator>"},
110-
111 #define ENC_SEPARATOR \
112 {N_("/_View/Character _encoding/---"), NULL, NULL, 0, "<Separator>"}
113 #define ENC_ACTION(action) \
114@@ -742,7 +669,6 @@
115 #undef DEC_ACTION
116
117 {N_("/_View/---"), NULL, NULL, 0, "<Separator>"},
118- {N_("/_View/Open in new _window"), "<control><alt>N", open_msg_cb, 0, NULL},
119 {N_("/_View/Mess_age source"), "<control>U", view_source_cb, 0, NULL},
120 {N_("/_View/All headers"), "<control>H", show_all_header_cb, 0, "<ToggleItem>"},
121 {N_("/_View/Quotes"), NULL, NULL, 0, "<Branch>"},
122@@ -1137,23 +1063,14 @@
123 gint i;
124 guint n_menu_entries;
125
126- static GdkGeometry geometry;
127-
128 debug_print("Creating main window...\n");
129 mainwin = g_new0(MainWindow, 1);
130
131 /* main window */
132 window = gtkut_window_new(GTK_WINDOW_TOPLEVEL, "mainwindow");
133- gtk_window_set_title(GTK_WINDOW(window), PROG_VERSION);
134+ gtk_window_set_title(GTK_WINDOW(window), _("Mail"));
135 gtk_window_set_resizable(GTK_WINDOW(window), TRUE);
136
137- if (!geometry.min_height) {
138- geometry.min_width = 320;
139- geometry.min_height = 200;
140- }
141- gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL, &geometry,
142- GDK_HINT_MIN_SIZE);
143-
144 g_signal_connect(G_OBJECT(window), "delete_event",
145 G_CALLBACK(main_window_close_cb), mainwin);
146 MANAGE_WINDOW_SIGNALS_CONNECT(window);
147@@ -1184,21 +1101,9 @@
148 /* gtk_widget_show(gtk_item_factory_get_item(ifactory,"/Message/Mailing-List"));
149 main_create_mailing_list_menu (mainwin, NULL); */
150
151- menu_set_sensitive(ifactory, "/Help/Manual", manual_available(MANUAL_MANUAL_LOCAL));
152-
153- if (prefs_common.toolbar_detachable) {
154- handlebox = gtk_handle_box_new();
155- gtk_widget_show(handlebox);
156- gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0);
157- g_signal_connect(G_OBJECT(handlebox), "child_attached",
158- G_CALLBACK(toolbar_child_attached), mainwin);
159- g_signal_connect(G_OBJECT(handlebox), "child_detached",
160- G_CALLBACK(toolbar_child_detached), mainwin);
161- } else {
162- handlebox = gtk_hbox_new(FALSE, 0);
163- gtk_widget_show(handlebox);
164- gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0);
165- }
166+ handlebox = gtk_hbox_new(FALSE, 0);
167+ gtk_widget_show(handlebox);
168+ gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0);
169 /* link window to mainwin->window to avoid gdk warnings */
170 mainwin->window = window;
171
172@@ -1405,36 +1310,6 @@
173 (ifactory, "/View/Character encoding/Auto detect");
174 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE);
175
176- switch (prefs_common.toolbar_style) {
177- case TOOLBAR_NONE:
178- menuitem = gtk_item_factory_get_item
179- (ifactory, "/View/Show or hide/Toolbar/Hide");
180- break;
181- case TOOLBAR_ICON:
182- menuitem = gtk_item_factory_get_item
183- (ifactory, "/View/Show or hide/Toolbar/Icons only");
184- break;
185- case TOOLBAR_TEXT:
186- menuitem = gtk_item_factory_get_item
187- (ifactory, "/View/Show or hide/Toolbar/Text only");
188- break;
189- case TOOLBAR_BOTH:
190- menuitem = gtk_item_factory_get_item
191- (ifactory, "/View/Show or hide/Toolbar/Text below icons");
192- break;
193- case TOOLBAR_BOTH_HORIZ:
194- menuitem = gtk_item_factory_get_item
195- (ifactory,
196- "/View/Show or hide/Toolbar/Text beside icons");
197- }
198- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE);
199-
200- gtk_widget_hide(mainwin->hbox_stat);
201- menuitem = gtk_item_factory_get_item
202- (ifactory, "/View/Show or hide/Status bar");
203- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem),
204- prefs_common.show_statusbar);
205-
206 /* set account selection menu */
207 ac_menu = gtk_item_factory_get_widget
208 (ifactory, "/Configuration/Change current account");
209@@ -2284,16 +2159,6 @@
210 {"/View/Expand all threads" , M_MSG_EXIST},
211 {"/View/Collapse all threads" , M_MSG_EXIST},
212 {"/View/Hide read messages" , M_HIDE_READ_MSG},
213- {"/View/Go to/Previous message" , M_MSG_EXIST},
214- {"/View/Go to/Next message" , M_MSG_EXIST},
215- {"/View/Go to/Previous unread message" , M_MSG_EXIST},
216- {"/View/Go to/Previous new message" , M_MSG_EXIST},
217- {"/View/Go to/Previous marked message" , M_MSG_EXIST},
218- {"/View/Go to/Previous labeled message", M_MSG_EXIST},
219- {"/View/Go to/Next labeled message", M_MSG_EXIST},
220- {"/View/Go to/Last read message" , M_SINGLE_TARGET_EXIST},
221- {"/View/Go to/Parent message" , M_SINGLE_TARGET_EXIST},
222- {"/View/Open in new window" , M_SINGLE_TARGET_EXIST},
223 {"/View/Message source" , M_SINGLE_TARGET_EXIST},
224 {"/View/All headers" , M_SINGLE_TARGET_EXIST},
225 {"/View/Quotes" , M_SINGLE_TARGET_EXIST},
226@@ -2379,40 +2244,20 @@
227 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), active); \
228 }
229
230- SET_CHECK_MENU_ACTIVE("/View/Show or hide/Message view",
231- messageview_is_visible(mainwin->messageview));
232-
233 summaryview = mainwin->summaryview;
234- menu_path = "/View/Sort/Don't sort";
235+ menu_path = "/View/Sort/by Date";
236
237 switch (summaryview->sort_key) {
238- case SORT_BY_NUMBER:
239- menu_path = "/View/Sort/by number"; break;
240- case SORT_BY_SIZE:
241- menu_path = "/View/Sort/by Size"; break;
242- case SORT_BY_DATE:
243- menu_path = "/View/Sort/by Date"; break;
244 case SORT_BY_FROM:
245 menu_path = "/View/Sort/by From"; break;
246 case SORT_BY_TO:
247 menu_path = "/View/Sort/by To"; break;
248 case SORT_BY_SUBJECT:
249 menu_path = "/View/Sort/by Subject"; break;
250- case SORT_BY_LABEL:
251- menu_path = "/View/Sort/by color label"; break;
252- case SORT_BY_MARK:
253- menu_path = "/View/Sort/by mark"; break;
254- case SORT_BY_STATUS:
255- menu_path = "/View/Sort/by status"; break;
256- case SORT_BY_MIME:
257- menu_path = "/View/Sort/by attachment"; break;
258- case SORT_BY_SCORE:
259- menu_path = "/View/Sort/by score"; break;
260- case SORT_BY_LOCKED:
261- menu_path = "/View/Sort/by locked"; break;
262 case SORT_BY_NONE:
263+ case SORT_BY_DATE:
264 default:
265- menu_path = "/View/Sort/Don't sort"; break;
266+ menu_path = "/View/Sort/by Date"; break;
267 }
268 SET_CHECK_MENU_ACTIVE(menu_path, TRUE);
269
270@@ -2735,8 +2580,6 @@
271 gtk_widget_destroy(mainwin->hpaned);
272 }
273
274- menu_set_sensitive(ifactory, "/View/Show or hide/Message view",
275- (layout_mode != WIDE_MSGLIST_LAYOUT && layout_mode != SMALL_LAYOUT));
276 switch (layout_mode) {
277 case VERTICAL_LAYOUT:
278 case NORMAL_LAYOUT:
279@@ -2877,37 +2720,6 @@
280
281 prefs_common.layout_mode = layout_mode;
282
283- menuitem = gtk_item_factory_get_item
284- (ifactory, "/View/Show or hide/Message view");
285- gtk_check_menu_item_set_active
286- (GTK_CHECK_MENU_ITEM(menuitem),
287- messageview_is_visible(mainwin->messageview));
288-
289-#define SET_CHECK_MENU_ACTIVE(path, active) \
290-{ \
291- menuitem = gtk_item_factory_get_widget(ifactory, path); \
292- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), active); \
293-}
294-
295- switch (prefs_common.layout_mode) {
296- case NORMAL_LAYOUT:
297- SET_CHECK_MENU_ACTIVE("/View/Layout/Standard", TRUE);
298- break;
299- case VERTICAL_LAYOUT:
300- SET_CHECK_MENU_ACTIVE("/View/Layout/Three columns", TRUE);
301- break;
302- case WIDE_LAYOUT:
303- SET_CHECK_MENU_ACTIVE("/View/Layout/Wide message", TRUE);
304- break;
305- case WIDE_MSGLIST_LAYOUT:
306- SET_CHECK_MENU_ACTIVE("/View/Layout/Wide message list", TRUE);
307- break;
308- case SMALL_LAYOUT:
309- SET_CHECK_MENU_ACTIVE("/View/Layout/Small screen", TRUE);
310- break;
311- }
312-#undef SET_CHECK_MENU_ACTIVE
313-
314 if (folderwin) {
315 g_signal_connect
316 (G_OBJECT(folderwin), "size_allocate",
317@@ -3116,12 +2928,6 @@
318 summary_toggle_view(mainwin->summaryview);
319 }
320
321-static void toggle_toolbar_cb(MainWindow *mainwin, guint action,
322- GtkWidget *widget)
323-{
324- toolbar_toggle(action, mainwin);
325-}
326-
327 static void main_window_reply_cb(MainWindow *mainwin, guint action,
328 GtkWidget *widget)
329 {
330Index: claws-mail-2.9.1/src/prefs_common.c
331===================================================================
332--- claws-mail-2.9.1.orig/src/prefs_common.c 2007-04-25 07:40:10.000000000 +0100
333+++ claws-mail-2.9.1/src/prefs_common.c 2007-04-25 07:42:17.000000000 +0100
334@@ -262,7 +262,7 @@
335 {"default_reply_list", "TRUE", &prefs_common.default_reply_list, P_BOOL,
336 NULL, NULL, NULL},
337
338-#ifndef MAEMO
339+#if 0
340 {"show_ruler", "TRUE", &prefs_common.show_ruler, P_BOOL,
341 NULL, NULL, NULL},
342 #else
343@@ -300,7 +300,7 @@
344 &prefs_common.normalfont_gtk1, P_STRING, NULL, NULL, NULL},
345
346 /* new fonts */
347-#ifndef MAEMO
348+#if 0
349 {"widget_font_gtk2", NULL,
350 &SPECIFIC_PREFS.widgetfont, P_STRING, NULL, NULL, NULL},
351 {"message_font_gtk2", "Monospace 9",
352@@ -416,7 +416,7 @@
353
354 {"enable_thread", "TRUE", &prefs_common.enable_thread, P_BOOL,
355 NULL, NULL, NULL},
356-#ifndef MAEMO
357+#if 0
358 {"toolbar_style", "3", &prefs_common.toolbar_style, P_ENUM,
359 NULL, NULL, NULL},
360 #else
361@@ -544,7 +544,7 @@
362 {"folder_col_pos_total", "3",
363 &prefs_common.folder_col_pos[F_COL_TOTAL], P_INT, NULL, NULL, NULL},
364
365-#ifndef MAEMO
366+#if 0
367 {"folder_col_size_folder", "120",
368 &prefs_common.folder_col_size[F_COL_FOLDER], P_INT, NULL, NULL, NULL},
369 {"folder_col_size_new", "32",
370@@ -702,7 +702,7 @@
371 &SPECIFIC_PREFS.mime_open_cmd, P_STRING, NULL, NULL, NULL},
372
373 /* Interface */
374-#ifndef MAEMO
375+#if 0
376 {"layout_mode", "0", &prefs_common.layout_mode, P_INT,
377 NULL, NULL, NULL},
378 #else
379Index: claws-mail-2.9.1/src/toolbar.c
380===================================================================
381--- claws-mail-2.9.1.orig/src/toolbar.c 2007-04-25 07:40:10.000000000 +0100
382+++ claws-mail-2.9.1/src/toolbar.c 2007-04-25 07:42:17.000000000 +0100
383@@ -841,26 +841,17 @@
384 gtk_widget_hide(handlebox_wid);
385 break;
386 case TOOLBAR_ICON:
387- gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid),
388- GTK_TOOLBAR_ICONS);
389- break;
390 case TOOLBAR_TEXT:
391- gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid),
392- GTK_TOOLBAR_TEXT);
393- break;
394 case TOOLBAR_BOTH:
395- gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid),
396- GTK_TOOLBAR_BOTH);
397- break;
398 case TOOLBAR_BOTH_HORIZ:
399 gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid),
400- GTK_TOOLBAR_BOTH_HORIZ);
401+ GTK_TOOLBAR_ICONS);
402 break;
403 default:
404 return;
405 }
406
407- prefs_common.toolbar_style = (ToolbarStyle)action;
408+ prefs_common.toolbar_style = (ToolbarStyle)TOOLBAR_ICON;
409 gtk_widget_set_size_request(handlebox_wid, 1, -1);
410
411 if (prefs_common.toolbar_style != TOOLBAR_NONE) {
412@@ -1594,7 +1585,7 @@
413 gtk_container_add(GTK_CONTAINER(container), toolbar);
414 gtk_container_set_border_width(GTK_CONTAINER(container), 2);
415 gtk_toolbar_set_orientation(GTK_TOOLBAR(toolbar), GTK_ORIENTATION_HORIZONTAL);
416- gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_BOTH);
417+ gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_ICONS);
418
419 for (cur = toolbar_list; cur != NULL; cur = cur->next) {
420
421Index: claws-mail-2.9.1/src/gtk/prefswindow.c
422===================================================================
423--- claws-mail-2.9.1.orig/src/gtk/prefswindow.c 2007-04-25 07:40:10.000000000 +0100
424+++ claws-mail-2.9.1/src/gtk/prefswindow.c 2007-04-25 10:30:15.000000000 +0100
425@@ -343,6 +343,10 @@
426 gint x = gdk_screen_width();
427 gint y = gdk_screen_height();
428 static GdkGeometry geometry;
429+ gint col_count = g_slist_length (prefs_pages);
430+
431+ if (col_count > 1)
432+ col_count = 2;
433
434 prefswindow = g_new0(PrefsWindow, 1);
435
436@@ -360,39 +364,52 @@
437 gtk_window_set_resizable (GTK_WINDOW(prefswindow->window), TRUE);
438 gtk_container_set_border_width(GTK_CONTAINER(prefswindow->window), 4);
439
440- prefswindow->table1 = gtk_table_new(2, 2, FALSE);
441+ prefswindow->table1 = gtk_table_new(col_count, col_count, FALSE);
442 gtk_widget_show(prefswindow->table1);
443 gtk_container_add(GTK_CONTAINER(prefswindow->window), prefswindow->table1);
444
445- prefswindow->scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL);
446- gtk_widget_show(prefswindow->scrolledwindow1);
447- gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(prefswindow->scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
448- gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->scrolledwindow1, 0, 1, 0, 1, GTK_FILL, GTK_FILL | GTK_EXPAND, 2, 2);
449-
450- prefswindow->tree_view = prefswindow_tree_view_create(prefswindow);
451- gtk_widget_show(prefswindow->tree_view);
452- gtk_container_add(GTK_CONTAINER(prefswindow->scrolledwindow1),
453- prefswindow->tree_view);
454-
455- prefswindow->frame = gtk_frame_new(NULL);
456- gtk_widget_show(prefswindow->frame);
457- gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->frame), GTK_SHADOW_IN);
458- gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->frame, 1, 2, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL | GTK_EXPAND, 2, 2);
459-
460- prefswindow->table2 = gtk_table_new(1, 2, FALSE);
461- gtk_widget_show(prefswindow->table2);
462- gtk_container_add(GTK_CONTAINER(prefswindow->frame), prefswindow->table2);
463-
464- prefswindow->labelframe = gtk_frame_new(NULL);
465- gtk_widget_show(prefswindow->labelframe);
466- gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->labelframe), GTK_SHADOW_OUT);
467- gtk_table_attach(GTK_TABLE(prefswindow->table2), prefswindow->labelframe, 0, 1, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL, 1, 1);
468-
469- prefswindow->pagelabel = gtk_label_new("");
470- gtk_widget_show(prefswindow->pagelabel);
471- gtk_label_set_justify(GTK_LABEL(prefswindow->pagelabel), GTK_JUSTIFY_LEFT);
472- gtk_misc_set_alignment(GTK_MISC(prefswindow->pagelabel), 0, 0.0);
473- gtk_container_add(GTK_CONTAINER(prefswindow->labelframe), prefswindow->pagelabel);
474+ if (col_count > 1)
475+ {
476+ prefswindow->scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL);
477+ gtk_widget_show(prefswindow->scrolledwindow1);
478+ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(prefswindow->scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
479+ gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->scrolledwindow1, 0, 1, 0, 1, GTK_FILL, GTK_FILL | GTK_EXPAND, 2, 2);
480+
481+ prefswindow->tree_view = prefswindow_tree_view_create(prefswindow);
482+ gtk_widget_show(prefswindow->tree_view);
483+ gtk_container_add(GTK_CONTAINER(prefswindow->scrolledwindow1),
484+ prefswindow->tree_view);
485+
486+ prefswindow->frame = gtk_frame_new(NULL);
487+ gtk_widget_show(prefswindow->frame);
488+ gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->frame), GTK_SHADOW_IN);
489+ gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->frame, col_count - 1, col_count, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL | GTK_EXPAND, 2, 2);
490+
491+ prefswindow->table2 = gtk_table_new(1, 2, FALSE);
492+ gtk_widget_show(prefswindow->table2);
493+ gtk_container_add(GTK_CONTAINER(prefswindow->frame), prefswindow->table2);
494+ }
495+ else
496+ {
497+ prefswindow->table2 = gtk_table_new(1, 2, FALSE);
498+ gtk_widget_show(prefswindow->table2);
499+ gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->table2, 0, 1, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL | GTK_EXPAND, 2, 2);
500+ }
501+
502+
503+ if (col_count > 1)
504+ {
505+ prefswindow->labelframe = gtk_frame_new(NULL);
506+ gtk_widget_show(prefswindow->labelframe);
507+ gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->labelframe), GTK_SHADOW_OUT);
508+ gtk_table_attach(GTK_TABLE(prefswindow->table2), prefswindow->labelframe, 0, 1, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL, 1, 1);
509+
510+ prefswindow->pagelabel = gtk_label_new("");
511+ gtk_widget_show(prefswindow->pagelabel);
512+ gtk_label_set_justify(GTK_LABEL(prefswindow->pagelabel), GTK_JUSTIFY_LEFT);
513+ gtk_misc_set_alignment(GTK_MISC(prefswindow->pagelabel), 0, 0.0);
514+ gtk_container_add(GTK_CONTAINER(prefswindow->labelframe), prefswindow->pagelabel);
515+ }
516
517 prefswindow->scrolledwindow2 = gtk_scrolled_window_new(NULL, NULL);
518 gtk_widget_show(prefswindow->scrolledwindow2);
519@@ -411,9 +428,38 @@
520 gtk_widget_show(prefswindow->empty_page);
521 gtk_container_add(GTK_CONTAINER(prefswindow->notebook), prefswindow->empty_page);
522
523- prefswindow_build_tree(prefswindow->tree_view, prefs_pages);
524+ if (col_count > 1)
525+ {
526+ prefswindow_build_tree(prefswindow->tree_view, prefs_pages);
527+
528+ gtk_widget_grab_focus(prefswindow->tree_view);
529+ }
530+ else
531+ {
532+ PrefsPage * page = prefs_pages->data;
533+ gint pagenum;
534+ GtkAdjustment *adj;
535+
536+ if (!page->page_open)
537+ {
538+ page->create_widget(page,
539+ GTK_WINDOW(prefswindow->window),
540+ prefswindow->data);
541+ gtk_container_add(GTK_CONTAINER(prefswindow->notebook),
542+ page->widget);
543+ page->page_open = TRUE;
544+ }
545+
546+ pagenum = gtk_notebook_page_num(GTK_NOTEBOOK(prefswindow->notebook),
547+ page->widget);
548+ gtk_notebook_set_current_page(GTK_NOTEBOOK(prefswindow->notebook),
549+ pagenum);
550
551- gtk_widget_grab_focus(prefswindow->tree_view);
552+ adj = gtk_scrolled_window_get_vadjustment(
553+ GTK_SCROLLED_WINDOW(prefswindow->scrolledwindow2));
554+ gtk_adjustment_set_value(adj, 0);
555+
556+ }
557
558 gtkut_stock_button_set_create(&prefswindow->confirm_area,
559 &prefswindow->apply_btn, GTK_STOCK_APPLY,
560@@ -440,28 +486,6 @@
561 G_CALLBACK(prefswindow_key_pressed), &(prefswindow->window));
562 #endif
563
564- /* connect to callback only if we hhave non-NULL pointers to store size to */
565- if (prefswindow->save_width && prefswindow->save_height) {
566- g_signal_connect(G_OBJECT(prefswindow->window), "size_allocate",
567- G_CALLBACK(prefs_size_allocate_cb), prefswindow);
568- }
569-
570- if (!geometry.min_height) {
571-
572- if (x < 800 && y < 600) {
573- geometry.min_width = 600;
574- geometry.min_height = 440;
575- } else {
576- geometry.min_width = 700;
577- geometry.min_height = 550;
578- }
579- }
580- gtk_window_set_geometry_hints(GTK_WINDOW(prefswindow->window), NULL, &geometry,
581- GDK_HINT_MIN_SIZE);
582- if (prefswindow->save_width && prefswindow->save_height) {
583- gtk_widget_set_size_request(prefswindow->window, *(prefswindow->save_width),
584- *(prefswindow->save_height));
585- }
586
587 gtk_widget_show(prefswindow->window);
588 #ifdef MAEMO
589Index: claws-mail-2.9.1/src/compose.c
590===================================================================
591--- claws-mail-2.9.1.orig/src/compose.c 2007-04-25 07:40:10.000000000 +0100
592+++ claws-mail-2.9.1/src/compose.c 2007-04-25 10:18:13.000000000 +0100
593@@ -352,9 +352,6 @@
594
595 /* callback functions */
596
597-static gboolean compose_edit_size_alloc (GtkEditable *widget,
598- GtkAllocation *allocation,
599- GtkSHRuler *shruler);
600 static void account_activated (GtkComboBox *optmenu,
601 gpointer data);
602 static void attach_selected (GtkTreeView *tree_view,
603@@ -439,9 +436,6 @@
604 guint action,
605 GtkWidget *widget);
606
607-static void compose_toggle_ruler_cb (gpointer data,
608- guint action,
609- GtkWidget *widget);
610 static void compose_toggle_sign_cb (gpointer data,
611 guint action,
612 GtkWidget *widget);
613@@ -788,7 +782,6 @@
614 ENC_ACTION(C_WINDOWS_874)},
615
616 {N_("/_Tools"), NULL, NULL, 0, "<Branch>"},
617- {N_("/_Tools/Show _ruler"), NULL, compose_toggle_ruler_cb, 0, "<ToggleItem>"},
618 {N_("/_Tools/_Address book"), "<shift><control>A", compose_address_cb , 0, NULL},
619 {N_("/_Tools/_Template"), NULL, NULL, 0, "<Branch>"},
620 {N_("/_Tools/Actio_ns"), NULL, NULL, 0, "<Branch>"},
621@@ -2067,7 +2060,6 @@
622 menu_set_sensitive(ifactory, "/Message/Insert signature", FALSE);
623 menu_set_sensitive(ifactory, "/Edit", FALSE);
624 menu_set_sensitive(ifactory, "/Options", FALSE);
625- menu_set_sensitive(ifactory, "/Tools/Show ruler", FALSE);
626 menu_set_sensitive(ifactory, "/Tools/Actions", FALSE);
627
628 if (compose->toolbar->draft_btn)
629@@ -5684,7 +5676,7 @@
630 g_signal_connect(G_OBJECT(GTK_COMBO(combo)->entry), "grab_focus",
631 G_CALLBACK(compose_grab_focus_cb), compose);
632 gtk_widget_show(combo);
633- gtk_table_attach(GTK_TABLE(compose->header_table), combo, 0, 1, compose->header_nextrow, compose->header_nextrow+1, GTK_SHRINK, GTK_FILL, 0, 0);
634+ gtk_table_attach(GTK_TABLE(compose->header_table), combo, 0, 1, compose->header_nextrow, compose->header_nextrow+1, GTK_FILL, GTK_FILL, 0, 0);
635 if (compose->header_last) {
636 const gchar *last_header_entry = gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(compose->header_last->combo)->entry));
637 string = headers;
638@@ -5778,7 +5770,7 @@
639
640 static GtkWidget *compose_create_header(Compose *compose)
641 {
642- GtkWidget *from_optmenu_hbox;
643+ GtkWidget *from_optmenu;
644 GtkWidget *header_scrolledwin;
645 GtkWidget *header_table;
646
647@@ -5788,18 +5780,20 @@
648 header_scrolledwin = gtk_scrolled_window_new(NULL, NULL);
649 gtk_widget_show(header_scrolledwin);
650 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(header_scrolledwin), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
651-
652 header_table = gtk_table_new(2, 2, FALSE);
653+ gtk_table_set_col_spacings (GTK_TABLE (header_table), BORDER_WIDTH);
654 gtk_widget_show(header_table);
655 gtk_container_set_border_width(GTK_CONTAINER(header_table), BORDER_WIDTH);
656 gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(header_scrolledwin), header_table);
657- gtk_viewport_set_shadow_type(GTK_VIEWPORT(GTK_BIN(header_scrolledwin)->child), GTK_SHADOW_ETCHED_IN);
658+ gtk_viewport_set_shadow_type(GTK_VIEWPORT(GTK_BIN(header_scrolledwin)->child), GTK_SHADOW_NONE);
659 count = 0;
660
661 /* option menu for selecting accounts */
662- from_optmenu_hbox = compose_account_option_menu_create(compose);
663- gtk_table_attach(GTK_TABLE(header_table), from_optmenu_hbox,
664- 0, 2, count, count + 1, GTK_EXPAND | GTK_FILL, GTK_SHRINK, 0, 0);
665+ from_optmenu = compose_account_option_menu_create(compose);
666+ gtk_table_attach(GTK_TABLE(header_table), from_optmenu,
667+ 0, 1, count, count + 1, GTK_FILL, GTK_FILL, 0, 0);
668+ gtk_table_attach(GTK_TABLE(header_table), compose->from_name,
669+ 1, 2, count, count + 1, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0);
670 count++;
671
672 compose->header_table = header_table;
673@@ -6140,15 +6134,12 @@
674 GtkWidget *vbox2;
675
676 GtkWidget *label;
677- GtkWidget *subject_hbox;
678- GtkWidget *subject_frame;
679+ GtkWidget *edit_frame;
680 GtkWidget *subject_entry;
681 GtkWidget *subject;
682 GtkWidget *paned;
683
684 GtkWidget *edit_vbox;
685- GtkWidget *ruler_hbox;
686- GtkWidget *ruler;
687 GtkWidget *scrolledwin;
688 GtkWidget *text;
689 GtkTextBuffer *buffer;
690@@ -6169,8 +6160,6 @@
691 GtkAspell * gtkaspell = NULL;
692 #endif
693
694- static GdkGeometry geometry;
695-
696 g_return_val_if_fail(account != NULL, NULL);
697
698 debug_print("Creating compose window...\n");
699@@ -6190,28 +6179,6 @@
700
701 window = gtkut_window_new(GTK_WINDOW_TOPLEVEL, "compose");
702
703- gtk_window_set_resizable(GTK_WINDOW(window), TRUE);
704- gtk_widget_set_size_request(window, -1, prefs_common.compose_height);
705-
706- if (!geometry.max_width) {
707- geometry.max_width = gdk_screen_width();
708- geometry.max_height = gdk_screen_height();
709- }
710-
711- gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL,
712- &geometry, GDK_HINT_MAX_SIZE);
713- if (!geometry.min_width) {
714- geometry.min_width = 600;
715- geometry.min_height = 480;
716- }
717- gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL,
718- &geometry, GDK_HINT_MIN_SIZE);
719-
720-#ifndef MAEMO
721- if (compose_force_window_origin)
722- gtk_widget_set_uposition(window, prefs_common.compose_x,
723- prefs_common.compose_y);
724-#endif
725 g_signal_connect(G_OBJECT(window), "delete_event",
726 G_CALLBACK(compose_delete_cb), compose);
727 MANAGE_WINDOW_SIGNALS_CONNECT(window);
728@@ -6227,11 +6194,7 @@
729 n_menu_entries, "<Compose>", compose);
730 gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0);
731
732- if (prefs_common.toolbar_detachable) {
733- handlebox = gtk_handle_box_new();
734- } else {
735- handlebox = gtk_hbox_new(FALSE, 0);
736- }
737+ handlebox = gtk_hbox_new(FALSE, 0);
738 gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0);
739
740 gtk_widget_realize(handlebox);
741@@ -6244,7 +6207,6 @@
742
743 /* Notebook */
744 notebook = gtk_notebook_new();
745- gtk_widget_set_size_request(notebook, -1, 130);
746 gtk_widget_show(notebook);
747
748 /* header labels and entries */
749@@ -6258,18 +6220,10 @@
750 /* Others Tab */
751 gtk_notebook_append_page(GTK_NOTEBOOK(notebook),
752 compose_create_others(compose),
753- gtk_label_new_with_mnemonic(_("Othe_rs")));
754+ gtk_label_new_with_mnemonic(_("Othe_r")));
755
756 /* Subject */
757- subject_hbox = gtk_hbox_new(FALSE, 0);
758- gtk_widget_show(subject_hbox);
759-
760- subject_frame = gtk_frame_new(NULL);
761- gtk_frame_set_shadow_type(GTK_FRAME(subject_frame), GTK_SHADOW_NONE);
762- gtk_box_pack_start(GTK_BOX(subject_hbox), subject_frame, TRUE, TRUE, 0);
763- gtk_widget_show(subject_frame);
764-
765- subject = gtk_hbox_new(FALSE, HSPACING_NARROW);
766+ subject = gtk_hbox_new(FALSE, BORDER_WIDTH);
767 gtk_container_set_border_width(GTK_CONTAINER(subject), 0);
768 gtk_widget_show(subject);
769
770@@ -6283,20 +6237,16 @@
771 G_CALLBACK(compose_grab_focus_cb), compose);
772 gtk_widget_show(subject_entry);
773 compose->subject_entry = subject_entry;
774- gtk_container_add(GTK_CONTAINER(subject_frame), subject);
775
776- edit_vbox = gtk_vbox_new(FALSE, 0);
777+ edit_vbox = gtk_vbox_new(FALSE, BORDER_WIDTH);
778+ gtk_container_set_border_width(GTK_CONTAINER(edit_vbox), BORDER_WIDTH);
779
780- gtk_box_pack_start(GTK_BOX(edit_vbox), subject_hbox, FALSE, FALSE, 0);
781+ gtk_box_pack_start(GTK_BOX(edit_vbox), subject, FALSE, FALSE, 0);
782
783- /* ruler */
784- ruler_hbox = gtk_hbox_new(FALSE, 0);
785- gtk_box_pack_start(GTK_BOX(edit_vbox), ruler_hbox, FALSE, FALSE, 0);
786-
787- ruler = gtk_shruler_new();
788- gtk_ruler_set_range(GTK_RULER(ruler), 0.0, 100.0, 1.0, 100.0);
789- gtk_box_pack_start(GTK_BOX(ruler_hbox), ruler, TRUE, TRUE,
790- BORDER_WIDTH);
791+ edit_frame = gtk_frame_new(NULL);
792+ gtk_frame_set_shadow_type(GTK_FRAME(edit_frame), GTK_SHADOW_IN);
793+ gtk_widget_show(edit_frame);
794+ gtk_container_add(GTK_CONTAINER(edit_frame), edit_vbox);
795
796 /* text widget */
797 scrolledwin = gtk_scrolled_window_new(NULL, NULL);
798@@ -6317,9 +6267,6 @@
799
800 gtk_container_add(GTK_CONTAINER(scrolledwin), text);
801
802- g_signal_connect_after(G_OBJECT(text), "size_allocate",
803- G_CALLBACK(compose_edit_size_alloc),
804- ruler);
805 g_signal_connect(G_OBJECT(buffer), "changed",
806 G_CALLBACK(compose_changed_cb), compose);
807 g_signal_connect(G_OBJECT(text), "grab_focus",
808@@ -6363,7 +6310,7 @@
809 gtk_widget_set_size_request(edit_vbox, -1, mode == COMPOSE_NEW ? 250 : 230);
810 #endif
811 gtk_paned_add1(GTK_PANED(paned), notebook);
812- gtk_paned_add2(GTK_PANED(paned), edit_vbox);
813+ gtk_paned_add2(GTK_PANED(paned), edit_frame);
814 gtk_widget_show_all(paned);
815
816
817@@ -6408,8 +6355,6 @@
818
819 compose->notebook = notebook;
820 compose->edit_vbox = edit_vbox;
821- compose->ruler_hbox = ruler_hbox;
822- compose->ruler = ruler;
823 compose->scrolledwin = scrolledwin;
824 compose->text = text;
825
826@@ -6531,13 +6476,6 @@
827
828 compose_list = g_list_append(compose_list, compose);
829
830- if (!prefs_common.show_ruler)
831- gtk_widget_hide(ruler_hbox);
832-
833- menuitem = gtk_item_factory_get_item(ifactory, "/Tools/Show ruler");
834- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem),
835- prefs_common.show_ruler);
836-
837 /* Priority */
838 compose->priority = PRIORITY_NORMAL;
839 compose_update_priority_menu_item(compose);
840@@ -6568,7 +6506,6 @@
841 static GtkWidget *compose_account_option_menu_create(Compose *compose)
842 {
843 GList *accounts;
844- GtkWidget *hbox;
845 GtkWidget *optmenu;
846 GtkWidget *optmenubox;
847 GtkListStore *menu;
848@@ -6584,7 +6521,6 @@
849 optmenu = gtkut_sc_combobox_create(optmenubox, FALSE);
850 menu = GTK_LIST_STORE(gtk_combo_box_get_model(GTK_COMBO_BOX(optmenu)));
851
852- hbox = gtk_hbox_new(FALSE, 6);
853 from_name = gtk_entry_new();
854
855 g_signal_connect_after(G_OBJECT(from_name), "grab_focus",
856@@ -6623,9 +6559,6 @@
857 G_CALLBACK(account_activated),
858 compose);
859
860- gtk_box_pack_start(GTK_BOX(hbox), optmenubox, FALSE, FALSE, 0);
861- gtk_box_pack_start(GTK_BOX(hbox), from_name, TRUE, TRUE, 0);
862-
863 gtk_tooltips_set_tip(compose->tooltips, optmenubox,
864 _("Account to use for this email"), NULL);
865 gtk_tooltips_set_tip(compose->tooltips, from_name,
866@@ -6633,7 +6566,7 @@
867
868 compose->from_name = from_name;
869
870- return hbox;
871+ return optmenubox;
872 }
873
874 static void compose_set_priority_cb(gpointer data,
875@@ -7851,32 +7784,6 @@
876
877 /* callback functions */
878
879-/* compose_edit_size_alloc() - called when resized. don't know whether Gtk
880- * includes "non-client" (windows-izm) in calculation, so this calculation
881- * may not be accurate.
882- */
883-static gboolean compose_edit_size_alloc(GtkEditable *widget,
884- GtkAllocation *allocation,
885- GtkSHRuler *shruler)
886-{
887- if (prefs_common.show_ruler) {
888- gint char_width = 0, char_height = 0;
889- gint line_width_in_chars;
890-
891- gtkut_get_font_size(GTK_WIDGET(widget),
892- &char_width, &char_height);
893- line_width_in_chars =
894- (allocation->width - allocation->x) / char_width;
895-
896- /* got the maximum */
897- gtk_ruler_set_range(GTK_RULER(shruler),
898- 0.0, line_width_in_chars, 0,
899- /*line_width_in_chars*/ char_width);
900- }
901-
902- return TRUE;
903-}
904-
905 static void account_activated(GtkComboBox *optmenu, gpointer data)
906 {
907 Compose *compose = (Compose *)data;
908@@ -9040,21 +8947,6 @@
909 compose_update_privacy_system_menu_item(compose, warn);
910 }
911
912-static void compose_toggle_ruler_cb(gpointer data, guint action,
913- GtkWidget *widget)
914-{
915- Compose *compose = (Compose *)data;
916-
917- if (GTK_CHECK_MENU_ITEM(widget)->active) {
918- gtk_widget_show(compose->ruler_hbox);
919- prefs_common.show_ruler = TRUE;
920- } else {
921- gtk_widget_hide(compose->ruler_hbox);
922- gtk_widget_queue_resize(compose->edit_vbox);
923- prefs_common.show_ruler = FALSE;
924- }
925-}
926-
927 static void compose_attach_drag_received_cb (GtkWidget *widget,
928 GdkDragContext *context,
929 gint x,
930Index: claws-mail-2.9.1/src/folderview.c
931===================================================================
932--- claws-mail-2.9.1.orig/src/folderview.c 2007-04-03 19:10:25.000000000 +0100
933+++ claws-mail-2.9.1/src/folderview.c 2007-04-25 10:28:00.000000000 +0100
934@@ -73,6 +73,11 @@
935 #define COL_FOLDER_WIDTH 150
936 #define COL_NUM_WIDTH 32
937
938+/* added dummy column to stop the last column from
939+ * resizing insanely in small screen view
940+ */
941+#define _N_FOLDER_COLS (N_FOLDER_COLS + 1)
942+
943 static GList *folderview_list = NULL;
944
945 static GtkStyle *normal_style;
946@@ -448,7 +453,7 @@
947 gint *col_pos;
948 FolderColumnState *col_state;
949 FolderColumnType type;
950- gchar *titles[N_FOLDER_COLS];
951+ gchar *titles[_N_FOLDER_COLS];
952 gint i;
953 GtkWidget *scrolledwin = folderview->scrolledwin;
954
955@@ -471,8 +476,9 @@
956 titles[col_pos[F_COL_UNREAD]] = _("Unread");
957 /* TRANSLATORS: This in Number sign in American style */
958 titles[col_pos[F_COL_TOTAL]] = _("#");
959+ titles[F_COL_DUMMY] = "";
960
961- ctree = gtk_sctree_new_with_titles(N_FOLDER_COLS, col_pos[F_COL_FOLDER],
962+ ctree = gtk_sctree_new_with_titles(_N_FOLDER_COLS, col_pos[F_COL_FOLDER],
963 titles);
964
965 gtk_clist_set_selection_mode(GTK_CLIST(ctree), GTK_SELECTION_BROWSE);
966@@ -510,6 +516,9 @@
967 (GTK_CLIST(ctree), i, col_state[i].visible);
968 }
969
970+ GTK_WIDGET_UNSET_FLAGS(GTK_CLIST(ctree)->column[i].button,
971+ GTK_CAN_FOCUS);
972+
973 g_signal_connect(G_OBJECT(ctree), "key_press_event",
974 G_CALLBACK(folderview_key_pressed),
975 folderview);
976@@ -605,9 +614,6 @@
977 (GTK_SCROLLED_WINDOW(scrolledwin),
978 GTK_POLICY_AUTOMATIC,
979 prefs_common.folderview_vscrollbar_policy);
980- gtk_widget_set_size_request(scrolledwin,
981- prefs_common.folderview_width,
982- prefs_common.folderview_height);
983
984 folderview->scrolledwin = scrolledwin;
985 ctree = folderview_ctree_create(folderview);
986@@ -2268,7 +2274,7 @@
987 static void folderview_create_folder_node(FolderView *folderview, FolderItem *item)
988 {
989 GtkCTree *ctree = GTK_CTREE(folderview->ctree);
990- gchar *text[N_FOLDER_COLS] = {NULL, "0", "0", "0"};
991+ gchar *text[_N_FOLDER_COLS] = {NULL, "0", "0", "0", ""};
992 GtkCTreeNode *node, *parent_node;
993 gint *col_pos = folderview->col_pos;
994 FolderItemUpdateData hookdata;
995Index: claws-mail-2.9.1/src/folderview.h
996===================================================================
997--- claws-mail-2.9.1.orig/src/folderview.h 2007-03-22 17:22:52.000000000 +0000
998+++ claws-mail-2.9.1/src/folderview.h 2007-04-25 10:16:55.000000000 +0100
999@@ -37,7 +37,8 @@
1000 F_COL_FOLDER,
1001 F_COL_NEW,
1002 F_COL_UNREAD,
1003- F_COL_TOTAL
1004+ F_COL_TOTAL,
1005+ F_COL_DUMMY
1006 } FolderColumnType;
1007
1008 #define N_FOLDER_COLS 4
diff --git a/meta-demoapps/recipes-sato/clipboard-manager/clipboard-manager_0.6.4.bb b/meta-demoapps/recipes-sato/clipboard-manager/clipboard-manager_0.6.4.bb
new file mode 100644
index 0000000000..82dd1d047f
--- /dev/null
+++ b/meta-demoapps/recipes-sato/clipboard-manager/clipboard-manager_0.6.4.bb
@@ -0,0 +1,33 @@
1LICENSE = "GPL"
2DESCRIPTION = "clipboard manager"
3DEPENDS = "virtual/libx11"
4
5SRC_URI = "svn://stage.maemo.org/svn/maemo/projects/haf/tags/clipboard-manager/;module=${PV};proto=https \
6 file://makefile.patch;patch=1 \
7 file://script.patch;patch=1 \
8 file://daemonize.patch;patch=1 \
9 "
10
11S = "${WORKDIR}/${PV}"
12
13inherit autotools pkgconfig
14
15do_install_append () {
16 mv ${D}/${sysconfdir}/X11/Xsession.d/clipboard.sh ${D}/${sysconfdir}/X11/Xsession.d/70clipboard
17 chmod u+x ${D}/${sysconfdir}/X11/Xsession.d/70clipboard
18}
19
20pkg_postinst_clipboard-manager () {
21#!/bin/sh -e
22if [ x"$D" = "x" ]; then
23 {
24 if [ x$(pidof clipboard-manager) != x ]; then
25 kill -TERM $(pidof clipboard-manager)
26 fi
27
28 ${sysconfdir}/X11/Xsession.d/70clipboard
29 } > /dev/null
30else
31 exit 1
32fi
33}
diff --git a/meta-demoapps/recipes-sato/clipboard-manager/files/daemonize.patch b/meta-demoapps/recipes-sato/clipboard-manager/files/daemonize.patch
new file mode 100644
index 0000000000..51ce4781a5
--- /dev/null
+++ b/meta-demoapps/recipes-sato/clipboard-manager/files/daemonize.patch
@@ -0,0 +1,44 @@
1Index: 0.6.4/manager.c
2===================================================================
3--- 0.6.4.orig/manager.c 2007-06-28 12:23:37.000000000 +0100
4+++ 0.6.4/manager.c 2007-06-28 12:36:14.000000000 +0100
5@@ -68,7 +68,8 @@
6 ClipboardManager *manager;
7 int terminated = False;
8 Display *display;
9-
10+ pid_t pid;
11+
12 display = XOpenDisplay (NULL);
13
14 if (!display)
15@@ -83,6 +84,29 @@
16 exit (1);
17 }
18
19+ /* deamonize */
20+ pid = fork();
21+ switch (pid)
22+ {
23+ case -1: fprintf (stderr, "Fork failed.\n");
24+ /* Fall through */
25+ default: exit(0); break;
26+ case 0: break;
27+ }
28+
29+ chdir ("/");
30+ setsid ();
31+ umask (0);
32+
33+ pid = fork();
34+ switch (pid)
35+ {
36+ case -1: fprintf (stderr, "Fork failed.\n");
37+ /* Fall through */
38+ default: exit(0); break;
39+ case 0: break;
40+ }
41+
42 XSetErrorHandler (x_error);
43 manager = clipboard_manager_new (display,
44 error_trap_push, error_trap_pop,
diff --git a/meta-demoapps/recipes-sato/clipboard-manager/files/makefile.patch b/meta-demoapps/recipes-sato/clipboard-manager/files/makefile.patch
new file mode 100644
index 0000000000..6e48da004c
--- /dev/null
+++ b/meta-demoapps/recipes-sato/clipboard-manager/files/makefile.patch
@@ -0,0 +1,18 @@
1Index: 0.6.4/Makefile.am
2===================================================================
3--- 0.6.4.orig/Makefile.am 2007-06-28 12:23:37.000000000 +0100
4+++ 0.6.4/Makefile.am 2007-06-28 14:21:23.000000000 +0100
5@@ -1,5 +1,3 @@
6-SUBDIRS = debian
7-
8 bin_PROGRAMS = clipboard-manager
9
10 INCLUDES = \
11@@ -21,6 +19,6 @@
12 clipboard.txt \
13 clipboard.sh
14
15-servicedir = $(sysconfdir)/osso-af-init
16+servicedir = $(sysconfdir)/X11/Xsession.d
17
18 service_DATA = clipboard.sh
diff --git a/meta-demoapps/recipes-sato/clipboard-manager/files/script.patch b/meta-demoapps/recipes-sato/clipboard-manager/files/script.patch
new file mode 100644
index 0000000000..09e68620d7
--- /dev/null
+++ b/meta-demoapps/recipes-sato/clipboard-manager/files/script.patch
@@ -0,0 +1,39 @@
1Index: 0.6.4/clipboard.sh
2===================================================================
3--- 0.6.4.orig/clipboard.sh 2007-06-28 12:23:37.000000000 +0100
4+++ 0.6.4/clipboard.sh 2007-06-28 14:27:39.000000000 +0100
5@@ -1,33 +1,2 @@
6 #!/bin/sh
7-# Clipboard persistence manager startup script
8-
9-if [ "x$AF_PIDDIR" = "x" ]; then
10- echo "$0: Error, AF_PIDDIR is not defined"
11- exit 2
12-fi
13-if [ "x$LAUNCHWRAPPER_NICE_TRYRESTART" = "x" ]; then
14- echo "$0: Error, LAUNCHWRAPPER_NICE_TRYRESTART is not defined"
15- exit 2
16-fi
17-if [ ! -w $AF_PIDDIR ]; then
18- echo "$0: Error, directory $AF_PIDDIR is not writable"
19- exit 2
20-fi
21-PROG=/usr/bin/clipboard-manager
22-SVC="clipboard-manager"
23-
24-case "$1" in
25-start) START=TRUE
26- ;;
27-stop) START=FALSE
28- ;;
29-*) echo "Usage: $0 {start|stop}"
30- exit 1
31- ;;
32-esac
33-
34-if [ $START = TRUE ]; then
35- source $LAUNCHWRAPPER_NICE_TRYRESTART start "$SVC" $PROG
36-else
37- source $LAUNCHWRAPPER_NICE_TRYRESTART stop "$SVC" $PROG
38-fi
39+/usr/bin/clipboard-manager &
diff --git a/meta-demoapps/recipes-sato/epdfview/epdfview/epdfview-ui-print.xml b/meta-demoapps/recipes-sato/epdfview/epdfview/epdfview-ui-print.xml
new file mode 100644
index 0000000000..3ddf5147df
--- /dev/null
+++ b/meta-demoapps/recipes-sato/epdfview/epdfview/epdfview-ui-print.xml
@@ -0,0 +1,12 @@
1<ui>
2 <menubar name="MenuBar">
3 <menu name="TopMenu" action="Top">
4 <menu action="FileMenu">
5 <placeholder name="PrintPlaceHolder">
6 <separator/>
7 <menuitem name="Print" action="Print"/>
8 </placeholder>
9 </menu>
10 </menu>
11 </menubar>
12</ui>
diff --git a/meta-demoapps/recipes-sato/epdfview/epdfview/epdfview-ui.xml b/meta-demoapps/recipes-sato/epdfview/epdfview/epdfview-ui.xml
new file mode 100644
index 0000000000..602d86f903
--- /dev/null
+++ b/meta-demoapps/recipes-sato/epdfview/epdfview/epdfview-ui.xml
@@ -0,0 +1,57 @@
1<ui>
2 <menubar name="MenuBar">
3 <menu name="TopMenu" action="Top">
4 <menu action="FileMenu">
5 <menuitem name="OpenFile" action="OpenFile"/>
6 <menuitem name="ReloadFile" action="ReloadFile"/>
7 <menuitem name="SaveFile" action="SaveFile"/>
8 <placeholder name="PrintPlaceHolder"/>
9 <separator/>
10 <menuitem name="Quit" action="Quit"/>
11 </menu>
12 <menu action="EditMenu">
13 <menuitem name="Find" action="Find"/>
14 <separator />
15 <menuitem name="Preferences" action="Preferences"/>
16 </menu>
17 <menu action="ViewMenu">
18 <menuitem name="ShowToolBar" action="ShowToolBar"/>
19 <menuitem name="ShowStatusBar" action="ShowStatusBar"/>
20 <menuitem name="ShowIndex" action="ShowIndex"/>
21 <separator/>
22 <menuitem name="ZoomIn" action="ZoomIn"/>
23 <menuitem name="ZoomOut" action="ZoomOut"/>
24 <menuitem name="ZoomFit" action="ZoomFit"/>
25 <menuitem name="ZoomWidth" action="ZoomWidth"/>
26 <separator />
27 <menuitem name="FullScreen" action="FullScreen"/>
28 <separator />
29 <menuitem name="RotateRight" action="RotateRight"/>
30 <menuitem name="RotateLeft" action="RotateLeft"/>
31 </menu>
32 <menu action="GoMenu">
33 <menuitem name="GoToFirstPage" action="GoToFirstPage"/>
34 <menuitem name="GoToPreviousPage" action="GoToPreviousPage"/>
35 <menuitem name="GoToNextPage" action="GoToNextPage"/>
36 <menuitem name="GoToLastPage" action="GoToLastPage"/>
37 </menu>
38 <menu action="HelpMenu">
39 <menuitem name="About" action="About"/>
40 </menu>
41 </menu>
42 </menubar>
43
44 <toolbar name="ToolBar">
45 <toolitem name="OpenFile" action="OpenFile"/>
46 <separator/>
47 <toolitem name="GoToPreviousPage" action="GoToPreviousPage"/>
48 <toolitem name="GoToNextPage" action="GoToNextPage"/>
49 <separator/>
50 <toolitem name="ZoomIn" action="ZoomIn"/>
51 <toolitem name="ZoomOut" action="ZoomOut"/>
52 <toolitem name="ZoomFit" action="ZoomFit"/>
53 <toolitem name="ZoomWidth" action="ZoomWidth"/>
54 </toolbar>
55
56 <accelerator name="SlashAccelerator" action="Slash"/>
57</ui>
diff --git a/meta-demoapps/recipes-sato/epdfview/epdfview/epdfview.desktop b/meta-demoapps/recipes-sato/epdfview/epdfview/epdfview.desktop
new file mode 100644
index 0000000000..d3bf06d2aa
--- /dev/null
+++ b/meta-demoapps/recipes-sato/epdfview/epdfview/epdfview.desktop
@@ -0,0 +1,10 @@
1[Desktop Entry]
2Categories=Viewer;Office;GTK;
3Comment=Lightweight PDF document viewer
4Exec=epdfview %f
5GenericName=PDF Viewer
6Icon=accessories-text-editor
7Name=PDF Viewer
8MimeType=application/pdf;
9Terminal=false
10Type=Application
diff --git a/meta-demoapps/recipes-sato/epdfview/epdfview/owl-menus.patch b/meta-demoapps/recipes-sato/epdfview/epdfview/owl-menus.patch
new file mode 100644
index 0000000000..755b71e7a4
--- /dev/null
+++ b/meta-demoapps/recipes-sato/epdfview/epdfview/owl-menus.patch
@@ -0,0 +1,325 @@
1Index: epdfview-0.1.7/src/Makefile.am
2===================================================================
3--- epdfview-0.1.7.orig/src/Makefile.am 2010-07-13 12:30:44.014172385 +0100
4+++ epdfview-0.1.7/src/Makefile.am 2010-07-13 12:30:48.780063260 +0100
5@@ -58,7 +58,7 @@
6 main.cxx
7
8 libshell_cxxflags = -I$(top_srcdir)/src/gtk $(GTK2_CFLAGS)
9-libshell_ldadd = $(GTK2_LIBS) $(top_builddir)/src/gtk/libshell-gtk.a
10+libshell_ldadd = $(GTK2_LIBS) $(top_builddir)/src/gtk/libshell-gtk.a -lowl
11
12 epdfview_CXXFLAGS = \
13 -DLOCALEDIR='"$(datadir)/locale"' \
14Index: epdfview-0.1.7/src/gtk/MainView.cxx
15===================================================================
16--- epdfview-0.1.7.orig/src/gtk/MainView.cxx 2010-07-13 12:30:44.014172385 +0100
17+++ epdfview-0.1.7/src/gtk/MainView.cxx 2010-07-13 12:30:48.782124540 +0100
18@@ -20,6 +20,7 @@
19 #include <string.h>
20 #include <gettext.h>
21 #include <gtk/gtk.h>
22+#include <libowl/owlwindowmenu.h>
23 #include <epdfview.h>
24 #include "StockIcons.h"
25 #include "FindView.h"
26@@ -86,6 +87,7 @@
27 // The actions for menus and toolbars.
28 static const GtkActionEntry g_NormalEntries[] =
29 {
30+ { "Top", NULL, "", NULL, NULL, NULL },
31 { "FileMenu", NULL, N_("_File"), NULL, NULL, NULL },
32 { "EditMenu", NULL, N_("_Edit"), NULL, NULL, NULL },
33 { "ViewMenu", NULL, N_("_View"), NULL, NULL, NULL },
34@@ -100,7 +102,7 @@
35 N_("Reload the current document"),
36 G_CALLBACK (main_window_reload_cb) },
37
38- { "SaveFile", GTK_STOCK_SAVE, N_("_Save a Copy..."), "<control>S",
39+ { "SaveFile", GTK_STOCK_SAVE, N_("_Save a Copy..."), "<control>W",
40 N_("Save a copy of the current document"),
41 G_CALLBACK (main_window_save_file_cb) },
42
43@@ -110,11 +112,11 @@
44 G_CALLBACK (main_window_print_cb) },
45 #endif // HAVE_CUPS
46
47- { "Quit", GTK_STOCK_CLOSE, N_("_Close"), "<control>W",
48+ { "Quit", GTK_STOCK_CLOSE, N_("_Close"), "<control>Q",
49 N_("Close this window"),
50 G_CALLBACK (main_window_quit_cb) },
51
52- { "Find", GTK_STOCK_FIND, N_("_Find"), "<control>F",
53+ { "Find", GTK_STOCK_FIND, N_("_Find"), "<control>S",
54 N_("Find a word in the document"),
55 G_CALLBACK (main_window_find_cb) },
56
57@@ -138,19 +140,19 @@
58 N_("Rotate the document 90 degrees counter-clockwise"),
59 G_CALLBACK (main_window_rotate_left_cb) },
60
61- { "GoToFirstPage", GTK_STOCK_GOTO_FIRST, N_("_First Page"), "<control>Home",
62+ { "GoToFirstPage", GTK_STOCK_GOTO_FIRST, N_("_First Page"), "<control>1",
63 N_("Go to the first page"),
64 G_CALLBACK (main_window_go_to_first_page_cb) },
65
66- { "GoToNextPage", GTK_STOCK_GO_FORWARD, N_("_Next Page"), "<Shift>Page_Down",
67+ { "GoToNextPage", GTK_STOCK_GO_FORWARD, N_("_Next Page"), "<Shift>Down",
68 N_("Go to the next page"),
69 G_CALLBACK (main_window_go_to_next_page_cb) },
70
71- { "GoToPreviousPage", GTK_STOCK_GO_BACK, N_("_Previous Page"), "<Shift>Page_Up",
72+ { "GoToPreviousPage", GTK_STOCK_GO_BACK, N_("_Previous Page"), "<Shift>Up",
73 N_("Go to the previous page"),
74 G_CALLBACK (main_window_go_to_previous_page_cb) },
75
76- { "GoToLastPage", GTK_STOCK_GOTO_LAST, N_("_Last Page"), "<control>End",
77+ { "GoToLastPage", GTK_STOCK_GOTO_LAST, N_("_Last Page"), "<control>0",
78 N_("Go to the last page"),
79 G_CALLBACK (main_window_go_to_last_page_cb) },
80
81@@ -172,7 +174,7 @@
82
83 static GtkToggleActionEntry g_ToggleEntries[] =
84 {
85- { "FullScreen", NULL, N_("F_ull screen"), "F11",
86+ { "FullScreen", NULL, N_("F_ull screen"), "<control>F",
87 N_("Toggle full screen window"),
88 G_CALLBACK (main_window_fullscreen_cb), FALSE },
89
90@@ -184,7 +186,7 @@
91 N_("Show or hide the statusbar"),
92 G_CALLBACK (main_window_show_statusbar_cb), TRUE },
93
94- { "ShowIndex", NULL, N_("Show I_ndex"), "F9",
95+ { "ShowIndex", NULL, N_("Show I_ndex"), "<control>I",
96 N_("Show or hide the document's outline"),
97 G_CALLBACK (main_window_show_index_cb), FALSE },
98
99@@ -234,9 +236,8 @@
100 GtkAccelGroup *accelGroup = gtk_ui_manager_get_accel_group (m_UIManager);
101 gtk_window_add_accel_group (GTK_WINDOW (m_MainWindow), accelGroup);
102 // Add the menu bar and tool bar.
103- GtkWidget *menuBar = gtk_ui_manager_get_widget (m_UIManager, "/MenuBar");
104- gtk_box_pack_start (GTK_BOX (m_MainBox), menuBar, FALSE, FALSE, 0);
105- gtk_widget_show (menuBar);
106+ owl_set_window_menu_item (GTK_WINDOW (m_MainWindow),
107+ GTK_MENU_ITEM(gtk_ui_manager_get_widget(m_UIManager, "/MenuBar/TopMenu")));
108 GtkWidget *toolBar = gtk_ui_manager_get_widget (m_UIManager, "/ToolBar");
109 gtk_box_pack_start (GTK_BOX (m_MainBox), toolBar, FALSE, FALSE, 0);
110 // Add the current page tool item.
111@@ -285,7 +286,7 @@
112 MainView::activeZoomFit (gboolean active)
113 {
114 GtkAction *zoomFit =
115- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/ZoomFit");
116+ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/ZoomFit");
117 gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (zoomFit), active);
118 }
119
120@@ -293,7 +294,7 @@
121 MainView::activeZoomWidth (gboolean active)
122 {
123 GtkAction *zoomWidth =
124- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/ZoomWidth");
125+ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/ZoomWidth");
126 gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (zoomWidth), active);
127 }
128
129@@ -484,7 +485,7 @@
130 MainView::sensitiveFind (gboolean sensitive)
131 {
132 GtkAction *find =
133- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/EditMenu/Find");
134+ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/EditMenu/Find");
135 gtk_action_set_sensitive (find, sensitive);
136 }
137
138@@ -492,7 +493,7 @@
139 MainView::sensitiveGoToFirstPage (gboolean sensitive)
140 {
141 GtkAction *goToFirstPage = gtk_ui_manager_get_action (m_UIManager,
142- "/MenuBar/GoMenu/GoToFirstPage");
143+ "/MenuBar/TopMenu/GoMenu/GoToFirstPage");
144 gtk_action_set_sensitive (goToFirstPage, sensitive);
145 }
146
147@@ -500,7 +501,7 @@
148 MainView::sensitiveGoToLastPage (gboolean sensitive)
149 {
150 GtkAction *goToLastPage =
151- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/GoMenu/GoToLastPage");
152+ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/GoMenu/GoToLastPage");
153 gtk_action_set_sensitive (goToLastPage, sensitive);
154 }
155
156@@ -508,7 +509,7 @@
157 MainView::sensitiveGoToNextPage (gboolean sensitive)
158 {
159 GtkAction *goToNextPage =
160- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/GoMenu/GoToNextPage");
161+ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/GoMenu/GoToNextPage");
162 gtk_action_set_sensitive (goToNextPage, sensitive);
163 }
164
165@@ -522,7 +523,7 @@
166 MainView::sensitiveGoToPreviousPage (gboolean sensitive)
167 {
168 GtkAction *goToPreviousPage = gtk_ui_manager_get_action (m_UIManager,
169- "/MenuBar/GoMenu/GoToPreviousPage");
170+ "/MenuBar/TopMenu/GoMenu/GoToPreviousPage");
171 gtk_action_set_sensitive (goToPreviousPage, sensitive);
172 }
173
174@@ -530,7 +531,7 @@
175 MainView::sensitiveOpen (gboolean sensitive)
176 {
177 GtkAction *open =
178- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/FileMenu/OpenFile");
179+ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/FileMenu/OpenFile");
180 gtk_action_set_sensitive (open, sensitive);
181 }
182
183@@ -539,7 +540,7 @@
184 MainView::sensitivePrint (gboolean sensitive)
185 {
186 GtkAction *print = gtk_ui_manager_get_action (m_UIManager,
187- "/MenuBar/FileMenu/PrintPlaceHolder/Print");
188+ "/MenuBar/TopMenu/FileMenu/PrintPlaceHolder/Print");
189 gtk_action_set_sensitive (print, sensitive);
190 }
191 #endif // HAVE_CUPS
192@@ -548,7 +549,7 @@
193 MainView::sensitiveReload (gboolean sensitive)
194 {
195 GtkAction *reload =
196- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/FileMenu/ReloadFile");
197+ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/FileMenu/ReloadFile");
198 gtk_action_set_sensitive (reload, sensitive);
199 }
200
201@@ -556,7 +557,7 @@
202 MainView::sensitiveRotateLeft (gboolean sensitive)
203 {
204 GtkAction *rotateLeft =
205- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/RotateLeft");
206+ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/RotateLeft");
207 gtk_action_set_sensitive (rotateLeft, sensitive);
208 }
209
210@@ -564,7 +565,7 @@
211 MainView::sensitiveRotateRight (gboolean sensitive)
212 {
213 GtkAction *rotateRight = gtk_ui_manager_get_action (m_UIManager,
214- "/MenuBar/ViewMenu/RotateRight");
215+ "/MenuBar/TopMenu/ViewMenu/RotateRight");
216 gtk_action_set_sensitive (rotateRight, sensitive);
217 }
218
219@@ -572,7 +573,7 @@
220 MainView::sensitiveSave (gboolean sensitive)
221 {
222 GtkAction *save =
223- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/FileMenu/SaveFile");
224+ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/FileMenu/SaveFile");
225 gtk_action_set_sensitive (save, sensitive);
226 }
227
228@@ -586,7 +587,7 @@
229 MainView::sensitiveZoomIn (gboolean sensitive)
230 {
231 GtkAction *zoomIn =
232- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/ZoomIn");
233+ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/ZoomIn");
234 gtk_action_set_sensitive (zoomIn, sensitive);
235 }
236
237@@ -594,7 +595,7 @@
238 MainView::sensitiveZoomOut (gboolean sensitive)
239 {
240 GtkAction *zoomOut =
241- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/ZoomOut");
242+ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/ZoomOut");
243 gtk_action_set_sensitive (zoomOut, sensitive);
244 }
245
246@@ -602,7 +603,7 @@
247 MainView::sensitiveZoomFit (gboolean sensitive)
248 {
249 GtkAction *zoomFit =
250- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/ZoomFit");
251+ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/ZoomFit");
252 gtk_action_set_sensitive (zoomFit, sensitive);
253 }
254
255@@ -610,7 +611,7 @@
256 MainView::sensitiveZoomWidth (gboolean sensitive)
257 {
258 GtkAction *zoomWidth =
259- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/ZoomWidth");
260+ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/ZoomWidth");
261 gtk_action_set_sensitive (zoomWidth, sensitive);
262 }
263
264@@ -654,7 +655,7 @@
265 }
266 GtkAction *showIndex =
267 gtk_ui_manager_get_action (m_UIManager,
268- "/MenuBar/ViewMenu/ShowIndex");
269+ "/MenuBar/TopMenu/ViewMenu/ShowIndex");
270 gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (showIndex), show);
271 }
272
273@@ -695,13 +696,13 @@
274 gtk_window_fullscreen (GTK_WINDOW (m_MainWindow));
275 // Hide the menu bar, tool bar, status bar and the index bar. Then
276 // zoom to fit.
277- gtk_widget_hide (menuBar);
278+// gtk_widget_hide (menuBar);
279 gtk_widget_hide (toolBar);
280 gtk_widget_hide (m_StatusBar);
281 gtk_widget_hide (m_Sidebar);
282 gtk_toggle_action_set_active (
283 GTK_TOGGLE_ACTION (gtk_ui_manager_get_action (m_UIManager,
284- "/MenuBar/ViewMenu/ZoomFit")), TRUE);
285+ "/MenuBar/TopMenu/ViewMenu/ZoomFit")), TRUE);
286 }
287 else
288 {
289@@ -711,15 +712,15 @@
290 // enabled.
291 main_window_show_index_cb (
292 GTK_TOGGLE_ACTION (gtk_ui_manager_get_action (m_UIManager,
293- "/MenuBar/ViewMenu/ShowIndex")),
294+ "/MenuBar/TopMenu/ViewMenu/ShowIndex")),
295 (gpointer)m_Pter);
296 main_window_show_statusbar_cb (
297 GTK_TOGGLE_ACTION (gtk_ui_manager_get_action (m_UIManager,
298- "/MenuBar/ViewMenu/ShowStatusBar")),
299+ "/MenuBar/TopMenu/ViewMenu/ShowStatusBar")),
300 (gpointer)m_Pter);
301 main_window_show_toolbar_cb (
302 GTK_TOGGLE_ACTION (gtk_ui_manager_get_action (m_UIManager,
303- "/MenuBar/ViewMenu/ShowToolBar")),
304+ "/MenuBar/TopMenu/ViewMenu/ShowToolBar")),
305 (gpointer)m_Pter);
306 }
307 }
308@@ -814,7 +815,7 @@
309 MainView::showStatusbar (gboolean show)
310 {
311 GtkAction *toggleAction = gtk_ui_manager_get_action (m_UIManager,
312- "/MenuBar/ViewMenu/ShowStatusBar");
313+ "/MenuBar/TopMenu/ViewMenu/ShowStatusBar");
314 gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (toggleAction), show);
315 if ( show )
316 {
317@@ -830,7 +831,7 @@
318 MainView::showToolbar (gboolean show)
319 {
320 GtkAction *toggleAction = gtk_ui_manager_get_action (m_UIManager,
321- "/MenuBar/ViewMenu/ShowToolBar");
322+ "/MenuBar/TopMenu/ViewMenu/ShowToolBar");
323 gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (toggleAction), show);
324 GtkWidget *toolBar = gtk_ui_manager_get_widget (m_UIManager, "/ToolBar");
325 if ( show )
diff --git a/meta-demoapps/recipes-sato/epdfview/epdfview_0.1.6.bb b/meta-demoapps/recipes-sato/epdfview/epdfview_0.1.6.bb
new file mode 100644
index 0000000000..a528474d9b
--- /dev/null
+++ b/meta-demoapps/recipes-sato/epdfview/epdfview_0.1.6.bb
@@ -0,0 +1,21 @@
1DESCRIPTION = "A minimal PDF viewer based on gtk and poppler"
2HOMEPAGE = "http://trac.emma-soft.com/epdfview/"
3LICENSE = "GPLv2"
4SECTION = "x11/applications"
5DEPENDS = "poppler gtk+ libowl"
6PR="r0"
7
8SRC_URI = "http://trac.emma-soft.com/epdfview/chrome/site/releases/epdfview-${PV}.tar.bz2 \
9 file://owl-menus.patch \
10 file://epdfview.desktop \
11 file://epdfview-ui.xml \
12 file://epdfview-ui-print.xml"
13
14inherit autotools gettext
15
16do_install_prepend() {
17 install ${WORKDIR}/epdfview-ui.xml ${S}/data/epdfview-ui.xml
18 install ${WORKDIR}/epdfview-ui-print.xml ${S}/data/epdfview-ui-print.xml
19 install ${WORKDIR}/epdfview.desktop ${S}/data/epdfview.desktop
20}
21
diff --git a/meta-demoapps/recipes-sato/epdfview/epdfview_0.1.7.bb b/meta-demoapps/recipes-sato/epdfview/epdfview_0.1.7.bb
new file mode 100644
index 0000000000..34e08bd140
--- /dev/null
+++ b/meta-demoapps/recipes-sato/epdfview/epdfview_0.1.7.bb
@@ -0,0 +1,21 @@
1DESCRIPTION = "A minimal PDF viewer based on gtk and poppler"
2HOMEPAGE = "http://trac.emma-soft.com/epdfview/"
3LICENSE = "GPLv2"
4SECTION = "x11/applications"
5DEPENDS = "poppler gtk+"
6PR="r0"
7
8SRC_URI = "http://trac.emma-soft.com/epdfview/chrome/site/releases/epdfview-${PV}.tar.bz2 \
9 file://owl-menus.patch;patch=1 \
10 file://epdfview.desktop \
11 file://epdfview-ui.xml \
12 file://epdfview-ui-print.xml"
13
14inherit autotools gettext
15
16do_install_prepend() {
17 install ${WORKDIR}/epdfview-ui.xml ${S}/data/epdfview-ui.xml
18 install ${WORKDIR}/epdfview-ui-print.xml ${S}/data/epdfview-ui-print.xml
19 install ${WORKDIR}/epdfview.desktop ${S}/data/epdfview.desktop
20}
21
diff --git a/meta-demoapps/recipes-sato/kf/files/fix-configure.patch b/meta-demoapps/recipes-sato/kf/files/fix-configure.patch
new file mode 100644
index 0000000000..fc1ad9a418
--- /dev/null
+++ b/meta-demoapps/recipes-sato/kf/files/fix-configure.patch
@@ -0,0 +1,25 @@
1diff -urNd ../kf-0.5.4.1-r0/kf-0.5.4.1/configure.in kf-0.5.4.1/configure.in
2--- ../kf-0.5.4.1-r0/kf-0.5.4.1/configure.in 2005-04-27 19:42:49.000000000 +0100
3+++ kf-0.5.4.1/configure.in 2005-09-29 14:12:32.000000000 +0100
4@@ -27,7 +27,7 @@
5 dnl AC_ARG_ENABLE(debug,)
6
7 dnl modules needed for package
8-MODULES="gtk+-2.0 >= 2.0.0 libglade-2.0 >= 1.110.0 loudmouth-1.0 >= 0.16"
9+MODULES="gtk+-2.0 >= 2.0.0 libglade-2.0 >= 1.110.0 loudmouth-1.0 >= 0.16 libxml-2.0"
10 dnl MODULES="gtk+-2.0 >= 2.0.0 libglade-2.0 >= 1.110.0 loudmouth-1.0 >= 0.15.1"
11
12 dnl GtkSpell
13@@ -60,9 +60,9 @@
14 AC_DEFINE([HAVE_LM_CONNECTION_SET_JID],1,[We have lm_connection_set_jid])
15 fi
16
17-dnl XScreenSaver stuff...
18-AC_DEFINE([HAVE_XSCREENSAVER], [1], [Whether to support XScreenSaver extension])
19-PACKAGE_LIBS="$PACKAGE_LIBS -lXss -L/usr/X11R6/lib"
20+#dnl XScreenSaver stuff...
21+#AC_DEFINE([HAVE_XSCREENSAVER], [1], [Whether to support XScreenSaver extension])
22+#PACKAGE_LIBS="$PACKAGE_LIBS -lXss -L/usr/X11R6/lib"
23
24 AC_SUBST(PACKAGE_CFLAGS)
25 AC_SUBST(PACKAGE_LIBS)
diff --git a/meta-demoapps/recipes-sato/kf/files/fix-desktop-file.patch b/meta-demoapps/recipes-sato/kf/files/fix-desktop-file.patch
new file mode 100644
index 0000000000..7a0f7d1bca
--- /dev/null
+++ b/meta-demoapps/recipes-sato/kf/files/fix-desktop-file.patch
@@ -0,0 +1,20 @@
1Common subdirectories: kf-0.5.4.1.orig/data and kf-0.5.4.1/data
2diff -u kf-0.5.4.1.orig/kf.desktop kf-0.5.4.1/kf.desktop
3--- kf-0.5.4.1.orig/kf.desktop 2005-04-19 22:08:44.000000000 +0100
4+++ kf-0.5.4.1/kf.desktop 2005-10-03 14:36:47.000000000 +0100
5@@ -1,6 +1,6 @@
6 [Desktop Entry]
7 Encoding=UTF-8
8-Name=kf jabber client
9+Name=Instant Messenger
10 Name[pl]=kf klient sieci jabber
11 Name[lt]=Pokalbių programa kf
12 GenericName=Instant Messenger
13@@ -11,5 +11,6 @@
14 Icon=kf.png
15 Terminal=false
16 Type=Application
17-Categories=GTK;Application;Network;
18+Categories=GTK;PIM;Application;Network;
19 StartupNotify=true
20+X-MB-SingleInstance=true
diff --git a/meta-demoapps/recipes-sato/kf/files/gcc4.patch b/meta-demoapps/recipes-sato/kf/files/gcc4.patch
new file mode 100644
index 0000000000..58727ea0e0
--- /dev/null
+++ b/meta-demoapps/recipes-sato/kf/files/gcc4.patch
@@ -0,0 +1,30 @@
1Index: kf-0.5.4.1/src/jispman.c
2===================================================================
3--- kf-0.5.4.1.orig/src/jispman.c 2006-12-03 15:33:47.000000000 +0100
4+++ kf-0.5.4.1/src/jispman.c 2006-12-03 15:35:01.000000000 +0100
5@@ -25,12 +25,6 @@
6 #include "emoticons.h"
7 #include "kf.h"
8
9-struct _KfJispManager {
10- GHashTable *jisps; /** A hash-table of all JISP pachages managed by this object, indexed by their filename */
11- GList *patterns; /** A list of patterns */
12-};
13-
14-
15 /**
16 * \brief create a new instance of KfJispManager
17 * \return a new instance of KfJispManager
18Index: kf-0.5.4.1/src/jispman.h
19===================================================================
20--- kf-0.5.4.1.orig/src/jispman.h 2006-12-03 15:33:47.000000000 +0100
21+++ kf-0.5.4.1/src/jispman.h 2006-12-03 15:34:37.000000000 +0100
22@@ -25,6 +25,8 @@
23 #include "jisp.h"
24
25 typedef struct _KfJispManager {
26+ GHashTable *jisps; /** A hash-table of all JISP pachages managed by this object, indexed by their filename */
27+ GList *patterns; /** A list of patterns */
28 } KfJispManager;
29
30 /**
diff --git a/meta-demoapps/recipes-sato/kf/kf_0.5.4.1.bb b/meta-demoapps/recipes-sato/kf/kf_0.5.4.1.bb
new file mode 100644
index 0000000000..2baa6d46f7
--- /dev/null
+++ b/meta-demoapps/recipes-sato/kf/kf_0.5.4.1.bb
@@ -0,0 +1,16 @@
1DESCRIPTION = "Kf is a GTK+ instant messaging client."
2LICENSE = "GPL"
3DEPENDS = "libxml2 glib-2.0 gtk+ loudmouth libglade"
4PR = "r4"
5
6SRC_URI = "http://jabberstudio.2nw.net/${PN}/${PN}-${PV}.tar.gz \
7 file://fix-configure.patch;patch=1 \
8 file://fix-desktop-file.patch;patch=0 \
9 file://gcc4.patch;patch=1"
10
11inherit autotools pkgconfig
12
13EXTRA_OECONF = "--disable-binreloc"
14
15export PKG_CONFIG="${STAGING_BINDIR_NATIVE}/pkg-config"
16
diff --git a/meta-demoapps/recipes-sato/matchbox-themes-extra/matchbox-themes-extra_0.3.bb b/meta-demoapps/recipes-sato/matchbox-themes-extra/matchbox-themes-extra_0.3.bb
new file mode 100644
index 0000000000..fb91f03b12
--- /dev/null
+++ b/meta-demoapps/recipes-sato/matchbox-themes-extra/matchbox-themes-extra_0.3.bb
@@ -0,0 +1,25 @@
1DESCRIPTION = "Matchbox window manager extra themes"
2LICENSE = "GPL"
3DEPENDS = "matchbox-wm"
4SECTION = "x11/wm"
5
6SRC_URI = "http://projects.o-hand.com/matchbox/sources/matchbox-themes-extra/${PV}/matchbox-themes-extra-${PV}.tar.bz2"
7S = "${WORKDIR}/matchbox-themes-extra-${PV}"
8
9inherit autotools pkgconfig
10
11# split into several packages plus one meta package
12PACKAGES = "${PN} ${PN}-industrial ${PN}-expose ${PN}-mbcrystal"
13
14ALLOW_EMPTY_${PN} = "1"
15FILES_${PN} = ""
16RDEPENDS_${PN} = "${PN}-industrial ${PN}-expose ${PN}-mbcrystal"
17
18FILES_${PN}-industrial = "${datadir}/themes/Industrial \
19 ${datadir}/icons/Industrial"
20
21FILES_${PN}-expose = "${datadir}/themes/expose \
22 ${datadir}/icons/expose"
23
24FILES_${PN}-mbcrystal = "${datadir}/themes/mbcrystal \
25 ${datadir}/icons/mbcrystal"
diff --git a/meta-demoapps/recipes-sato/matchbox-themes-extra/matchbox-themes-extra_svn.bb b/meta-demoapps/recipes-sato/matchbox-themes-extra/matchbox-themes-extra_svn.bb
new file mode 100644
index 0000000000..6a9f18beaf
--- /dev/null
+++ b/meta-demoapps/recipes-sato/matchbox-themes-extra/matchbox-themes-extra_svn.bb
@@ -0,0 +1,30 @@
1DESCRIPTION = "Matchbox window manager extra themes"
2LICENSE = "GPL"
3DEPENDS = "matchbox-wm"
4SECTION = "x11/wm"
5PV = "0.3+svnr${SRCREV}"
6
7SRC_URI = "svn://svn.o-hand.com/repos/matchbox/trunk;module=matchbox-themes-extra;proto=http"
8S = "${WORKDIR}/${PN}"
9
10inherit autotools pkgconfig
11
12# split into several packages plus one meta package
13PACKAGES = "${PN} ${PN}-industrial ${PN}-expose ${PN}-mbcrystal ${PN}-clearlooks"
14
15ALLOW_EMPTY_${PN} = 1
16FILES_${PN} = ""
17RDEPENDS_${PN} = "${PN}-industrial ${PN}-expose ${PN}-mbcrystal ${PN}-clearlooks"
18
19FILES_${PN}-industrial = "${datadir}/themes/Industrial \
20 ${datadir}/icons/Industrial"
21
22FILES_${PN}-expose = "${datadir}/themes/expose \
23 ${datadir}/icons/expose"
24
25FILES_${PN}-mbcrystal = "${datadir}/themes/mbcrystal \
26 ${datadir}/icons/mbcrystal"
27
28FILES_${PN}-clearlooks = "${datadir}/themes/Clearlooks \
29 ${datadir}/icons/Clearlooks"
30
diff --git a/meta-demoapps/recipes-sato/matchbox-themes-gtk/files/gtkrc b/meta-demoapps/recipes-sato/matchbox-themes-gtk/files/gtkrc
new file mode 100644
index 0000000000..6dc40c0aa5
--- /dev/null
+++ b/meta-demoapps/recipes-sato/matchbox-themes-gtk/files/gtkrc
@@ -0,0 +1 @@
include "/usr/share/themes/Clearlooks/gtk-2.0/gtkrc"
diff --git a/meta-demoapps/recipes-sato/matchbox-themes-gtk/matchbox-themes-gtk.bb b/meta-demoapps/recipes-sato/matchbox-themes-gtk/matchbox-themes-gtk.bb
new file mode 100644
index 0000000000..60be56de13
--- /dev/null
+++ b/meta-demoapps/recipes-sato/matchbox-themes-gtk/matchbox-themes-gtk.bb
@@ -0,0 +1,17 @@
1DESCRIPTION = "Gtk2 theme files to accompany default Matchbox themes"
2LICENSE = "GPL"
3DEPENDS = "gtk-engines"
4RDEPENDS = "matchbox-wm gtk-engine-clearlooks"
5SECTION = "x11/base"
6PR = "r2"
7
8SRC_URI = "file://gtkrc"
9
10FILES_${PN} = "${datadir}/themes"
11
12do_install() {
13 install -d ${D}${datadir}/themes/blondie/gtk-2.0
14 install -d ${D}${datadir}/themes/MBOpus/gtk-2.0
15 install -m 644 ${WORKDIR}/gtkrc ${D}${datadir}/themes/blondie/gtk-2.0/
16 install -m 644 ${WORKDIR}/gtkrc ${D}${datadir}/themes/MBOpus/gtk-2.0/
17}
diff --git a/meta-demoapps/recipes-support/iso-codes/iso-codes_3.3.bb b/meta-demoapps/recipes-support/iso-codes/iso-codes_3.3.bb
new file mode 100644
index 0000000000..23d025f4d2
--- /dev/null
+++ b/meta-demoapps/recipes-support/iso-codes/iso-codes_3.3.bb
@@ -0,0 +1,14 @@
1SECTION = "libs"
2DESCRIPTION = "ISO language, territory, currency, script codes and their translations"
3PRIORITY = "optional"
4LICENSE = "LGPL"
5SECTION = "libs"
6PACKAGE_ARCH = "all"
7
8SRC_URI = "ftp://pkg-isocodes.alioth.debian.org/pub/pkg-isocodes/iso-codes-${PV}.tar.gz"
9
10inherit autotools
11
12FILES_${PN}-dev="${datadir}/pkgconfig/iso-codes.pc"
13FILES_${PN}="${datadir}/xml/iso-codes/ \
14 ${datadir}/iso-codes/"
diff --git a/meta-demoapps/recipes-support/libfribidi/files/libtool-update.patch b/meta-demoapps/recipes-support/libfribidi/files/libtool-update.patch
new file mode 100644
index 0000000000..c7031008fd
--- /dev/null
+++ b/meta-demoapps/recipes-support/libfribidi/files/libtool-update.patch
@@ -0,0 +1,11 @@
1--- fribidi-0.10.4/configure.in~ 2002-05-19 11:06:48.000000000 +0100
2+++ fribidi-0.10.4/configure.in 2004-08-03 17:42:28.000000000 +0100
3@@ -50,7 +50,7 @@
4 AC_PROG_INSTALL
5 AC_PROG_LN_S
6 AC_PROG_MAKE_SET
7-AC_PROG_RANLIB
8+#AC_PROG_RANLIB
9 AC_PATH_PROG(SED, sed, $PATH)
10
11
diff --git a/meta-demoapps/recipes-support/libfribidi/libfribidi_0.10.4.bb b/meta-demoapps/recipes-support/libfribidi/libfribidi_0.10.4.bb
new file mode 100644
index 0000000000..d60a190cbd
--- /dev/null
+++ b/meta-demoapps/recipes-support/libfribidi/libfribidi_0.10.4.bb
@@ -0,0 +1,24 @@
1DESCRIPTION = "Fribidi library for bidirectional text"
2SECTION = "libs"
3PRIORITY = "optional"
4LICENSE = "GPL"
5
6inherit autotools pkgconfig
7
8PR = "r0"
9
10S = "${WORKDIR}/fribidi-${PV}"
11
12SRC_URI = "${SOURCEFORGE_MIRROR}/fribidi/fribidi-${PV}.tar.bz2 \
13 file://libtool-update.patch;patch=1"
14
15#PACKAGES += " ${PN}-bin"
16FILES_${PN} = "${libdir}/lib*.so.*"
17#FILES_${PN}-bin = "${libdir}/uu*"
18
19do_configure_prepend () {
20# this version of libtool is old - we have to nobble this file to get it to litoolize
21 rm ltconfig
22 rm aclocal.m4
23 rm acinclude.m4
24}
diff --git a/meta-demoapps/recipes-support/openobex/files/disable-cable-test.patch b/meta-demoapps/recipes-support/openobex/files/disable-cable-test.patch
new file mode 100644
index 0000000000..95b636dd8f
--- /dev/null
+++ b/meta-demoapps/recipes-support/openobex/files/disable-cable-test.patch
@@ -0,0 +1,16 @@
1
2#
3# Patch managed by http://www.holgerschurig.de/patcher.html
4#
5
6--- openobex-1.2/apps/Makefile.am~disable-cable-test
7+++ openobex-1.2/apps/Makefile.am
8@@ -6,7 +6,7 @@
9 obex_io.c obex_io.h \
10 obex_put_common.c obex_put_common.h
11
12-bin_PROGRAMS = irxfer obex_tcp irobex_palm3 obex_test
13+bin_PROGRAMS = irxfer obex_tcp irobex_palm3
14
15 obex_test_SOURCES = \
16 obex_test.c obex_test.h \
diff --git a/meta-demoapps/recipes-support/openobex/files/libusb_crosscompile_check.patch b/meta-demoapps/recipes-support/openobex/files/libusb_crosscompile_check.patch
new file mode 100644
index 0000000000..20ac70bd1e
--- /dev/null
+++ b/meta-demoapps/recipes-support/openobex/files/libusb_crosscompile_check.patch
@@ -0,0 +1,13 @@
1Index: openobex-1.5/acinclude.m4
2===================================================================
3--- openobex-1.5.orig/acinclude.m4 2009-02-08 18:30:22.000000000 +0000
4+++ openobex-1.5/acinclude.m4 2009-07-31 09:55:46.000000000 +0100
5@@ -158,7 +158,7 @@
6 ;;
7 *)
8 PKG_CHECK_MODULES(USB, libusb, usb_lib_found=yes, AC_MSG_RESULT(no))
9- AC_CHECK_FILE(${prefix}/lib/pkgconfig/libusb.pc, REQUIRES="libusb")
10+ REQUIRES="libusb"
11 ;;
12 esac
13 AC_SUBST(USB_CFLAGS)
diff --git a/meta-demoapps/recipes-support/openobex/openobex_1.5.bb b/meta-demoapps/recipes-support/openobex/openobex_1.5.bb
new file mode 100644
index 0000000000..dc07ae1353
--- /dev/null
+++ b/meta-demoapps/recipes-support/openobex/openobex_1.5.bb
@@ -0,0 +1,23 @@
1DESCRIPTION = "The Openobex project is an open source implementation of the \
2Object Exchange (OBEX) protocol."
3HOMEPAGE = "http://openobex.triq.net"
4SECTION = "libs"
5PROVIDES = "openobex-apps"
6DEPENDS = "libusb bluez4"
7LICENSE = "GPL"
8PR = "r4"
9
10SRC_URI = "${KERNELORG_MIRROR}/pub/linux/bluetooth/openobex-${PV}.tar.gz \
11 file://disable-cable-test.patch;patch=1 \
12 file://libusb_crosscompile_check.patch;patch=1"
13
14inherit autotools binconfig pkgconfig
15
16EXTRA_OECONF = "--enable-apps --enable-syslog --enable-dump \
17 --with-usb=${STAGING_LIBDIR}/.. --with-bluez=${STAGING_LIBDIR}/.."
18
19# how to stop shlibrename from renaming -apps?
20PACKAGES += "openobex-apps"
21FILES_${PN} = "${libdir}/lib*.so.*"
22FILES_${PN}-dev += "${bindir}/openobex-config"
23FILES_${PN}-apps = "${bindir}/*"
diff --git a/meta-demoapps/recipes-support/poppler/poppler-data_0.1.bb b/meta-demoapps/recipes-support/poppler/poppler-data_0.1.bb
new file mode 100644
index 0000000000..ca22e4dba0
--- /dev/null
+++ b/meta-demoapps/recipes-support/poppler/poppler-data_0.1.bb
@@ -0,0 +1,16 @@
1DESCRIPTION = "Poppler is a PDF rendering library based on the xpdf-3.0 code base."
2LICENSE = "Adobe"
3PR = "r0"
4
5SRC_URI = "http://poppler.freedesktop.org/${PN}-${PV}.tar.gz"
6
7do_compile() {
8}
9
10do_install() {
11 oe_runmake install DESTDIR=${D}
12}
13
14FILES_${PN} += "${datadir}"
15PACKAGE_ARCH = "all"
16
diff --git a/meta-demoapps/recipes-support/poppler/poppler-fpu.inc b/meta-demoapps/recipes-support/poppler/poppler-fpu.inc
new file mode 100644
index 0000000000..a26273020a
--- /dev/null
+++ b/meta-demoapps/recipes-support/poppler/poppler-fpu.inc
@@ -0,0 +1,6 @@
1
2def get_poppler_fpu_setting(bb, d):
3 if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]:
4 return "--enable-fixedpoint"
5 return ""
6
diff --git a/meta-demoapps/recipes-support/poppler/poppler.inc b/meta-demoapps/recipes-support/poppler/poppler.inc
new file mode 100644
index 0000000000..645e734e8b
--- /dev/null
+++ b/meta-demoapps/recipes-support/poppler/poppler.inc
@@ -0,0 +1,18 @@
1DESCRIPTION = "Poppler is a PDF rendering library based on the xpdf-3.0 code base."
2DEPENDS = "fontconfig jpeg zlib gtk+ cairo"
3LICENSE = "GPL"
4PR = "r1"
5
6SRC_URI = "http://poppler.freedesktop.org/${PN}-${PV}.tar.gz"
7
8inherit autotools pkgconfig
9
10EXTRA_OECONF = " --enable-xpdf-headers \
11 --disable-gtk-test \
12 --disable-poppler-qt --disable-poppler-qt4 \
13 --enable-zlib \
14 "
15
16#check for TARGET_FPU=soft and inform configure of the result so it can disable some floating points
17require poppler-fpu.inc
18EXTRA_OECONF += "${@get_poppler_fpu_setting(bb, d)}"
diff --git a/meta-demoapps/recipes-support/poppler/poppler_0.9.2.bb b/meta-demoapps/recipes-support/poppler/poppler_0.9.2.bb
new file mode 100644
index 0000000000..92c25bc0ac
--- /dev/null
+++ b/meta-demoapps/recipes-support/poppler/poppler_0.9.2.bb
@@ -0,0 +1,2 @@
1require poppler.inc
2PR = "r2"