Created attachment 265730 [details] Patch to update textproc/ibus - Update to 1.5.33 - Adjust dependencies Note: successful build without APPINDICATOR option
Maintainer?
This looks good, and I've tested it under wayland - it works. Let me run it under poudriere.
Poudriere passed on 15.0. Please commit, thanks.
If there is some special meaning to this: LIB_DEPENDS= libdbus-1.so:devel/dbus GTK3_LIB_DEPENDS= libdbus-1.so:devel/dbus \ or is it just how it happened historically?
(In reply to Vladimir Druzenko from comment #4) Doing a bit investigation, it's quite strange. ibus itself uses dbus for communication between components. However, it does not seem to use dbus library directly; instead it uses gio for its dbus implementation (https://docs.gtk.org/gio/class.DBusConnection.html). We possibly can remove the dbus dependency in LIB_DEPENDS. If GTK3 is enabled, ibus builds the GTK3 UI; the GTK3 UI indirectly links to dbus library (libgtk-3 > libatk-bridge-2.0 > libdbus-1). From correctness perspective, this dependency should be removed as well (as ibus does not depend on that either). Let me try to do a new poudriere run without these deps.
(In reply to Henry Hu from comment #5) no, the GTK3 immodule links with dbus directly. also, ibus's configure still explicitly tries to find dbus. The found dbus is linked explicitly with im modules: > ack DBUS_CFLAGS | grep Makefile.am client/gtk2/Makefile.am:45: @DBUS_CFLAGS@ \ client/x11/Makefile.am:59: @DBUS_CFLAGS@ \ client/gtk4/Makefile.am:45: @DBUS_CFLAGS@ \ client/gtk3/Makefile.am:45: @DBUS_CFLAGS@ \ docs/reference/ibus/Makefile.am:105: @DBUS_CFLAGS@ \ src/tests/Makefile.am:272:ibus_share_CFLAGS = @DBUS_CFLAGS@ For simplicity, maybe just remove the one from GTK3 (and keep the LIB_DEPENDS one). Practically it possibly does not matter - dbus gets installed one way or the other. If we want to be precise, then we should conditionally depend on it, if any of the gtk options is enabled.
Build fails with all options OFF: main.c:37:10: fatal error: 'wayland-client.h' file not found 37 | #include <wayland-client.h> | ^~~~~~~~~~~~~~~~~~ 1 error generated. gmake[3]: *** [Makefile:784: main.o] Error 1 gmake[3]: *** Waiting for unfinished jobs.... mv -f .deps/krcfile.Tpo .deps/krcfile.Po gmake[3]: Leaving directory '/wrkdirs/usr/ports/textproc/ibus/work/ibus-1.5.33/tools' gmake[2]: *** [Makefile:671: all] Error 2
With option WAYLAND=ON only: gmake[3]: Entering directory '/wrkdirs/usr/ports/textproc/ibus/work/ibus-1.5.33/client/wayland' gmake[3]: *** No rule to make target '/usr/share/wayland-protocols/unstable/input-method/input-method-unstable-v1.xml', needed by 'input-method-unstable-v1-protocol.c'. Stop. gmake[3]: Leaving directory '/wrkdirs/usr/ports/textproc/ibus/work/ibus-1.5.33/client/wayland' gmake[2]: *** [Makefile:558: all-recursive] Error 1
With XIM=OFF: ====> Checking for pkg-plist issues (check-plist) ===> Parsing plist ===> Checking for items in STAGEDIR missing from pkg-plist ===> Checking for items in pkg-plist which are not in STAGEDIR Error: Missing: etc/xdg/Xwayland-session.d/10-ibus-x11 ===> Error: Plist issues found. *** Error code 1
With EMOJI=OFF: ====> Checking for pkg-plist issues (check-plist) ===> Parsing plist ===> Checking for items in STAGEDIR missing from pkg-plist ===> Checking for items in pkg-plist which are not in STAGEDIR Error: Missing: libexec/ibus-extension-gtk3 Error: Missing: share/applications/org.freedesktop.IBus.Panel.Extension.Gtk3.desktop Error: Missing: %%DATADIR%%/component/gtkextension.xml ===> Error: Plist issues found. *** Error code 1
With GINTRO=OFF: gmake[3]: *** No rule to make target '../../client/wayland/libibuswaylandim.la', needed by 'ibus-ui-gtk3'. Stop. gmake[3]: *** Waiting for unfinished jobs....
With GTK3=OFF: ld: error: undefined symbol: XConvertCase >>> referenced by test-client.c >>> test_stress-test-client.o:(bus_test_client_send_key) ld: error: undefined symbol: XKeysymToKeycode >>> referenced by test-client.c >>> test_stress-test-client.o:(bus_test_client_send_key) >>> referenced by test-client.c >>> test_stress-test-client.o:(bus_test_client_send_key) >>> referenced by test-client.c >>> test_stress-test-client.o:(bus_test_client_send_key) ld: error: undefined symbol: XOpenDisplay >>> referenced by test-client.c >>> test_stress-test-client.o:(bus_test_client_class_intern_init) ld: error: undefined symbol: XDisplayString >>> referenced by test-client.c >>> test_stress-test-client.o:(bus_test_client_class_intern_init) cc: error: linker command failed with exit code 1 (use -v to see invocation) gmake[4]: *** [Makefile:1041: test-stress] Error 1 gmake[4]: Leaving directory '/wrkdirs/usr/ports/textproc/ibus/work/ibus-1.5.33/bus' gmake[3]: *** [Makefile:1531: all-recursive] Error 1 gmake[3]: Leaving directory '/wrkdirs/usr/ports/textproc/ibus/work/ibus-1.5.33/bus' gmake[2]: *** [Makefile:947: all] Error 2 gmake[2]: Leaving directory '/wrkdirs/usr/ports/textproc/ibus/work/ibus-1.5.33/bus' gmake[1]: *** [Makefile:726: all-recursive] Error 1 gmake[1]: Leaving directory '/wrkdirs/usr/ports/textproc/ibus/work/ibus-1.5.33' gmake: *** [Makefile:633: all] Error 2 ===> Compilation failed unexpectedly.
With GTK4=OFF: gmake[3]: Entering directory '/wrkdirs/usr/ports/textproc/ibus/work/ibus-1.5.33/client/wayland' gmake[3]: *** No rule to make target '/usr/share/wayland-protocols/unstable/input-method/input-method-unstable-v1.xml', needed by 'input-method-unstable-v1-protocol.c'. Stop. gmake[3]: Leaving directory '/wrkdirs/usr/ports/textproc/ibus/work/ibus-1.5.33/client/wayland' gmake[2]: *** [Makefile:558: all-recursive] Error 1
Required options for build: GINTRO GTK3 GTK4 WAYLAND. XIM=OFF and EMOJI=OFF fixed by patch: --- a/textproc/ibus/pkg-plist +++ b/textproc/ibus/pkg-plist @@ -2,12 +2,13 @@ bin/ibus bin/ibus-daemon bin/ibus-setup etc/xdg/autostart/ibus.desktop -etc/xdg/Xwayland-session.d/10-ibus-x11 +%%XIM%%etc/xdg/Xwayland-session.d/10-ibus-x11 %%DCONF%%etc/dconf/db/ibus.d/00-upstream-settings %%DCONF%%share/man/man5/00-upstream-settings.5.gz %%DCONF%%@postunexec rm -f %D/etc/dconf/db/ibus %%DCONF%%@postexec dconf update %%DCONF%%etc/dconf/profile/ibus +include/ibus-1.0/ibus-visibility.h include/ibus-1.0/ibus.h include/ibus-1.0/ibusaccelgroup.h include/ibus-1.0/ibusattribute.h @@ -31,6 +32,7 @@ include/ibus-1.0/ibuskeys.h include/ibus-1.0/ibuskeysyms-compat.h include/ibus-1.0/ibuskeysyms.h include/ibus-1.0/ibuslookuptable.h +include/ibus-1.0/ibusmessage.h include/ibus-1.0/ibusobject.h include/ibus-1.0/ibusobservedpath.h include/ibus-1.0/ibuspanelservice.h @@ -59,9 +61,9 @@ include/ibus-1.0/ibusxml.h %%GTK4%%lib/gtk-4.0/4.0.0/immodules/libim-ibus.so lib/libibus-1.0.so lib/libibus-1.0.so.5 -lib/libibus-1.0.so.5.0.532 +lib/libibus-1.0.so.5.0.533 libdata/pkgconfig/ibus-1.0.pc -%%GTK3%%libexec/ibus-extension-gtk3 +%%GTK3%%%%EMOJI%%libexec/ibus-extension-gtk3 %%GTK3%%libexec/ibus-ui-gtk3 %%XIM%%libexec/ibus-x11 %%DCONF%%libexec/ibus-dconf @@ -76,7 +78,7 @@ share/man/man1/ibus.1.gz %%EMOJI%%share/man/man7/ibus-emoji.7.gz share/applications/org.freedesktop.IBus.Setup.desktop %%EMOJI%%share/applications/org.freedesktop.IBus.Panel.Emojier.desktop -%%GTK3%%share/applications/org.freedesktop.IBus.Panel.Extension.Gtk3.desktop +%%GTK3%%%%EMOJI%%share/applications/org.freedesktop.IBus.Panel.Extension.Gtk3.desktop %%GTK3%%share/applications/org.freedesktop.IBus.Panel.Wayland.Gtk3.desktop share/dbus-1/services/org.freedesktop.IBus.service share/dbus-1/services/org.freedesktop.portal.IBus.service @@ -132,7 +134,7 @@ share/dbus-1/services/org.freedesktop.portal.IBus.service %%PORTDOCS%%%%DOCSDIR%%/style.css %%PORTDOCS%%%%DOCSDIR%%/up-insensitive.png %%PORTDOCS%%%%DOCSDIR%%/up.png -%%GTK3%%%%DATADIR%%/component/gtkextension.xml +%%GTK3%%%%EMOJI%%%%DATADIR%%/component/gtkextension.xml %%GTK3%%%%DATADIR%%/component/gtkpanel.xml %%DCONF%%%%DATADIR%%/component/dconf.xml %%ENGINE%%%%DATADIR%%/component/simple.xml
GTK3=OFF partially fixed by: +LDFLAGS+= -lX11 But after this change (with GTK3=OFF): libtool: link: /usr/bin/nm .libs/libibus_1_0_la-ibuscomposetable.o .libs/libibus_1_0_la-ibusenumtypes.o .libs/libibus_1_0_la-ibusmarshalers.o .libs/libibus_1_0_la-ibusresources.o .libs/libibus_1_0_la-ibusaccelgroup.o .libs/libibus_1_0_la-ibusattribute.o .libs/libibus_1_0_la-ibusattrlist.o .libs/libibus_1_0_la-ibusbus.o .libs/libibus_1_0_la-ibuscomponent.o .libs/libibus_1_0_la-ibusconfig.o .libs/libibus_1_0_la-ibusconfigservice.o .libs/libibus_1_0_la-ibusemoji.o .libs/libibus_1_0_la-ibusengine.o .libs/libibus_1_0_la-ibusenginedesc.o .libs/libibus_1_0_la-ibusenginesimple.o .libs/libibus_1_0_la-ibuserror.o .libs/libibus_1_0_la-ibusfactory.o .libs/libibus_1_0_la-ibushotkey.o .libs/libibus_1_0_la-ibusinputcontext.o .libs/libibus_1_0_la-ibuskeymap.o .libs/libibus_1_0_la-ibuskeys.o .libs/libibus_1_0_la-ibuskeyuni.o .libs/libibus_1_0_la-ibuslookuptable.o .libs/libibus_1_0_la-ibusmessage.o .libs/libibus_1_0_la-ibusobject.o .libs/libibus_1_0_la-ibusobservedpath.o .libs/libibus_1_0_la-ibuspanelservice.o .libs/libibus_1_0_la-ibusproperty.o .libs/libibus_1_0_la-ibusproplist.o .libs/libibus_1_0_la-ibusproxy.o .libs/libibus_1_0_la-ibusregistry.o .libs/libibus_1_0_la-ibusserializable.o .libs/libibus_1_0_la-ibusservice.o .libs/libibus_1_0_la-ibusshare.o .libs/libibus_1_0_la-ibustext.o .libs/libibus_1_0_la-ibusunicode.o .libs/libibus_1_0_la-ibusutil.o .libs/libibus_1_0_la-ibusxevent.o .libs/libibus_1_0_la-ibusxml.o | | /usr/bin/sed 's/.* //' | sort | uniq > .libs/libibus-1.0.exp eval: 1: Syntax error: "|" unexpected gmake[4]: *** [Makefile:1261: libibus-1.0.la] Error 2 gmake[4]: Leaving directory '/wrkdirs/usr/ports/textproc/ibus/work/ibus-1.5.33/src' Look at this part: > .libs/libibus_1_0_la-ibusxml.o | | /usr/bin/sed 's/.* //' | sort | uniq > .libs/libibus-1.0.exp
(In reply to Vladimir Druzenko from comment #7) Ah, seems like that we need to also clean tools dir in post-configure. Basically the main.c needs to be re-generated if wayland is disabled. However, using maintainer-clean-generic does not work properly - it removes another file (ibus-immodule-1.0.vapi) as well, but it didn't declare it as a dependency of main.c. Filed https://github.com/ibus/ibus/issues/2836, but for now we can just remove main.c and have it regenerated. Once that's cleaned, another issue is that the x11 libs are only found & set if xim is enabled - although some other stuff (tests) also rely on x11 libs. Created a new flag, TESTS, and made it implies XIM and other flags. Once that's fixed, it seems like that its test tries to use a gtk4 function, even if we only enable gtk3. Made TESTS imply GTK4. Filed https://github.com/ibus/ibus/issues/2837. re. 'Error: Missing: etc/xdg/Xwayland-session.d/10-ibus-x11': This should be controlled by %%XIM%% However, honestly this should be controlled with %%WAYLAND%% as well. But the port installs this file even if wayland is disabled.. re. Error: Missing: libexec/ibus-extension-gtk3 Error: Missing: share/applications/org.freedesktop.IBus.Panel.Extension.Gtk3.desktop These should be controlled by %%EMOJI%% re. /usr/share/wayland-protocols/unstable/input-method/input-method-unstable-v1.xml: added wayland-protocols to WAYLAND_BUILD_DEPENDS btw do you have a good way of testing different option combinations? Can we run a series of poudriere builds with different options?
Can you try the following patch. I've tried it in poudriere with * GTK3 only * GTK4 only * WAYLAND only * default options * TESTS only diff -ruN /usr/ports/textproc/ibus/Makefile ./Makefile --- /usr/ports/textproc/ibus/Makefile 2025-07-14 22:31:07.593841000 -0400 +++ ./Makefile 2025-12-06 22:43:47.584947000 -0500 @@ -1,5 +1,5 @@ PORTNAME= ibus -DISTVERSION= 1.5.32 +DISTVERSION= 1.5.33 CATEGORIES= textproc MASTER_SITES= https://github.com/${PORTNAME}/${PORTNAME}/releases/download/${DISTVERSION}/ @@ -13,14 +13,14 @@ BUILD_DEPENDS= ${LOCALBASE}/share/unicode/ucd/NamesList.txt:textproc/UCD \ ${PYTHON_PKGNAMEPREFIX}dbus>0:devel/py-dbus@${PY_FLAVOR} \ bash:shells/bash \ - iso-codes>0:misc/iso-codes -LIB_DEPENDS= libdbus-1.so:devel/dbus + iso-codes>0:misc/iso-codes \ + evdev-proto>0:devel/evdev-proto RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dbus>0:devel/py-dbus@${PY_FLAVOR} \ iso-codes>0:misc/iso-codes \ setxkbmap:x11/setxkbmap USES= compiler cpe gmake gnome libtool localbase pathfix pkgconfig \ - python shebangfix xorg + python shebangfix xorg vala:build CPE_VENDOR= ibus_project USE_GNOME= glib20 pygobject3 USE_LDCONFIG= yes @@ -39,7 +39,7 @@ TEST_WRKSRC= ${WRKSRC}/src/tests OPTIONS_DEFINE= APPINDICATOR DCONF DOCS EMOJI ENGINE GINTRO GTK2 GTK3 \ - GTK4 NLS VAPI WAYLAND XIM + GTK4 NLS TESTS VAPI WAYLAND XIM OPTIONS_DEFAULT= APPINDICATOR DCONF EMOJI ENGINE GINTRO GTK3 GTK4 VAPI \ WAYLAND XIM NO_OPTIONS_SORT= yes @@ -53,6 +53,7 @@ GTK2_DESC= Install GTK2 input method client GTK3_DESC= Install GTK3 input method client GTK4_DESC= Install GTK4 input method client +TESTS_DESC= Build tests WAYLAND_DESC= Enable Wayland support XIM_DESC= Install XIM server @@ -75,25 +76,26 @@ GINTRO_CONFIGURE_ENABLE= introspection GTK2_USE= GNOME=cairo,gtk20 GTK2_CONFIGURE_ENABLE= gtk2 -GTK3_IMPLIES= WAYLAND +GTK3_IMPLIES= GINTRO GTK3_LIB_DEPENDS= libdbus-1.so:devel/dbus \ libnotify.so:devel/libnotify -GTK3_USES= vala:build GTK3_USE= GNOME=cairo,gtk30,pango GTK3_CONFIGURE_ENABLE= gtk3 libnotify -GTK3_LIBS= -lX11 -GTK4_IMPLIES= WAYLAND -GTK4_LIB_DEPENDS= libgraphene-1.0.so:graphics/graphene \ +GTK4_IMPLIES= GINTRO +GTK4_LIB_DEPENDS= libdbus-1.so:devel/dbus \ + libgraphene-1.0.so:graphics/graphene \ libvulkan.so:graphics/vulkan-loader -GTK4_USE= GNOME=cairo,gtk40 +GTK4_USE= GNOME=cairo,gtk40,gdkpixbuf GTK4_CONFIGURE_ENABLE= gtk4 NLS_USES= gettext NLS_USES_OFF= gettext-tools NLS_CONFIGURE_ENABLE= nls +TESTS_CONFIGURE_ENABLE= tests +TESTS_IMPLIES= XIM GTK3 GTK4 VAPI_IMPLIES= GINTRO -VAPI_USES= vala:build VAPI_CONFIGURE_ENABLE= vala -WAYLAND_BUILD_DEPENDS= wayland>1.14:graphics/wayland +WAYLAND_BUILD_DEPENDS= wayland>1.14:graphics/wayland \ + wayland-protocols>0:graphics/wayland-protocols WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon WAYLAND_CONFIGURE_ENABLE= wayland @@ -111,6 +113,7 @@ post-configure: # Clean pre-generated source code, which may not match the options selected. ${MAKE} -C ${WRKSRC}/ui/gtk3 maintainer-clean-generic + ${RM} -f ${WRKSRC}/tools/main.c post-install: ${MKDIR} ${STAGEDIR}${PREFIX}/etc/xdg/autostart diff -ruN /usr/ports/textproc/ibus/distinfo ./distinfo --- /usr/ports/textproc/ibus/distinfo 2025-07-14 22:31:07.593866000 -0400 +++ ./distinfo 2025-12-06 00:16:03.907861000 -0500 @@ -1,3 +1,3 @@ -TIMESTAMP = 1744817598 -SHA256 (ibus-1.5.32.tar.gz) = b24f41ae38b236b254c09f1a8f53c2354b69b0789e89cea888d0494b09d15d67 -SIZE (ibus-1.5.32.tar.gz) = 4192999 +TIMESTAMP = 1764516894 +SHA256 (ibus-1.5.33.tar.gz) = 58941c9b8285891c776b67fb2039eebe0d61d63a51578519febfc5481b91e831 +SIZE (ibus-1.5.33.tar.gz) = 4350799 diff -ruN /usr/ports/textproc/ibus/pkg-plist ./pkg-plist --- /usr/ports/textproc/ibus/pkg-plist 2025-07-14 22:31:07.593914000 -0400 +++ ./pkg-plist 2025-12-06 22:13:52.715534000 -0500 @@ -2,12 +2,13 @@ bin/ibus-daemon bin/ibus-setup etc/xdg/autostart/ibus.desktop -etc/xdg/Xwayland-session.d/10-ibus-x11 +%%XIM%%etc/xdg/Xwayland-session.d/10-ibus-x11 %%DCONF%%etc/dconf/db/ibus.d/00-upstream-settings %%DCONF%%share/man/man5/00-upstream-settings.5.gz %%DCONF%%@postunexec rm -f %D/etc/dconf/db/ibus %%DCONF%%@postexec dconf update %%DCONF%%etc/dconf/profile/ibus +include/ibus-1.0/ibus-visibility.h include/ibus-1.0/ibus.h include/ibus-1.0/ibusaccelgroup.h include/ibus-1.0/ibusattribute.h @@ -31,6 +32,7 @@ include/ibus-1.0/ibuskeysyms-compat.h include/ibus-1.0/ibuskeysyms.h include/ibus-1.0/ibuslookuptable.h +include/ibus-1.0/ibusmessage.h include/ibus-1.0/ibusobject.h include/ibus-1.0/ibusobservedpath.h include/ibus-1.0/ibuspanelservice.h @@ -59,9 +61,9 @@ %%GTK4%%lib/gtk-4.0/4.0.0/immodules/libim-ibus.so lib/libibus-1.0.so lib/libibus-1.0.so.5 -lib/libibus-1.0.so.5.0.532 +lib/libibus-1.0.so.5.0.533 libdata/pkgconfig/ibus-1.0.pc -%%GTK3%%libexec/ibus-extension-gtk3 +%%GTK3%%%%EMOJI%%libexec/ibus-extension-gtk3 %%GTK3%%libexec/ibus-ui-gtk3 %%XIM%%libexec/ibus-x11 %%DCONF%%libexec/ibus-dconf @@ -76,8 +78,8 @@ %%EMOJI%%share/man/man7/ibus-emoji.7.gz share/applications/org.freedesktop.IBus.Setup.desktop %%EMOJI%%share/applications/org.freedesktop.IBus.Panel.Emojier.desktop -%%GTK3%%share/applications/org.freedesktop.IBus.Panel.Extension.Gtk3.desktop -%%GTK3%%share/applications/org.freedesktop.IBus.Panel.Wayland.Gtk3.desktop +%%GTK3%%%%EMOJI%%share/applications/org.freedesktop.IBus.Panel.Extension.Gtk3.desktop +%%GTK3%%%%WAYLAND%%share/applications/org.freedesktop.IBus.Panel.Wayland.Gtk3.desktop share/dbus-1/services/org.freedesktop.IBus.service share/dbus-1/services/org.freedesktop.portal.IBus.service %%PORTDOCS%%%%DOCSDIR%%/IBusAttrList.html @@ -132,7 +134,7 @@ %%PORTDOCS%%%%DOCSDIR%%/style.css %%PORTDOCS%%%%DOCSDIR%%/up-insensitive.png %%PORTDOCS%%%%DOCSDIR%%/up.png -%%GTK3%%%%DATADIR%%/component/gtkextension.xml +%%GTK3%%%%EMOJI%%%%DATADIR%%/component/gtkextension.xml %%GTK3%%%%DATADIR%%/component/gtkpanel.xml %%DCONF%%%%DATADIR%%/component/dconf.xml %%ENGINE%%%%DATADIR%%/component/simple.xml
Actually I found a few new issues; I'll post a new patch once I test all options.
diff -ruN /usr/ports/textproc/ibus/Makefile ./Makefile --- /usr/ports/textproc/ibus/Makefile 2025-07-14 22:31:07.593841000 -0400 +++ ./Makefile 2025-12-06 23:08:34.381442000 -0500 @@ -1,5 +1,5 @@ PORTNAME= ibus -DISTVERSION= 1.5.32 +DISTVERSION= 1.5.33 CATEGORIES= textproc MASTER_SITES= https://github.com/${PORTNAME}/${PORTNAME}/releases/download/${DISTVERSION}/ @@ -13,14 +13,14 @@ BUILD_DEPENDS= ${LOCALBASE}/share/unicode/ucd/NamesList.txt:textproc/UCD \ ${PYTHON_PKGNAMEPREFIX}dbus>0:devel/py-dbus@${PY_FLAVOR} \ bash:shells/bash \ - iso-codes>0:misc/iso-codes -LIB_DEPENDS= libdbus-1.so:devel/dbus + iso-codes>0:misc/iso-codes \ + evdev-proto>0:devel/evdev-proto RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dbus>0:devel/py-dbus@${PY_FLAVOR} \ iso-codes>0:misc/iso-codes \ setxkbmap:x11/setxkbmap USES= compiler cpe gmake gnome libtool localbase pathfix pkgconfig \ - python shebangfix xorg + python shebangfix xorg vala:build CPE_VENDOR= ibus_project USE_GNOME= glib20 pygobject3 USE_LDCONFIG= yes @@ -39,7 +39,7 @@ TEST_WRKSRC= ${WRKSRC}/src/tests OPTIONS_DEFINE= APPINDICATOR DCONF DOCS EMOJI ENGINE GINTRO GTK2 GTK3 \ - GTK4 NLS VAPI WAYLAND XIM + GTK4 NLS TESTS VAPI WAYLAND XIM OPTIONS_DEFAULT= APPINDICATOR DCONF EMOJI ENGINE GINTRO GTK3 GTK4 VAPI \ WAYLAND XIM NO_OPTIONS_SORT= yes @@ -53,6 +53,7 @@ GTK2_DESC= Install GTK2 input method client GTK3_DESC= Install GTK3 input method client GTK4_DESC= Install GTK4 input method client +TESTS_DESC= Build tests WAYLAND_DESC= Enable Wayland support XIM_DESC= Install XIM server @@ -75,25 +76,27 @@ GINTRO_CONFIGURE_ENABLE= introspection GTK2_USE= GNOME=cairo,gtk20 GTK2_CONFIGURE_ENABLE= gtk2 -GTK3_IMPLIES= WAYLAND +GTK2_LIB_DEPENDS= libdbus-1.so:devel/dbus +GTK3_IMPLIES= GINTRO GTK3_LIB_DEPENDS= libdbus-1.so:devel/dbus \ libnotify.so:devel/libnotify -GTK3_USES= vala:build GTK3_USE= GNOME=cairo,gtk30,pango GTK3_CONFIGURE_ENABLE= gtk3 libnotify -GTK3_LIBS= -lX11 -GTK4_IMPLIES= WAYLAND -GTK4_LIB_DEPENDS= libgraphene-1.0.so:graphics/graphene \ +GTK4_IMPLIES= GINTRO +GTK4_LIB_DEPENDS= libdbus-1.so:devel/dbus \ + libgraphene-1.0.so:graphics/graphene \ libvulkan.so:graphics/vulkan-loader -GTK4_USE= GNOME=cairo,gtk40 +GTK4_USE= GNOME=cairo,gtk40,gdkpixbuf GTK4_CONFIGURE_ENABLE= gtk4 NLS_USES= gettext NLS_USES_OFF= gettext-tools NLS_CONFIGURE_ENABLE= nls +TESTS_CONFIGURE_ENABLE= tests +TESTS_IMPLIES= XIM GTK3 GTK4 VAPI_IMPLIES= GINTRO -VAPI_USES= vala:build VAPI_CONFIGURE_ENABLE= vala -WAYLAND_BUILD_DEPENDS= wayland>1.14:graphics/wayland +WAYLAND_BUILD_DEPENDS= wayland>1.14:graphics/wayland \ + wayland-protocols>0:graphics/wayland-protocols WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon WAYLAND_CONFIGURE_ENABLE= wayland @@ -111,6 +114,7 @@ post-configure: # Clean pre-generated source code, which may not match the options selected. ${MAKE} -C ${WRKSRC}/ui/gtk3 maintainer-clean-generic + ${RM} -f ${WRKSRC}/tools/main.c post-install: ${MKDIR} ${STAGEDIR}${PREFIX}/etc/xdg/autostart diff -ruN /usr/ports/textproc/ibus/distinfo ./distinfo --- /usr/ports/textproc/ibus/distinfo 2025-07-14 22:31:07.593866000 -0400 +++ ./distinfo 2025-12-06 00:16:03.907861000 -0500 @@ -1,3 +1,3 @@ -TIMESTAMP = 1744817598 -SHA256 (ibus-1.5.32.tar.gz) = b24f41ae38b236b254c09f1a8f53c2354b69b0789e89cea888d0494b09d15d67 -SIZE (ibus-1.5.32.tar.gz) = 4192999 +TIMESTAMP = 1764516894 +SHA256 (ibus-1.5.33.tar.gz) = 58941c9b8285891c776b67fb2039eebe0d61d63a51578519febfc5481b91e831 +SIZE (ibus-1.5.33.tar.gz) = 4350799 diff -ruN /usr/ports/textproc/ibus/pkg-plist ./pkg-plist --- /usr/ports/textproc/ibus/pkg-plist 2025-07-14 22:31:07.593914000 -0400 +++ ./pkg-plist 2025-12-06 23:02:18.542409000 -0500 @@ -2,12 +2,13 @@ bin/ibus-daemon bin/ibus-setup etc/xdg/autostart/ibus.desktop -etc/xdg/Xwayland-session.d/10-ibus-x11 +%%XIM%%etc/xdg/Xwayland-session.d/10-ibus-x11 %%DCONF%%etc/dconf/db/ibus.d/00-upstream-settings %%DCONF%%share/man/man5/00-upstream-settings.5.gz %%DCONF%%@postunexec rm -f %D/etc/dconf/db/ibus %%DCONF%%@postexec dconf update %%DCONF%%etc/dconf/profile/ibus +include/ibus-1.0/ibus-visibility.h include/ibus-1.0/ibus.h include/ibus-1.0/ibusaccelgroup.h include/ibus-1.0/ibusattribute.h @@ -31,6 +32,7 @@ include/ibus-1.0/ibuskeysyms-compat.h include/ibus-1.0/ibuskeysyms.h include/ibus-1.0/ibuslookuptable.h +include/ibus-1.0/ibusmessage.h include/ibus-1.0/ibusobject.h include/ibus-1.0/ibusobservedpath.h include/ibus-1.0/ibuspanelservice.h @@ -59,25 +61,25 @@ %%GTK4%%lib/gtk-4.0/4.0.0/immodules/libim-ibus.so lib/libibus-1.0.so lib/libibus-1.0.so.5 -lib/libibus-1.0.so.5.0.532 +lib/libibus-1.0.so.5.0.533 libdata/pkgconfig/ibus-1.0.pc -%%GTK3%%libexec/ibus-extension-gtk3 +%%GTK3%%%%EMOJI%%libexec/ibus-extension-gtk3 %%GTK3%%libexec/ibus-ui-gtk3 %%XIM%%libexec/ibus-x11 %%DCONF%%libexec/ibus-dconf %%ENGINE%%libexec/ibus-engine-simple libexec/ibus-portal -%%EMOJI%%libexec/ibus-ui-emojier +%%GTK3%%%%EMOJI%%libexec/ibus-ui-emojier %%WAYLAND%%libexec/ibus-wayland share/man/man1/ibus-daemon.1.gz share/man/man1/ibus-setup.1.gz share/man/man1/ibus.1.gz %%DCONF%%share/man/man5/ibus.5.gz -%%EMOJI%%share/man/man7/ibus-emoji.7.gz +%%GTK3%%%%EMOJI%%share/man/man7/ibus-emoji.7.gz share/applications/org.freedesktop.IBus.Setup.desktop -%%EMOJI%%share/applications/org.freedesktop.IBus.Panel.Emojier.desktop -%%GTK3%%share/applications/org.freedesktop.IBus.Panel.Extension.Gtk3.desktop -%%GTK3%%share/applications/org.freedesktop.IBus.Panel.Wayland.Gtk3.desktop +%%GTK3%%%%EMOJI%%share/applications/org.freedesktop.IBus.Panel.Emojier.desktop +%%GTK3%%%%EMOJI%%share/applications/org.freedesktop.IBus.Panel.Extension.Gtk3.desktop +%%GTK3%%%%WAYLAND%%share/applications/org.freedesktop.IBus.Panel.Wayland.Gtk3.desktop share/dbus-1/services/org.freedesktop.IBus.service share/dbus-1/services/org.freedesktop.portal.IBus.service %%PORTDOCS%%%%DOCSDIR%%/IBusAttrList.html @@ -132,7 +134,7 @@ %%PORTDOCS%%%%DOCSDIR%%/style.css %%PORTDOCS%%%%DOCSDIR%%/up-insensitive.png %%PORTDOCS%%%%DOCSDIR%%/up.png -%%GTK3%%%%DATADIR%%/component/gtkextension.xml +%%GTK3%%%%EMOJI%%%%DATADIR%%/component/gtkextension.xml %%GTK3%%%%DATADIR%%/component/gtkpanel.xml %%DCONF%%%%DATADIR%%/component/dconf.xml %%ENGINE%%%%DATADIR%%/component/simple.xml
Warning: you might not need LIB_DEPENDS on libgirepository-1.0.so Fix: -GINTRO_USE= GNOME=introspection +GINTRO_USE= GNOME=introspection:build
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=a78be530d3b7cb137862531124a89214eb6e384a commit a78be530d3b7cb137862531124a89214eb6e384a Author: Henry Hu <henry.hu.sh@gmail.com> AuthorDate: 2025-12-08 01:00:22 +0000 Commit: Vladimir Druzenko <vvd@FreeBSD.org> CommitDate: 2025-12-08 01:00:22 +0000 textproc/ibus: Update 1.5.32 => 1.5.33 Changelog: https://github.com/ibus/ibus/releases/tag/1.5.33 Fix build with different options. PR: 291303 Co-authored-by: Olivier Duchateau <duchateau.olivier@gmail.com> Co-authored-by: Vladimir Druzenko <vvd@FreeBSD.org> textproc/ibus/Makefile | 32 ++++++++++++++++++-------------- textproc/ibus/distinfo | 6 +++--- textproc/ibus/pkg-plist | 20 +++++++++++--------- 3 files changed, 32 insertions(+), 26 deletions(-)
Thanks!