diff options
Diffstat (limited to 'meta-gnome/recipes-support/ibus')
5 files changed, 315 insertions, 0 deletions
diff --git a/meta-gnome/recipes-support/ibus/ibus-native.bb b/meta-gnome/recipes-support/ibus/ibus-native.bb new file mode 100644 index 0000000000..ca65114c4d --- /dev/null +++ b/meta-gnome/recipes-support/ibus/ibus-native.bb @@ -0,0 +1,34 @@ +require ${BPN}.inc + +inherit native + +DEPENDS += " \ + glib-2.0-native \ + dbus-native \ + iso-codes \ +" + +PACKAGECONFIG = "" + +# for allarch iso-codes +EXTRA_NATIVE_PKGCONFIG_PATH = ":${RECIPE_SYSROOT}${datadir_native}/pkgconfig" +# for allarch unicode-ucd - just to make configure happy +EXTRA_OECONF += "--with-ucd-dir=${RECIPE_SYSROOT}${datadir_native}/unicode/ucd" + +do_compile() { + cd src + # seems by moving to src we break dependency tracking so build what's + # necessary step by step + oe_runmake ibusenumtypes.h + oe_runmake ibusmarshalers.h + oe_runmake ibusenumtypes.c + oe_runmake unicode-parser +} + +do_install() { + install -d ${D}/${libdir} + install -m 755 ${S}/src/.libs/libibus-*.so* ${D}/${libdir} + + install -d ${D}/${bindir} + install -m 755 ${S}/src/.libs/unicode-parser ${D}/${bindir} +} diff --git a/meta-gnome/recipes-support/ibus/ibus.bb b/meta-gnome/recipes-support/ibus/ibus.bb new file mode 100644 index 0000000000..141341e341 --- /dev/null +++ b/meta-gnome/recipes-support/ibus/ibus.bb @@ -0,0 +1,41 @@ +require ${BPN}.inc + +DEPENDS += " \ + ${BPN}-native \ + glib-2.0-native \ + glib-2.0 \ + dbus \ + iso-codes \ +" + +inherit gtk-icon-cache bash-completion features_check + +# for unicode-ucd +EXTRA_OECONF += "--with-ucd-dir=${STAGING_DATADIR}/unicode/ucd" + +PACKAGECONFIG ??= " \ + dconf vala \ + ${@bb.utils.contains_any('DISTRO_FEATURES', [ 'wayland', 'x11' ], 'gtk3 gtk4', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'systemd wayland x11', d)} \ +" + +REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('PACKAGECONFIG', 'gtk4', 'opengl', '', d)}" + +do_configure:prepend() { + # run native unicode-parser + sed -i 's:$(builddir)/unicode-parser:unicode-parser:g' ${S}/src/Makefile.am +} + +FILES:${PN} += " \ + ${datadir}/dbus-1 \ + ${datadir}/GConf \ + ${datadir}/glib-2.0 \ + ${libdir}/gtk-3.0 \ + ${libdir}/gtk-4.0 \ + ${systemd_user_unitdir} \ +" + +FILES:${PN}-dev += " \ + ${datadir}/gettext \ +" +RDEPENDS:${PN} += "python3-core" diff --git a/meta-gnome/recipes-support/ibus/ibus.inc b/meta-gnome/recipes-support/ibus/ibus.inc new file mode 100644 index 0000000000..9d0600c794 --- /dev/null +++ b/meta-gnome/recipes-support/ibus/ibus.inc @@ -0,0 +1,42 @@ +SUMMARY = "Intelligent Input Bus for Linux/Unix" +HOMEPAGE = "https://github.com/ibus/ibus/wiki" +LICENSE = "LGPL-2.1-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24" + +inherit autotools-brokensep pkgconfig gobject-introspection gettext gtk-doc vala + +PV = "1.5.26" + +DEPENDS = "unicode-ucd" + +SRC_URI = " \ + git://github.com/ibus/ibus.git;branch=main;protocol=https \ + file://0001-Do-not-try-to-start-dbus-we-do-not-have-dbus-lauch.patch \ + file://0001-makefile-don-t-gzip-the-man-pages.patch \ +" +SRCREV = "6a70ab0338206bd1c7d01a4e1874ea0ee5b3a9d3" +S = "${WORKDIR}/git" + +PACKAGECONFIG[appindicator] = "--enable-appindicator,--disable-appindicator,qtbase" +PACKAGECONFIG[dconf] = "--enable-dconf,--disable-dconf,dconf" +PACKAGECONFIG[gtk2] = "--enable-gtk2,--disable-gtk2,gtk+" +PACKAGECONFIG[gtk3] = "--enable-gtk3,--disable-gtk3,gtk+3" +PACKAGECONFIG[gtk4] = "--enable-gtk4,--disable-gtk4,gtk4" +PACKAGECONFIG[systemd] = "--enable-systemd-services,--disable-systemd-services,systemd" +PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland" +PACKAGECONFIG[vala] = "--enable-vala,--disable-vala" +PACKAGECONFIG[x11] = "--enable-xim --enable-ui,--disable-xim --disable-ui,virtual/libx11" + +EXTRA_OECONF = " \ + --disable-tests \ + --disable-emoji-dict \ + --disable-python2 \ +" +EXTRA_OECONF:append:class-target = "\ + --with-python=${bindir}/python3 \ +" + +do_configure:prepend() { + touch ${S}/ChangeLog + touch ${S}/ABOUT-NLS +} diff --git a/meta-gnome/recipes-support/ibus/ibus/0001-Do-not-try-to-start-dbus-we-do-not-have-dbus-lauch.patch b/meta-gnome/recipes-support/ibus/ibus/0001-Do-not-try-to-start-dbus-we-do-not-have-dbus-lauch.patch new file mode 100644 index 0000000000..aec9e7abec --- /dev/null +++ b/meta-gnome/recipes-support/ibus/ibus/0001-Do-not-try-to-start-dbus-we-do-not-have-dbus-lauch.patch @@ -0,0 +1,34 @@ +From f567bcbc2108d722faa90afeb03d3a3bcdf5f58b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com> +Date: Fri, 10 May 2019 14:30:08 +0200 +Subject: [PATCH] Do not try to start dbus - we do not have dbus-lauch +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Upstream-Status: Inappropriate [OE specific] + +Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> +--- + data/dconf/make-dconf-override-db.sh | 6 ------ + 1 file changed, 6 deletions(-) + +--- a/data/dconf/make-dconf-override-db.sh ++++ b/data/dconf/make-dconf-override-db.sh +@@ -12,10 +12,6 @@ export XDG_CACHE_HOME="$TMPDIR/cache" + export GSETTINGS_SCHEMA_DIR="$TMPDIR/schemas" + mkdir -p $XDG_CONFIG_HOME $XDG_CACHE_HOME $GSETTINGS_SCHEMA_DIR + +-eval `dbus-launch --sh-syntax` +- +-trap 'rm -rf $TMPDIR; kill $DBUS_SESSION_BUS_PID' ERR +- + # in case that schema is not installed on the system + glib-compile-schemas --targetdir "$GSETTINGS_SCHEMA_DIR" "$PWD" + +@@ -52,5 +48,3 @@ if [ -d $TMPDIR/cache/gvfs ] ; then + umount $TMPDIR/cache/gvfs + fi + rm -rf $TMPDIR +- +-kill $DBUS_SESSION_BUS_PID diff --git a/meta-gnome/recipes-support/ibus/ibus/0001-makefile-don-t-gzip-the-man-pages.patch b/meta-gnome/recipes-support/ibus/ibus/0001-makefile-don-t-gzip-the-man-pages.patch new file mode 100644 index 0000000000..105e34873a --- /dev/null +++ b/meta-gnome/recipes-support/ibus/ibus/0001-makefile-don-t-gzip-the-man-pages.patch @@ -0,0 +1,164 @@ +From 5307c3b310fabeaa52fafe743c5efaca73ccce46 Mon Sep 17 00:00:00 2001 +From: Emil Velikov <emil.l.velikov@gmail.com> +Date: Sun, 11 Jun 2023 16:16:35 +0900 +Subject: [PATCH] makefile: don't gzip the man pages + +Drop the gzip step from the manpages - distributions already do that as +needed. In addition this resolves the final reproducibility issue with +ibus. + +BUG=https://github.com/ibus/ibus/pull/2514 + +Upstream-Status: Backport [https://github.com/ibus/ibus/commit/1a25975d9f55f18eab609e4d147dd32689e367f3] +Note: This commit is included in version >= 1.5.29 and can be dropped +after upgrading. +Signed-off-by: Yoann Congal <yoann.congal@smile.fr> +--- + bus/Makefile.am | 6 +----- + data/dconf/Makefile.am | 6 +----- + setup/Makefile.am | 6 +----- + tools/Makefile.am | 6 +----- + ui/gtk3/Makefile.am | 6 +----- + 5 files changed, 5 insertions(+), 25 deletions(-) + +diff --git a/bus/Makefile.am b/bus/Makefile.am +index e173ee25..d0445d02 100644 +--- a/bus/Makefile.am ++++ b/bus/Makefile.am +@@ -169,7 +169,6 @@ EXTRA_DIST = \ + + CLEANFILES = \ + $(man_one_DATA) \ +- $(man_one_files) \ + $(NULL) + + $(libibus): +@@ -181,14 +180,11 @@ test: ibus-daemon + $(builddir)/ibus-daemon -v + + man_one_in_files = ibus-daemon.1.in +-man_one_files = $(man_one_in_files:.1.in=.1) +-man_one_DATA =$(man_one_files:.1=.1.gz) ++man_one_DATA = $(man_one_in_files:.1.in=.1) + man_onedir = $(mandir)/man1 + %.1: %.1.in + $(AM_V_GEN) sed \ + -e 's|@VERSION[@]|$(VERSION)|g' $< > $@.tmp && \ + mv $@.tmp $@ +-%.1.gz: %.1 +- $(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@ + + -include $(top_srcdir)/git.mk +diff --git a/data/dconf/Makefile.am b/data/dconf/Makefile.am +index 5360f033..2352f770 100644 +--- a/data/dconf/Makefile.am ++++ b/data/dconf/Makefile.am +@@ -38,15 +38,12 @@ dconfdb_DATA = 00-upstream-settings + { rc=$$?; $(RM) -rf $@; exit $$rc; } + + man_5_in_files = 00-upstream-settings.5.in ibus.5.in +-man_5_files = $(man_5_in_files:.5.in=.5) +-man_5_DATA =$(man_5_files:.5=.5.gz) ++man_5_DATA = $(man_5_in_files:.5.in=.5) + man_5dir = $(mandir)/man5 + %.5: %.5.in + $(AM_V_GEN) sed \ + -e 's|@VERSION[@]|$(VERSION)|g' $< > $@.tmp && \ + mv $@.tmp $@ +-%.5.gz: %.5 +- $(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@ + + install-data-hook: + if test -z "$(DESTDIR)"; then \ +@@ -63,7 +60,6 @@ EXTRA_DIST = \ + + CLEANFILES = \ + $(man_5_DATA) \ +- $(man_5_files) \ + $(NULL) + + MAINTAINERCLEANFILES = \ +diff --git a/setup/Makefile.am b/setup/Makefile.am +index 34c8f136..b34aa8fc 100644 +--- a/setup/Makefile.am ++++ b/setup/Makefile.am +@@ -56,20 +56,16 @@ org.freedesktop.IBus.Setup.desktop: ibus-setup.desktop + $(AM_V_GEN) $(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@ + + man_one_in_files = ibus-setup.1.in +-man_one_files = $(man_one_in_files:.1.in=.1) +-man_one_DATA =$(man_one_files:.1=.1.gz) ++man_one_DATA = $(man_one_in_files:.1.in=.1) + man_onedir = $(mandir)/man1 + %.1: %.1.in + $(AM_V_GEN) sed \ + -e 's|@VERSION[@]|$(VERSION)|g' $< > $@.tmp && \ + mv $@.tmp $@ +-%.1.gz: %.1 +- $(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@ + + CLEANFILES = \ + $(desktop_DATA) \ + $(man_one_DATA) \ +- $(man_one_files) \ + *.pyc \ + ibus-setup \ + $(NULL) +diff --git a/tools/Makefile.am b/tools/Makefile.am +index 5c18d3d6..1c716136 100644 +--- a/tools/Makefile.am ++++ b/tools/Makefile.am +@@ -79,15 +79,12 @@ bash_completion_DATA= \ + bash_completiondir=@datadir@/bash-completion/completions + + man_one_in_files = ibus.1.in +-man_one_files = $(man_one_in_files:.1.in=.1) +-man_one_DATA =$(man_one_files:.1=.1.gz) ++man_one_DATA = $(man_one_in_files:.1.in=.1) + man_onedir = $(mandir)/man1 + %.1: %.1.in + $(AM_V_GEN) sed \ + -e 's|@VERSION[@]|$(VERSION)|g' $< > $@.tmp && \ + mv $@.tmp $@ +-%.1.gz: %.1 +- $(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@ + + EXTRA_DIST = \ + $(man_one_in_files) \ +@@ -96,7 +93,6 @@ EXTRA_DIST = \ + + CLEANFILES = \ + $(man_one_DATA) \ +- $(man_one_files) \ + $(NULL) + + if ENABLE_EMOJI_DICT +diff --git a/ui/gtk3/Makefile.am b/ui/gtk3/Makefile.am +index ab379328..aff035da 100644 +--- a/ui/gtk3/Makefile.am ++++ b/ui/gtk3/Makefile.am +@@ -242,15 +242,12 @@ panelbinding.o: $(srcdir)/panelbinding.c + + MAINTAINERCLEANFILES += extension.c panelbinding.c + +-man_seven_files = $(man_seven_in_files:.7.in=.7) +-man_seven_DATA =$(man_seven_files:.7=.7.gz) ++man_seven_DATA = $(man_seven_in_files:.7.in=.7) + man_sevendir = $(mandir)/man7 + %.7: %.7.in + $(AM_V_GEN) sed \ + -e 's|@VERSION[@]|$(VERSION)|g' $< > $@.tmp && \ + mv $@.tmp $@ +-%.7.gz: %.7 +- $(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@ + + desktop_in_files = \ + ibus-ui-emojier.desktop.in \ +@@ -278,7 +275,6 @@ CLEANFILES += \ + $(desktop_DATA) \ + $(desktop_notrans_files) \ + $(man_seven_DATA) \ +- $(man_seven_files) \ + $(NULL) + + endif |