Bug 275768 - japanese/fcitx-mozc: Fails to build after devel/protobuf is updated to 24.4
Summary: japanese/fcitx-mozc: Fails to build after devel/protobuf is updated to 24.4
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Po-Chuan Hsieh
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-12-14 22:58 UTC by Tomoaki AOKI
Modified: 2023-12-25 16:34 UTC (History)
2 users (show)

See Also:


Attachments
Failed full build log (140.46 KB, text/plain)
2023-12-14 23:00 UTC, Tomoaki AOKI
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Tomoaki AOKI 2023-12-14 22:58:27 UTC
japanese/fcitx-mozc starts to failing build after devel/protobuf is updated to 24.4 at least on stable/14,amd64 at commit c07ebf5becae76dd9843b8a835df9f7ccd65e897.

Happened on poudriere bulk build jail, so it's a clean build.
Ports tree is at commit 69e2e87fa56b54e267429b326f7f6188a7baaa71, which is the next commit which devel/protobuf is updated to 24.4.

Failure mode is as follows.

[ 90% 112/115] rm -f obj/client/libclient.a && /usr/bin/ar rcsT  obj/client/libclient.a obj/client/client.client.o obj/client/client.server_launcher.o
../../base/util.cc:1084:10: warning: variable 'num' set but not used [-Wunused-but-set-variable]
  uint32 num = 0;
         ^
1 warning generated.
[ 96% 113/115] rm -f obj/base/libbase_core.a && /usr/bin/ar rcsT  obj/base/libbase_core.a obj/base/base_core.file_stream.o obj/base/base_core.file_util.o obj/base/base_core.init_mozc.o obj/base/base_core.japanese_util_rule.o obj/base/base_core.logging.o obj/base/base_core.mmap.o obj/base/base_core.number_util.o obj/base/base_core.system_util.o obj/base/base_core.text_normalizer.o obj/base/base_core.thread.o obj/base/base_core.util.o obj/base/base_core.version.o obj/base/base_core.win_util.o
[ 97% 114/115] touch obj/unix/fcitx/fcitx-mozc.actions_depends.stamp
ninja: job failed with status 1: c++ -MMD -MF obj/unix/fcitx/fcitx-mozc.eim.o.d -DOS_LINUX -DOS_FREEBSD '-DLOCALBASE="/usr/local"' -DMOZC_BUILD -DCHANNEL_DEV '-DLOCALEDIR="/usr/local/share/locale/"' -DNDEBUG -DQT_NO_DEBUG -DNO_LOGGING -DIGNORE_HELP_FLAG -DIGNORE_INVALID_FLAG -I/wrkdirs/usr/ports/japanese/fcitx-mozc/work/mozc-2.23.2815.102.01/src -Igen -I/usr/local/include -Igen/proto_out -Wall -Wno-char-subscripts -Wno-sign-compare -Wno-deprecated-declarations -Wwrite-strings -Wno-unknown-warning-option -Wno-inconsistent-missing-override -fPIC -fno-exceptions -O2 -pipe -march=haswell  -fstack-protector-strong -fno-strict-aliasing  -fmessage-length=0 -fno-strict-aliasing -funsigned-char -pipe -pthread -fno-omit-frame-pointer -fstack-protector --param=ssp-buffer-size=4 -I/usr/local/include -Wtype-limits -O2 -pipe -march=haswell  -fstack-protector-strong -fno-strict-aliasing  -O2 -O2 -pipe -march=haswell -fstack-protector-strong -fno-strict-aliasing -std=c++17 -Wno-deprecated -O2 -pipe -march=haswell  -fstack-protector-strong -fno-strict-aliasing   -std=c++17  -Wno-covered-switch-default -Wno-unnamed-type-template-args -Wno-c++11-narrowing -std=c++11 -O2 -pipe -march=haswell  -fstack-protector-strong -fno-strict-aliasing   -std=c++17   -c ../../unix/fcitx/eim.cc -o obj/unix/fcitx/fcitx-mozc.eim.o
In file included from ../../unix/fcitx/eim.cc:36:
In file included from ../../unix/fcitx/fcitx_mozc.h:42:
In file included from gen/proto_out/protocol/commands.pb.h:24:
In file included from /usr/local/include/google/protobuf/io/coded_stream.h:134:
In file included from /usr/local/include/absl/strings/cord.h:80:
In file included from /usr/local/include/absl/functional/function_ref.h:54:
/usr/local/include/absl/functional/internal/function_ref.h:78:68: error: too few arguments provided to function-like macro invocation
R InvokeFunction(VoidPtr ptr, typename ForwardT<Args>::type... args) {
                                                                   ^
/usr/local/include/fcitx/module.h:131:9: note: macro 'InvokeFunction' defined here
#define InvokeFunction(INST, MODULE, FUNC, ARG)                         \
        ^
In file included from ../../unix/fcitx/eim.cc:36:
In file included from ../../unix/fcitx/fcitx_mozc.h:42:
In file included from gen/proto_out/protocol/commands.pb.h:24:
In file included from /usr/local/include/google/protobuf/io/coded_stream.h:134:
In file included from /usr/local/include/absl/strings/cord.h:80:
In file included from /usr/local/include/absl/functional/function_ref.h:54:
/usr/local/include/absl/functional/internal/function_ref.h:79:8: error: expected '(' for function-style cast or type construction
  auto f = reinterpret_cast<Fun>(ptr.fun);
  ~~~~ ^
/usr/local/include/absl/functional/internal/function_ref.h:82:2: error: expected ';' at end of declaration
}
 ^
 ;
3 errors generated.
ninja: subcommand failed
Traceback (most recent call last):
  File "/wrkdirs/usr/ports/japanese/fcitx-mozc/work/mozc-2.23.2815.102.01/src/build_mozc.py", line 1272, in <module>
    main()
  File "/wrkdirs/usr/ports/japanese/fcitx-mozc/work/mozc-2.23.2815.102.01/src/build_mozc.py", line 1259, in main
    BuildMain(cmd_opts, cmd_args)
  File "/wrkdirs/usr/ports/japanese/fcitx-mozc/work/mozc-2.23.2815.102.01/src/build_mozc.py", line 890, in BuildMain
    BuildWithNinja(options, targets)
  File "/wrkdirs/usr/ports/japanese/fcitx-mozc/work/mozc-2.23.2815.102.01/src/build_mozc.py", line 864, in BuildWithNinja
    RunOrDie([ninja, '-v', '-C', build_arg] + ninja_targets)
  File "/wrkdirs/usr/ports/japanese/fcitx-mozc/work/mozc-2.23.2815.102.01/src/build_tools/util.py", line 96, in RunOrDie
    raise RunOrDieError('\n'.join(['',
build_tools.util.RunOrDieError: 
==========
 ERROR: ninja -v -C out_linux/Release fcitx-mozc
==========
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/japanese/fcitx-mozc
*** Error code 1

Stop.
make: stopped in /usr/ports/japanese/fcitx-mozc
=>> Cleaning up wrkdir
===>  Cleaning for ja-fcitx-mozc-2.23.2815.102.01_15
build of japanese/fcitx-mozc | ja-fcitx-mozc-2.23.2815.102.01_15 ended at Fri Dec 15 07:02:12 JST 2023
build time: 00:00:17
!!! build failure encountered !!!
Comment 1 Tomoaki AOKI 2023-12-14 23:00:28 UTC
Created attachment 247049 [details]
Failed full build log

Uploaded poudriere full build log.
Comment 2 Tomoaki AOKI 2023-12-16 03:14:00 UTC
Additional notes.

`pkg upgrade` without japanese/fcitx-mozc alone and restart the computer caused it not working (expected behaviour, though). So switching temporarily to uim-mozc for now.

Updating ports tree to commit 970e8686668ccb41caf3089b011644eb8724e114 didn't help.

Tried building on bare-metal environment using pkg_replace exhibited the same build failure.
Specifying "MAKE_JOBS_UNSAFE=yes" exhibited the same failure.
Comment 3 Koichiro Iwao freebsd_committer freebsd_triage 2023-12-22 02:16:01 UTC
I also encountered this issue but no time to look into.
Comment 4 commit-hook freebsd_committer freebsd_triage 2023-12-25 09:12:38 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=5e342f86853071e530e07f126901e8dddc23c6f0

commit 5e342f86853071e530e07f126901e8dddc23c6f0
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2023-12-25 09:03:14 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2023-12-25 09:03:14 +0000

    japanese/fcitx-mozc: Fix build with protobuf 22+

    PR:             275768
    Reported by:    Tomoaki AOKI <junchoon@dec.sakura.ne.jp>
    Obtained from:  https://github.com/fcitx/mozc/commit/131f6bf4ea9d1f49200f7ccd149fd30eae89ee97

 .../mozc-server/files/patch-src_unix_fcitx_eim.cc (new)   | 15 +++++++++++++++
 1 file changed, 15 insertions(+)
Comment 5 Po-Chuan Hsieh freebsd_committer freebsd_triage 2023-12-25 09:19:37 UTC
Committed. Thanks!
Comment 6 Tomoaki AOKI 2023-12-25 13:50:06 UTC
(In reply to Po-Chuan Hsieh from comment #5)

Confirmed fixed at commit 5e342f86853071e530e07f126901e8dddc23c6f0 on stable/14.
Thanks!