[oe] [meta-openembedded][PATCH 2/6] ibus: add ibus recipe

Khem Raj raj.khem at gmail.com
Sat Nov 10 01:11:27 UTC 2018


This is failing
http://errors.yoctoproject.org/Errors/Details/199681/

It seems its including both py3 and py2 version of pygobject and there
are conflicting files in these two
I am adding Changqing touched this recipe last time so looking for
some more info on that.
On Fri, Nov 9, 2018 at 5:15 AM Pablo Saavedra <psaavedra at igalia.com> wrote:
>
> Intelligent Input Bus for Linux/Unix https://github.com/ibus/ibus/wiki
>
> Collision with: https://patchwork.openembedded.org/patch/155947/
> ---
>  meta-oe/recipes-support/ibus/ibus_1.5.19.bb | 97 +++++++++++++++++++++++++++++
>  1 file changed, 97 insertions(+)
>  create mode 100644 meta-oe/recipes-support/ibus/ibus_1.5.19.bb
>
> diff --git a/meta-oe/recipes-support/ibus/ibus_1.5.19.bb b/meta-oe/recipes-support/ibus/ibus_1.5.19.bb
> new file mode 100644
> index 000000000..598629344
> --- /dev/null
> +++ b/meta-oe/recipes-support/ibus/ibus_1.5.19.bb
> @@ -0,0 +1,97 @@
> +DESCRIPTION = "A multilingual user input method library"
> +LICENSE = "GPLv2"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
> +SECTION = "inputmethods"
> +
> +SRC_URI = "https://github.com/ibus/ibus/releases/download/${PV}/${PN}-${PV}.tar.gz \
> +          "
> +SRC_URI[md5sum] = "a2be6f200dd9ada2501474a6877a73ef"
> +SRC_URI[sha256sum] = "4b66c798dab093f0fa738e5c10688d395a463287d13678c208a81051af5d2429"
> +
> +inherit autotools pkgconfig gettext gtk-immodules-cache gobject-introspection gtk-doc gtk-icon-cache gsettings
> +
> +REQUIRED_DISTRO_FEATURES = "x11"
> +
> +DEPENDS = " intltool dbus-glib python3-dbus iso-codes dconf libnotify python-pygobject python3-pygobject adwaita-icon-theme librsvg"
> +DEPENDS_append_class-target = " intltool-native python3-pygobject-native"
> +RDEPENDS_${PN} += " iso-codes adwaita-icon-theme librsvg-gtk"
> +
> +PACKAGECONFIG[gtk+] = ",--disable-gtk2,gtk+,gtk+"
> +PACKAGECONFIG[gtk+3] = ",--disable-gtk3,gtk+3,gtk+3"
> +PACKAGECONFIG[wayland] = "--enable-wayland,,wayland,wayland"
> +
> +PACKAGECONFIG ?= "gtk+ gtk+3"
> +PACKAGECONFIG += "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)}"
> +
> +GTKIMMODULES_PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'gtk+', 'ibus-gtk2.0', '', d)}"
> +GTKIMMODULES_PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'gtk+3', 'ibus-gtk3', '', d)}"
> +
> +EXTRA_OECONF += " \
> +    --disable-emoji-dict \
> +    --disable-unicode-dict \
> +"
> +
> +BBCLASSEXTEND = "native pythonnative"

pythonnative does not belong here. It should probably be in inherit
and it should be
python3native since below the recipe seems to set PYTHON=python3

> +
> +FILES_${PN} += " \
> +    ${sysconfdir}/dconf/profile \
> +    ${sysconfdir}/dconf/db/ibus.d/00-upstream-settings \
> +    ${sysconfdir}/dconf/profile/ibus \
> +    ${libdir}/libibus-1.0.so.5.0.518 \
> +    ${libdir}/libibus-1.0.so.5 \
> +    ${libdir}/gtk-?.?/*/immodules/im-ibus.so \
> +    ${bindir}/ibus \
> +    ${bindir}/ibus-setup \
> +    ${bindir}/ibus-daemon \
> +    ${datadir}/ibus/engine \
> +    ${datadir}/ibus/component \
> +    ${datadir}/ibus/setup \
> +    ${datadir}/ibus/component/gtkpanel.xml \
> +    ${datadir}/ibus/component/simple.xml \
> +    ${datadir}/ibus/component/dconf.xml \
> +    ${datadir}/ibus/setup/emojilang.py \
> +    ${datadir}/ibus/setup/main.py \
> +    ${datadir}/ibus/setup/enginecombobox.py \
> +    ${datadir}/ibus/setup/setup.ui \
> +    ${datadir}/ibus/setup/enginedialog.py \
> +    ${datadir}/ibus/setup/i18n.py \
> +    ${datadir}/ibus/setup/engineabout.py \
> +    ${datadir}/ibus/setup/icon.py \
> +    ${datadir}/ibus/setup/keyboardshortcut.py \
> +    ${datadir}/ibus/setup/enginetreeview.py \
> +    ${datadir}/ibus/keymaps/jp \
> +    ${datadir}/ibus/keymaps/kr \
> +    ${datadir}/ibus/keymaps/common \
> +    ${datadir}/ibus/keymaps/modifiers \
> +    ${datadir}/ibus/keymaps/us \
> +    ${datadir}/ibus/keymaps/in \
> +    ${datadir}/applications/ibus-setup.desktop \
> +    ${datadir}/dbus-1/services/org.freedesktop.IBus.service \
> +    ${datadir}/dbus-1/services/org.freedesktop.portal.IBus.service \
> +    ${datadir}/vala/vapi/ibus-1.0.vapi \
> +    ${datadir}/vala/vapi/ibus-1.0.deps \
> +    ${libexecdir}/ibus-engine-simple \
> +    ${libexecdir}/ibus-portal \
> +    ${libexecdir}/ibus-dconf \
> +    ${libexecdir}/ibus-x11 \
> +    ${libexecdir}/ibus-ui-gtk3 \
> +    ${datadir}/GConf/gsettings/ibus.convert \
> +    ${datadir}/glib-2.0/schemas/org.freedesktop.ibus.gschema.xml \
> +    ${datadir}/bash-completion/* \
> +    ${datadir}/icons/* \
> +    ${libdir}/python?.?/????-packages/gi/overrides/IBus.py \
> +    ${libdir}/python?.?/????-packages/gi/overrides/IBus.py? \
> +"

may be we can just package directories and avoid this long list.

> +
> +do_configure_prepend() {
> +    export PYTHON=python3
> +}
> +
> +do_install_append() {
> +  # Fix the installation path of the GObject Inspection overrides for Python3
> +  python_version=$(python3 -c 'import sys; print("%s.%s" % (sys.version_info.major, sys.version_info.minor))')
> +  mkdir -p ${D}/usr/lib/python${python_version}/site-packages/gi/overrides
> +  mv ${D}/${RECIPE_SYSROOT_NATIVE}/usr/lib/python${python_version}/site-packages/gi/overrides/IBus.py ${D}/usr/lib/python${python_version}/site-packages/gi/overrides/

why do we need to move files from native sysroot in here ? arent they
available in build area or staging
area for build ?

> +  rm -rf ${D}/${RECIPE_SYSROOT_NATIVE}/usr/lib/python${python_version}/site-packages/gi/overrides
> +  find ${D} -type d -empty -delete

dealing with native sysroot and deleting files does not look right here.

> +}
> --
> 2.11.0
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


More information about the Openembedded-devel mailing list