Name: fcitx5-mcbopomofo Version: 2.9.2 Release: 1 License: MIT Summary: McBopomofo for fcitx5 (standard library) URL: https://github.com/openvanilla/fcitx5-mcbopomofo Source0: %{url}/archive/refs/tags/%{version}/fcitx5-mcbopomofo-%{version}.tar.gz BuildRequires: git BuildRequires: gcc g++ BuildRequires: fcitx5 BuildRequires: fcitx5-configtool BuildRequires: fcitx5-devel BuildRequires: cmake BuildRequires: extra-cmake-modules BuildRequires: gettext BuildRequires: fmt-devel BuildRequires: libicu-devel BuildRequires: json-c-devel BuildRequires: ninja-build BuildRequires: clang-tools-extra %description This package provides the standard fcitx5-mcbopomofo library, compatible with all CPUs for a given architecture. %package common Summary: Common data files for fcitx5-mcbopomofo BuildArch: noarch Requires: fcitx5 %description common This package contains the shared data files, such as configurations, icons, and locale data, used by the fcitx5-mcbopomofo input method. %ifarch x86_64 %package simd Summary: AVX-512 optimized library for fcitx5-mcbopomofo Requires: %{name}-common = %{version}-%{release} Provides: %{name} = %{version}-%{release} Conflicts: %{name} = %{version}-%{release} Obsoletes: %{name} < %{version}-%{release} ExclusiveArch: x86_64 %description simd This package provides an AVX-512 optimized library for fcitx5-mcbopomofo. It replaces the standard library package for users with compatible CPUs. %endif %prep %autosetup -n %{name}-%{version} %build mkdir build pushd build cmake ../ -GNinja -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release ninja popd %ifarch x86_64 mkdir build-simd pushd build-simd cmake ../ -GNinja -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_CXX_FLAGS="-march=x86-64-v4" -DENABLE_EXPERIMENTAL_SIMD_SUPPORT_AVX512=1 ninja popd %endif %install pushd build DESTDIR=%{buildroot} ninja install popd %files common %{_datadir}/fcitx5/addon/mcbopomofo.conf %{_datadir}/fcitx5/data/* %{_datadir}/fcitx5/inputmethod/mcbopomofo.conf %{_datadir}/fcitx5/inputmethod/mcbopomofo-plain.conf %{_datadir}/icons/hicolor/*/apps/*.png %{_datadir}/locale/*/LC_MESSAGES/fcitx5-mcbopomofo.mo %{_metainfodir}/org.fcitx.Fcitx5.Addon.McBopomofo.metainfo.xml %files Requires: %{name}-common = %{version}-%{release} %{_libdir}/fcitx5/mcbopomofo.so %ifarch x86_64 %install -n fcitx5-mcbopomofo-simd pushd build-simd DESTDIR=%{buildroot} ninja install popd rm -rf %{buildroot}%{_datadir} rm -rf %{buildroot}%{_metainfodir} %files simd %{_libdir}/fcitx5/mcbopomofo.so %endif %changelog %autochangelog