diff options
Diffstat (limited to 'recipes-support/florence')
3 files changed, 186 insertions, 0 deletions
diff --git a/recipes-support/florence/florence3/0001-make-sound-a-configure-option.patch b/recipes-support/florence/florence3/0001-make-sound-a-configure-option.patch new file mode 100644 index 0000000..f2c0164 --- /dev/null +++ b/recipes-support/florence/florence3/0001-make-sound-a-configure-option.patch @@ -0,0 +1,156 @@ +From 3a252ca6f0a5afb04f3874267bfc0a569446bca8 Mon Sep 17 00:00:00 2001 +From: Max Krummenacher <max.krummenacher@toradex.com> +Date: Thu, 23 Jun 2016 20:12:25 +0200 +Subject: [PATCH] make sound a configure option + +add a --without-sound switch which builds without soundeffect and +drops the dependency on gstreamer + +Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> +--- + configure.ac | 9 ++++++++- + src/Makefile.am | 5 +++-- + src/main.c | 4 ++++ + src/style.c | 15 ++++++++++++++- + 4 files changed, 29 insertions(+), 4 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 971f3df..b12244a 100755 +--- a/configure.ac ++++ b/configure.ac +@@ -12,6 +12,8 @@ AC_ARG_WITH([xtst], AS_HELP_STRING([--without-xtst], [Build without Xtst extensi + AM_CONDITIONAL([WITH_XTST], [test "x$with_xtst" != "xno"]) + AC_ARG_WITH([xrecord], AS_HELP_STRING([--without-xrecord], [Build without XRecord extension (requires the Xtst extension) (default: enabled)])) + AM_CONDITIONAL([WITH_XRECORD], [test "x$with_xrecord" != "xno" -a "x$with_xtst" != "xno"]) ++AC_ARG_WITH([sound], AS_HELP_STRING([--without-sound], [Build without sound extension (default: enabled)])) ++AM_CONDITIONAL([WITH_SOUND], [test "x$with_sound" != "xno"]) + AC_ARG_WITH([at-spi], AS_HELP_STRING([--without-at-spi], [Build without at-spi(default: enabled)])) + AM_CONDITIONAL([WITH_AT_SPI], [test "x$with_at_spi" != "xno"]) + AC_ARG_WITH([panelapplet], AS_HELP_STRING([--without-panelapplet], [Build without libpanelapplet(default: enabled)])) +@@ -61,7 +63,7 @@ if test "x$with_docs" != "xno"; then + fi + + # Checks for libraries. +-DEP_MODULES="xext gmodule-2.0 cairo librsvg-2.0 libxml-2.0 gstreamer-1.0" ++DEP_MODULES="xext gmodule-2.0 cairo librsvg-2.0 libxml-2.0" + PKG_CHECK_MODULES(DEPS, $DEP_MODULES) + + PKG_CHECK_MODULES([GTK3], [gtk+-3.0], AC_DEFINE([ENABLE_GTK3], [], [GTK3 enabled.]), +@@ -86,6 +88,9 @@ if test "x$with_xtst" != "xno"; then + AC_DEFINE(ENABLE_XRECORD, ["xrecord"], [xrecord extension is enabled]) + fi + fi ++if test "x$with_sound" != "xno"; then ++ PKG_CHECK_MODULES([SOUND], gstreamer-1.0, AC_DEFINE([ENABLE_SOUND], [], [Sound enabled.]), AC_MSG_ERROR(Could not configure gstreamer 1.0. Please either install gstreamer 1.0 or disable sound: --without-sound configure option)) ++fi + if test "x$with_at_spi" != "xno"; then + PKG_CHECK_MODULES([AT_SPI2], [atspi-2], AC_DEFINE([ENABLE_AT_SPI2], [], [dbus at-spi enabled.]), + AC_MSG_ERROR(Could not configure at-spi. Please either install at-spi or disable it: --without-at-spi configure option)) +@@ -103,6 +108,8 @@ AC_SUBST(LIBNOTIFY_CFLAGS) + AC_SUBST(LIBNOTIFY_LIBS) + AC_SUBST(XTST_CFLAGS) + AC_SUBST(XTST_LIBS) ++AC_SUBST(SOUND_CFLAGS) ++AC_SUBST(SOUND_LIBS) + AC_SUBST(AT_SPI2_CFLAGS) + AC_SUBST(AT_SPI2_LIBS) + AC_SUBST(LIBGNOME_CFLAGS) +diff --git a/src/Makefile.am b/src/Makefile.am +index 9d38512..9d5a417 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -14,9 +14,10 @@ endif + florence_CPPFLAGS = -I$(top_srcdir) -DICONDIR="\"$(ICONDIR)\""\ + -DFLORENCELOCALEDIR=\""$(florencelocaledir)"\"\ + -DDATADIR="\"$(datadir)/florence\"" $(DEPS_CFLAGS) $(GTK3_CFLAGS)\ +- $(LIBGNOME_CFLAGS) $(LIBNOTIFY_CFLAGS) $(XTST_CFLAGS) $(AT_SPI2_CFLAGS) $(INCLUDES) ++ $(LIBGNOME_CFLAGS) $(LIBNOTIFY_CFLAGS) $(XTST_CFLAGS) $(SOUND_CFLAGS)\ ++ $(AT_SPI2_CFLAGS) $(INCLUDES) + florence_LDADD = $(DEPS_LIBS) $(LIBM) $(X11_LIBS) $(LIBGNOME_LIBS) $(LIBNOTIFY_LIBS)\ +- $(XTST_LIBS) $(AT_SPI2_LIBS) $(GTK3_LIBS) -lflorence-1.0 ++ $(XTST_LIBS) $(SOUND_LIBS) $(AT_SPI2_LIBS) $(GTK3_LIBS) -lflorence-1.0 + + libflorence_1_0_la_SOURCES = lib/florence.c + library_includedir=$(includedir)/florence-1.0 +diff --git a/src/main.c b/src/main.c +index c5def08..8fe5514 100644 +--- a/src/main.c ++++ b/src/main.c +@@ -23,7 +23,9 @@ + #include <sys/types.h> + #include <getopt.h> + #include <gtk/gtk.h> ++#ifdef ENABLE_SOUND + #include <gst/gst.h> ++#endif + #include "system.h" + #include "trace.h" + #include "settings.h" +@@ -128,7 +130,9 @@ int main (int argc, char **argv) + close(pipefd[0]); + gtk_init(&argc, &argv); + settings_init(FALSE, config_file); ++#ifdef ENABLE_SOUND + gst_init(&argc, &argv); ++#endif + + if (signal(SIGINT, sig_handler)==SIG_ERR) + flo_error(_("Failed to register SIGINT signal handler.")); +diff --git a/src/style.c b/src/style.c +index e7f58c5..673d348 100644 +--- a/src/style.c ++++ b/src/style.c +@@ -26,8 +26,10 @@ + #include <libxml/parser.h> + #include <libxml/tree.h> + #include <libxml/xmlsave.h> +-#include <gst/gst.h> + #include "system.h" ++#ifdef ENABLE_SOUND ++#include <gst/gst.h> ++#endif + #include "trace.h" + #include "key.h" + #include "style.h" +@@ -546,6 +548,7 @@ GdkPixbuf *style_pixbuf_draw(struct style *style) + } + + /* Liberate the pipeline */ ++#ifdef ENABLE_SOUND + void style_sound_pipeline_free(GstElement *pipeline) + { + START_FUNC +@@ -660,6 +663,14 @@ void style_sound_play(struct style *style, const gchar *match, enum style_sound_ + } + END_FUNC + } ++#else ++void style_sound_free(gpointer data, gpointer userdata) ++{ ++} ++void style_sound_play(struct style *style, const gchar *match, enum style_sound_type type) ++{ ++} ++#endif + + /* create a new style from the layout file */ + struct style *style_new(gchar *base_uri) +@@ -696,6 +707,7 @@ struct style *style_new(gchar *base_uri) + } + } + ++#ifdef ENABLE_SOUND + layoutreader_reset(layout); + layoutreader_element_open(layout, "style"); + if (layoutreader_element_open(layout, "sounds")) { +@@ -704,6 +716,7 @@ struct style *style_new(gchar *base_uri) + layoutreader_sound_free(sound); + } + } ++#endif + + layoutreader_free(layout); + if (!base_uri) g_free(uri); +-- +2.6.6 + diff --git a/recipes-support/florence/florence3_0.6.3.bb b/recipes-support/florence/florence3_0.6.3.bb new file mode 100644 index 0000000..1225ae5 --- /dev/null +++ b/recipes-support/florence/florence3_0.6.3.bb @@ -0,0 +1,27 @@ +DESCRIPTION = "Florence is a virtual keyboard (also called on-screen-keyboard), which allows the user to input text through a touchscreen." +HOMEPAGE = "http://florence.sourceforge.net/english.html" + +#NOTICE: If florence can't find its gconf settings, you need to start florence with --config for one time and save the configuration once. + +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552" + +PR = "r1" + +DEPENDS = "gtk+3 libxml2 libglade librsvg libxtst gconf cairo intltool-native gnome-doc-utils libnotify gstreamer1.0" + +PROVIDES += "florence" + +RPROVIDES_${PN} += "florence" +RREPLACES_${PN} += "florence" +RCONFLICTS_${PN} += "florence" + +SRC_URI = "${SOURCEFORGE_MIRROR}/florence/florence/${PV}/florence-${PV}.tar.bz2" +SRC_URI[md5sum] = "8775051d7352f75dec5a86dc9964e8e0" +SRC_URI[sha256sum] = "422992fd07d285be73cce721a203e22cee21320d69b0fda1579ce62944c5091e" +S = "${WORKDIR}/florence-${PV}" +inherit gettext autotools gconf pkgconfig gsettings + +FILES_${PN} += "${datadir}/florence" + +EXTRA_OECONF = "--disable-scrollkeeper --without-docs --without-at-spi --without-panelapplet --without-xrecord --without-sound" diff --git a/recipes-support/florence/florence3_0.6.3.bbappend b/recipes-support/florence/florence3_0.6.3.bbappend new file mode 100644 index 0000000..4e79209 --- /dev/null +++ b/recipes-support/florence/florence3_0.6.3.bbappend @@ -0,0 +1,3 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/florence3:" +SRC_URI += "file://0001-make-sound-a-configure-option.patch" +EXTRA_OECONF += " --without-sound" |