inputmethod/fcitx5-mozc: Update to 2.29.5268.102

* Sync with Mozc 2.29.5268.102.
This commit is contained in:
ryoon 2024-02-10 12:26:00 +00:00
parent 51723e24ea
commit 1de4a0e7db
55 changed files with 496 additions and 13080 deletions

View File

@ -1,12 +1,11 @@
# $NetBSD: Makefile,v 1.26 2024/01/30 18:29:18 adam Exp $
# $NetBSD: Makefile,v 1.27 2024/02/10 12:26:00 ryoon Exp $
PKGNAME= ${DISTNAME:S/fcitx-/fcitx5-/}
PKGREVISION= 25
PKGNAME= fcitx5-${DISTNAME}
INSTALLATION_DIRS+= lib/fcitx5
INSTALLATION_DIRS+= share/fcitx5/addon
INSTALLATION_DIRS+= share/fcitx5/inputmethod
.for lang in ca da de he ja ko ru zh_CN zh_TW
.for lang in ca da de he ja ko ru tr zh_CN zh_TW
INSTALLATION_DIRS+= share/locale/${lang}/LC_MESSAGES
.endfor
INSTALLATION_DIRS+= share/metainfo
@ -17,23 +16,36 @@ INSTALLATION_DIRS+= share/icons/hicolor/${size}/apps
USE_TOOLS+= bash
DEPENDS+= xdg-utils-[0-9]*:../../misc/xdg-utils
DEPENDS+= mozc-server-[0-9]*:../../inputmethod/mozc-server
DEPENDS+= mozc-tool-[0-9]*:../../inputmethod/mozc-tool
pre-configure:
# Do not fail by fcitx4 is not found.
${RM} ${WRKSRC}/unix/fcitx/fcitx.gyp
DEPENDS+= mozc-server>=2.29:../../inputmethod/mozc-server
DEPENDS+= mozc-renderer>=2.29:../../inputmethod/mozc-renderer
DEPENDS+= mozc-tool>=2.29:../../inputmethod/mozc-tool
do-build:
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \
${PYTHONBIN} build_mozc.py build -c ${MOZC_BUILD_MODE} \
unix/fcitx5/fcitx5.gyp:fcitx5-mozc
${PREFIX}/bin/bazel \
--output_user_root=${WRKDIR}/bazel \
--client_debug \
build \
unix/fcitx5:fcitx5-mozc.so \
--host_action_env=CWRAPPERS_CONFIG_DIR=${CWRAPPERS_CONFIG_DIR} \
--action_env=CWRAPPERS_CONFIG_DIR=${CWRAPPERS_CONFIG_DIR} \
--host_action_env=PATH=${PATH} \
--action_env=PATH=${PATH} \
--sandbox_debug \
--verbose_failures \
--config oss_linux --compilation_mode opt
do-install:
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${INSTALL_ENV} \
OSDEST=${OSDEST} _bldtype=${MOZC_BUILD_MODE} \
${BASH} ../scripts/install_fcitx5
${BASH} ../scripts/install_fcitx5_bazel
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${INSTALL_ENV} \
${BASH} ../scripts/install_fcitx5_data
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${INSTALL_ENV} \
${BASH} ../scripts/install_fcitx5_icons
.include "../../inputmethod/fcitx5/buildlink3.mk"
.include "../../inputmethod/fcitx5-mozc/Makefile.common"
.include "../../graphics/hicolor-icon-theme/buildlink3.mk"
.include "../../devel/gettext-tools/msgfmt-desktop.mk"
.include "../../mk/bsd.pkg.mk"

View File

@ -1,82 +1,63 @@
# $NetBSD: Makefile.common,v 1.6 2023/07/18 18:22:11 nia Exp $
# $NetBSD: Makefile.common,v 1.7 2024/02/10 12:26:00 ryoon Exp $
# used by inputmethod/fcitx5-mozc/Makefile
# Find version number in src/data/version/mozc_version_template.bzl
DISTNAME= fcitx-mozc-2.26.4276.100
DISTNAME= mozc-2.29.5268.102
CATEGORIES= inputmethod
MASTER_SITES= ${MASTER_SITE_LOCAL}
EXTRACT_SUFX= .tar.xz
MASTER_SITES= ${MASTER_SITE_GITHUB:=fcitx/}
GITHUB_PROJECT= mozc
GITHUB_TAG= fdf255839144638b9759b5ad98b5151fd28bb3ca
MAINTAINER= ryoon@NetBSD.org
HOMEPAGE= https://github.com/fcitx/mozc/
HOMEPAGE= https://github.com/google/mozc/
COMMENT= Fcitx5 module for Japanese inputmethod Mozc engine
LICENSE= modified-bsd
EXTRACT_USING= bsdtar
WRKSRC= ${WRKDIR}/${DISTNAME}/src
GITHUB_SUBMODULES+= google breakpad 216cea7bca53fa441a3ee0d0f5fd339a3a894224 third_party/breakpad
GITHUB_SUBMODULES+= google googletest 58d77fa8070e8cec2dc1ed015d66b454c8d78850 third_party/gtest
GITHUB_SUBMODULES+= chromium gyp 9ecf45e37677743503342ee4c6a76eaee80e4a7f third_party/gyp
GITHUB_SUBMODULES+= hiroyuki-komatsu japanese-usage-dictionary e5b3425575734c323e1d947009dd74709437b684 third_party/japanese_usage_dictionary
GITHUB_SUBMODULES+= protocolbuffers protobuf 54a2e5caa9d1a0a714fb2aa99753a1444414292a third_party/protobuf
GITHUB_SUBMODULES+= abseil abseil-cpp c2435f8342c2d0ed8101cb43adfd605fdc52dca2 third_party/abseil-cpp
GITHUB_SUBMODULES+= microsoft wil fc5dbf55989fe20351c71d038a8d12de4b397a6d third_party/wil
TOOL_DEPENDS+= ${PYPKGPREFIX}-gyp-[0-9]*:../../devel/gyp
TOOL_DEPENDS+= ${PYPKGPREFIX}-six-[0-9]*:../../lang/py-six
TOOL_DEPENDS+= ninja-build-[0-9]*:../../devel/ninja-build
WRKSRC= ${WRKDIR}/${GITHUB_PROJECT}-${GITHUB_TAG}/src
PYTHON_VERSIONS_INCOMPATIBLE+= 27
USE_LANGUAGES= c c++
USE_TOOLS+= pkg-config
USE_TOOLS+= gmake pkg-config
USE_CXX_FEATURES+= c++14
USE_CXX_FEATURES+= c++11
TOOL_DEPENDS+= bazel-[0-9]*:../../devel/bazel
PYTHON_VERSIONS_INCOMPATIBLE= 27
OPENSSL_CFLAGS= -I${BUILDLINK_PREFIX.openssl}/include
OPENSSL_INC= -I${BUILDLINK_PREFIX.openssl}/include
OPENSSL_LDFLAGS= -L${BUILDLINK_PREFIX.openssl}/lib -lssl -lcrypto
OPENSSL_LIBS= -lssl -lcrypto
SUBST_CLASSES+= gyp
SUBST_STAGE.gyp= pre-configure
SUBST_MESSAGE.gyp= Fix gyp defaults
SUBST_FILES.gyp+= config.bzl
SUBST_FILES.gyp+= base/process.cc
SUBST_FILES.gyp+= gyp/directories.gypi
SUBST_FILES.gyp+= unix/ibus/ibus.gyp
SUBST_FILES.gyp+= unix/ibus/path_util.cc
SUBST_VARS.gyp+= OPENSSL_CFLAGS OPENSSL_INC OPENSSL_LDFLAGS OPENSSL_LIBS
SUBST_VARS.gyp+= PREFIX
# To disable flock(1) in link stage.
ALL_ENV+= LINK=${CXX}
SUBST_CLASSES+= prefix
SUBST_STAGE.prefix= pre-configure
SUBST_MESSAGE.prefix= Setting PREFIX
SUBST_FILES.prefix+= base/process.cc
SUBST_FILES.prefix+= base/system_util.cc
SUBST_FILES.prefix+= third_party/protobuf/toolchain/cc_toolchain_config.bzl
SUBST_FILES.prefix+= config.bzl
SUBST_VARS.prefix+= PREFIX
SUBST_VARS.prefix+= X11BASE
.include "../../mk/bsd.prefs.mk"
OPSYSVARS+= OSDEST
OSDEST.Linux= linux
OSDEST.NetBSD= bsd
OSDEST.Linux= linux-opt
OSDEST.NetBSD= netbsd-opt
MOZC_BUILD_MODE= Release # or Debug
CHECK_PIE_SUPPORTED= no
pre-configure:
${RM} -r ${WRKDIR}/.cwrapper
# In file included from src/dictionary/system/system_dictionary.h:43:0,
# from ../../dictionary/system/system_dictionary.cc:47:
# src/dictionary/system/key_expansion_table.h: In member function 'const mozc::dictionary::ExpandedKey mozc::dictionary::KeyExpansionTable::ExpandKey(char) const':
# src/dictionary/system/key_expansion_table.h:83:34: error: array subscript has type 'char' [-Werror=char-subscripts]
# return ExpandedKey(table_[key]);
# Maybe fix this later.
BUILDLINK_TRANSFORM+= rm:-Werror=char-subscripts
.include "../../graphics/MesaLib/buildlink3.mk"
.include "../../x11/qt6-qtbase/buildlink3.mk"
do-configure:
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \
GYP_DEFINES="use_libprotobuf=1" \
${PYTHONBIN} build_mozc.py \
gyp \
--gypdir=${LOCALBASE}/bin
.include "../../devel/glib2/buildlink3.mk"
.include "../../devel/protobuf/buildlink3.mk"
# gmock is not used yet...
#.include "../../devel/gmock/buildlink3.mk"
.include "../../inputmethod/zinnia/buildlink3.mk"
.include "../../www/curl/buildlink3.mk"
.include "../../x11/gtk2/buildlink3.mk"
.include "../../x11/qt5-qtbase/buildlink3.mk"
# devel/bazel can use clang only for C/C++ projects.
BUILDLINK_DEPMETHOD.clang= build
.include "../../lang/clang/buildlink3.mk"
.include "../../lang/python/tool.mk"
.include "../../mk/bsd.pkg.mk"
.include "../../mk/atomic64.mk"

View File

@ -1,4 +1,4 @@
@comment $NetBSD: PLIST,v 1.1 2021/02/17 15:29:51 ryoon Exp $
@comment $NetBSD: PLIST,v 1.2 2024/02/10 12:26:00 ryoon Exp $
lib/fcitx5/fcitx5-mozc.so
share/fcitx5/addon/mozc.conf
share/fcitx5/inputmethod/mozc.conf
@ -31,6 +31,7 @@ share/locale/he/LC_MESSAGES/fcitx5-mozc.mo
share/locale/ja/LC_MESSAGES/fcitx5-mozc.mo
share/locale/ko/LC_MESSAGES/fcitx5-mozc.mo
share/locale/ru/LC_MESSAGES/fcitx5-mozc.mo
share/locale/tr/LC_MESSAGES/fcitx5-mozc.mo
share/locale/zh_CN/LC_MESSAGES/fcitx5-mozc.mo
share/locale/zh_TW/LC_MESSAGES/fcitx5-mozc.mo
share/metainfo/org.fcitx.Fcitx5.Addon.Mozc.metainfo.xml

View File

@ -1,47 +1,54 @@
$NetBSD: distinfo,v 1.5 2021/10/26 10:49:32 nia Exp $
$NetBSD: distinfo,v 1.6 2024/02/10 12:26:00 ryoon Exp $
BLAKE2s (fcitx-mozc-2.26.4276.100.tar.xz) = 508cd3b3d3cde6fffb37bf222232ede282f3876b2b9438a122bbc5676172ea69
SHA512 (fcitx-mozc-2.26.4276.100.tar.xz) = 18a67554a154580aa29b76eafc15456e7b3bbbde56a0d2e2efe9e83e203622108f73fd39704db324512cdf2cf56adedcf8570c1aab35d7379c408c8401c743b6
Size (fcitx-mozc-2.26.4276.100.tar.xz) = 37170744 bytes
SHA1 (patch-.._scripts_install__fcitx5) = 860da43f7c3ada65a473604259cf7e4d4a1d0b3e
SHA1 (patch-.._scripts_install__fcitx5__icons) = 2ee7b5e36131be11192517c57119fe5c2b28d4c4
SHA1 (patch-2.26.4282.100) = 9d9cd404657afc24f5e280c9db1835b2827182c7
SHA1 (patch-base_base.gyp) = d8d9abc0da196f0573ad645937812710c7c67746
SHA1 (patch-base_clock.cc) = bac420650fed0450cf82b5071703a1c60e974a93
SHA1 (patch-base_cpu__stats.cc) = 9c18fb2543f352951969822e0095f01f0e8d3bcd
SHA1 (patch-base_logging.cc) = 7ef5fc94744f37dc771684d2f1c218006118ec9e
SHA1 (patch-base_mutex.cc) = c52761be5ef60af35685a4de18ef18a083b1d0b9
SHA1 (patch-base_password__manager.cc) = 6b669b7c2cf15b1a85e648265dfca0f34e86d00d
SHA1 (patch-base_port.h) = 73b76a61759e32dcb7edcbb70b5cff6ad091a15c
SHA1 (patch-base_process.cc) = 9b838e6178d7dd64012c94b9c55a201d096e4680
SHA1 (patch-base_run__level.cc) = b26b0c8a457b9feb9a4de0abd7d5aae5bcd9e491
SHA1 (patch-base_system__util.cc) = bdd468c5a22fe8ecc3de57168162944afd0bb20d
SHA1 (patch-base_thread.cc) = 5e62c41beedc57dec004d100753bae4c77289762
SHA1 (patch-build__mozc.py) = c0ef43010c0f048550ed4a5e9bb7b29c8a24ac77
SHA1 (patch-build__tools_mozc__version.py) = 133f6b17d9dc811284901513e4e4ae3711710082
SHA1 (patch-build__tools_util.py) = 5ca614adf2453fcc33c18cda74c0d9b2e4f6bc21
SHA1 (patch-client_client.cc) = c11341d48ce55af0aea440800da4a53a62a436c1
SHA1 (patch-config.bzl) = 5f959d46741f2f3fbf0fbbe38aa8fa1baafadb27
SHA1 (patch-config_stats__config__util__test.cc) = f1af7403f8e06faadc5c46267d2d8b26a60c8f8d
SHA1 (patch-gui_config__dialog_config__dialog.cc) = f3349d6ed2bee63f7bb92bc71f9d8a8ab1316b74
SHA1 (patch-gui_config__dialog_keybinding__editor.cc) = 09c03f57031306b5cca8f1e546719db936159e2d
SHA1 (patch-gui_dictionary__tool_dictionary__tool.cc) = cae617cc8e324b0f93adc1e76632a018530cd2c7
SHA1 (patch-gui_qt__libraries.gypi) = ceb8d5b15d4cd5b2d907406f02413290bd4ab652
SHA1 (patch-gui_qt__moc.gypi) = e3d42e61b35012cda10da13aa03cee67786e171c
SHA1 (patch-gui_qt__rcc.gypi) = d38a849fe8e81672eb441a41936f454d8e45ff5c
SHA1 (patch-gui_qt__uic.gypi) = 7dd69ee109e81f0e70f2866b77555412518b4844
SHA1 (patch-gui_word__register__dialog_word__register__dialog.cc) = 218e3706b819855814ba8871504fc7ccb4e40b23
SHA1 (patch-gyp_common.gypi) = ce27e8665b9dab4dc6d34d337a2cb8c985c9e6f4
SHA1 (patch-gyp_directories.gypi) = eea985113aac5b99bf3c12267ad754817eef5dcc
SHA1 (patch-ipc_ipc__path__manager.cc) = cd1352bd5333f1ed755dcf6221f931fcd0a936d3
SHA1 (patch-ipc_ipc__path__manager__test.cc) = 1b83b513383f184f5ab5a56cce734b7934998533
SHA1 (patch-ipc_named__event.cc) = 8be0b1e5c4675e5b238e07b63e395dbed3c2d125
SHA1 (patch-ipc_unix__ipc.cc) = d5d86910ca610015103a309bba8d6392d96f6ce6
SHA1 (patch-protobuf_protobuf.gyp) = bb1c9684881199936abb8acd73948d1cb174a1ea
SHA1 (patch-renderer_renderer.gyp) = 83493259d6b8cd9ab6871512bebc9616d72132d1
SHA1 (patch-session_session.cc) = 3ae2c8dd056aae4c92d9dbfdac53d9c45261aad2
SHA1 (patch-session_session__test.cc) = 7396e2f4931257d8a33087b1bed5418a038fefa1
SHA1 (patch-third__party_abseil-cpp_absl_base_config.h) = e996fad886e0763c7be7b79735819e668159fd82
SHA1 (patch-third__party_protobuf_post__process__dist.sh) = 8adc79d5d7eed3cbf406ebcfbd5832b7a050ced6
SHA1 (patch-unix_ibus_ibus.gyp) = aa2077cf3c379bf9ce33e97abe478540346782ad
SHA1 (patch-unix_ibus_path__util.cc) = a6aa368d9ce8926e200602fdc370c13e35d5a8cf
BLAKE2s (abseil-abseil-cpp-c2435f8342c2d0ed8101cb43adfd605fdc52dca2.tar.gz) = 00ebf72f25bc06218db107c4bcf3d471c4e015394285658a8a840e5c5643674d
SHA512 (abseil-abseil-cpp-c2435f8342c2d0ed8101cb43adfd605fdc52dca2.tar.gz) = e84f7d84b39fe2c68626da0bf0f1a50d1edcfda321739be0cba8d27758caf0962ff918afdd15ea109ae81e5a167ac0bea769f8780ff9b7517ff5807ca3a0880d
Size (abseil-abseil-cpp-c2435f8342c2d0ed8101cb43adfd605fdc52dca2.tar.gz) = 2120347 bytes
BLAKE2s (chromium-gyp-9ecf45e37677743503342ee4c6a76eaee80e4a7f.tar.gz) = ed98efdbceffd7f4d178db312bb90024228f449bb2445193a50d259af4922233
SHA512 (chromium-gyp-9ecf45e37677743503342ee4c6a76eaee80e4a7f.tar.gz) = 961259c270471524ac371310460ca0fc34cec1cc57f6604915a6771be5f577420a7f1ddccb0d865fb94f5fb1516e0cdbb7f74d05252c5c3782d2b8fe7bf6f7df
Size (chromium-gyp-9ecf45e37677743503342ee4c6a76eaee80e4a7f.tar.gz) = 630462 bytes
BLAKE2s (google-breakpad-216cea7bca53fa441a3ee0d0f5fd339a3a894224.tar.gz) = 9ad9f07697109ee2bf795c327bef55c0d7de9ecdf25a04c999ac3a542904607e
SHA512 (google-breakpad-216cea7bca53fa441a3ee0d0f5fd339a3a894224.tar.gz) = 6c7c667349c1b8e5509ba3a4a78873b87d1f1decefbd01e916e4b34497518c53c418ff5eaf88c9c9ef1815c8ee75112f876eebca4222ebb372fe6e5c2f5ab948
Size (google-breakpad-216cea7bca53fa441a3ee0d0f5fd339a3a894224.tar.gz) = 5276094 bytes
BLAKE2s (google-googletest-58d77fa8070e8cec2dc1ed015d66b454c8d78850.tar.gz) = 975854728adcbc9b8f8642b2d484529024b2f9459a81769bba39b0cc74565f5a
SHA512 (google-googletest-58d77fa8070e8cec2dc1ed015d66b454c8d78850.tar.gz) = d8153c426e4f9c89a74721cc4a24dfcaf319810f4f10aa25fc972f99da2d96d66bc840cf2f51b756fef6b1ca47e8d2c8633f5862cc24e34d57309ad48802124a
Size (google-googletest-58d77fa8070e8cec2dc1ed015d66b454c8d78850.tar.gz) = 855887 bytes
BLAKE2s (hiroyuki-komatsu-japanese-usage-dictionary-e5b3425575734c323e1d947009dd74709437b684.tar.gz) = 41a7c5d9cc2ffcce85239a416580d4595c129e7aca00316462e387b205183d07
SHA512 (hiroyuki-komatsu-japanese-usage-dictionary-e5b3425575734c323e1d947009dd74709437b684.tar.gz) = b7e997a979b6d50e49b9af5dc830ea4df0532f6ab1321b9ef14983f65bb54f1b2967375c82e07957ae7693ebbf43c9b56ecea6bfea8dd1fdaee444bd549d83a7
Size (hiroyuki-komatsu-japanese-usage-dictionary-e5b3425575734c323e1d947009dd74709437b684.tar.gz) = 71051 bytes
BLAKE2s (microsoft-wil-fc5dbf55989fe20351c71d038a8d12de4b397a6d.tar.gz) = bd4eed4a97519b07fc1ac749e92058425232bff17796425b7469a065d3e2e7ce
SHA512 (microsoft-wil-fc5dbf55989fe20351c71d038a8d12de4b397a6d.tar.gz) = 59548723d25e6f3c4a0f750d9874b06a487c15afb9cc9fa3a7a5290cbf79ea42cf36b9906c73dc56c566736141819d7a020b7a3d793724df83a9de5bc61ef674
Size (microsoft-wil-fc5dbf55989fe20351c71d038a8d12de4b397a6d.tar.gz) = 520155 bytes
BLAKE2s (mozc-2.29.5268.102-fdf255839144638b9759b5ad98b5151fd28bb3ca.tar.gz) = 8ddd40b72b20a3c6194f568bd62f0f5fcd69d53666fb66ccf108b9ca7b6f3a20
SHA512 (mozc-2.29.5268.102-fdf255839144638b9759b5ad98b5151fd28bb3ca.tar.gz) = 22ae597eece6dd08f92c315d89b982879c8b4fbd9443abf5ac0837bea2ca7d72172c12b728c7fd6b501ce57e7616c3b159781c205e1f6d671042edb0bb4377f3
Size (mozc-2.29.5268.102-fdf255839144638b9759b5ad98b5151fd28bb3ca.tar.gz) = 38356787 bytes
BLAKE2s (protocolbuffers-protobuf-54a2e5caa9d1a0a714fb2aa99753a1444414292a.tar.gz) = 4c142ebd4c669862e2a68ec2c90db0b9d1b17a74d9dbc379f994b01b5a84aaa1
SHA512 (protocolbuffers-protobuf-54a2e5caa9d1a0a714fb2aa99753a1444414292a.tar.gz) = 05d4c987e790dc1180b1e3555de52fa7b52866b2dea2dff5fca1398edd4a39c32611e7bc074df9749a06bcf2e9ee338379329900b01bc7f3c8caff55412e06ed
Size (protocolbuffers-protobuf-54a2e5caa9d1a0a714fb2aa99753a1444414292a.tar.gz) = 5185168 bytes
SHA1 (patch-.._scripts_install__fcitx5__bazel) = efaa93d33452a485ece1691d616ffe85c3c4c130
SHA1 (patch-.._scripts_install__fcitx5__data) = 5800bcedf4dd16105286bf845a451632006224ef
SHA1 (patch-.._scripts_install__fcitx5__icons) = 76af7bf12720667830881f572d03151d2590d0fc
SHA1 (patch-WORKSPACE.bazel) = bb37f0c23549942bb532345b9231f99f36335aff
SHA1 (patch-base_cpu__stats.cc) = 7e057385f271f7fa14a761d11b9a9663c5ab39b3
SHA1 (patch-base_file_recursive.cc) = 9c6f5a2db32a757fa72b6a86d51e50f09fe9b38e
SHA1 (patch-base_logging.cc) = dbf245a2d3869db3d5c930e9a1ccc581bb7cf216
SHA1 (patch-base_password__manager.cc) = 71469a4ea2b7ba97d4bb105bd7f443ffdb4a027e
SHA1 (patch-base_port.h) = c17c6057d26b91536b78047b85ad860e4cf56c83
SHA1 (patch-base_process.cc) = 65a4aa23cc13dd3d85fc8d7b58058068e930829f
SHA1 (patch-base_system__util.cc) = 893cac24fbdd1fa5ff02a1cb6f6ca2539021c8f7
SHA1 (patch-base_system__util__test.cc) = 0195f3bd34d695ff047bf44152923cdcbc6e61f1
SHA1 (patch-bazel_pkg__config__repository.bzl) = 1f0be3d001e14af31e75052aa6e3e1c8b31b12c3
SHA1 (patch-client_client.cc) = 2094c8d9fa9c3806fc343373ac34b7cfd441c1e8
SHA1 (patch-config.bzl) = 2c35cc8a89ecda745604911b0430df4834548bc3
SHA1 (patch-config_stats__config__util__test.cc) = a51e1c239c54c406b21375be526facf29d924c53
SHA1 (patch-gui_config__dialog_config__dialog.cc) = b7761985e9150da19deeeda9b751d6e65d488071
SHA1 (patch-gui_config__dialog_keybinding__editor.cc) = a2e22f214f943c9d91b091432749f24900675f94
SHA1 (patch-gui_config__dialog_keymap__editor.cc) = 12671f74b38944f908c20a48bae8e83f140732e8
SHA1 (patch-gui_dictionary__tool_dictionary__tool.cc) = eeb6427662b121dfd0fe5cf09b8d3eba4cdc6cd2
SHA1 (patch-gui_word__register__dialog_word__register__dialog.cc) = b90573e75df98a477441bb992722b5dba060b016
SHA1 (patch-ipc_ipc__path__manager.cc) = 1366d8a7258fbe0268f032540bd1dc5edfd350bf
SHA1 (patch-ipc_unix__ipc.cc) = 8ab319397184fed222bc597c6494db65e46066f1
SHA1 (patch-session_session.cc) = 4f2629d6831c2f1caf00f7bcc2b5a377c3db50d3
SHA1 (patch-session_session__handler__scenario__test.cc) = 7f879d70aa88c4a512f1342b16cfd7d8c0c1eec7
SHA1 (patch-session_session__test.cc) = da2d7033d8c3a68c1cf154f4e17a3642f34bcfb3
SHA1 (patch-third__party_abseil-cpp_absl_base_internal_raw__logging.cc) = 26e9978a2b131c935f57e54d5fdd99bc71aa9c82
SHA1 (patch-third__party_protobuf_toolchain_cc__toolchain__config.bzl) = 5ffa624bc7ba6a195f7f6206dc1513c090d18719

View File

@ -0,0 +1,16 @@
$NetBSD: patch-.._scripts_install__fcitx5__bazel,v 1.1 2024/02/10 12:26:01 ryoon Exp $
--- ../scripts/install_fcitx5_bazel.orig 2023-10-26 15:09:25.000000000 +0000
+++ ../scripts/install_fcitx5_bazel
@@ -1,7 +1,7 @@
#!/bin/sh
-PREFIX="${PREFIX:-/usr}"
+PREFIX="${DESTDIR}${PREFIX:-/usr}"
-install -D -m 755 "bazel-bin/unix/fcitx5/fcitx5-mozc.so" "${PREFIX}/lib/fcitx5/fcitx5-mozc.so"
+install -m 755 "bazel-bin/unix/fcitx5/fcitx5-mozc.so" "${PREFIX}/lib/fcitx5/fcitx5-mozc.so"
-PREFIX="${PREFIX}" ../scripts/install_fcitx5_data
-PREFIX="${PREFIX}" ../scripts/install_fcitx5_icons
+#PREFIX="${PREFIX}" ../scripts/install_fcitx5_data
+#PREFIX="${PREFIX}" ../scripts/install_fcitx5_icons

View File

@ -1,17 +1,16 @@
$NetBSD: patch-.._scripts_install__fcitx5,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-.._scripts_install__fcitx5__data,v 1.1 2024/02/10 12:26:01 ryoon Exp $
--- ../scripts/install_fcitx5.orig 2021-02-17 12:18:42.000000000 +0000
+++ ../scripts/install_fcitx5
@@ -1,7 +1,7 @@
#!/bin/sh
--- ../scripts/install_fcitx5_data.orig 2023-10-26 15:09:25.000000000 +0000
+++ ../scripts/install_fcitx5_data
@@ -1,6 +1,6 @@
#!/bin/bash
_bldtype="${_bldtype:-Debug}"
-PREFIX="${PREFIX:-/usr}"
+PREFIX="${DESTDIR}${PREFIX:-/usr}"
for pofile in unix/fcitx5/po/*.po
do
@@ -9,13 +9,13 @@ do
@@ -8,14 +8,14 @@ do
lang=${filename/.po/}
mofile=${pofile/.po/.mo}
msgfmt $pofile -o $mofile
@ -20,12 +19,13 @@ $NetBSD: patch-.._scripts_install__fcitx5,v 1.1 2021/02/17 15:29:51 ryoon Exp $
rm -f $mofile
done
-install -D -m 755 "out_linux/${_bldtype}/fcitx5-mozc.so" "${PREFIX}/lib/fcitx5/fcitx5-mozc.so"
-install -D -m 644 unix/fcitx5/mozc-addon.conf "${PREFIX}/share/fcitx5/addon/mozc.conf"
-install -D -m 644 unix/fcitx5/mozc.conf "${PREFIX}/share/fcitx5/inputmethod/mozc.conf"
+install -m 755 "out_${OSDEST}/${_bldtype}/fcitx5-mozc.so" "${PREFIX}/lib/fcitx5/fcitx5-mozc.so"
+install -m 644 unix/fcitx5/mozc-addon.conf "${PREFIX}/share/fcitx5/addon/mozc.conf"
+install -m 644 unix/fcitx5/mozc.conf "${PREFIX}/share/fcitx5/inputmethod/mozc.conf"
PREFIX="${PREFIX}" ../scripts/install_fcitx5_icons
-PREFIX="${PREFIX}" ../scripts/install_fcitx5_icons
+#PREFIX="${PREFIX}" ../scripts/install_fcitx5_icons
msgfmt --xml -d unix/fcitx5/po/ --template unix/fcitx5/org.fcitx.Fcitx5.Addon.Mozc.metainfo.xml.in -o unix/fcitx5/org.fcitx.Fcitx5.Addon.Mozc.metainfo.xml
install -Dm644 unix/fcitx5/org.fcitx.Fcitx5.Addon.Mozc.metainfo.xml "${PREFIX}/share/metainfo/org.fcitx.Fcitx5.Addon.Mozc.metainfo.xml"

View File

@ -1,10 +1,12 @@
$NetBSD: patch-.._scripts_install__fcitx5__icons,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-.._scripts_install__fcitx5__icons,v 1.2 2024/02/10 12:26:01 ryoon Exp $
--- ../scripts/install_fcitx5_icons.orig 2021-02-17 12:18:42.000000000 +0000
--- ../scripts/install_fcitx5_icons.orig 2023-12-14 10:22:57.168144959 +0000
+++ ../scripts/install_fcitx5_icons
@@ -2,17 +2,17 @@
@@ -1,18 +1,18 @@
#!/bin/sh
PREFIX="${PREFIX:-/usr}"
-PREFIX="${PREFIX:-/usr}"
+PREFIX="${DESTDIR}${PREFIX:-/usr}"
-install -D -m 644 data/images/product_icon_32bpp-128.png "${PREFIX}/share/icons/hicolor/128x128/apps/org.fcitx.Fcitx5.fcitx-mozc.png"
-install -D -m 644 data/images/unix/ime_product_icon_opensource-32.png "${PREFIX}/share/icons/hicolor/32x32/apps/org.fcitx.Fcitx5.fcitx-mozc.png"

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,13 @@
$NetBSD: patch-WORKSPACE.bazel,v 1.1 2024/02/10 12:26:01 ryoon Exp $
--- WORKSPACE.bazel.orig 2023-12-13 11:39:06.509117439 +0000
+++ WORKSPACE.bazel
@@ -118,7 +118,7 @@ new_local_repository(
# Qt for Linux
pkg_config_repository(
name = "qt_linux",
- packages = ["Qt6Core", "Qt6Gui", "Qt6Widgets"],
+ packages = ["Qt6Core", "Qt6Gui", "Qt6Widgets", "Qt6OpenGL", "gl"],
)
# Qt for macOS

View File

@ -1,15 +0,0 @@
$NetBSD: patch-base_base.gyp,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* NetBSD support
--- base/base.gyp.orig 2017-11-02 13:32:45.000000000 +0000
+++ base/base.gyp
@@ -141,7 +141,7 @@
},
},
}],
- ['target_platform=="Linux" and server_dir!=""', {
+ ['(target_platform=="Linux" or target_platform=="NetBSD") and server_dir!=""', {
'defines': [
'MOZC_SERVER_DIRECTORY="<(server_dir)"',
],

View File

@ -1,24 +0,0 @@
$NetBSD: patch-base_clock.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* NetBSD support
--- base/clock.cc.orig 2021-02-15 03:48:53.000000000 +0000
+++ base/clock.cc
@@ -116,7 +116,7 @@ class ClockImpl : public ClockInterface
mach_timebase_info(&timebase_info);
return static_cast<uint64>(1.0e9 * timebase_info.denom /
timebase_info.numer);
-#elif defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM)
+#elif defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM) || defined(OS_NETBSD)
return 1000000uLL;
#else // platforms (OS_WIN, __APPLE__, OS_LINUX, ...)
#error "Not supported platform"
@@ -133,7 +133,7 @@ class ClockImpl : public ClockInterface
return static_cast<uint64>(timestamp.QuadPart);
#elif defined(__APPLE__)
return static_cast<uint64>(mach_absolute_time());
-#elif defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM)
+#elif defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM) || defined(OS_NETBSD)
uint64 sec;
uint32 usec;
GetTimeOfDay(&sec, &usec);

View File

@ -1,48 +1,31 @@
$NetBSD: patch-base_cpu__stats.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-base_cpu__stats.cc,v 1.2 2024/02/10 12:26:01 ryoon Exp $
* NetBSD support
--- base/cpu_stats.cc.orig 2021-02-15 03:48:53.000000000 +0000
--- base/cpu_stats.cc.orig 2023-10-26 12:00:50.000000000 +0000
+++ base/cpu_stats.cc
@@ -122,13 +122,13 @@ float CPUStats::GetSystemCPULoad() {
@@ -116,7 +116,7 @@ float CPUStats::GetSystemCPULoad() {
#endif // __APPLE__
-#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM) || defined(OS_NETBSD)
-#if defined(__linux__) || defined(__wasm__)
+#if defined(__linux__) || defined(__wasm__) || defined(__NetBSD__)
// NOT IMPLEMENTED
// TODO(taku): implement Linux version
// can take the info from /proc/stats
const uint64 total_times = 0;
const uint64 cpu_times = 0;
-#endif // OS_LINUX || OS_ANDROID || OS_WASM
+#endif // OS_LINUX || OS_ANDROID || OS_WASM || OS_NETBSD
return UpdateCPULoad(total_times, cpu_times, &prev_system_total_times_,
&prev_system_cpu_times_);
@@ -175,11 +175,11 @@ float CPUStats::GetCurrentProcessCPULoad
TimeValueTToInt64(task_times_info.system_time);
@@ -169,7 +169,7 @@ float CPUStats::GetCurrentProcessCPULoad
TimeValueTToInt64(task_times_info.system_time);
#endif // __APPLE__
-#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM) || defined(OS_NETBSD)
-#if defined(__linux__) || defined(__wasm__)
+#if defined(__linux__) || defined(__wasm__) || defined(__NetBSD__)
// not implemented
const uint64 total_times = 0;
const uint64 cpu_times = 0;
-#endif // OS_LINUX || OS_ANDROID || OS_WASM
+#endif // OS_LINUX || OS_ANDROID || OS_WASM || OS_NETBSD
return UpdateCPULoad(total_times, cpu_times,
&prev_current_process_total_times_,
@@ -206,9 +206,9 @@ size_t CPUStats::GetNumberOfProcessors()
const uint64_t total_times = 0;
const uint64_t cpu_times = 0;
@@ -200,7 +200,7 @@ size_t CPUStats::GetNumberOfProcessors()
return static_cast<size_t>(basic_info.avail_cpus);
#endif // __APPLE__
-#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM) || defined(OS_NETBSD)
-#if defined(__linux__) || defined(__wasm__)
+#if defined(__linux__) || defined(__wasm__) || defined(__NetBSD__)
// Not implemented
return 1;
-#endif // OS_LINUX
+#endif // OS_LINUX || OS_ANDROID || OS_WASM || OS_NETBSD
}
} // namespace mozc
#endif // __linux__ || __wasm__

View File

@ -0,0 +1,14 @@
$NetBSD: patch-base_file_recursive.cc,v 1.1 2024/02/10 12:26:01 ryoon Exp $
--- base/file/recursive.cc.orig 2023-10-26 12:00:50.000000000 +0000
+++ base/file/recursive.cc
@@ -105,7 +105,8 @@ void UnlinkFileOrLog(const char *path) {
} // namespace
#if (defined(__linux__) && !defined(__ANDROID__)) || \
- (defined(TARGET_OS_OSX) && TARGET_OS_OSX)
+ (defined(TARGET_OS_OSX) && TARGET_OS_OSX) || \
+ defined(__NetBSD__)
absl::Status DeleteRecursively(const zstring_view path) {
// fts is not POSIX, but it's available on both Linux and MacOS.

View File

@ -1,25 +1,17 @@
$NetBSD: patch-base_logging.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-base_logging.cc,v 1.2 2024/02/10 12:26:01 ryoon Exp $
--- base/logging.cc.orig 2021-02-17 12:18:42.000000000 +0000
--- base/logging.cc.orig 2023-10-26 12:00:50.000000000 +0000
+++ base/logging.cc
@@ -53,6 +53,10 @@
#include <sstream>
#include <string>
+#if defined(OS_NETBSD)
+#include <lwp.h>
+#endif
+
#ifdef OS_ANDROID
#include "base/const.h"
#endif // OS_ANDROID
@@ -112,6 +116,9 @@ string Logging::GetLogMessageHeader() {
@@ -114,10 +114,10 @@ std::string Logging::GetLogMessageHeader
#if defined(__wasm__)
return absl::StrCat(timestamp, ::getpid(), " ",
static_cast<unsigned int>(pthread_self()));
-#elif defined(__linux__)
+#elif defined(__linux__) || defined(__NetBSD__)
return absl::StrCat(timestamp, ::getpid(), " ",
// It returns unsigned long.
pthread_self());
+# elif defined(OS_NETBSD)
+ return absl::StrCat(timestamp, ::getpid(), " ",
+ (unsigned long)_lwp_self());
# elif defined(__APPLE__)
# ifdef __LP64__
- pthread_self());
+ (unsigned long)pthread_self());
#elif defined(__APPLE__)
#ifdef __LP64__
return absl::StrCat(timestamp, ::getpid(), " ",

View File

@ -1,15 +0,0 @@
$NetBSD: patch-base_mutex.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* NetBSD support
--- base/mutex.cc.orig 2021-02-15 03:48:53.000000000 +0000
+++ base/mutex.cc
@@ -148,7 +148,7 @@ Mutex::Mutex() {
// PTHREAD_MUTEX_RECURSIVE_NP but Mac OS X 10.5 does not
pthread_mutexattr_t attr;
pthread_mutexattr_init(&attr);
-#if defined(__APPLE__) || defined(OS_WASM)
+#if defined(__APPLE__) || defined(OS_WASM) || defined(OS_NETBSD)
pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
#elif defined(OS_LINUX) || defined(OS_ANDROID)
pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE_NP);

View File

@ -1,15 +1,13 @@
$NetBSD: patch-base_password__manager.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-base_password__manager.cc,v 1.2 2024/02/10 12:26:01 ryoon Exp $
* NetBSD support
--- base/password_manager.cc.orig 2021-02-15 03:48:53.000000000 +0000
--- base/password_manager.cc.orig 2023-10-26 12:00:50.000000000 +0000
+++ base/password_manager.cc
@@ -264,7 +264,7 @@ bool WinMacPasswordManager::RemovePasswo
@@ -265,7 +265,7 @@ bool WinMacPasswordManager::RemovePasswo
// We use plain text file for password storage on Linux. If you port this module
// to other Linux distro, you might want to implement a new password manager
// which adopts some secure mechanism such like gnome-keyring.
-#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM) || defined(OS_NETBSD)
-#if defined(__linux__) || defined(__wasm__)
+#if defined(__linux__) || defined(__wasm__) || defined(__NetBSD__)
typedef PlainPasswordManager DefaultPasswordManager;
#endif // OS_LINUX || OS_ANDROID || OS_WASM
#endif // __linux__ || __wasm__

View File

@ -1,15 +1,21 @@
$NetBSD: patch-base_port.h,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-base_port.h,v 1.2 2024/02/10 12:26:01 ryoon Exp $
--- base/port.h.orig 2021-02-15 05:04:33.000000000 +0000
--- base/port.h.orig 2023-10-26 12:00:50.000000000 +0000
+++ base/port.h
@@ -69,6 +69,10 @@ using std::string;
#define MOZC_OS_DEFINED
#endif // OS_WASM
@@ -45,6 +45,7 @@ enum class PlatformType {
kIPhone, // Darwin-based firmware, devices, or simulator
kWASM, // WASM
kChromeOS, // ChromeOS
+ kNetBSD, // NetBSD
};
+#ifdef OS_NETBSD
+#define MOZC_OS_DEFINED
+#endif // OS_NETBSD
+
#ifndef MOZC_OS_DEFINED
#error "OS_XXX (e.g., OS_WIN) must be defined."
#endif // !MOZC_OS_DEFINED
// kTargetPlatform is the current build target platform.
@@ -68,6 +69,8 @@ inline constexpr PlatformType kTargetPla
#endif // !TARGET_OS_IPHONE
#elif defined(__wasm__) // __APPLE__
inline constexpr PlatformType kTargetPlatform = PlatformType::kWASM;
+#elif defined(__NetBSD__)
+inline constexpr PlatformType kTargetPlatform = PlatformType::kNetBSD;
#else // __wasm__
#error "Unsupported target platform."
#endif // !__wasm__

View File

@ -1,73 +1,28 @@
$NetBSD: patch-base_process.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-base_process.cc,v 1.2 2024/02/10 12:26:01 ryoon Exp $
* NetBSD support
--- base/process.cc.orig 2021-02-15 03:48:53.000000000 +0000
--- base/process.cc.orig 2023-12-13 09:15:36.129469332 +0000
+++ base/process.cc
@@ -46,12 +46,12 @@
#include "base/mac_process.h"
#endif // __APPLE__
-#if defined(OS_LINUX) || defined(OS_ANDROID)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_NETBSD)
#include <fcntl.h>
#include <signal.h>
#include <spawn.h> // for posix_spawn().
#include <sys/types.h>
-#endif // OS_LINUX || OS_ANDROID
+#endif // OS_LINUX || OS_ANDROID || OS_NETBSD
#include <cstdlib>
#include <memory>
@@ -98,12 +98,12 @@ bool Process::OpenBrowser(const std::str
return WinUtil::ShellExecuteInSystemDir(L"open", wurl.c_str(), nullptr);
#endif
L"open", win32::Utf8ToWide(url).c_str(), nullptr);
#endif // _WIN32
-#if defined(OS_LINUX) || defined(OS_ANDROID)
- static const char kBrowserCommand[] = "/usr/bin/xdg-open";
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_NETBSD)
+ static const char kBrowserCommand[] = "@PREFIX@/bin/xdg-open";
-#ifdef __linux__
+#if defined(__linux__) || defined(__NetBSD__)
#ifndef MOZC_BROWSER_COMMAND
// xdg-open which uses kfmclient or gnome-open internally works both on KDE
// and GNOME environments.
return SpawnProcess(kBrowserCommand, url);
-#endif // OS_LINUX || OS_ANDROID
+#endif // OS_LINUX || OS_ANDROID || OS_NETBSD
-#define MOZC_BROWSER_COMMAND "/usr/bin/xdg-open"
+#define MOZC_BROWSER_COMMAND "@PREFIX@/bin/xdg-open"
#endif // MOZC_BROWSER_COMMAND
#ifdef __APPLE__
return MacProcess::OpenBrowserForMac(url);
@@ -185,7 +185,7 @@ bool Process::SpawnProcess(const std::st
return SpawnProcess(MOZC_BROWSER_COMMAND, url);
@@ -387,7 +387,7 @@ bool Process::LaunchErrorMessageDialog(c
}
#endif
#endif // _WIN32
-#if defined(OS_LINUX) || defined(OS_ANDROID)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_NETBSD)
// Do not call posix_spawn() for obviously bad path.
if (!S_ISREG(statbuf.st_mode)) {
LOG(ERROR) << "Not a regular file: " << path;
@@ -208,7 +208,7 @@ bool Process::SpawnProcess(const std::st
// (www.gnu.org/software/libc/manual/html_node/Heap-Consistency-Checking.html)
const int kOverwrite = 0; // Do not overwrite.
::setenv("MALLOC_CHECK_", "2", kOverwrite);
-#endif // OS_LINUX || OS_ANDROID
+#endif // OS_LINUX || OS_ANDROID || OS_NETBSD
pid_t tmp_pid = 0;
// Spawn new process.
@@ -383,7 +383,7 @@ bool Process::LaunchErrorMessageDialog(c
}
#endif // OS_WIN
-#if defined(OS_LINUX) || defined(OS_ANDROID)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_NETBSD)
const char kMozcTool[] = "mozc_tool";
-#if defined(__linux__) && !defined(__ANDROID__)
+#if (defined(__linux__) || defined(__NetBSD__)) && !defined(__ANDROID__)
constexpr char kMozcTool[] = "mozc_tool";
const std::string arg =
"--mode=error_message_dialog --error_type=" + error_type;
@@ -392,7 +392,7 @@ bool Process::LaunchErrorMessageDialog(c
LOG(ERROR) << "cannot launch " << kMozcTool;
return false;
}
-#endif // OS_LINUX || OS_ANDROID
+#endif // OS_LINUX || OS_ANDROID || OS_NETBSD
return true;
}

View File

@ -1,19 +0,0 @@
$NetBSD: patch-base_run__level.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* NetBSD support
--- base/run_level.cc.orig 2021-02-15 03:48:53.000000000 +0000
+++ base/run_level.cc
@@ -38,10 +38,10 @@
#include <unistd.h>
#endif // __APPLE__
-#if defined(OS_LINUX) || defined(OS_ANDROID)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_NETBSD)
#include <sys/types.h>
#include <unistd.h>
-#endif // OS_LINUX || OS_ANDROID
+#endif // OS_LINUX || OS_ANDROID || OS_NETBSD
#include "base/const.h"
#include "base/logging.h"

View File

@ -1,87 +1,62 @@
$NetBSD: patch-base_system__util.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-base_system__util.cc,v 1.2 2024/02/10 12:26:01 ryoon Exp $
--- base/system_util.cc.orig 2021-02-15 05:04:33.000000000 +0000
--- base/system_util.cc.orig 2023-10-26 12:00:50.000000000 +0000
+++ base/system_util.cc
@@ -275,7 +275,7 @@ std::string UserProfileDirectoryImpl::Ge
# endif // GOOGLE_JAPANESE_INPUT_BUILD
@@ -278,7 +278,7 @@ std::string UserProfileDirectoryImpl::Ge
return FileUtil::JoinPath(dir, "Mozc");
#endif // GOOGLE_JAPANESE_INPUT_BUILD
-#elif defined(OS_LINUX)
+#elif defined(OS_LINUX) || defined(OS_NETBSD)
-#elif defined(__linux__)
+#elif defined(__linux__) || defined(__NetBSD__)
// 1. If "$HOME/.mozc" already exists,
// use "$HOME/.mozc" for backward compatibility.
// 2. If $XDG_CONFIG_HOME is defined
@@ -422,7 +422,7 @@ std::string SystemUtil::GetServerDirecto
@@ -429,9 +429,9 @@ std::string SystemUtil::GetServerDirecto
return MacUtil::GetServerDirectory();
#endif // __APPLE__
-#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM) || defined(OS_NETBSD)
# if defined(MOZC_SERVER_DIRECTORY)
return MOZC_SERVER_DIRECTORY;
# else
@@ -499,12 +499,12 @@ std::string SystemUtil::GetUserNameAsStr
return ppw->pw_name;
#endif // OS_ANDROID
-#if defined(__linux__) || defined(__wasm__)
+#if defined(__linux__) || defined(__wasm__) || defined(__NetBSD__)
#ifndef MOZC_SERVER_DIR
-#define MOZC_SERVER_DIR "/usr/lib/mozc"
+#define MOZC_SERVER_DIR "@PREFIX@/libexec"
#endif // MOZC_SERVER_DIR
return MOZC_SERVER_DIR;
#endif // __linux__ || __wasm__
@@ -471,7 +471,7 @@ std::string SystemUtil::GetDocumentDirec
#if defined(__linux__)
-#if defined(__APPLE__) || defined(OS_LINUX) || defined(OS_WASM)
+#if defined(__APPLE__) || defined(OS_LINUX) || defined(OS_WASM) || defined(OS_NETBSD)
struct passwd pw, *ppw;
char buf[1024];
CHECK_EQ(0, getpwuid_r(geteuid(), &pw, buf, sizeof(buf), &ppw));
return pw.pw_name;
-#endif // __APPLE__ || OS_LINUX || OS_WASM
+#endif // __APPLE__ || OS_LINUX || OS_WASM || OS_NETBSD
#ifndef MOZC_DOCUMENT_DIR
-#define MOZC_DOCUMENT_DIR "/usr/lib/mozc/documents"
+#define MOZC_DOCUMENT_DIR "@PREFIX@/libexec/documents"
#endif // MOZC_DOCUMENT_DIR
return MOZC_DOCUMENT_DIR;
// If none of the above platforms is specified, the compiler raises an error
// because of no return value.
@@ -662,13 +662,13 @@ string GetSessionIdString() {
#endif // OS_WIN
@@ -661,7 +661,7 @@ std::string GetSessionIdString() {
#endif // _WIN32
std::string SystemUtil::GetDesktopNameAsString() {
-#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM) || defined(OS_NETBSD)
-#if defined(__linux__) || defined(__wasm__)
+#if defined(__linux__) || defined(__wasm__) || defined(__NetBSD__)
const char *display = Environ::GetEnv("DISPLAY");
if (display == nullptr) {
return "";
}
return display;
-#endif // OS_LINUX || OS_ANDROID || OS_WASM
+#endif // OS_LINUX || OS_ANDROID || OS_WASM || OS_NETBSD
#if defined(__APPLE__)
return "";
@@ -862,10 +862,13 @@ std::string SystemUtil::GetOSVersionStri
#elif defined(OS_LINUX)
@@ -834,6 +834,9 @@ std::string SystemUtil::GetOSVersionStri
#elif defined(__linux__)
const std::string ret = "Linux";
return ret;
-#else // !OS_WIN && !__APPLE__ && !OS_LINUX
+#elif defined(OS_NETBSD)
+#elif defined(__NetBSD__)
+ const std::string ret = "NetBSD";
+ return ret;
+#else // !OS_WIN && !__APPLE__ && !OS_LINUX && !OS_NETBSD
const string ret = "Unknown";
#else // !_WIN32 && !__APPLE__ && !__linux__
const std::string ret = "Unknown";
return ret;
-#endif // OS_WIN, __APPLE__, OS_LINUX
+#endif // OS_WIN, __APPLE__, OS_LINUX, OS_NETBSD
}
void SystemUtil::DisableIME() {
@@ -901,7 +904,7 @@ uint64 SystemUtil::GetTotalPhysicalMemor
@@ -873,7 +876,7 @@ uint64_t SystemUtil::GetTotalPhysicalMem
return total_memory;
#endif // __APPLE__
-#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM) || defined(OS_NETBSD)
# if defined(_SC_PAGESIZE) && defined(_SC_PHYS_PAGES)
const int32 page_size = sysconf(_SC_PAGESIZE);
const int32 number_of_phyisical_pages = sysconf(_SC_PHYS_PAGES);
@@ -914,7 +917,7 @@ uint64 SystemUtil::GetTotalPhysicalMemor
# else // defined(_SC_PAGESIZE) && defined(_SC_PHYS_PAGES)
return 0;
# endif // defined(_SC_PAGESIZE) && defined(_SC_PHYS_PAGES)
-#endif // OS_LINUX || OS_ANDROID || OS_WASM
+#endif // OS_LINUX || OS_ANDROID || OS_WASM || OS_NETBSD
// If none of the above platforms is specified, the compiler raises an error
// because of no return value.
-#if defined(__linux__) || defined(__wasm__)
+#if defined(__linux__) || defined(__wasm__) || defined(__NetBSD__)
#if defined(_SC_PAGESIZE) && defined(_SC_PHYS_PAGES)
const int32_t page_size = sysconf(_SC_PAGESIZE);
const int32_t number_of_phyisical_pages = sysconf(_SC_PHYS_PAGES);

View File

@ -0,0 +1,13 @@
$NetBSD: patch-base_system__util__test.cc,v 1.1 2024/02/10 12:26:01 ryoon Exp $
--- base/system_util_test.cc.orig 2023-12-13 09:25:13.483600855 +0000
+++ base/system_util_test.cc
@@ -59,7 +59,7 @@ TEST_F(SystemUtilTest, GetUserProfileDir
#elif defined(__APPLE__)
// TODO(komatsu): write a test.
-#elif defined(__linux__)
+#elif defined(__linux__) || defined(__NetBSD__)
EnvironMock environ_mock;
FileUtilMock file_util_mock;
SystemUtil::SetUserProfileDirectory("");

View File

@ -1,20 +0,0 @@
$NetBSD: patch-base_thread.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* tweak for NetBSD pthread_setname_np(3)
--- base/thread.cc.orig 2021-02-15 03:48:53.000000000 +0000
+++ base/thread.cc
@@ -145,9 +145,11 @@ void Thread::Start(const std::string &th
// WASM doesn't support setname?
#elif defined(__APPLE__) // !OS_WASM
pthread_setname_np(thread_name.c_str());
-#else // !(OS_WASM | __APPLE__)
+#elif defined(OS_NETBSD)
+ pthread_setname_np(*state_->handle, "%s", (void *)thread_name.c_str());
+#else // !(OS_WASM | __APPLE__ | OS_NETBSD)
pthread_setname_np(*state_->handle, thread_name.c_str());
-#endif // !(OS_WASM | __APPLE__)
+#endif // !(OS_WASM | __APPLE__ | OS_NETBSD)
}
}

View File

@ -0,0 +1,13 @@
$NetBSD: patch-bazel_pkg__config__repository.bzl,v 1.1 2024/02/10 12:26:01 ryoon Exp $
--- bazel/pkg_config_repository.bzl.orig 2023-12-14 08:51:15.941327119 +0000
+++ bazel/pkg_config_repository.bzl
@@ -103,7 +103,7 @@ def _pkg_config_repository_impl(repo_ctx
"hdrs": _make_strlist([item + "/**" for item in includes]),
"copts": _make_strlist(_exec_pkg_config(repo_ctx, "--cflags-only-other")),
"includes": _make_strlist(includes),
- "linkopts": _make_strlist(_exec_pkg_config(repo_ctx, "--libs-only-l")),
+ "linkopts": _make_strlist(_exec_pkg_config(repo_ctx, "--libs")),
}
build_file_data = BUILD_TEMPLATE.format(**data)

View File

@ -1,73 +0,0 @@
$NetBSD: patch-build__mozc.py,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* NetBSD support
--- build_mozc.py.orig 2021-02-15 03:48:53.000000000 +0000
+++ build_mozc.py
@@ -55,6 +55,7 @@ from build_tools.util import CopyFile
from build_tools.util import GetNumberOfProcessors
from build_tools.util import IsLinux
from build_tools.util import IsMac
+from build_tools.util import IsNetBSD
from build_tools.util import IsWindows
from build_tools.util import PrintErrorAndExit
from build_tools.util import RemoveDirectoryRecursively
@@ -96,6 +97,7 @@ def GetBuildShortBaseName(target_platfor
'Windows': 'out_win',
'Mac': 'out_mac',
'Linux': 'out_linux',
+ 'NetBSD': 'out_bsd',
'iOS': 'out_ios',
}
@@ -155,7 +157,7 @@ def GetGypFileNames(options):
# Include subdirectory of win32 and breakpad for Windows
if options.target_platform == 'Windows':
gyp_file_names.extend(glob.glob('%s/win32/*/*.gyp' % SRC_DIR))
- elif options.target_platform == 'Linux':
+ elif options.target_platform == 'Linux' or options.target_platform == 'NetBSD':
gyp_file_names.extend(glob.glob('%s/unix/*/*.gyp' % SRC_DIR))
# Add ibus.gyp if ibus version is >=1.4.1.
if not PkgExists('ibus-1.0 >= 1.4.1'):
@@ -182,6 +184,8 @@ def ParseVerbose(unused_option, unused_o
def AddTargetPlatformOption(parser):
if IsLinux():
default_target = 'Linux'
+ if IsNetBSD():
+ default_target = 'NetBSD'
elif IsWindows():
default_target = 'Windows'
elif IsMac():
@@ -269,6 +273,12 @@ def ExpandMetaTarget(options, meta_targe
SRC_DIR + '/gui/gui.gyp:mozc_tool']
if PkgExists('ibus-1.0 >= 1.4.1'):
targets.append(SRC_DIR + '/unix/ibus/ibus.gyp:ibus_mozc')
+ elif target_platform == 'NetBSD':
+ targets = [SRC_DIR + '/server/server.gyp:mozc_server',
+ SRC_DIR + '/renderer/renderer.gyp:mozc_renderer',
+ SRC_DIR + '/gui/gui.gyp:mozc_tool']
+ if PkgExists('ibus-1.0 >= 1.4.1'):
+ targets.append(SRC_DIR + '/unix/ibus/ibus.gyp:ibus_mozc')
elif target_platform == 'Mac':
targets = [SRC_DIR + '/mac/mac.gyp:codesign_DiskImage']
elif target_platform == 'Windows':
@@ -441,7 +451,8 @@ def GypMain(options, unused_args):
if options.noqt:
gyp_options.extend(['-D', 'use_qt=NO'])
gyp_options.extend(['-D', 'qt_dir='])
- elif target_platform == 'Linux':
+ elif (target_platform == 'Linux' or
+ target_platform == 'NetBSD'):
gyp_options.extend(['-D', 'use_qt=YES'])
gyp_options.extend(['-D', 'qt_dir='])
@@ -482,7 +493,8 @@ def GypMain(options, unused_args):
if IsWindows():
gyp_options.extend(['-G', 'msvs_version=2017'])
- if (target_platform == 'Linux' and
+ if ((target_platform == 'Linux' or
+ target_platform == 'NetBSD') and
'%s/unix/ibus/ibus.gyp' % SRC_DIR in gyp_file_names):
gyp_options.extend(['-D', 'use_libibus=1'])

View File

@ -1,14 +0,0 @@
$NetBSD: patch-build__tools_mozc__version.py,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* NetBSD support
--- build_tools/mozc_version.py.orig 2021-02-15 03:48:53.000000000 +0000
+++ build_tools/mozc_version.py
@@ -69,6 +69,7 @@ TARGET_PLATFORM_TO_DIGIT = {
'iOS': '6',
'iOS_sim': '6',
'Wasm': '7',
+ 'NetBSD': '8',
}
VERSION_PROPERTIES = [

View File

@ -1,18 +0,0 @@
$NetBSD: patch-build__tools_util.py,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* NetBSD support
--- build_tools/util.py.orig 2016-05-15 08:11:10.000000000 +0000
+++ build_tools/util.py
@@ -59,6 +59,11 @@ def IsLinux():
return os.name == 'posix' and os.uname()[0] == 'Linux'
+def IsNetBSD():
+ """Returns true if the platform is NetBSD."""
+ return os.name == 'posix' and os.uname()[0] == 'NetBSD'
+
+
def GetNumberOfProcessors():
"""Returns the number of CPU cores available.

View File

@ -1,24 +1,13 @@
$NetBSD: patch-client_client.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-client_client.cc,v 1.2 2024/02/10 12:26:01 ryoon Exp $
* NetBSD support
--- client/client.cc.orig 2021-02-15 03:48:53.000000000 +0000
--- client/client.cc.orig 2023-12-13 09:23:05.795914176 +0000
+++ client/client.cc
@@ -867,7 +867,7 @@ bool Client::LaunchTool(const std::strin
@@ -897,7 +897,7 @@ bool Client::LaunchTool(const std::strin
return false;
}
-#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_ANDROID)
+#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_NETBSD)
std::string arg = "--mode=" + mode;
-#if defined(_WIN32) || defined(__linux__)
+#if defined(_WIN32) || defined(__linux__) || defined(__NetBSD__)
std::string arg = absl::StrCat("--mode=", mode);
if (!extra_arg.empty()) {
arg += " ";
@@ -877,7 +877,7 @@ bool Client::LaunchTool(const std::strin
LOG(ERROR) << "Cannot execute: " << kMozcTool << " " << arg;
return false;
}
-#endif // OS_WIN || OS_LINUX || OS_ANDROID
+#endif // OS_WIN || OS_LINUX || OS_ANDROID || OS_NETBSD
// TODO(taku): move MacProcess inside SpawnMozcProcess.
// TODO(taku): support extra_arg.
absl::StrAppend(&arg, " ", extra_arg);

View File

@ -1,19 +1,29 @@
$NetBSD: patch-config.bzl,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-config.bzl,v 1.2 2024/02/10 12:26:02 ryoon Exp $
* For pkgsrc layout.
--- config.bzl.orig 2021-02-15 05:04:34.000000000 +0000
--- config.bzl.orig 2023-12-14 11:23:07.849816899 +0000
+++ config.bzl
@@ -30,9 +30,9 @@
@@ -35,16 +35,16 @@
BRANDING = "Mozc"
-LINUX_MOZC_SERVER_DIRECTORY = "/usr/lib/mozc"
-IBUS_MOZC_ICON_PATH = "/usr/share/ibus-mozc/product_icon.png"
-LINUX_MOZC_BROWSER_COMMAND = "/usr/bin/xdg-open"
-LINUX_MOZC_ICONS_DIR = "/usr/share/icons/mozc"
-LINUX_MOZC_SERVER_DIR = "/usr/lib/mozc"
+LINUX_MOZC_BROWSER_COMMAND = "@PREFIX@/bin/xdg-open"
+LINUX_MOZC_ICONS_DIR = "@PREFIX@/share/icons/mozc"
+LINUX_MOZC_SERVER_DIR = "@PREFIX@/libexec"
LINUX_MOZC_DOCUMENT_DIR = LINUX_MOZC_SERVER_DIR + "/documents"
-IBUS_COMPONENT_DIR = "/usr/share/ibus/component"
-IBUS_MOZC_INSTALL_DIR = "/usr/share/ibus-mozc"
+IBUS_COMPONENT_DIR = "@PREFIX@/share/ibus/component"
+IBUS_MOZC_INSTALL_DIR = "@PREFIX@/share/ibus-mozc"
IBUS_MOZC_ICON_PATH = IBUS_MOZC_INSTALL_DIR + "/product_icon.png"
-IBUS_MOZC_PATH = "/usr/lib/ibus-mozc/ibus-engine-mozc"
+LINUX_MOZC_SERVER_DIRECTORY = "@PREFIX@/libexec"
+IBUS_MOZC_ICON_PATH = "@PREFIX@/share/ibus-mozc/product_icon.png"
-EMACS_MOZC_CLIENT_DIR = "/usr/share/emacs/site-lisp/emacs-mozc"
-EMACS_MOZC_HELPER_DIR = "/usr/bin"
+IBUS_MOZC_PATH = "@PREFIX@/libexec/ibus-engine-mozc"
+EMACS_MOZC_CLIENT_DIR = "@PREFIX@/share/emacs/site-lisp/emacs-mozc"
+EMACS_MOZC_HELPER_DIR = "@PREFIX@/bin"
MACOS_BUNDLE_ID_PREFIX = "org.mozc.inputmethod.Japanese"
MACOS_MIN_OS_VER = "10.12"
MACOS_MIN_OS_VER = "11.0"

View File

@ -1,20 +1,13 @@
$NetBSD: patch-config_stats__config__util__test.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-config_stats__config__util__test.cc,v 1.2 2024/02/10 12:26:02 ryoon Exp $
* NetBSD support
--- config/stats_config_util_test.cc.orig 2021-02-15 03:48:53.000000000 +0000
--- config/stats_config_util_test.cc.orig 2023-12-13 09:31:24.408148702 +0000
+++ config/stats_config_util_test.cc
@@ -685,11 +685,11 @@ TEST(StatsConfigUtilTestAndroid, Default
@@ -688,7 +688,7 @@ TEST(StatsConfigUtilTestAndroid, Default
EXPECT_FALSE(StatsConfigUtil::IsEnabled());
#endif // CHANNEL_DEV
}
#endif // OS_ANDROID
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_NETBSD)
-#elif defined(__linux__) // __ANDROID__
+#elif defined(__linux__) || defined(__NetBSD__) // __ANDROID__
TEST(StatsConfigUtilTestLinux, DefaultValueTest) {
EXPECT_FALSE(StatsConfigUtil::IsEnabled());
}
-#endif // OS_LINUX
+#endif // OS_LINUX || OS_NETBSD
#else // !GOOGLE_JAPANESE_INPUT_BUILD
TEST(StatsConfigUtilTestNonOfficialBuild, DefaultValueTest) {

View File

@ -1,50 +1,31 @@
$NetBSD: patch-gui_config__dialog_config__dialog.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-gui_config__dialog_config__dialog.cc,v 1.2 2024/02/10 12:26:02 ryoon Exp $
* NetBSD support
--- gui/config_dialog/config_dialog.cc.orig 2021-02-15 03:48:53.000000000 +0000
--- gui/config_dialog/config_dialog.cc.orig 2023-12-13 09:33:40.403986822 +0000
+++ gui/config_dialog/config_dialog.cc
@@ -104,21 +104,21 @@ ConfigDialog::ConfigDialog()
@@ -105,7 +105,7 @@ ConfigDialog::ConfigDialog()
setWindowTitle(tr("%1 Preferences").arg(GuiUtil::ProductName()));
#endif // __APPLE__
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_NETBSD)
-#if defined(__linux__)
+#if defined(__linux__) || defined(__NetBSD__)
miscDefaultIMEWidget->setVisible(false);
miscAdministrationWidget->setVisible(false);
miscStartupWidget->setVisible(false);
-#endif // OS_LINUX
+#endif // OS_LINUX || OS_NETBSD
#ifdef MOZC_NO_LOGGING
@@ -115,7 +115,7 @@ ConfigDialog::ConfigDialog()
// disable logging options
miscLoggingWidget->setVisible(false);
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_NETBSD)
-#if defined(__linux__)
+#if defined(__linux__) || defined(__NetBSD__)
// The last "misc" tab has no valid configs on Linux
const int kMiscTabIndex = 6;
constexpr int kMiscTabIndex = 6;
configDialogTabWidget->removeTab(kMiscTabIndex);
-#endif // OS_LINUX
+#endif // OS_LINUX || OS_NETBSD
#endif // MOZC_NO_LOGGING
suggestionsSizeSpinBox->setRange(1, 9);
@@ -280,7 +280,7 @@ ConfigDialog::ConfigDialog()
@@ -281,7 +281,7 @@ ConfigDialog::ConfigDialog()
dictionaryPreloadingAndUACLabel->setVisible(false);
#endif // OS_WIN
#endif // _WIN32
-#ifdef OS_LINUX
+#if defined(OS_LINUX) || defined(OS_NETBSD)
-#ifdef __linux__
+#if defined(__linux__) || defined(__NetBSD__)
// On Linux, disable all fields for UsageStats
usageStatsLabel->setEnabled(false);
usageStatsLabel->setVisible(false);
@@ -290,7 +290,7 @@ ConfigDialog::ConfigDialog()
usageStatsMessage->setVisible(false);
usageStatsCheckBox->setEnabled(false);
usageStatsCheckBox->setVisible(false);
-#endif // OS_LINUX
+#endif // OS_LINUX || OS_NETBSD
GuiUtil::ReplaceWidgetLabels(this);

View File

@ -1,24 +1,31 @@
$NetBSD: patch-gui_config__dialog_keybinding__editor.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-gui_config__dialog_keybinding__editor.cc,v 1.2 2024/02/10 12:26:02 ryoon Exp $
* NetBSD support
--- gui/config_dialog/keybinding_editor.cc.orig 2021-02-15 03:48:53.000000000 +0000
--- gui/config_dialog/keybinding_editor.cc.orig 2023-12-13 09:41:52.856716895 +0000
+++ gui/config_dialog/keybinding_editor.cc
@@ -381,7 +381,7 @@ KeyBindingFilter::KeyState KeyBindingFil
@@ -111,7 +111,7 @@ static const auto *kQtKeyModifierNonRequ
{Qt::Key_Hiragana_Katakana, "Hiragana"},
{Qt::Key_Eisu_toggle, "Eisu"},
{Qt::Key_Zenkaku_Hankaku, "Hankaku/Zenkaku"},
-#ifdef __linux__
+#if defined(__linux__) || defined(__NetBSD__)
// On Linux (X / Wayland), Hangul and Hanja are identical with
// ImeOn and ImeOff.
// https://github.com/google/mozc/issues/552
@@ -361,7 +361,7 @@ KeyBindingFilter::KeyState KeyBindingFil
return Encode(result);
}
}
-#elif OS_LINUX
+#elif defined(OS_LINUX) || defined(OS_NETBSD)
-#elif __linux__
+#elif defined(__linux__) || defined(__NetBSD__)
// The XKB defines three types of logical key code: "xkb::Hiragana",
// "xkb::Katakana" and "xkb::Hiragana_Katakana".
// On most of Linux distributions, any key event against physical
@@ -478,7 +478,7 @@ bool KeyBindingFilter::eventFilter(QObje
@@ -460,7 +460,7 @@ bool KeyBindingFilter::eventFilter(QObje
KeyBindingEditor::KeyBindingEditor(QWidget *parent, QWidget *trigger_parent)
: QDialog(parent), trigger_parent_(trigger_parent) {
setupUi(this);
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_NETBSD)
-#if defined(__linux__)
+#if defined(__linux__) || defined(__NetBSD__)
// Workaround for the issue https://github.com/google/mozc/issues/9
// Seems that even after clicking the button for the keybinding dialog,
// the edit is not raised. This might be a bug of setFocusProxy.

View File

@ -0,0 +1,13 @@
$NetBSD: patch-gui_config__dialog_keymap__editor.cc,v 1.1 2024/02/10 12:26:02 ryoon Exp $
--- gui/config_dialog/keymap_editor.cc.orig 2023-12-13 09:38:10.376387232 +0000
+++ gui/config_dialog/keymap_editor.cc
@@ -441,7 +441,7 @@ bool KeyMapEditorDialog::Update() {
absl::StrAppend(keymap_table, invisible_keymap_table_);
if (new_direct_mode_commands != direct_mode_commands_) {
-#if defined(_WIN32) || defined(__linux__)
+#if defined(_WIN32) || defined(__linux__) || defined(__NetBSD__)
QMessageBox::information(
this, windowTitle(),
tr("Changes of keymaps for direct input mode will apply only to "

View File

@ -1,15 +1,13 @@
$NetBSD: patch-gui_dictionary__tool_dictionary__tool.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-gui_dictionary__tool_dictionary__tool.cc,v 1.2 2024/02/10 12:26:02 ryoon Exp $
* NetBSD support
--- gui/dictionary_tool/dictionary_tool.cc.orig 2014-05-21 10:51:22.000000000 +0000
--- gui/dictionary_tool/dictionary_tool.cc.orig 2023-12-13 09:38:40.198993431 +0000
+++ gui/dictionary_tool/dictionary_tool.cc
@@ -347,7 +347,7 @@ DictionaryTool::DictionaryTool(QWidget *
@@ -369,7 +369,7 @@ DictionaryTool::DictionaryTool(QWidget *
#endif // !ENABLE_CLOUD_SYNC
// main window
-#ifndef OS_LINUX
+#if !defined(OS_LINUX) && !defined(OS_NETBSD)
-#ifndef __linux__
+#if !defined(__linux__) && !defined(__NetBSD__)
// For some reason setCentralWidget crashes the dictionary_tool on Linux
// TODO(taku): investigate the cause of the crashes
setCentralWidget(splitter_);

View File

@ -1,15 +0,0 @@
$NetBSD: patch-gui_qt__libraries.gypi,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* NetBSD support
--- gui/qt_libraries.gypi.orig 2017-11-02 13:32:47.000000000 +0000
+++ gui/qt_libraries.gypi
@@ -98,7 +98,7 @@
'$(SDKROOT)/System/Library/Frameworks/Carbon.framework',
]
}],
- ['target_platform=="Linux"', {
+ ['target_platform=="Linux" or target_platform=="NetBSD"', {
'cflags': ['<!@(pkg-config --cflags Qt5Widgets Qt5Gui Qt5Core)'],
'libraries': ['<!@(pkg-config --libs Qt5Widgets Qt5Gui Qt5Core)'],
}],

View File

@ -1,15 +0,0 @@
$NetBSD: patch-gui_qt__moc.gypi,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* NetBSD support
--- gui/qt_moc.gypi.orig 2017-11-02 13:32:47.000000000 +0000
+++ gui/qt_moc.gypi
@@ -33,7 +33,7 @@
'variables': {
'conditions': [
- ['target_platform=="Linux"', {
+ ['target_platform=="Linux" or target_platform=="NetBSD"', {
'moc_path': '<!(pkg-config --variable=host_bins Qt5Core)/moc',
}, 'qt_dir', {
'moc_path': '<(qt_dir)/bin/moc<(EXECUTABLE_SUFFIX)',

View File

@ -1,15 +0,0 @@
$NetBSD: patch-gui_qt__rcc.gypi,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* NetBSD support
--- gui/qt_rcc.gypi.orig 2017-11-02 13:32:47.000000000 +0000
+++ gui/qt_rcc.gypi
@@ -33,7 +33,7 @@
'variables': {
'conditions': [
- ['target_platform=="Linux"', {
+ ['target_platform=="Linux" or target_platform=="NetBSD"', {
'rcc_path': '<!(pkg-config --variable=host_bins Qt5Core)/rcc',
}, 'qt_dir', {
'rcc_path': '<(qt_dir)/bin/rcc<(EXECUTABLE_SUFFIX)',

View File

@ -1,15 +0,0 @@
$NetBSD: patch-gui_qt__uic.gypi,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* NetBSD support
--- gui/qt_uic.gypi.orig 2017-11-02 13:32:47.000000000 +0000
+++ gui/qt_uic.gypi
@@ -33,7 +33,7 @@
'variables': {
'conditions': [
- ['target_platform=="Linux"', {
+ ['target_platform=="Linux" or target_platform=="NetBSD"', {
'uic_path': '<!(pkg-config --variable=host_bins Qt5Core)/uic',
}, 'qt_dir', {
'uic_path': '<(qt_dir)/bin/uic<(EXECUTABLE_SUFFIX)',

View File

@ -1,19 +1,13 @@
$NetBSD: patch-gui_word__register__dialog_word__register__dialog.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-gui_word__register__dialog_word__register__dialog.cc,v 1.2 2024/02/10 12:26:02 ryoon Exp $
* NetBSD support
* Fix from https://github.com/google/mozc/issues/460
--- gui/word_register_dialog/word_register_dialog.cc.orig 2021-02-15 03:48:53.000000000 +0000
--- gui/word_register_dialog/word_register_dialog.cc.orig 2023-12-13 09:33:09.127301725 +0000
+++ gui/word_register_dialog/word_register_dialog.cc
@@ -97,9 +97,9 @@ QString GetEnv(const char *envname) {
@@ -100,7 +100,7 @@ QString GetEnv(const char *envname) {
}
return QLatin1String("");
#endif // OS_WIN
-#if defined(__APPLE__) || defined(OS_LINUX)
+#if defined(__APPLE__) || defined(OS_LINUX) || defined(OS_NETBSD)
#endif // _WIN32
-#if defined(__APPLE__) || defined(__linux__)
+#if defined(__APPLE__) || defined(__linux__) || defined(__NetBSD__)
return QString::fromUtf8(::getenv(envname));
-#endif // __APPLE__ or OS_LINUX
+#endif // __APPLE__ or OS_LINUX or OS_NETBSD
#endif // __APPLE__ or __linux__
// TODO(team): Support other platforms.
return QLatin1String("");
}

View File

@ -1,68 +0,0 @@
$NetBSD: patch-gyp_common.gypi,v 1.3 2021/02/27 19:13:27 ryoon Exp $
* NetBSD support
--- gyp/common.gypi.orig 2021-02-15 05:04:33.000000000 +0000
+++ gyp/common.gypi
@@ -93,6 +93,14 @@
'-fstack-protector',
'--param=ssp-buffer-size=4',
],
+ # netbsd_cflags will be used for NetBSD.
+ 'netbsd_cflags': [
+ '<@(gcc_cflags)',
+ '-fPIC',
+ '-D_NETBSD_SOURCE',
+ '-fno-exceptions',
+ '<!(echo $CFLAGS)',
+ ],
# mac_cflags will be used in Mac.
# Xcode 4.5 which we are currently using does not support ssp-buffer-size.
# TODO(horo): When we can use Xcode 4.6 which supports ssp-buffer-size,
@@ -128,6 +136,12 @@
'compiler_host': 'clang',
'compiler_host_version_int': 304, # Clang 3.4 or higher
}],
+ ['target_platform=="NetBSD"', {
+ 'compiler_target': 'gcc',
+ 'compiler_target_version_int': 409, # GCC 4.9 or higher
+ 'compiler_host': 'gcc',
+ 'compiler_host_version_int': 409, # GCC 4.9 or higher
+ }],
],
},
'target_defaults': {
@@ -318,6 +332,24 @@
}],
],
}],
+ ['OS=="netbsd"', {
+ 'defines': [
+ 'OS_NETBSD',
+ ],
+ 'cflags': [
+ '<@(netbsd_cflags)',
+ '-fPIC',
+ '-fno-exceptions',
+ ],
+ 'cflags_cc': [
+ # We use deprecated <hash_map> and <hash_set> instead of upcoming
+ # <unordered_map> and <unordered_set>.
+ '-Wno-deprecated',
+ ],
+ 'ldflags': [
+ '-pthread',
+ ],
+ }],
['OS=="mac"', {
'defines': [
'__APPLE__',
@@ -410,7 +442,7 @@
],
},
'conditions': [
- ['target_platform=="Linux"', {
+ ['target_platform=="Linux" or target_platform=="NetBSD"', {
'make_global_settings': [
['AR', '<!(which ar)'],
['CC', '<!(which clang)'],

View File

@ -1,13 +0,0 @@
$NetBSD: patch-gyp_directories.gypi,v 1.1 2021/02/17 15:29:51 ryoon Exp $
--- gyp/directories.gypi.orig 2021-02-15 05:04:33.000000000 +0000
+++ gyp/directories.gypi
@@ -43,7 +43,7 @@
# server_dir represents the directory where mozc_server is
# installed. This option is only for Linux.
- 'server_dir%': '/usr/lib/mozc',
+ 'server_dir%': '@PREFIX@/libexec',
# Represents the directory where the source code of protobuf is
# extracted. This value is ignored when 'use_libprotobuf' is 1.

View File

@ -1,42 +1,13 @@
$NetBSD: patch-ipc_ipc__path__manager.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-ipc_ipc__path__manager.cc,v 1.2 2024/02/10 12:26:02 ryoon Exp $
* NetBSD support
--- ipc/ipc_path_manager.cc.orig 2021-02-15 03:48:53.000000000 +0000
--- ipc/ipc_path_manager.cc.orig 2023-12-13 09:35:34.871003763 +0000
+++ ipc/ipc_path_manager.cc
@@ -53,6 +53,11 @@
@@ -389,7 +389,7 @@ bool IPCPathManager::IsValidServer(uint3
server_pid_ = pid;
#endif // __APPLE__
#endif // OS_WIN
+#if defined(OS_NETBSD)
+#include <sys/param.h>
+#include <sys/sysctl.h>
+#endif
+
#include <cstdlib>
#include <map>
#ifdef OS_WIN
@@ -425,6 +430,23 @@ bool IPCPathManager::IsValidServer(uint3
return true;
}
+#if defined(OS_NETBSD)
+ int name[] = { CTL_KERN, KERN_PROC_ARGS, static_cast<int>(pid) };
+ size_t data_len = 0;
+ if (sysctl(name, arraysize(name), NULL,
+ &data_len, NULL, 0) < 0) {
+ LOG(ERROR) << "sysctl KERN_PROC_ARGS failed";
+ return false;
+ }
+
+ server_path_.resize(data_len);
+ if (sysctl(name, arraysize(name), &server_path_[0],
+ &data_len, NULL, 0) < 0) {
+ LOG(ERROR) << "sysctl KERN_PROC_ARGS failed";
+ return false;
+ }
+#endif // OS_NETBSD
+
#ifdef OS_LINUX
if ((server_path + " (deleted)") == server_path_) {
LOG(WARNING) << server_path << " on disk is modified";
-#ifdef __linux__
+#if defined(__linux__) || defined(__NetBSD__)
// load from /proc/<pid>/exe
std::string proc = absl::StrFormat("/proc/%u/exe", pid);
char filename[512];

View File

@ -1,15 +0,0 @@
$NetBSD: patch-ipc_ipc__path__manager__test.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* NetBSD support
--- ipc/ipc_path_manager_test.cc.orig 2013-07-17 02:37:50.000000000 +0000
+++ ipc/ipc_path_manager_test.cc
@@ -103,7 +103,7 @@ TEST_F(IPCPathManagerTest, IPCPathManage
EXPECT_FALSE(manager->GetServerProductVersion().empty());
EXPECT_GT(manager->GetServerProcessId(), 0);
EXPECT_EQ(t.path(), path);
-#ifdef OS_LINUX
+#if defined(OS_LINUX) || defined(OS_NETBSD)
// On Linux, |path| should be abstract (see man unix(7) for details.)
ASSERT_FALSE(path.empty());
EXPECT_EQ('\0', path[0]);

View File

@ -1,15 +0,0 @@
$NetBSD: patch-ipc_named__event.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* sem_open(..., 0) is not supported for NetBSD at least.
--- ipc/named_event.cc.orig 2021-02-15 03:48:53.000000000 +0000
+++ ipc/named_event.cc
@@ -325,7 +325,7 @@ int NamedEventListener::WaitEventOrProce
NamedEventNotifier::NamedEventNotifier(const char *name) : sem_(SEM_FAILED) {
const std::string key_filename = NamedEventUtil::GetEventPath(name);
- sem_ = ::sem_open(key_filename.c_str(), 0);
+ sem_ = ::sem_open(key_filename.c_str(), O_CREAT);
if (sem_ == SEM_FAILED) {
LOG(ERROR) << "sem_open failed: " << ::strerror(errno);
}

View File

@ -1,35 +1,29 @@
$NetBSD: patch-ipc_unix__ipc.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-ipc_unix__ipc.cc,v 1.2 2024/02/10 12:26:02 ryoon Exp $
* NetBSD support
--- ipc/unix_ipc.cc.orig 2021-02-15 03:48:53.000000000 +0000
--- ipc/unix_ipc.cc.orig 2023-10-26 12:00:50.000000000 +0000
+++ ipc/unix_ipc.cc
@@ -28,7 +28,7 @@
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// OS_LINUX only. Note that OS_ANDROID/OS_WASM don't reach here.
-#if defined(OS_LINUX)
+#if defined(OS_LINUX) || defined(OS_NETBSD)
// __linux__ only. Note that __ANDROID__/__wasm__ don't reach here.
-#if defined(__linux__)
+#if defined(__linux__) || defined(__NetBSD__)
#include <arpa/inet.h>
#include <fcntl.h>
@@ -125,7 +125,7 @@ bool IsPeerValid(int socket, pid_t *pid)
// sometimes doesn't support the getsockopt(sock, SOL_SOCKET, SO_PEERCRED)
// system call.
// TODO(yusukes): Add implementation for ARM Linux.
-#ifndef __arm__
+#if !defined(__arm__) && !defined(OS_NETBSD)
#include <sys/select.h>
@@ -119,6 +119,7 @@ bool IsWriteTimeout(int socket, absl::Du
bool IsPeerValid(int socket, pid_t *pid) {
*pid = 0;
+#if defined(__linux__)
struct ucred peer_cred;
int peer_cred_len = sizeof(peer_cred);
if (getsockopt(socket, SOL_SOCKET, SO_PEERCRED,
@@ -141,7 +141,23 @@ bool IsPeerValid(int socket, pid_t *pid)
if (getsockopt(socket, SOL_SOCKET, SO_PEERCRED, &peer_cred,
@@ -133,7 +134,21 @@ bool IsPeerValid(int socket, pid_t *pid)
}
*pid = peer_cred.pid;
-#endif // __arm__
+#endif // __arm__ || OS_NETBSD
+
+#if defined(OS_NETBSD)
+#elif defined(__NetBSD__)
+ struct unpcbid peer_cred;
+ int peer_cred_len = sizeof(peer_cred);
+ if (getsockopt(socket, 0, LOCAL_PEEREID,
@ -38,18 +32,12 @@ $NetBSD: patch-ipc_unix__ipc.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
+ LOG(ERROR) << "cannot get peer credential. Not a Unix socket?";
+ return false;
+ }
+
+ if (peer_cred.unp_euid!= ::geteuid()) {
+ LOG(WARNING) << "uid mismatch." << peer_cred.unp_euid << "!=" << ::geteuid();
+ return false;
+ }
+#endif
return true;
}
@@ -468,4 +484,4 @@ void IPCServer::Terminate() { server_thr
} // namespace mozc
-#endif // OS_LINUX
+#endif // OS_LINUX || OS_NETBSD

View File

@ -1,17 +0,0 @@
$NetBSD: patch-protobuf_protobuf.gyp,v 1.1 2021/02/27 04:19:46 ryoon Exp $
* Pass LDFLAGS from pkgsrc.
Fix -lprotobuf is not found error.
--- protobuf/protobuf.gyp.orig 2021-02-15 05:04:33.000000000 +0000
+++ protobuf/protobuf.gyp
@@ -156,6 +156,9 @@
'libraries': [
'-lprotobuf',
],
+ 'ldflags': [
+ '<!(echo $LDFLAGS)',
+ ],
},
},
{ # else

View File

@ -1,24 +0,0 @@
$NetBSD: patch-renderer_renderer.gyp,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* Support NetBSD.
--- renderer/renderer.gyp.orig 2021-02-15 05:04:33.000000000 +0000
+++ renderer/renderer.gyp
@@ -193,7 +193,7 @@
'win32_renderer_core_test',
],
}],
- ['target_platform=="Linux" and enable_gtk_renderer==1', {
+ ['(target_platform=="Linux" or target_platform=="NetBSD") and enable_gtk_renderer==1', {
'dependencies': [
'gtk_renderer_test',
],
@@ -518,7 +518,7 @@
},
],
}],
- ['target_platform=="Linux" and enable_gtk_renderer==1', {
+ ['(target_platform=="Linux" or target_platform=="NetBSD") and enable_gtk_renderer==1', {
'targets': [
{
# Meta target to set up build environment for gtk+-2.0.

View File

@ -1,36 +1,22 @@
$NetBSD: patch-session_session.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-session_session.cc,v 1.2 2024/02/10 12:26:02 ryoon Exp $
* NetBSD support
--- session/session.cc.orig 2021-02-15 03:48:53.000000000 +0000
--- session/session.cc.orig 2023-12-13 09:32:05.846503615 +0000
+++ session/session.cc
@@ -230,9 +230,9 @@ void Session::InitContext(ImeContext *co
context->SetConfig(&context->GetConfig());
#if defined(OS_ANDROID) || defined(OS_IOS) || defined(OS_LINUX) || \
- defined(OS_WASM)
+ defined(OS_WASM) || defined(OS_NETBSD)
@@ -241,7 +241,7 @@ void Session::InitContext(ImeContext *co
// Tests for session layer (session_handler_scenario_test, etc) can be
// unstable.
#if (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(__linux__) || \
- defined(__wasm__)
+ defined(__wasm__) || defined(__NetBSD__)
context->mutable_converter()->set_use_cascading_window(false);
-#endif // OS_ANDROID || OS_IOS || OS_LINUX || OS_WASM
+#endif // OS_ANDROID || OS_IOS || OS_LINUX || OS_WASM || OS_NETBSD
#endif // TARGET_OS_IPHONE || __linux__ || __wasm__
}
void Session::PushUndoContext() {
@@ -964,14 +964,14 @@ void Session::UpdatePreferences(commands
@@ -973,7 +973,7 @@ void Session::UpdatePreferences(commands
}
#if defined(OS_ANDROID) || defined(OS_IOS) || defined(OS_LINUX) || \
- defined(OS_WASM)
+ defined(OS_WASM) || defined(OS_NETBSD)
#if (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(__linux__) || \
- defined(__wasm__)
+ defined(__wasm__) || defined(__NetBSD__)
context_->mutable_converter()->set_use_cascading_window(false);
-#else // OS_LINUX || OS_ANDROID || OS_WASM
+#else // OS_LINUX || OS_ANDROID || OS_WASM || OS_NETBSD
#else // TARGET_OS_IPHONE || __linux__ || __wasm__
if (config.has_use_cascading_window()) {
context_->mutable_converter()->set_use_cascading_window(
config.use_cascading_window());
}
-#endif // OS_ANDROID || OS_IOS || OS_LINUX || OS_WASM
+#endif // OS_ANDROID || OS_IOS || OS_LINUX || OS_WASM || OS_NETBSD
}
bool Session::IMEOn(commands::Command *command) {

View File

@ -0,0 +1,13 @@
$NetBSD: patch-session_session__handler__scenario__test.cc,v 1.1 2024/02/10 12:26:02 ryoon Exp $
--- session/session_handler_scenario_test.cc.orig 2023-12-13 09:39:32.677437804 +0000
+++ session/session_handler_scenario_test.cc
@@ -172,7 +172,7 @@ const char *kUsageStatsScenarioFileList[
DATA_DIR "select_minor_prediction.txt",
DATA_DIR "select_prediction.txt",
DATA_DIR "select_t13n_by_key.txt",
-#ifndef __linux__
+#if !defined(__linux__) && !defined(__NetBSD__)
// This test requires cascading window.
// TODO(hsumita): Removes this ifndef block.
DATA_DIR "select_t13n_on_cascading_window.txt",

View File

@ -1,71 +1,31 @@
$NetBSD: patch-session_session__test.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
$NetBSD: patch-session_session__test.cc,v 1.2 2024/02/10 12:26:02 ryoon Exp $
* NetBSD support
--- session/session_test.cc.orig 2021-02-15 03:48:53.000000000 +0000
--- session/session_test.cc.orig 2023-12-13 09:36:18.413874507 +0000
+++ session/session_test.cc
@@ -1974,11 +1974,11 @@ TEST_F(SessionTest, UpdatePreferences) {
@@ -2011,7 +2011,7 @@ TEST_F(SessionTest, UpdatePreferences) {
const size_t cascading_cand_size =
command.output().candidates().candidate_size();
-#if defined(OS_LINUX) || defined(OS_ANDROID) || OS_WASM
+#if defined(OS_LINUX) || defined(OS_ANDROID) || OS_WASM || defined(OS_NETBSD)
EXPECT_EQ(no_cascading_cand_size, cascading_cand_size);
-#else // defined(OS_LINUX) || defined(OS_ANDROID) || OS_WASM
+#else // defined(OS_LINUX) || defined(OS_ANDROID) || OS_WASM || defined(OS_NETBSD)
-#if defined(__linux__) || defined(__wasm__)
+#if defined(__linux__) || defined(__wasm__) || defined(__NetBSD__)
EXPECT_EQ(cascading_cand_size, no_cascading_cand_size);
#else // __linux__ || __wasm__
EXPECT_GT(no_cascading_cand_size, cascading_cand_size);
-#endif // defined(OS_LINUX) || defined(OS_ANDROID) || OS_WASM
+#endif // defined(OS_LINUX) || defined(OS_ANDROID) || OS_WASM || defined(OS_NETBSD)
@@ -2200,7 +2200,7 @@ TEST_F(SessionTest, OutputAllCandidateWo
command.Clear();
session->ConvertCancel(&command);
@@ -2149,7 +2149,7 @@ TEST_F(SessionTest, OutputAllCandidateWo
EXPECT_EQ(0, output.all_candidate_words().focused_index());
EXPECT_EQ(commands::CONVERSION, output.all_candidate_words().category());
-#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM) || defined(OS_NETBSD)
EXPECT_EQ(output.all_candidate_words().focused_index(), 0);
EXPECT_EQ(output.all_candidate_words().category(), commands::CONVERSION);
-#if defined(__linux__) || defined(__wasm__)
+#if defined(__linux__) || defined(__wasm__) || defined(__NetBSD__)
// Cascading window is not supported on Linux, so the size of
// candidate words is different from other platform.
// TODO(komatsu): Modify the client for Linux to explicitly change
@@ -2159,13 +2159,13 @@ TEST_F(SessionTest, OutputAllCandidateWo
// "" (t13n), "" (t13n), "" (t13n),
// "アイウエオ" (t13n) ]
EXPECT_EQ(9, output.all_candidate_words().candidates_size());
-#else // OS_LINUX || OS_ANDROID || OS_WASM
+#else // OS_LINUX || OS_ANDROID || OS_WASM || OS_NETBSD
// [ "あいうえお", "アイウエオ", "アイウエオ" (t13n), "あいうえお" (t13n),
// "aiueo" (t13n), "AIUEO" (t13n), "Aieuo" (t13n),
// "" (t13n), "" (t13n), "" (t13n),
// "アイウエオ" (t13n) ]
EXPECT_EQ(11, output.all_candidate_words().candidates_size());
-#endif // OS_LINUX || OS_ANDROID || OS_WASM
+#endif // OS_LINUX || OS_ANDROID || OS_WASM || OS_NETBSD
}
@@ -2228,7 +2228,7 @@ TEST_F(SessionTest, OutputAllCandidateWo
command.Clear();
@@ -2177,7 +2177,7 @@ TEST_F(SessionTest, OutputAllCandidateWo
EXPECT_EQ(1, output.all_candidate_words().focused_index());
EXPECT_EQ(commands::CONVERSION, output.all_candidate_words().category());
-#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM)
+#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_WASM) || defined(OS_NETBSD)
EXPECT_EQ(output.all_candidate_words().focused_index(), 1);
EXPECT_EQ(output.all_candidate_words().category(), commands::CONVERSION);
-#if defined(__linux__) || defined(__wasm__)
+#if defined(__linux__) || defined(__wasm__) || defined(__NetBSD__)
// Cascading window is not supported on Linux, so the size of
// candidate words is different from other platform.
// TODO(komatsu): Modify the client for Linux to explicitly change
@@ -2187,13 +2187,13 @@ TEST_F(SessionTest, OutputAllCandidateWo
// "" (t13n), "" (t13n), "" (t13n),
// "アイウエオ" (t13n) ]
EXPECT_EQ(9, output.all_candidate_words().candidates_size());
-#else // OS_LINUX || OS_ANDROID || OS_WASM
+#else // OS_LINUX || OS_ANDROID || OS_WASM || OS_NETBSD
// [ "あいうえお", "アイウエオ",
// "aiueo" (t13n), "AIUEO" (t13n), "Aieuo" (t13n),
// "" (t13n), "" (t13n), "" (t13n),
// "アイウエオ" (t13n) ]
EXPECT_EQ(11, output.all_candidate_words().candidates_size());
-#endif // OS_LINUX || OS_ANDROID || OS_WASM
+#endif // OS_LINUX || OS_ANDROID || OS_WASM || OS_NETBSD
}
}

View File

@ -1,15 +0,0 @@
$NetBSD: patch-third__party_abseil-cpp_absl_base_config.h,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* Support NetBSD.
--- third_party/abseil-cpp/absl/base/config.h.orig 2021-02-15 05:04:34.000000000 +0000
+++ third_party/abseil-cpp/absl/base/config.h
@@ -364,7 +364,7 @@ static_assert(ABSL_INTERNAL_INLINE_NAMES
#elif defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || \
defined(__ros__) || defined(__native_client__) || defined(__asmjs__) || \
defined(__wasm__) || defined(__Fuchsia__) || defined(__sun) || \
- defined(__ASYLO__)
+ defined(__ASYLO__) || defined(__NetBSD__)
#define ABSL_HAVE_MMAP 1
#endif

View File

@ -0,0 +1,14 @@
$NetBSD: patch-third__party_abseil-cpp_absl_base_internal_raw__logging.cc,v 1.1 2024/02/10 12:26:02 ryoon Exp $
--- third_party/abseil-cpp/absl/base/internal/raw_logging.cc.orig 2023-12-13 09:40:20.988739236 +0000
+++ third_party/abseil-cpp/absl/base/internal/raw_logging.cc
@@ -39,7 +39,8 @@
// this, consider moving both to config.h instead.
#if defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || \
defined(__Fuchsia__) || defined(__native_client__) || \
- defined(__OpenBSD__) || defined(__EMSCRIPTEN__) || defined(__ASYLO__)
+ defined(__OpenBSD__) || defined(__EMSCRIPTEN__) || defined(__ASYLO__) || \
+ defined(__NetBSD__)
#include <unistd.h>

View File

@ -1,15 +0,0 @@
$NetBSD: patch-third__party_protobuf_post__process__dist.sh,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* appease pkglint
--- third_party/protobuf/post_process_dist.sh.orig 2017-11-02 13:35:43.000000000 +0000
+++ third_party/protobuf/post_process_dist.sh
@@ -15,7 +15,7 @@
# non-testdata .txt files are converted to Windows-style line endings.
# 5) Cleans up after itself.
-if [ "$1" == "" ]; then
+if [ "$1" = "" ]; then
echo "USAGE: $0 DISTFILE" >&2
exit 1
fi

View File

@ -0,0 +1,13 @@
$NetBSD: patch-third__party_protobuf_toolchain_cc__toolchain__config.bzl,v 1.1 2024/02/10 12:26:02 ryoon Exp $
--- third_party/protobuf/toolchain/cc_toolchain_config.bzl.orig 2023-12-13 11:45:04.226274104 +0000
+++ third_party/protobuf/toolchain/cc_toolchain_config.bzl
@@ -206,7 +206,7 @@ def _impl(ctx):
cxx_builtin_include_directories = [
ctx.attr.sysroot,
ctx.attr.extra_include,
- "/usr/local/include",
+ "@PREFIX@/include",
"/usr/local/lib/clang",
],
features = features,

View File

@ -1,17 +0,0 @@
$NetBSD: patch-unix_ibus_ibus.gyp,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* use ${PREFIX} paths
--- unix/ibus/ibus.gyp.orig 2017-11-02 13:32:47.000000000 +0000
+++ unix/ibus/ibus.gyp
@@ -31,8 +31,8 @@
'variables': {
'relative_dir': 'unix/ibus',
'gen_out_dir': '<(SHARED_INTERMEDIATE_DIR)/<(relative_dir)',
- 'ibus_mozc_icon_path%': '/usr/share/ibus-mozc/product_icon.png',
- 'ibus_mozc_path%': '/usr/lib/ibus-mozc/ibus-engine-mozc',
+ 'ibus_mozc_icon_path%': '@PREFIX@/share/ibus-mozc/product_icon.png',
+ 'ibus_mozc_path%': '@PREFIX@/libexec/ibus-engine-mozc',
# enable_x11_selection_monitor represents if ibus_mozc uses X11 selection
# monitor or not.
'enable_x11_selection_monitor%': 1,

View File

@ -1,15 +0,0 @@
$NetBSD: patch-unix_ibus_path__util.cc,v 1.1 2021/02/17 15:29:51 ryoon Exp $
* use ${PREFIX} path
--- unix/ibus/path_util.cc.orig 2017-11-02 13:32:47.000000000 +0000
+++ unix/ibus/path_util.cc
@@ -30,7 +30,7 @@
#include "unix/ibus/path_util.h"
namespace {
-const char kInstalledDirectory[] = "/usr/share/ibus-mozc";
+const char kInstalledDirectory[] = "@PREFIX@/share/ibus-mozc";
}
namespace mozc {