diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/anthy-fix-emacs29.patch b/anthy-fix-emacs29.patch new file mode 100644 index 0000000..ed1dcfc --- /dev/null +++ b/anthy-fix-emacs29.patch @@ -0,0 +1,12 @@ +diff -pruN anthy-9100h.orig/src-util/anthy.el anthy-9100h/src-util/anthy.el +--- anthy-9100h.orig/src-util/anthy.el 2023-11-28 16:31:37.621098068 +0900 ++++ anthy-9100h/src-util/anthy.el 2023-11-28 16:33:42.330200131 +0900 +@@ -71,7 +71,7 @@ + (defvar anthy-highlight-face nil) + (defvar anthy-underline-face nil) + (copy-face 'highlight 'anthy-highlight-face) +-(set-face-underline-p 'anthy-highlight-face t) ++(set-face-underline 'anthy-highlight-face t) + (copy-face 'underline 'anthy-underline-face) + + ;; diff --git a/anthy-fix-eol.patch b/anthy-fix-eol.patch new file mode 100644 index 0000000..87cb772 --- /dev/null +++ b/anthy-fix-eol.patch @@ -0,0 +1,12 @@ +diff -pruN anthy-9100h.orig/src-worddic/record.c anthy-9100h/src-worddic/record.c +--- anthy-9100h.orig/src-worddic/record.c 2009-01-27 21:11:21.000000000 +0900 ++++ anthy-9100h/src-worddic/record.c 2024-09-19 16:45:00.587508410 +0900 +@@ -1043,7 +1043,7 @@ out: + if (s) { + s[len] = '\0'; + } +- *eol = (c == '\n'); ++ *eol = (c == '\n' || c == EOF); + return s; + } + diff --git a/anthy.spec b/anthy.spec index 6308b8c..d12eca0 100644 --- a/anthy.spec +++ b/anthy.spec @@ -1,15 +1,24 @@ %global use_utf8_dict 1 %global pkg anthy +%if 0%{?rhel} == 0 && 0%{?fedora} < 36 +%bcond_without xemacs +%else +# xemacs disabled on RHEL and Fedora 36+ +%bcond_with xemacs +%endif + Name: anthy Version: 9100h -Release: 29%{?dist} +Release: 59%{?dist} # The entire source code is LGPLv2+ and dictionaries is GPLv2. the corpus data is under Public Domain. -License: LGPLv2+ and GPLv2 and Public Domain +License: LGPL-2.1-or-later AND GPL-2.0-only AND LicenseRef-Fedora-Public-Domain URL: http://sourceforge.jp/projects/anthy/ BuildRequires: emacs -%if 0%{?rhel} == 0 +BuildRequires: gcc +%if %{with xemacs} BuildRequires: xemacs +BuildRequires: make %endif Source0: http://osdn.dl.sourceforge.jp/anthy/37536/anthy-%{version}.tar.gz @@ -20,13 +29,14 @@ Patch10: %{name}-corpus.patch Patch11: %{name}-fix-elisp.patch Patch12: %{name}-aarch64.patch Patch13: %{name}-fix-segfault.patch +Patch14: %{name}-fix-emacs29.patch +Patch15: %{name}-fix-eol.patch Summary: Japanese character set input library -Group: System Environment/Libraries Requires: emacs-filesystem >= %{_emacs_version} Provides: emacs-%{pkg}-el <= 9100h-27, emacs-%{pkg} <= 9100h-27 Obsoletes: emacs-%{pkg}-el <= 9100h-27, emacs-%{pkg} <= 9100h-27 -%if 0%{?rhel} == 0 +%if %{with xemacs} Requires: xemacs-filesystem >= %{_xemacs_version} Provides: xemacs-%{pkg}-el <= 9100h-27, xemacs-%{pkg} <= 9100h-27 Obsoletes: xemacs-%{pkg}-el <= 9100h-27, xemacs-%{pkg} <= 9100h-27 @@ -40,7 +50,6 @@ So Anthy is secure than other conversion server. %package devel Summary: Header files and library for developing programs which uses Anthy -Group: Development/Libraries Requires: %{name}%{?_isa} = %{version}-%{release} Requires: pkgconfig @@ -50,13 +59,7 @@ the programs which uses Anthy. %prep -%setup -q #-a 2 -%patch0 -p1 -b .0-typo -%patch1 -p1 -b .1-typo-name -%patch10 -p1 -b .10-corpus -%patch11 -p1 -b .11-elisp -%patch12 -p1 -b .12-aarch64 -%patch13 -p1 -b .13-segv +%autosetup -p1 # Convert to utf-8 for file in ChangeLog doc/protocol.txt; do @@ -136,7 +139,7 @@ rm -rf $RPM_BUILD_ROOT%{_libdir}/lib*.{la,a} mkdir -p $RPM_BUILD_ROOT%{_emacs_sitestartdir} install -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_emacs_sitestartdir} -%if 0%{?rhel} == 0 +%if %{with xemacs} ## for xemacs-anthy mkdir -p $RPM_BUILD_ROOT%{_xemacs_sitestartdir} install -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_xemacs_sitestartdir} @@ -147,12 +150,11 @@ make install-lispLISP DESTDIR=$RPM_BUILD_ROOT EMACS=xemacs lispdir="%{_xemacs_si popd %endif -%post -p /sbin/ldconfig - -%postun -p /sbin/ldconfig +%ldconfig_scriptlets %files -%doc AUTHORS COPYING ChangeLog DIARY NEWS README +%doc AUTHORS ChangeLog DIARY NEWS README +%license COPYING %{_bindir}/* %{_sysconfdir}/* %{_libdir}/lib*.so.* @@ -162,7 +164,7 @@ popd %{_emacs_sitelispdir}/%{pkg}/*.elc %{_emacs_sitestartdir}/*.el %dir %{_emacs_sitelispdir}/%{pkg} -%if 0%{?rhel} == 0 +%if %{with xemacs} %{_xemacs_sitelispdir}/%{pkg}/*.el %{_xemacs_sitelispdir}/%{pkg}/*.elc %{_xemacs_sitestartdir}/*.el @@ -177,6 +179,96 @@ popd %changelog +* Fri Jan 16 2026 Fedora Release Engineering - 9100h-59 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Wed Jul 23 2025 Fedora Release Engineering - 9100h-58 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Thu Jan 16 2025 Fedora Release Engineering - 9100h-57 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Thu Sep 19 2024 Akira TAGOH - 9100h-56 +- Fix an infinite loop when missing EOL in record file. + Resolves: rhbz#1944546 + +* Wed Jul 17 2024 Fedora Release Engineering - 9100h-55 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Mon Jan 22 2024 Fedora Release Engineering - 9100h-54 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 19 2024 Fedora Release Engineering - 9100h-53 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Tue Nov 28 2023 Akira TAGOH - 9100h-52 +- Fix symbol error on Emacs 29. + Resolves: rhbz#2251128 + +* Wed Jul 19 2023 Fedora Release Engineering - 9100h-51 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Wed Jan 18 2023 Fedora Release Engineering - 9100h-50 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Wed Nov 30 2022 Akira TAGOH - 9100h-49 +- Convert License tag to SPDX. + +* Wed Jul 20 2022 Fedora Release Engineering - 9100h-47 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Tue May 31 2022 Stewart Smith - 9100h-46 +- Switch xemacs build condition to bcond + +* Wed Jan 19 2022 Fedora Release Engineering - 9100h-45 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Tue Nov 9 2021 Jerry James - 9100h-44 +- Drop XEmacs support in F36 and later + +* Wed Jul 21 2021 Fedora Release Engineering - 9100h-43 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Tue Jan 26 2021 Fedora Release Engineering - 9100h-42 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Fri Jul 31 2020 Fedora Release Engineering - 9100h-41 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Jul 27 2020 Fedora Release Engineering - 9100h-40 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jan 28 2020 Fedora Release Engineering - 9100h-39 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Wed Jul 24 2019 Fedora Release Engineering - 9100h-38 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu Jan 31 2019 Fedora Release Engineering - 9100h-37 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Thu Jul 12 2018 Fedora Release Engineering - 9100h-36 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Jun 29 2018 Akira TAGOH - 9100h-35 +- Use ldconfig rpm macro. + +* Mon Feb 19 2018 Akira TAGOH - 9100h-34 +- Add BR: gcc. + +* Wed Feb 07 2018 Fedora Release Engineering - 9100h-33 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Wed Aug 02 2017 Fedora Release Engineering - 9100h-32 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 9100h-31 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Feb 10 2017 Fedora Release Engineering - 9100h-30 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + * Wed Feb 03 2016 Fedora Release Engineering - 9100h-29 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild @@ -487,4 +579,3 @@ popd * Tue Jun 01 2004 Akira TAGOH 5330-1 - Initial package. - diff --git a/plans/basic.fmf b/plans/basic.fmf new file mode 100644 index 0000000..c1627f9 --- /dev/null +++ b/plans/basic.fmf @@ -0,0 +1,5 @@ +summary: Basic smoke test +discover: + how: fmf +execute: + how: tmt diff --git a/tests/basic/main.fmf b/tests/basic/main.fmf new file mode 100644 index 0000000..3cde53c --- /dev/null +++ b/tests/basic/main.fmf @@ -0,0 +1,5 @@ +summary: Basic test for anthy +require: + - anthy +test: ./test.sh +framework: beakerlib diff --git a/tests/basic/test.sh b/tests/basic/test.sh new file mode 100755 index 0000000..e71c4ce --- /dev/null +++ b/tests/basic/test.sh @@ -0,0 +1,14 @@ +#!/bin/bash +# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k + +basedir=$(pwd) + +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +rlJournalStart + rlPhaseStartTest + rlRun "cat word.txt | iconv -f utf-8 -t euc-jp | anthy-dic-tool --load 0 "Registering a word to dict" + rlRun "anthy-dic-tool --dump | iconv -f euc-jp -t utf-8 | grep -v "#" | tee output" 0 "Dumping dict" + rlRun "diff -u word.txt output" 0 "Check difference" + rlPhaseEnd +rlJournalEnd diff --git a/tests/basic/word.txt b/tests/basic/word.txt new file mode 100644 index 0000000..781130e --- /dev/null +++ b/tests/basic/word.txt @@ -0,0 +1,8 @@ +てすと 1 テスト +格助詞接続 = y +語幹のみで文節 = y +する接続 = y +さ接続 = y +な接続 = y +品詞 = 名詞 +