summaryrefslogtreecommitdiffstats
path: root/meta-demoapps
diff options
context:
space:
mode:
authorSaul Wold <Saul.Wold@intel.com>2010-11-22 13:57:13 (GMT)
committerRichard Purdie <rpurdie@linux.intel.com>2010-11-22 13:57:13 (GMT)
commitcfe12efb5ec9586dab6961f141d52b103bd8b1d1 (patch)
tree7108e22aa7ddf6cfc2f1b6c6b73a811187706ecb /meta-demoapps
parent762fd6b7b3b22d7a8cb80ef9e9ba62e7ef21af3e (diff)
downloadpoky-cfe12efb5ec9586dab6961f141d52b103bd8b1d1.tar.gz
Meta: Recipe Reogranization
This is the next stage of recipe reorganization, in this stage many recipes where moved to a new meta-demoapps layer since this is more appropriate for demo usage then the core. Additional some recipes were moved to meta-extras to indicate they may be depercated at a future time. A number of recipes were modified since dependencies need to be corrected. Signed-off-by: Saul Wold <Saul.Wold@intel.com>
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 0000000..e20ec33
--- /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 0000000..a837cad
--- /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 0000000..d910daa
--- /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 0000000..9b69471
--- /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 0000000..e20c417
--- /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 0000000..e6da2ea
--- /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 0000000..e3cc876
--- /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 0000000..b3863a5
--- /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 0000000..022f709
--- /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 0000000..1810b33
--- /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 0000000..7ea4613
--- /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 0000000..04257bc
--- /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 0000000..4a1802c
--- /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 0000000..6548c20
--- /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 0000000..404c172
--- /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 0000000..dbcb2aa
--- /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 0000000..cb601f2
--- /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 0000000..7dad889
--- /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 0000000..e33336f
--- /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 0000000..a7d50dc
--- /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 0000000..147fcfb
--- /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 0000000..437bdd2
--- /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 0000000..74ca752
--- /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 0000000..d8106bd
--- /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 0000000..c045698
--- /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 0000000..ff86a0b
--- /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 0000000..13e7943
--- /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 0000000..2e07b19
--- /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 0000000..3e8d10f
--- /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 0000000..9000cd4
--- /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 0000000..ff49418
--- /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 0000000..16084e6
--- /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 0000000..e3ac001
--- /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 0000000..dcd3b85
--- /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 0000000..47cf9e0
--- /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 0000000..d2fabf9
--- /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 0000000..566d0fa
--- /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 0000000..e0e3bd7
--- /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 0000000..aeb02ab
--- /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 0000000..f12e6c4
--- /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 0000000..c72860c
--- /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 0000000..01b4f64
--- /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 0000000..d3fd76c
--- /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 0000000..8e1d0ce
--- /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 0000000..d77063e
--- /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 0000000..1aff2d6
--- /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 0000000..67f056b
--- /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 0000000..cb216b2
--- /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 0000000..0358ed8
--- /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 0000000..73f0b99
--- /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 0000000..266d44b
--- /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 0000000..f2e4ec5
--- /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 0000000..10b6390
--- /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 0000000..b1302ed
--- /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 0000000..f614048
--- /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 0000000..136d893
--- /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 0000000..c4c115b
--- /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 0000000..a7cdc43
--- /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 0000000..4aaafb2
--- /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 0000000..1d9b6f2
--- /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 0000000..41cebc5
--- /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 0000000..8d3659f
--- /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 0000000..78804d7
--- /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 0000000..9f515e8
--- /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 0000000..b7a4070
--- /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 0000000..07ce072
--- /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 0000000..08d8bec
--- /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 0000000..906d7d8
--- /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 0000000..029d761
--- /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 0000000..cdf3509
--- /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 0000000..489f456
--- /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 0000000..6c6b459
--- /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 0000000..9a3f5f1
--- /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 0000000..9c3d9ef
--- /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 0000000..7f6585b
--- /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 0000000..7a4724e
--- /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 0000000..1ca6e1e
--- /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