Yifei Zhan <openbsd@zhan.science> writes:

> Hi,
>
> Here is a WIP port for fcitx5, the successor of inputmethods/fcitx. I 
> would like to find someone to import this as fcitx4 is no longer being 
> actively developed. ("no new issue and PR should be created.") [0]
>
> At the moment I'm able to build/package/test/install it with no problem 
> and I've been daily driving[1] it on both my arm64 and amd64 systems for 
> about a month. However I'm unable to tame `make port-lib-depends-check`:
>
> fcitx5-5.0.11(inputmethods/fcitx5):
> Missing lib: cairo.13 (/usr/local/lib/fcitx5/libclassicui.so) (NOT REACHABLE)
> Missing lib: event_core.2 (/usr/local/lib/libFcitx5Utils.so.0.0) (NOT 
> REACHABLE)
> Missing lib: harfbuzz.16 (/usr/local/lib/fcitx5/libclassicui.so) (NOT 
> REACHABLE)
> Missing lib: pango-1.0.3801 (/usr/local/lib/fcitx5/libclassicui.so) (NOT 
> REACHABLE)
> Missing lib: pangocairo-1.0.3801 (/usr/local/lib/fcitx5/libclassicui.so) (NOT 
> REACHABLE)
> Missing lib: xkbcommon-x11.1 (/usr/local/lib/fcitx5/libxcb.so) (NOT REACHABLE)
> Missing lib: xkbcommon.1 (/usr/local/lib/libFcitx5Core.so.0.0) (NOT REACHABLE)
> *** Error 1 in target 'port-lib-depends-check' (ignored)
>
> I tried to figure out this by reading the source of 
> port-lib-depends-check, but with little success, anyone know how can I 
> tame this?
>
> [0]: https://github.com/fcitx/fcitx/blob/master/README 
> [1]: I also ported many fcitx5 IME IM modules but they would be too many 
> for this email...
>
> [2. application/x-gzip; fcitx5.wip.tar.gz]...

Hello,

(adding to what Stefan said)

I noticed that both ports have

        V =             ...
        PKGNAME =       foo-$V
        DISTNAME =      ${PKGNAME}

which I think it's redundant, since $V is not used anywhere else in the
makefiles you could simply do

        DISTNAME =      foo-x.y.z


regarding xcb-imd, I was told that ports that use extra-cmake-modules
should use the devel/kf5 module which takes care of adding the needed
build depends.  (It also needs `MODQT5_DEPS = No' otherwise qtbase ends
up as LDEPS.)

There's no need to patch CMakeLists to change the default of the
options, just pass them as

        CONFIGURE_ARGS +=       -DUSE_SYSTEM_UTHASH=OFF

but why disable uthash?  it builds fine with that enabled, it just needs
CFLAGS += -I${LOCALBASE}/include, so I'm adding it to BUILD_DEPENDS.

I'm dropping -Wno-dev as I don't think we need to add flags to silence
cmake warnings.  I'm also dropping DISTFILES in xcb-imdkit as that's the
default value.

make update-plist wants to add the lib/cmake directory.

As a final note, xcb-imdkit doesn't build with base gcc (needs C11) and
thus set COMPILER and COMPILER_LANGS accordingly.


regarding fcitx5 itself, why disable enchant?  I've added
textproc/enchant2 as LDEP and it builds fine.

Instead of patching CMakeList.txt to add /usr/X11R6/include (which is
also hardcoded), you can just adjust CXXFLAGS from the makefile.  Ditto
for patch-src_im_keyboard_isocodes_cpp

I've moved the *_DEPENDS after MODULE as per Makefile.template.

These entries from the PLIST are suspicious:

etc/
etc/xdg/
etc/xdg/autostart/
etc/xdg/autostart/org.fcitx.Fcitx5.desktop

They should end up in ${PREFIX}/share/examples/xdg/... and then
@sample'd as happens for other ports.  cmake/kf5/qt is not really my
area, but throwing a -DCMAKE_INSTALL_SYSCONFDIR in CONFIGURE_ARGS fixed
the plist, not really sure why it's not happening by default...  A grep
confirms that there are some other instances of that in the port tree
already (devel/ccache, net/icinga, net/mosquitto, ...) so maybe it's not
completely wrong.

I can't understand how it's supposed to be used, I ran fcitx5 and it
switched from my custom dvorak to the us layout, fcitx5-configtool says
that I'm "currently running Fcitx with GUI, but fcitx5-config-qt
couldn't be found" and then opens up Emacs on the ~/.config/fcitx5/conf
directory.  I guess I should edit that file to customize it?
Unfortunately there's no documentation in the package, I'll dig in
HOMEPAGE later


Tests are passing for both, good!

I think both ports looks fine :)

Cheers!

Omar Polo

Attachment: xcb-imdkit.tar.gz
Description: Binary data

Attachment: fcitx5.tar.gz
Description: Binary data

Reply via email to