Maliit: Add initial recipes

Submitted by Samuel Stirtzel on Oct. 2, 2012, 8:28 a.m.

Details

Message ID 1349166535-14325-1-git-send-email-s.stirtzel@googlemail.com
State Accepted
Commit d9b7d6b4cd6b959b3998ddfec9775b64ffa61fe0
Headers show

Commit Message

Samuel Stirtzel Oct. 2, 2012, 8:28 a.m.
Maliit is a Qt based virtual keyboard under liberal license (LGPLv2.1 / BSD)
The inputmethod framework from Qt is used and it supports gtk-immodules.
It can also be used without dependencies to GTK+ (separate package for GTK+)

Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
---
 ...INSTALL_PRF-to-allow-the-build-with-opene.patch |   34 ++++++++
 ...LUGIN_PATH-to-allow-openembedded-to-build.patch |   34 ++++++++
 .../recipes-support/maliit/maliit-framework_git.bb |   86 ++++++++++++++++++++
 .../recipes-support/maliit/maliit-plugins_git.bb   |   34 ++++++++
 4 files changed, 188 insertions(+)
 create mode 100644 meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-MALIIT_INSTALL_PRF-to-allow-the-build-with-opene.patch
 create mode 100644 meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-QT_IM_PLUGIN_PATH-to-allow-openembedded-to-build.patch
 create mode 100644 meta-oe/recipes-support/maliit/maliit-framework_git.bb
 create mode 100644 meta-oe/recipes-support/maliit/maliit-plugins_git.bb

\ No newline at end of file

Patch hide | download patch | download mbox

diff --git a/meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-MALIIT_INSTALL_PRF-to-allow-the-build-with-opene.patch b/meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-MALIIT_INSTALL_PRF-to-allow-the-build-with-opene.patch
new file mode 100644
index 0000000..acd9a57
--- /dev/null
+++ b/meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-MALIIT_INSTALL_PRF-to-allow-the-build-with-opene.patch
@@ -0,0 +1,34 @@ 
+From 33554f9b3fd493c7e28617fd01466ffa87251f27 Mon Sep 17 00:00:00 2001
+From: Samuel Stirtzel <s.stirtzel@googlemail.com>
+Date: Wed, 1 Aug 2012 13:21:51 +0200
+Subject: [PATCH] Fix MALIIT_INSTALL_PRF to allow the build with openembedded
+
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
+---
+ config.pri |    8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/config.pri b/config.pri
+index b037b8c..43409f3 100644
+--- a/config.pri
++++ b/config.pri
+@@ -161,9 +161,11 @@ contains(QT_MAJOR_VERSION, 4) {
+     QT_WIDGETS = gui widgets
+ }
+ 
+-MALIIT_INSTALL_PRF = $$[QT_INSTALL_DATA]/mkspecs/features
+-local-install {
+-    MALIIT_INSTALL_PRF = $$replace(MALIIT_INSTALL_PRF, $$[QT_INSTALL_PREFIX], $$PREFIX)
++isEmpty(MALIIT_INSTALL_PRF) {
++    MALIIT_INSTALL_PRF = $$[QT_INSTALL_DATA]/mkspecs/features
++    local-install {
++        MALIIT_INSTALL_PRF = $$replace(MALIIT_INSTALL_PRF, $$[QT_INSTALL_PREFIX], $$PREFIX)
++    }
+ }
+ 
+ defineTest(outputFile) {
+-- 
+1.7.9.5
+
diff --git a/meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-QT_IM_PLUGIN_PATH-to-allow-openembedded-to-build.patch b/meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-QT_IM_PLUGIN_PATH-to-allow-openembedded-to-build.patch
new file mode 100644
index 0000000..830e6de
--- /dev/null
+++ b/meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-QT_IM_PLUGIN_PATH-to-allow-openembedded-to-build.patch
@@ -0,0 +1,34 @@ 
+From fb6acbd2af9ed288c1c4f4200fc73d8d9955486a Mon Sep 17 00:00:00 2001
+From: Samuel Stirtzel <s.stirtzel@googlemail.com>
+Date: Wed, 1 Aug 2012 13:33:10 +0200
+Subject: [PATCH] Fix QT_IM_PLUGIN_PATH to allow openembedded to build Maliit
+
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
+---
+ input-context/input-context.pri |   10 ++++++----
+ 1 file changed, 6 insertions(+), 4 deletions(-)
+
+diff --git a/input-context/input-context.pri b/input-context/input-context.pri
+index d94e6a3..d460e70 100644
+--- a/input-context/input-context.pri
++++ b/input-context/input-context.pri
+@@ -25,8 +25,10 @@ for(OPTION,$$list($$lower($$COV_OPTION))){
+ 
+ QMAKE_CLEAN += $$OBJECTS_DIR/*.gcno $$OBJECTS_DIR/*.gcda
+ 
+-QT_IM_PLUGIN_PATH = $$[QT_INSTALL_PLUGINS]/inputmethods
+-QT_PREFIX = $$[QT_INSTALL_PREFIX]
+-local-install {
+-    QT_IM_PLUGIN_PATH = $$replace(QT_IM_PLUGIN_PATH, $$QT_PREFIX, $$PREFIX)
++isEmpty(QT_IM_PLUGIN_PATH) {
++    QT_IM_PLUGIN_PATH = $$[QT_INSTALL_PLUGINS]/inputmethods
++    QT_PREFIX = $$[QT_INSTALL_PREFIX]
++    local-install {
++        QT_IM_PLUGIN_PATH = $$replace(QT_IM_PLUGIN_PATH, $$QT_PREFIX, $$PREFIX)
++    }
+ }
+-- 
+1.7.9.5
+
diff --git a/meta-oe/recipes-support/maliit/maliit-framework_git.bb b/meta-oe/recipes-support/maliit/maliit-framework_git.bb
new file mode 100644
index 0000000..3f50d1b
--- /dev/null
+++ b/meta-oe/recipes-support/maliit/maliit-framework_git.bb
@@ -0,0 +1,86 @@ 
+DESCRIPTION = "A virtual keyboard for touch-screen based user interfaces"
+HOMEPAGE = "https://wiki.maliit.org/Main_Page"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=5c917f6ce94ceb8d8d5e16e2fca5b9ad"
+
+inherit autotools qt4x11
+
+
+SRC_URI = "git://gitorious.org/maliit/maliit-framework.git;branch=master \
+    file://0001-Fix-MALIIT_INSTALL_PRF-to-allow-the-build-with-opene.patch \
+    file://0001-Fix-QT_IM_PLUGIN_PATH-to-allow-openembedded-to-build.patch \
+    "
+
+SRCREV = "750842dec74a9b17dca91ef779c4fc5a43c4d9dc"
+PV = "0.92.3+git${SRCPV}"
+
+
+PACKAGES =+ "\
+    ${PN}-gtk \
+    "
+
+# Maliit needs Qt configured with -accessibility, a patch for that was already sent and will get merged in post 1.2.
+RDEPENDS_${PN} = "qt4-plugin-inputmethod-imsw-multi libqtsvg4"
+
+RRECOMMENDS_${PN} = "maliit-plugins"
+
+
+FILES_${PN} += "\
+    ${libdir}/maliit/plugins-*/factories/libmaliit-plugins-quick-factory-*.so \
+    ${libdir}/qt4/plugins/inputmethods/*.so \
+    "
+
+FILES_${PN}-dbg += "\
+    ${libdir}/maliit-framework-tests \
+    ${libdir}/gtk-*/*/immodules/.debug \
+    ${libdir}/maliit/plugins-*/factories/.debug \
+    ${libdir}/qt4/plugins/.debug \
+    ${libdir}/qt4/plugins/inputmethods/.debug \
+    "
+
+FILES_${PN}-dev += "${datadir}/qt4"
+
+FILES_${PN}-gtk +="\
+    ${bindir}/maliit-exampleapp-gtk* \
+    \
+    ${libdir}/gtk-*/*/immodules/libim-maliit.so\
+    "
+
+EXTRA_QMAKEVARS_PRE = "\
+    PREFIX=${prefix} \
+    LIBDIR=${libdir} \
+    QT_IM_PLUGIN_PATH=${libdir}/qt4/plugins/inputmethods \
+    MALIIT_INSTALL_PRF=${datadir}/qt4/mkspecs/features \
+    SCHEMADIR=${sysconfdir}/gconf/schemas \
+    CONFIG+=disable-gconf \
+    CONFIG+=disable-gtk-cache-update \
+    CONFIG+=local-install \
+    "
+
+do_install() {
+    cd ${S} && (INSTALL_ROOT=${D} oe_runmake install)
+
+    #Fix absolute paths
+    cd ${D}/${datadir}/qt4/mkspecs/features && sed -i -e "s|/usr|${STAGING_DIR_TARGET}${prefix}|" ./maliit-framework.prf
+    cd ${D}/${datadir}/qt4/mkspecs/features && sed -i -e "s|/usr|${STAGING_DIR_TARGET}${prefix}|" ./maliit-plugins.prf
+}
+
+
+
+# Update the inputmethod modules in gtk
+pkg_postinst_${PN}-gtk() {
+if [ "x$D" != "x" ]; then
+    exit 1
+fi
+gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
+}
+
+pkg_postrm_${PN}-gtk() {
+if [ "x$D" != "x" ]; then
+    exit 1
+fi
+gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
+}
+
+S= "${WORKDIR}/git"
diff --git a/meta-oe/recipes-support/maliit/maliit-plugins_git.bb b/meta-oe/recipes-support/maliit/maliit-plugins_git.bb
new file mode 100644
index 0000000..932c0ae
--- /dev/null
+++ b/meta-oe/recipes-support/maliit/maliit-plugins_git.bb
@@ -0,0 +1,34 @@ 
+DESCRIPTION = "Plugins for a virtual keyboard for touch-screen based user interfaces"
+HOMEPAGE = "https://wiki.maliit.org/Main_Page"
+
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=f29b21caa8e460097bfad9c026a33621"
+
+inherit autotools qt4x11
+
+DEPENDS = "maliit-framework"
+
+SRC_URI = "git://gitorious.org/maliit/maliit-plugins.git;branch=master"
+
+SRCREV = "0760e585df494b394df1b887e5138ffef19c481f"
+PV = "0.92.3+git${SRCPV}"
+
+EXTRA_QMAKEVARS_PRE = "\
+    PREFIX=${prefix} \
+    LIBDIR=${libdir} \
+    "
+
+FILES_${PN} += "\
+    ${libdir}/maliit \
+    ${datadir} \
+    "
+
+FILES_${PN}-dbg += "\
+    ${libdir}/maliit/plugins-*/.debug \
+    "
+
+S= "${WORKDIR}/git"
+
+do_install() {
+  cd ${S} && (INSTALL_ROOT=${D} oe_runmake install)
+}

Comments

Samuel Stirtzel Oct. 16, 2012, 8:10 a.m.
2012/10/2 Samuel Stirtzel <s.stirtzel@googlemail.com>:
> Maliit is a Qt based virtual keyboard under liberal license (LGPLv2.1 / BSD)
> The inputmethod framework from Qt is used and it supports gtk-immodules.
> It can also be used without dependencies to GTK+ (separate package for GTK+)
>
> Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
> ---
>  ...INSTALL_PRF-to-allow-the-build-with-opene.patch |   34 ++++++++
>  ...LUGIN_PATH-to-allow-openembedded-to-build.patch |   34 ++++++++
>  .../recipes-support/maliit/maliit-framework_git.bb |   86 ++++++++++++++++++++
>  .../recipes-support/maliit/maliit-plugins_git.bb   |   34 ++++++++
>  4 files changed, 188 insertions(+)
>  create mode 100644 meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-MALIIT_INSTALL_PRF-to-allow-the-build-with-opene.patch
>  create mode 100644 meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-QT_IM_PLUGIN_PATH-to-allow-openembedded-to-build.patch
>  create mode 100644 meta-oe/recipes-support/maliit/maliit-framework_git.bb
>  create mode 100644 meta-oe/recipes-support/maliit/maliit-plugins_git.bb
>
> diff --git a/meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-MALIIT_INSTALL_PRF-to-allow-the-build-with-opene.patch b/meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-MALIIT_INSTALL_PRF-to-allow-the-build-with-opene.patch
> new file mode 100644
> index 0000000..acd9a57
> --- /dev/null
> +++ b/meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-MALIIT_INSTALL_PRF-to-allow-the-build-with-opene.patch
> @@ -0,0 +1,34 @@
> +From 33554f9b3fd493c7e28617fd01466ffa87251f27 Mon Sep 17 00:00:00 2001
> +From: Samuel Stirtzel <s.stirtzel@googlemail.com>
> +Date: Wed, 1 Aug 2012 13:21:51 +0200
> +Subject: [PATCH] Fix MALIIT_INSTALL_PRF to allow the build with openembedded
> +
> +Upstream-Status: Inappropriate [configuration]
> +
> +Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
> +---
> + config.pri |    8 +++++---
> + 1 file changed, 5 insertions(+), 3 deletions(-)
> +
> +diff --git a/config.pri b/config.pri
> +index b037b8c..43409f3 100644
> +--- a/config.pri
> ++++ b/config.pri
> +@@ -161,9 +161,11 @@ contains(QT_MAJOR_VERSION, 4) {
> +     QT_WIDGETS = gui widgets
> + }
> +
> +-MALIIT_INSTALL_PRF = $$[QT_INSTALL_DATA]/mkspecs/features
> +-local-install {
> +-    MALIIT_INSTALL_PRF = $$replace(MALIIT_INSTALL_PRF, $$[QT_INSTALL_PREFIX], $$PREFIX)
> ++isEmpty(MALIIT_INSTALL_PRF) {
> ++    MALIIT_INSTALL_PRF = $$[QT_INSTALL_DATA]/mkspecs/features
> ++    local-install {
> ++        MALIIT_INSTALL_PRF = $$replace(MALIIT_INSTALL_PRF, $$[QT_INSTALL_PREFIX], $$PREFIX)
> ++    }
> + }
> +
> + defineTest(outputFile) {
> +--
> +1.7.9.5
> +
> diff --git a/meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-QT_IM_PLUGIN_PATH-to-allow-openembedded-to-build.patch b/meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-QT_IM_PLUGIN_PATH-to-allow-openembedded-to-build.patch
> new file mode 100644
> index 0000000..830e6de
> --- /dev/null
> +++ b/meta-oe/recipes-support/maliit/maliit-framework/0001-Fix-QT_IM_PLUGIN_PATH-to-allow-openembedded-to-build.patch
> @@ -0,0 +1,34 @@
> +From fb6acbd2af9ed288c1c4f4200fc73d8d9955486a Mon Sep 17 00:00:00 2001
> +From: Samuel Stirtzel <s.stirtzel@googlemail.com>
> +Date: Wed, 1 Aug 2012 13:33:10 +0200
> +Subject: [PATCH] Fix QT_IM_PLUGIN_PATH to allow openembedded to build Maliit
> +
> +Upstream-Status: Inappropriate [configuration]
> +
> +Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
> +---
> + input-context/input-context.pri |   10 ++++++----
> + 1 file changed, 6 insertions(+), 4 deletions(-)
> +
> +diff --git a/input-context/input-context.pri b/input-context/input-context.pri
> +index d94e6a3..d460e70 100644
> +--- a/input-context/input-context.pri
> ++++ b/input-context/input-context.pri
> +@@ -25,8 +25,10 @@ for(OPTION,$$list($$lower($$COV_OPTION))){
> +
> + QMAKE_CLEAN += $$OBJECTS_DIR/*.gcno $$OBJECTS_DIR/*.gcda
> +
> +-QT_IM_PLUGIN_PATH = $$[QT_INSTALL_PLUGINS]/inputmethods
> +-QT_PREFIX = $$[QT_INSTALL_PREFIX]
> +-local-install {
> +-    QT_IM_PLUGIN_PATH = $$replace(QT_IM_PLUGIN_PATH, $$QT_PREFIX, $$PREFIX)
> ++isEmpty(QT_IM_PLUGIN_PATH) {
> ++    QT_IM_PLUGIN_PATH = $$[QT_INSTALL_PLUGINS]/inputmethods
> ++    QT_PREFIX = $$[QT_INSTALL_PREFIX]
> ++    local-install {
> ++        QT_IM_PLUGIN_PATH = $$replace(QT_IM_PLUGIN_PATH, $$QT_PREFIX, $$PREFIX)
> ++    }
> + }
> +--
> +1.7.9.5
> +
> diff --git a/meta-oe/recipes-support/maliit/maliit-framework_git.bb b/meta-oe/recipes-support/maliit/maliit-framework_git.bb
> new file mode 100644
> index 0000000..3f50d1b
> --- /dev/null
> +++ b/meta-oe/recipes-support/maliit/maliit-framework_git.bb
> @@ -0,0 +1,86 @@
> +DESCRIPTION = "A virtual keyboard for touch-screen based user interfaces"
> +HOMEPAGE = "https://wiki.maliit.org/Main_Page"
> +
> +LICENSE = "LGPLv2.1"
> +LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=5c917f6ce94ceb8d8d5e16e2fca5b9ad"
> +
> +inherit autotools qt4x11
> +
> +
> +SRC_URI = "git://gitorious.org/maliit/maliit-framework.git;branch=master \
> +    file://0001-Fix-MALIIT_INSTALL_PRF-to-allow-the-build-with-opene.patch \
> +    file://0001-Fix-QT_IM_PLUGIN_PATH-to-allow-openembedded-to-build.patch \
> +    "
> +
> +SRCREV = "750842dec74a9b17dca91ef779c4fc5a43c4d9dc"
> +PV = "0.92.3+git${SRCPV}"
> +
> +
> +PACKAGES =+ "\
> +    ${PN}-gtk \
> +    "
> +
> +# Maliit needs Qt configured with -accessibility, a patch for that was already sent and will get merged in post 1.2.
> +RDEPENDS_${PN} = "qt4-plugin-inputmethod-imsw-multi libqtsvg4"
> +
> +RRECOMMENDS_${PN} = "maliit-plugins"
> +
> +
> +FILES_${PN} += "\
> +    ${libdir}/maliit/plugins-*/factories/libmaliit-plugins-quick-factory-*.so \
> +    ${libdir}/qt4/plugins/inputmethods/*.so \
> +    "
> +
> +FILES_${PN}-dbg += "\
> +    ${libdir}/maliit-framework-tests \
> +    ${libdir}/gtk-*/*/immodules/.debug \
> +    ${libdir}/maliit/plugins-*/factories/.debug \
> +    ${libdir}/qt4/plugins/.debug \
> +    ${libdir}/qt4/plugins/inputmethods/.debug \
> +    "
> +
> +FILES_${PN}-dev += "${datadir}/qt4"
> +
> +FILES_${PN}-gtk +="\
> +    ${bindir}/maliit-exampleapp-gtk* \
> +    \
> +    ${libdir}/gtk-*/*/immodules/libim-maliit.so\
> +    "
> +
> +EXTRA_QMAKEVARS_PRE = "\
> +    PREFIX=${prefix} \
> +    LIBDIR=${libdir} \
> +    QT_IM_PLUGIN_PATH=${libdir}/qt4/plugins/inputmethods \
> +    MALIIT_INSTALL_PRF=${datadir}/qt4/mkspecs/features \
> +    SCHEMADIR=${sysconfdir}/gconf/schemas \
> +    CONFIG+=disable-gconf \
> +    CONFIG+=disable-gtk-cache-update \
> +    CONFIG+=local-install \
> +    "
> +
> +do_install() {
> +    cd ${S} && (INSTALL_ROOT=${D} oe_runmake install)
> +
> +    #Fix absolute paths
> +    cd ${D}/${datadir}/qt4/mkspecs/features && sed -i -e "s|/usr|${STAGING_DIR_TARGET}${prefix}|" ./maliit-framework.prf
> +    cd ${D}/${datadir}/qt4/mkspecs/features && sed -i -e "s|/usr|${STAGING_DIR_TARGET}${prefix}|" ./maliit-plugins.prf
> +}
> +
> +
> +
> +# Update the inputmethod modules in gtk
> +pkg_postinst_${PN}-gtk() {
> +if [ "x$D" != "x" ]; then
> +    exit 1
> +fi
> +gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
> +}
> +
> +pkg_postrm_${PN}-gtk() {
> +if [ "x$D" != "x" ]; then
> +    exit 1
> +fi
> +gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
> +}
> +
> +S= "${WORKDIR}/git"
> diff --git a/meta-oe/recipes-support/maliit/maliit-plugins_git.bb b/meta-oe/recipes-support/maliit/maliit-plugins_git.bb
> new file mode 100644
> index 0000000..932c0ae
> --- /dev/null
> +++ b/meta-oe/recipes-support/maliit/maliit-plugins_git.bb
> @@ -0,0 +1,34 @@
> +DESCRIPTION = "Plugins for a virtual keyboard for touch-screen based user interfaces"
> +HOMEPAGE = "https://wiki.maliit.org/Main_Page"
> +
> +LICENSE = "BSD"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=f29b21caa8e460097bfad9c026a33621"
> +
> +inherit autotools qt4x11
> +
> +DEPENDS = "maliit-framework"
> +
> +SRC_URI = "git://gitorious.org/maliit/maliit-plugins.git;branch=master"
> +
> +SRCREV = "0760e585df494b394df1b887e5138ffef19c481f"
> +PV = "0.92.3+git${SRCPV}"
> +
> +EXTRA_QMAKEVARS_PRE = "\
> +    PREFIX=${prefix} \
> +    LIBDIR=${libdir} \
> +    "
> +
> +FILES_${PN} += "\
> +    ${libdir}/maliit \
> +    ${datadir} \
> +    "
> +
> +FILES_${PN}-dbg += "\
> +    ${libdir}/maliit/plugins-*/.debug \
> +    "
> +
> +S= "${WORKDIR}/git"
> +
> +do_install() {
> +  cd ${S} && (INSTALL_ROOT=${D} oe_runmake install)
> +}
> \ No newline at end of file
> --
> 1.7.9.5
>

Ping,

anything wrong with this patch, or is it just a general "before
release stagnation"?
Martin Jansa Oct. 16, 2012, 8:15 a.m.
On Tue, Oct 16, 2012 at 10:10:37AM +0200, Samuel Stirtzel wrote:
> 2012/10/2 Samuel Stirtzel <s.stirtzel@googlemail.com>:
> Ping,
> 
> anything wrong with this patch, or is it just a general "before
> release stagnation"?

It's probably because of general "before submit read README".

Read README and send with right subject prefix.

Cheers,
Otavio Salvador Oct. 16, 2012, 11:09 a.m.
On Tue, Oct 2, 2012 at 5:28 AM, Samuel Stirtzel
<s.stirtzel@googlemail.com> wrote:
> Maliit is a Qt based virtual keyboard under liberal license (LGPLv2.1 / BSD)
> The inputmethod framework from Qt is used and it supports gtk-immodules.
> It can also be used without dependencies to GTK+ (separate package for GTK+)
>
> Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>

Thanks by working on this. Bellow my comments ...

...
> diff --git a/meta-oe/recipes-support/maliit/maliit-framework_git.bb b/meta-oe/recipes-support/maliit/maliit-framework_git.bb
> new file mode 100644
> index 0000000..3f50d1b
> --- /dev/null
> +++ b/meta-oe/recipes-support/maliit/maliit-framework_git.bb
...
> +
> +# Maliit needs Qt configured with -accessibility, a patch for that was already sent and will get merged in post 1.2.
> +RDEPENDS_${PN} = "qt4-plugin-inputmethod-imsw-multi libqtsvg4"

In this case, maliit is a post 1.2 package.

...
> +EXTRA_QMAKEVARS_PRE = "\
> +    PREFIX=${prefix} \
> +    LIBDIR=${libdir} \
> +    QT_IM_PLUGIN_PATH=${libdir}/qt4/plugins/inputmethods \
> +    MALIIT_INSTALL_PRF=${datadir}/qt4/mkspecs/features \
> +    SCHEMADIR=${sysconfdir}/gconf/schemas \
> +    CONFIG+=disable-gconf \
> +    CONFIG+=disable-gtk-cache-update \
> +    CONFIG+=local-install \
> +    "

Really need to disable gtk-cache-update? Why?

...
> +# Update the inputmethod modules in gtk
> +pkg_postinst_${PN}-gtk() {
> +if [ "x$D" != "x" ]; then
> +    exit 1
> +fi
> +gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
> +}
> +
> +pkg_postrm_${PN}-gtk() {
> +if [ "x$D" != "x" ]; then
> +    exit 1
> +fi
> +gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
> +}

You might add a gtk-immodules.bbclass to allow it to be put out of the recipe.

As said by Martin, please read the README and follow the steps to send
the patch...
Samuel Stirtzel Oct. 17, 2012, 8:29 a.m.
2012/10/16 Otavio Salvador <otavio@ossystems.com.br>:
> On Tue, Oct 2, 2012 at 5:28 AM, Samuel Stirtzel
> <s.stirtzel@googlemail.com> wrote:
>> Maliit is a Qt based virtual keyboard under liberal license (LGPLv2.1 / BSD)
>> The inputmethod framework from Qt is used and it supports gtk-immodules.
>> It can also be used without dependencies to GTK+ (separate package for GTK+)
>>
>> Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
>
> Thanks by working on this. Bellow my comments ...
>
> ...
>> diff --git a/meta-oe/recipes-support/maliit/maliit-framework_git.bb b/meta-oe/recipes-support/maliit/maliit-framework_git.bb
>> new file mode 100644
>> index 0000000..3f50d1b
>> --- /dev/null
>> +++ b/meta-oe/recipes-support/maliit/maliit-framework_git.bb
> ...
>> +
>> +# Maliit needs Qt configured with -accessibility, a patch for that was already sent and will get merged in post 1.2.
>> +RDEPENDS_${PN} = "qt4-plugin-inputmethod-imsw-multi libqtsvg4"
>
> In this case, maliit is a post 1.2 package.
>
> ...
>> +EXTRA_QMAKEVARS_PRE = "\
>> +    PREFIX=${prefix} \
>> +    LIBDIR=${libdir} \
>> +    QT_IM_PLUGIN_PATH=${libdir}/qt4/plugins/inputmethods \
>> +    MALIIT_INSTALL_PRF=${datadir}/qt4/mkspecs/features \
>> +    SCHEMADIR=${sysconfdir}/gconf/schemas \
>> +    CONFIG+=disable-gconf \
>> +    CONFIG+=disable-gtk-cache-update \
>> +    CONFIG+=local-install \
>> +    "
>
> Really need to disable gtk-cache-update? Why?

This option is for packaging, it disables running gtk-query-immodules
on the build-host

>
> ...
>> +# Update the inputmethod modules in gtk
>> +pkg_postinst_${PN}-gtk() {
>> +if [ "x$D" != "x" ]; then
>> +    exit 1
>> +fi
>> +gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
>> +}
>> +
>> +pkg_postrm_${PN}-gtk() {
>> +if [ "x$D" != "x" ]; then
>> +    exit 1
>> +fi
>> +gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
>> +}
>
> You might add a gtk-immodules.bbclass to allow it to be put out of the recipe.

FYI: I have a class for this, but the only other recipe using
gtk-query-immodules is
openembedded-core/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_git.bb
Should I send a patch with the .bbclass to oe-core?

>
> As said by Martin, please read the README and follow the steps to send
> the patch...

Seems to be a classic case of -ENOCOFFEEYET

Will re-send with the right prefix
Otavio Salvador Oct. 17, 2012, 10:42 a.m.
On Wed, Oct 17, 2012 at 5:29 AM, Samuel Stirtzel
<s.stirtzel@googlemail.com>wrote:

> 2012/10/16 Otavio Salvador <otavio@ossystems.com.br>:
> > On Tue, Oct 2, 2012 at 5:28 AM, Samuel Stirtzel
> > <s.stirtzel@googlemail.com> wrote:
> >> Maliit is a Qt based virtual keyboard under liberal license (LGPLv2.1 /
> BSD)
> >> The inputmethod framework from Qt is used and it supports gtk-immodules.
> >> It can also be used without dependencies to GTK+ (separate package for
> GTK+)
> >>
> >> Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
> >
> > Thanks by working on this. Bellow my comments ...
> >
> > ...
> >> diff --git a/meta-oe/recipes-support/maliit/maliit-framework_git.bbb/meta-oe/recipes-support/maliit/
> maliit-framework_git.bb
> >> new file mode 100644
> >> index 0000000..3f50d1b
> >> --- /dev/null
> >> +++ b/meta-oe/recipes-support/maliit/maliit-framework_git.bb
> > ...
> >> +
> >> +# Maliit needs Qt configured with -accessibility, a patch for that was
> already sent and will get merged in post 1.2.
> >> +RDEPENDS_${PN} = "qt4-plugin-inputmethod-imsw-multi libqtsvg4"
> >
> > In this case, maliit is a post 1.2 package.
> >
> > ...
> >> +EXTRA_QMAKEVARS_PRE = "\
> >> +    PREFIX=${prefix} \
> >> +    LIBDIR=${libdir} \
> >> +    QT_IM_PLUGIN_PATH=${libdir}/qt4/plugins/inputmethods \
> >> +    MALIIT_INSTALL_PRF=${datadir}/qt4/mkspecs/features \
> >> +    SCHEMADIR=${sysconfdir}/gconf/schemas \
> >> +    CONFIG+=disable-gconf \
> >> +    CONFIG+=disable-gtk-cache-update \
> >> +    CONFIG+=local-install \
> >> +    "
> >
> > Really need to disable gtk-cache-update? Why?
>
> This option is for packaging, it disables running gtk-query-immodules
> on the build-host
>

Are you sure it is about gtk-query-immodules, it seemed to be icon-cache
related from  the option name.


>
> >
> > ...
> >> +# Update the inputmethod modules in gtk
> >> +pkg_postinst_${PN}-gtk() {
> >> +if [ "x$D" != "x" ]; then
> >> +    exit 1
> >> +fi
> >> +gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
> >> +}
> >> +
> >> +pkg_postrm_${PN}-gtk() {
> >> +if [ "x$D" != "x" ]; then
> >> +    exit 1
> >> +fi
> >> +gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
> >> +}
> >
> > You might add a gtk-immodules.bbclass to allow it to be put out of the
> recipe.
>
> FYI: I have a class for this, but the only other recipe using
> gtk-query-immodules is
> openembedded-core/meta/recipes-sato/matchbox-keyboard/
> matchbox-keyboard_git.bb
> Should I send a patch with the .bbclass to oe-core?
>

I think so. It is easier to read and avoid code duplication.


>
> >
> > As said by Martin, please read the README and follow the steps to send
> > the patch...
>
> Seems to be a classic case of -ENOCOFFEEYET
>
> Will re-send with the right prefix
>

hehe, right ...

Take a double expresso coffee and try again ;-)
Samuel Stirtzel Oct. 17, 2012, 11:40 a.m.
2012/10/17 Otavio Salvador <otavio@ossystems.com.br>:
> On Wed, Oct 17, 2012 at 5:29 AM, Samuel Stirtzel
> <s.stirtzel@googlemail.com>wrote:
>
>> 2012/10/16 Otavio Salvador <otavio@ossystems.com.br>:
>> > On Tue, Oct 2, 2012 at 5:28 AM, Samuel Stirtzel
>> > <s.stirtzel@googlemail.com> wrote:
>> >> Maliit is a Qt based virtual keyboard under liberal license (LGPLv2.1 /
>> BSD)
>> >> The inputmethod framework from Qt is used and it supports gtk-immodules.
>> >> It can also be used without dependencies to GTK+ (separate package for
>> GTK+)
>> >>
>> >> Signed-off-by: Samuel Stirtzel <s.stirtzel@googlemail.com>
>> >
>> > Thanks by working on this. Bellow my comments ...
>> >
>> > ...
>> >> diff --git a/meta-oe/recipes-support/maliit/maliit-framework_git.bbb/meta-oe/recipes-support/maliit/
>> maliit-framework_git.bb
>> >> new file mode 100644
>> >> index 0000000..3f50d1b
>> >> --- /dev/null
>> >> +++ b/meta-oe/recipes-support/maliit/maliit-framework_git.bb
>> > ...
>> >> +
>> >> +# Maliit needs Qt configured with -accessibility, a patch for that was
>> already sent and will get merged in post 1.2.
>> >> +RDEPENDS_${PN} = "qt4-plugin-inputmethod-imsw-multi libqtsvg4"
>> >
>> > In this case, maliit is a post 1.2 package.
>> >
>> > ...
>> >> +EXTRA_QMAKEVARS_PRE = "\
>> >> +    PREFIX=${prefix} \
>> >> +    LIBDIR=${libdir} \
>> >> +    QT_IM_PLUGIN_PATH=${libdir}/qt4/plugins/inputmethods \
>> >> +    MALIIT_INSTALL_PRF=${datadir}/qt4/mkspecs/features \
>> >> +    SCHEMADIR=${sysconfdir}/gconf/schemas \
>> >> +    CONFIG+=disable-gconf \
>> >> +    CONFIG+=disable-gtk-cache-update \
>> >> +    CONFIG+=local-install \
>> >> +    "
>> >
>> > Really need to disable gtk-cache-update? Why?
>>
>> This option is for packaging, it disables running gtk-query-immodules
>> on the build-host
>>
>
> Are you sure it is about gtk-query-immodules, it seemed to be icon-cache
> related from  the option name.

It looks similar to existing options, but the Qt project file explains it:
http://gitorious.org/maliit/maliit-framework/blobs/master/maliit-framework.pro#line23

What it exactly does depends on the gtk version:
http://gitorious.org/maliit/maliit-framework/blobs/master/gtk-input-context/client-gtk/client-gtk.pro#line40
and
http://gitorious.org/maliit/maliit-framework/blobs/master/gtk-input-context/client-gtk3/client-gtk3.pro#line40

>
>
>>
>> >
>> > ...
>> >> +# Update the inputmethod modules in gtk
>> >> +pkg_postinst_${PN}-gtk() {
>> >> +if [ "x$D" != "x" ]; then
>> >> +    exit 1
>> >> +fi
>> >> +gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
>> >> +}
>> >> +
>> >> +pkg_postrm_${PN}-gtk() {
>> >> +if [ "x$D" != "x" ]; then
>> >> +    exit 1
>> >> +fi
>> >> +gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
>> >> +}
>> >
>> > You might add a gtk-immodules.bbclass to allow it to be put out of the
>> recipe.
>>
>> FYI: I have a class for this, but the only other recipe using
>> gtk-query-immodules is
>> openembedded-core/meta/recipes-sato/matchbox-keyboard/
>> matchbox-keyboard_git.bb
>> Should I send a patch with the .bbclass to oe-core?
>>
>
> I think so. It is easier to read and avoid code duplication.

Will do.

>
>
>>
>> >
>> > As said by Martin, please read the README and follow the steps to send
>> > the patch...
>>
>> Seems to be a classic case of -ENOCOFFEEYET
>>
>> Will re-send with the right prefix
>>
>
> hehe, right ...
>
> Take a double expresso coffee and try again ;-)
>
> --
> Otavio Salvador                             O.S. Systems
> E-mail: otavio@ossystems.com.br  http://www.ossystems.com.br
> Mobile: +55 53 9981-7854              http://projetos.ossystems.com.br
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel