summary refs log tree commit diff
path: root/pkgs/tools/text/ispell
diff options
context:
space:
mode:
authorTadeo Kondrak <me@tadeo.ca>2020-02-01 10:23:43 -0700
committerTadeo Kondrak <me@tadeo.ca>2021-02-08 12:33:30 -0700
commit02fe8cbd316309b31a99180fb118766ba52ca22f (patch)
tree88bffade0b732b9bb14fff687e9824e63840a999 /pkgs/tools/text/ispell
parenta47c8f44b77e3816f06046d1a66439a7d75e4abf (diff)
downloadnixpkgs-02fe8cbd316309b31a99180fb118766ba52ca22f.tar
nixpkgs-02fe8cbd316309b31a99180fb118766ba52ca22f.tar.gz
nixpkgs-02fe8cbd316309b31a99180fb118766ba52ca22f.tar.bz2
nixpkgs-02fe8cbd316309b31a99180fb118766ba52ca22f.tar.lz
nixpkgs-02fe8cbd316309b31a99180fb118766ba52ca22f.tar.xz
nixpkgs-02fe8cbd316309b31a99180fb118766ba52ca22f.tar.zst
nixpkgs-02fe8cbd316309b31a99180fb118766ba52ca22f.zip
ispell: fix hash and drop patches
This was added only to build hunspellDicts.de_DE: [1]
The patches came from an older PR (taken from Debian): [2]
but aren't needed to build the dictionary.

[1]: https://github.com/NixOS/nixpkgs/pull/36155
[2]: https://github.com/NixOS/nixpkgs/pull/3320
Diffstat (limited to 'pkgs/tools/text/ispell')
-rw-r--r--pkgs/tools/text/ispell/default.nix22
-rw-r--r--pkgs/tools/text/ispell/patches/0007-Use-termios.patch188
-rw-r--r--pkgs/tools/text/ispell/patches/0008-Tex-backslash.patch48
-rw-r--r--pkgs/tools/text/ispell/patches/0009-Fix-FTBFS-on-glibc.patch23
-rw-r--r--pkgs/tools/text/ispell/patches/0011-Missing-prototypes.patch84
-rw-r--r--pkgs/tools/text/ispell/patches/0012-Fix-getline.patch62
-rw-r--r--pkgs/tools/text/ispell/patches/0013-Fix-man-pages.patch227
-rw-r--r--pkgs/tools/text/ispell/patches/0021-Fix-gcc-warnings.patch57
-rw-r--r--pkgs/tools/text/ispell/patches/0023-Exclusive-options.patch38
-rw-r--r--pkgs/tools/text/ispell/patches/0024-Check-tempdir-creation.patch69
-rw-r--r--pkgs/tools/text/ispell/patches/0025-Languages.patch81
-rw-r--r--pkgs/tools/text/ispell/patches/0030-Display-whole-multibyte-character.patch35
12 files changed, 1 insertions, 933 deletions
diff --git a/pkgs/tools/text/ispell/default.nix b/pkgs/tools/text/ispell/default.nix
index f4403f4991f..b3dac1c48fd 100644
--- a/pkgs/tools/text/ispell/default.nix
+++ b/pkgs/tools/text/ispell/default.nix
@@ -6,25 +6,11 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://fmg-www.cs.ucla.edu/geoff/tars/${pname}-${version}.tar.gz";
-    sha256 = "1d7c2fqrdjckp91ajpkn5nnmpci2qrxqn8b6cyl0zn1afb9amxbz";
+    sha256 = "1hmfnz55qzfpz7lz0r3m4kkv31smir92ks9s5l1iiwimhr2jxi2x";
   };
 
   buildInputs = [ bison ncurses ];
 
-  patches = [
-    ./patches/0007-Use-termios.patch
-    ./patches/0008-Tex-backslash.patch
-    ./patches/0009-Fix-FTBFS-on-glibc.patch
-    ./patches/0011-Missing-prototypes.patch
-    ./patches/0012-Fix-getline.patch
-    ./patches/0013-Fix-man-pages.patch
-    ./patches/0021-Fix-gcc-warnings.patch
-    ./patches/0023-Exclusive-options.patch
-    ./patches/0024-Check-tempdir-creation.patch
-    ./patches/0025-Languages.patch
-    ./patches/0030-Display-whole-multibyte-character.patch
-  ];
-
   postPatch = ''
     cat >> local.h <<EOF
     ${lib.optionalString (!stdenv.isDarwin) "#define USG"}
@@ -43,12 +29,6 @@ stdenv.mkDerivation rec {
     EOF
   '';
 
-  preBuild = ''
-    for dir in $out/share/emacs/site-lisp $out/share/info $out/share/man/man1 $out/share/man/man4 $out/bin $out/lib; do
-    mkdir -p $dir
-    done
-  '';
-
   meta = with lib; {
     description = "An interactive spell-checking program for Unix";
     homepage = "https://www.cs.hmc.edu/~geoff/ispell.html";
diff --git a/pkgs/tools/text/ispell/patches/0007-Use-termios.patch b/pkgs/tools/text/ispell/patches/0007-Use-termios.patch
deleted file mode 100644
index 299e3c01ab1..00000000000
--- a/pkgs/tools/text/ispell/patches/0007-Use-termios.patch
+++ /dev/null
@@ -1,188 +0,0 @@
-From: Torsten Landschoff <t.landschoff@gmx.net>
-Date: Tue, 30 Mar 1999 21:05:09 +0100
-Subject: 0007 Use termios
-
-Use termios instead of termio (Closes: #35288).
-
-Patch updated on Mon, 07 Mar 2011 20:40:53 +0100 based on
-ispell-3.3.02-terminal.patch from ispell-3.3.02-102.1.src.rpm
----
- term.c |   58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- 1 files changed, 58 insertions(+), 0 deletions(-)
-
-diff --git a/term.c b/term.c
-index 4923844..47c1aa0 100644
---- a/term.c
-+++ b/term.c
-@@ -87,13 +87,22 @@ static char Rcs_Id[] =
- #include "proto.h"
- #include "msgs.h"
- #ifdef USG
-+#if defined(__GLIBC__) && __GLIBC__ >= 2
-+/* Use termios under at least glibc */
-+  #include <termios.h>
-+  #define USE_TERMIOS
-+#else
- #include <termio.h>
-+#endif
- #else
- #ifndef __DJGPP__
- #include <sgtty.h>
- #endif
- #endif
- #include <signal.h>
-+#include <unistd.h>
-+#include <sys/types.h>
-+#include <sys/wait.h>
- 
- void		ierase P ((void));
- void		imove P ((int row, int col));
-@@ -166,8 +175,13 @@ static int iputch (c)
-     }
- 
- #ifdef USG
-+#ifdef USE_TERMIOS
-+static struct termios	sbuf;
-+static struct termios	osbuf;
-+#else
- static struct termio	sbuf;
- static struct termio	osbuf;
-+#endif
- #else
- static struct sgttyb	sbuf;
- static struct sgttyb	osbuf;
-@@ -190,9 +204,13 @@ void terminit ()
-     int			tpgrp;
- #else
- #ifdef TIOCGPGRP
-+#ifdef USE_TERMIOS
-+    pid_t		tpgrp;
-+#else
-     int			tpgrp;
- #endif
- #endif
-+#endif
- #ifdef TIOCGWINSZ
-     struct winsize	wsize;
- #endif /* TIOCGWINSZ */
-@@ -276,7 +294,11 @@ retry:
- 	(void) fprintf (stderr, TERM_C_NO_BATCH);
- 	exit (1);
- 	}
-+#ifdef USE_TERMIOS
-+    (void) tcgetattr (0, &osbuf);
-+#else
-     (void) ioctl (0, TCGETA, (char *) &osbuf);
-+#endif
-     termchanged = 1;
- 
-     sbuf = osbuf;
-@@ -285,7 +307,11 @@ retry:
-     sbuf.c_iflag &= ~(INLCR | IGNCR | ICRNL);
-     sbuf.c_cc[VMIN] = 1;
-     sbuf.c_cc[VTIME] = 1;
-+#ifdef USE_TERMIOS
-+    (void) tcsetattr (0, TCSADRAIN, &sbuf);
-+#else
-     (void) ioctl (0, TCSETAW, (char *) &sbuf);
-+#endif
- 
-     uerasechar = osbuf.c_cc[VERASE];
-     ukillchar = osbuf.c_cc[VKILL];
-@@ -298,7 +324,11 @@ retry:
- #endif
- #endif
- #ifdef TIOCGPGRP
-+#ifdef USE_TERMIOS
-+    if ((tpgrp = tcgetpgrp (0)) == -1)
-+#else
-     if (ioctl (0, TIOCGPGRP, (char *) &tpgrp) != 0)
-+#endif
- 	{
- 	(void) fprintf (stderr, TERM_C_NO_BATCH);
- 	exit (1);
-@@ -373,7 +403,11 @@ SIGNAL_TYPE done (signo)
- 	if (te)
- 	    tputs (te, 1, iputch);
- #ifdef USG
-+#ifdef USE_TERMIOS
-+	(void) tcsetattr (0, TCSADRAIN, &osbuf);
-+#else
- 	(void) ioctl (0, TCSETAW, (char *) &osbuf);
-+#endif
- #else
- 	(void) ioctl (0, TIOCSETP, (char *) &osbuf);
- #ifdef TIOCSLTC
-@@ -394,7 +428,11 @@ static SIGNAL_TYPE onstop (signo)
- 	if (te)
- 	    tputs (te, 1, iputch);
- #ifdef USG
-+#ifdef USE_TERMIOS
-+    (void) tcsetattr (0, TCSANOW, &osbuf); /* OpenSuse: TCSADRAIN */
-+#else
- 	(void) ioctl (0, TCSETAW, (char *) &osbuf);
-+#endif
- #else
- 	(void) ioctl (0, TIOCSETP, (char *) &osbuf);
- #ifdef TIOCSLTC
-@@ -413,7 +451,11 @@ static SIGNAL_TYPE onstop (signo)
-     if (termchanged)
- 	{
- #ifdef USG
-+#ifdef USE_TERMIOS
-+    (void) tcsetattr (0, TCSANOW, &sbuf);
-+#else
- 	(void) ioctl (0, TCSETAW, (char *) &sbuf);
-+#endif
- #else
- 	(void) ioctl (0, TIOCSETP, (char *) &sbuf);
- #ifdef TIOCSLTC
-@@ -481,7 +523,11 @@ int shellescape	(buf)
-     argv[i] = NULL;
- 
- #ifdef USG
-+#ifdef USE_TERMIOS
-+    (void) tcsetattr (0, TCSADRAIN, &osbuf);
-+#else
-     (void) ioctl (0, TCSETAW, (char *) &osbuf);
-+#endif
- #else
-     (void) ioctl (0, TIOCSETP, (char *) &osbuf);
- #ifdef TIOCSLTC
-@@ -527,7 +573,11 @@ int shellescape	(buf)
- #endif
- 
- #ifdef USG
-+#ifdef USE_TERMIOS
-+    (void) tcsetattr (0, TCSADRAIN, &sbuf);
-+#else
-     (void) ioctl (0, TCSETAW, (char *) &sbuf);
-+#endif
- #else
-     (void) ioctl (0, TIOCSETP, (char *) &sbuf);
- #ifdef TIOCSLTC
-@@ -563,7 +613,11 @@ void shescape (buf)
- #endif
- 
- #ifdef USG
-+#ifdef USE_TERMIOS
-+    (void) tcsetattr (0, TCSADRAIN, &osbuf);
-+#else
-     (void) ioctl (0, TCSETAW, (char *) &osbuf);
-+#endif
- #else
-     (void) ioctl (0, TIOCSETP, (char *) &osbuf);
- #ifdef TIOCSLTC
-@@ -611,7 +665,11 @@ void shescape (buf)
- #endif
- 
- #ifdef USG
-+#ifdef USE_TERMIOS
-+    (void) tcsetattr (0, TCSADRAIN, &sbuf);
-+#else
-     (void) ioctl (0, TCSETAW, (char *) &sbuf);
-+#endif
- #else
-     (void) ioctl (0, TIOCSETP, (char *) &sbuf);
- #ifdef TIOCSLTC
--- 
diff --git a/pkgs/tools/text/ispell/patches/0008-Tex-backslash.patch b/pkgs/tools/text/ispell/patches/0008-Tex-backslash.patch
deleted file mode 100644
index 21b44d505db..00000000000
--- a/pkgs/tools/text/ispell/patches/0008-Tex-backslash.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From: Ken Stevens <kstevens@ece.utah.edu>
-Date: Sat, 15 Jul 2000 22:10:53 -0400
-Subject: 0008 Tex backslash
-
-Version 3.1.20 contains an irritating bug when using latex that causes all
-sorts of problems when the backslash is used. (The backslash is a common
-character in latex that is used, among other things, to create a forced space
-similar to the tilde character.) In the current version, 3.1.20, the next TWO
-characters are skipped after a backslash. This can results in misspellings and
-the file being incorrectly parsed. (For example, if the text contains the
-sequence `\ $' math mode will not be entered until the matching $ which should
-end it, resulting in the body of the text not being spell checked and the math
-region being checked.)
-
-Make sure to undefine NO8BIT and use a larger number for MASKBITS if you are
-using iso character sets.
-
-http://www.kdstevens.com/~stevens/ispell-faq.html#bslash
----
- defmt.c |    7 +++----
- 1 files changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/defmt.c b/defmt.c
-index 35f93e4..7499752 100644
---- a/defmt.c
-+++ b/defmt.c
-@@ -884,6 +884,8 @@ static int TeX_math_end (bufp)
- 	return 0;
-     }
- 
-+/* Updates bufp to point to the next character to skip. */
-+/*  Should only be called on non-word characters. */
- static int TeX_math_begin (bufp)
-     unsigned char **	bufp;
-     {
-@@ -902,10 +904,7 @@ static int TeX_math_begin (bufp)
- 	if (**bufp == TEXLEFTPAREN  ||  **bufp == TEXLEFTSQUARE)
- 	    return 1;
- 	else if (!isalpha(**bufp)  &&  **bufp != '@')
--	    {
--	    (*bufp)++;
--	    continue;
--	    }
-+	    return 0;
- 	else if (TeX_strncmp (*bufp, "begin", 5) == 0)
- 	    {
- 	    if (TeX_math_check ('b', bufp))
--- 
diff --git a/pkgs/tools/text/ispell/patches/0009-Fix-FTBFS-on-glibc.patch b/pkgs/tools/text/ispell/patches/0009-Fix-FTBFS-on-glibc.patch
deleted file mode 100644
index dbe0db9a053..00000000000
--- a/pkgs/tools/text/ispell/patches/0009-Fix-FTBFS-on-glibc.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From: Richard Braakman <dark@dark.wapit.fi>
-Date: Fri, 2 Feb 2001 17:22:53 +0200
-Subject: 0009 Fix FTBFS on glibc
-
-Fix FTBFS on glibc (Closes: #75377)
----
- config.X |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/config.X b/config.X
-index 18bf621..0a47cb2 100644
---- a/config.X
-+++ b/config.X
-@@ -531,7 +531,7 @@
- #endif /* NO_MKSTEMP */
- 
- /* Aliases for some routines */
--#ifdef USG
-+#if defined (USG) && !defined(__GLIBC__)
- #define BCOPY(s, d, n)	memcpy (d, s, n)
- #define BZERO(d, n)	memset (d, 0, n)
- #define index strchr
--- 
diff --git a/pkgs/tools/text/ispell/patches/0011-Missing-prototypes.patch b/pkgs/tools/text/ispell/patches/0011-Missing-prototypes.patch
deleted file mode 100644
index 5e77b6a4f37..00000000000
--- a/pkgs/tools/text/ispell/patches/0011-Missing-prototypes.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From: Doug Porter <dsp@debian.org>
-Date: Tue, 22 Jan 2002 10:28:44 -0500
-Subject: 0011 Missing prototypes
-
-Fixing implicit declarations (Closes: #130405).
----
- correct.c |    1 +
- ijoin.c   |    2 +-
- ispell.c  |    2 ++
- lookup.c  |    2 ++
- tree.c    |    1 +
- 5 files changed, 7 insertions(+), 1 deletions(-)
-
-diff --git a/correct.c b/correct.c
-index e2b63c8..661bf57 100644
---- a/correct.c
-+++ b/correct.c
-@@ -201,6 +201,7 @@ static char Rcs_Id[] =
-  */
- 
- #include <ctype.h>
-+#include <unistd.h>
- #include "config.h"
- #include "ispell.h"
- #include "proto.h"
-diff --git a/ijoin.c b/ijoin.c
-index edb18d1..5da039a 100644
---- a/ijoin.c
-+++ b/ijoin.c
-@@ -115,6 +115,7 @@ static char Rcs_Id[] =
-  */
- 
- #include <stdio.h>
-+#include <string.h>
- #include "config.h"
- #include "ispell.h"
- #include "proto.h"
-@@ -169,7 +170,6 @@ static char *		tabchar = " \t"; /* Field separator character(s) */
- static int		unpairable1 = 0; /* NZ if -a1 */
- static int		unpairable2 = 0; /* NZ if -a2 */
- 
--extern int	strcmp ();
- 
- int main (argc, argv)			/* Join files */
-     int			argc;		/* Argument count */
-diff --git a/ispell.c b/ispell.c
-index 9b509d0..59fe358 100644
---- a/ispell.c
-+++ b/ispell.c
-@@ -235,6 +235,8 @@ static char Rcs_Id[] =
- #include <fcntl.h>
- #endif /* NO_FCNTL_H */
- #include <sys/stat.h>
-+#include <ctype.h>
-+#include <unistd.h>
- 
- static void	usage P ((void));
- int		main P ((int argc, char * argv[]));
-diff --git a/lookup.c b/lookup.c
-index 648f9c8..8bf1f6c 100644
---- a/lookup.c
-+++ b/lookup.c
-@@ -87,6 +87,8 @@ static char Rcs_Id[] =
- 
- #include <fcntl.h>
- 
-+#include <sys/types.h>
-+#include <unistd.h>
- #include "config.h"
- #include "ispell.h"
- #include "proto.h"
-diff --git a/tree.c b/tree.c
-index 073a6a6..c26f635 100644
---- a/tree.c
-+++ b/tree.c
-@@ -94,6 +94,7 @@ static char Rcs_Id[] =
- 
- #include <ctype.h>
- #include <errno.h>
-+#include <unistd.h>
- #include "config.h"
- #include "ispell.h"
- #include "proto.h"
--- 
diff --git a/pkgs/tools/text/ispell/patches/0012-Fix-getline.patch b/pkgs/tools/text/ispell/patches/0012-Fix-getline.patch
deleted file mode 100644
index ea966d67792..00000000000
--- a/pkgs/tools/text/ispell/patches/0012-Fix-getline.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From: Stefan Potyra <sistpoty@ubuntu.com>
-Date: Sat, 3 Oct 2009 04:00:34 +0200
-Subject: 0012 Fix getline
-
-getline is not provided by eglibc, avoid conflict
-
-Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=549401
-Forwarded: no
----
- correct.c |   10 +++++-----
- 1 files changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/correct.c b/correct.c
-index 661bf57..ff7cb99 100644
---- a/correct.c
-+++ b/correct.c
-@@ -246,7 +246,7 @@ static void	save_root_cap P ((ichar_t * word, ichar_t * pattern,
- 		  struct flagent * sufent,
- 		  ichar_t savearea[MAX_CAPS][INPUTWORDLEN + MAXAFFIXLEN],
- 		  int * nsaved));
--static char *	getline P ((char * buf, int bufsize));
-+static char *	getline_ispell P ((char * buf, int bufsize));
- void		askmode P ((void));
- void		copyout P ((unsigned char ** cc, int cnt));
- static void	lookharder P ((unsigned char * string));
-@@ -572,7 +572,7 @@ checkagain:
- 
- 		imove (li - 1, 0);
- 		(void) putchar ('!');
--		if (getline ((char *) buf, sizeof buf) == NULL)
-+		if (getline_ispell ((char *) buf, sizeof buf) == NULL)
- 		    {
- 		    (void) putchar (7);
- 		    ierase ();
-@@ -597,7 +597,7 @@ checkagain:
- 		    (void) printf ("%s ", CORR_C_READONLY);
- 		    }
- 		(void) printf (CORR_C_REPLACE_WITH);
--		if (getline ((char *) ctok, ctokl) == NULL)
-+		if (getline_ispell ((char *) ctok, ctokl) == NULL)
- 		    {
- 		    (void) putchar (7);
- 		    /* Put it back */
-@@ -665,7 +665,7 @@ checkagain:
- 		unsigned char	buf[100];
- 		imove (li - 1, 0);
- 		(void) printf (CORR_C_LOOKUP_PROMPT);
--		if (getline ((char *) buf, sizeof buf) == NULL)
-+		if (getline_ispell ((char *) buf, sizeof buf) == NULL)
- 		    {
- 		    (void) putchar (7);
- 		    ierase ();
-@@ -1584,7 +1584,7 @@ static void save_root_cap (word, pattern, prestrip, preadd, sufstrip, sufadd,
-     return;
-     }
- 
--static char * getline (s, len)
-+static char * getline_ispell(s, len)
-     register char *	s;
-     register int	len;
-     {
--- 
diff --git a/pkgs/tools/text/ispell/patches/0013-Fix-man-pages.patch b/pkgs/tools/text/ispell/patches/0013-Fix-man-pages.patch
deleted file mode 100644
index 9c0aedb67d7..00000000000
--- a/pkgs/tools/text/ispell/patches/0013-Fix-man-pages.patch
+++ /dev/null
@@ -1,227 +0,0 @@
-From: David Paleino <d.paleino@gmail.com>
-Date: Mon, 9 Nov 2009 09:22:12 +0000
-Subject: 0013 Fix man pages
-
-Fix man pages, manpage-has-errors-from-man and hyphen-used-as-minus-sign
-
-Forwarded: no
----
- ispell.1X |   26 +++++++++++++-------------
- ispell.5X |   26 +++++++++++++-------------
- 2 files changed, 26 insertions(+), 26 deletions(-)
-
-diff --git a/ispell.1X b/ispell.1X
-index b27b120..79894d4 100644
---- a/ispell.1X
-+++ b/ispell.1X
-@@ -236,8 +236,8 @@ count affix-file
- .RB [ \-p | \-s]
- .RB [ \-c ]
- .I expanded-file
--.IR affix [ +addition ]
--...
-+.IR affix
-+.RI [ +addition ]
- .PP
- .B icombine
- .RB [ \-T
-@@ -336,7 +336,7 @@ The amount of context is subject to a system-imposed limit.
- If the
- .B \-V
- flag is given, characters that are not in the 7-bit ANSI printable
--character set will always be displayed in the style of "cat -v", even if
-+character set will always be displayed in the style of "cat \-v", even if
- .I ispell
- thinks that these characters are legal ISO Latin-1 on your system.
- This is useful when working with older terminals.
-@@ -542,7 +542,7 @@ option is used to specify an alternate hashed dictionary file,
- other than the default.
- If the filename does not contain a "/",
- the library directory for the default dictionary file is prefixed;
--thus, to use a dictionary in the local directory "-d ./xxx.hash" must
-+thus, to use a dictionary in the local directory "\-d ./xxx.hash" must
- be used.
- This is useful to allow dictionaries for alternate languages.
- Unlike previous versions of
-@@ -615,7 +615,7 @@ alphabetics have no meaning - alphabetics are already accepted.
- .I Ispell
- will typically be used with input from a file, meaning that preserving
- parity for possible 8 bit characters from the input text is OK.  If you
--specify the -l option, and actually type text from the terminal, this may
-+specify the \-l option, and actually type text from the terminal, this may
- create problems if your stty settings preserve parity.
- .PP
- It is not possible to use
-@@ -799,7 +799,7 @@ that the '&' is replaced by '?' (and the near-miss count is always zero).
- The suggested derivations following the near misses are in the form:
- .PP
- .RS
--[prefix+] root [-prefix] [-suffix] [+suffix]
-+[prefix+] root [\-prefix] [\-suffix] [+suffix]
- .RE
- .PP
- (e.g., "re+fry-y+ies" to get "refries")
-@@ -841,7 +841,7 @@ These output lines can be summarized as follows:
- .PP
- For example, a dummy dictionary containing the words "fray", "Frey",
- "fry", and "refried" might produce the following response to the
--command "echo 'frqy refries | ispell -a -m -d ./test.hash":
-+command "echo 'frqy refries | ispell \-a \-m \-d ./test.hash":
- .RS
- .nf
- (#) International Ispell Version 3.0.05 (beta), 08/10/91
-@@ -1036,7 +1036,7 @@ script does this.
- As an example, the command:
- .PP
- .RS
--echo BOTHER | ispell -c
-+echo BOTHER | ispell \-c
- .RE
- .PP
- produces:
-@@ -1055,7 +1055,7 @@ it expands affix flags to produce a list of words.
- For example, the command:
- .PP
- .RS
--echo BOTH/R | ispell -e
-+echo BOTH/R | ispell \-e
- .RE
- .PP
- produces:
-@@ -1268,7 +1268,7 @@ hash file if it were added to the language table.
- Only affixes that generate legal roots (found in the original input)
- are listed.
- .PP
--If the "-c" option is not given, the output lines are in the
-+If the "\-c" option is not given, the output lines are in the
- following format:
- .IP
- strip/add/count/bytes
-@@ -1298,7 +1298,7 @@ If the
- the output is made visually cleaner (but harder to post-process)
- by changing it to:
- .IP
---strip+add<tab>count<tab>bytes
-+\-strip+add<tab>count<tab>bytes
- .PP
- where
- .IR strip ,
-@@ -1313,7 +1313,7 @@ represents the ASCII tab character.
- The method used to generate possible affixes will also generate
- longer affixes which have common headers or trailers.  For example,
- the two words "moth" and "mother" will generate not only the obvious
--substitution "+er" but also "-h+her" and "-th+ther" (and possibly
-+substitution "+er" but also "\-h+her" and "\-th+ther" (and possibly
- even longer ones, depending on the value of
- .IR min ).
- To prevent
-@@ -1621,7 +1621,7 @@ redirected.
- However, a lot of the temporary space needed is for sorting, so TMPDIR
- is only a partial help on systems with an uncooperative
- .IR sort (1).
--("Cooperative" is defined as accepting the undocumented -T switch).
-+("Cooperative" is defined as accepting the undocumented \-T switch).
- At its peak usage,
- .I munchlist
- takes 10 to 40 times the original
-diff --git a/ispell.5X b/ispell.5X
-index ab526ed..7a1c2e5 100644
---- a/ispell.5X
-+++ b/ispell.5X
-@@ -137,8 +137,8 @@ This feature can be used to convert an entire dictionary if necessary:)
- 	echo qqqqq > dummy.dict
- 	buildhash dummy.dict \fIaffix-file\fP dummy.hash
- 	awk '{print "*"}END{print "#"}' \fIold-dict-file\fP \e
--	| ispell -a -T \fIold-dict-string-type\fP \e
--	  -d ./dummy.hash -p ./\fInew-dict-file\fP \e
-+	| ispell \-a \-T \fIold-dict-string-type\fP \e
-+	  \-d ./dummy.hash \-p ./\fInew-dict-file\fP \e
- 	  > /dev/null
- 	rm dummy.*
- .fi
-@@ -622,7 +622,7 @@ or
- .B stringchar
- statements.
- For example, if the hyphen is a boundary character (useful in French),
--the string "foo-bar" would be a single word, but "-foo" would be the
-+the string "foo-bar" would be a single word, but "\-foo" would be the
- same as "foo", and "foo--bar" would be two words separated by non-word
- characters.
- .PP
-@@ -916,7 +916,7 @@ The following (suffix) replacements:
- .RS
- .nf
- \&.	>	MENT
--Y	>	-Y,IES
-+Y	>	\-Y,IES
- .fi
- .RE
- .PP
-@@ -956,8 +956,8 @@ Instead, you must use two separate rules:
- .PP
- .RS
- .nf
--E	>	-E,IES
--Y	>	-Y,IES
-+E	>	\-E,IES
-+Y	>	\-Y,IES
- .fi
- .RE
- .PP
-@@ -1005,7 +1005,7 @@ For example, to specify words ending in "ED", write:
- .PP
- .RS
- .nf
--E D	>	-ED,ING		# As in covered > covering
-+E D	>	\-ED,ING		# As in covered > covering
- .fi
- .RE
- .PP
-@@ -1013,7 +1013,7 @@ If you write:
- .PP
- .RS
- .nf
--ED	>	-ED,ING
-+ED	>	\-ED,ING
- .fi
- .RE
- .PP
-@@ -1021,7 +1021,7 @@ the effect will be the same as:
- .PP
- .RS
- .nf
--[ED]	>	-ED,ING
-+[ED]	>	\-ED,ING
- .fi
- .RE
- .PP
-@@ -1047,7 +1047,7 @@ is useful, as in the following example:
- .PP
- .RS
- .nf
--$ munchlist -c oldaffixes -l newaffixes olddict > newdict
-+$ munchlist \-c oldaffixes \-l newaffixes olddict > newdict
- .fi
- .RE
- .PP
-@@ -1070,7 +1070,7 @@ flag from the English affix file:
- .RS
- .nf
- flag *S:
--    [^AEIOU]Y	>	-Y,IES	# As in imply > implies
-+    [^AEIOU]Y	>	\-Y,IES	# As in imply > implies
-     [AEIOU]Y	>	S		# As in convey > conveys
-     [SXZH]	>	ES		# As in fix > fixes
-     [^SXZHY]	>	S		# As in bat > bats
-@@ -1099,8 +1099,8 @@ For example, we could extend the English "R" flag as follows:
- flag *R:
-    E			>	R		# As in skate > skater
-    E			>	RS		# As in skate > skaters
--   [^AEIOU]Y	>	-Y,IER	# As in multiply > multiplier
--   [^AEIOU]Y	>	-Y,IERS	# As in multiply > multipliers
-+   [^AEIOU]Y	>	\-Y,IER	# As in multiply > multiplier
-+   [^AEIOU]Y	>	\-Y,IERS	# As in multiply > multipliers
-    [AEIOU]Y	>	ER		# As in convey > conveyer
-    [AEIOU]Y	>	ERS		# As in convey > conveyers
-    [^EY]		>	ER		# As in build > builder
--- 
diff --git a/pkgs/tools/text/ispell/patches/0021-Fix-gcc-warnings.patch b/pkgs/tools/text/ispell/patches/0021-Fix-gcc-warnings.patch
deleted file mode 100644
index 8902018dab5..00000000000
--- a/pkgs/tools/text/ispell/patches/0021-Fix-gcc-warnings.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From: Robert Luberda <robert@debian.org>
-Date: Mon, 7 Mar 2011 22:23:56 +0100
-Subject: 0021 Fix gcc warnings
-
-Fix some gcc warnings.
----
- correct.c                |    2 +-
- languages/english/msgs.h |    8 ++++----
- tree.c                   |    2 +-
- 3 files changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/correct.c b/correct.c
-index 79b259f..982b7c6 100644
---- a/correct.c
-+++ b/correct.c
-@@ -825,7 +825,7 @@ static void inserttoken (buf, start, tok, curchar, oktochange)
- 	for (p = start;  p != *curchar;  p++)
- 	    (void) putc (*p, logfile);
- 	(void) putc (' ', logfile);
--	(void) fputs (tok, logfile);
-+	(void) fputs ((char*) tok, logfile);
- 	(void) putc ('\n', logfile);
- 	(void) fflush (logfile);
- 	}
-diff --git a/languages/english/msgs.h b/languages/english/msgs.h
-index d33b42b..f9c87ca 100644
---- a/languages/english/msgs.h
-+++ b/languages/english/msgs.h
-@@ -182,10 +182,10 @@
- #define CORR_C_HELP_4		"next to each one.  You have the option of replacing the word%s\n"
- #define CORR_C_HELP_5		"completely, or choosing one of the suggested words.%s\n"
-     /* You may add HELP_6 through HELP_9 if your language needs more lines */
--#define CORR_C_HELP_6		""
--#define CORR_C_HELP_7		""
--#define CORR_C_HELP_8		""
--#define CORR_C_HELP_9		""
-+#define CORR_C_HELP_6		"%s"
-+#define CORR_C_HELP_7		"%s"
-+#define CORR_C_HELP_8		"%s"
-+#define CORR_C_HELP_9		"%s"
- #define CORR_C_HELP_COMMANDS	"%s\nCommands are:%s\n%s\n"
- #define CORR_C_HELP_R_CMD	"R       Replace the misspelled word completely.%s\n"
- #define CORR_C_HELP_BLANK	"Space   Accept the word this time only.%s\n"
-diff --git a/tree.c b/tree.c
-index 05a6918..229ae16 100644
---- a/tree.c
-+++ b/tree.c
-@@ -351,7 +351,7 @@ void treeinsert (word, wordlen, keep)
-     struct dent *	oldhtab;
-     unsigned int	oldhsize;
-     ichar_t		nword[INPUTWORDLEN + MAXAFFIXLEN];
--    int			isvariant;
-+    MASKTYPE		isvariant;
- 
-     /*
-      * Expand hash table when it is MAXPCT % full.
--- 
diff --git a/pkgs/tools/text/ispell/patches/0023-Exclusive-options.patch b/pkgs/tools/text/ispell/patches/0023-Exclusive-options.patch
deleted file mode 100644
index 392d94d27d3..00000000000
--- a/pkgs/tools/text/ispell/patches/0023-Exclusive-options.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From: Robert Luberda <robert@debian.org>
-Date: Tue, 8 Mar 2011 21:12:23 +0100
-Subject: 0023 Exclusive options
-
-Make options -x and -b mutually exclusive
----
- ispell.c |    6 ++++--
- 1 files changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/ispell.c b/ispell.c
-index d130a0e..cd5802a 100644
---- a/ispell.c
-+++ b/ispell.c
-@@ -279,6 +279,7 @@ int main (argc, argv)
-     static char	outbuf[BUFSIZ];
-     int		argno;
-     int		arglen;
-+    int		bflag = 0;
- 
-     Cmd = *argv;
- 
-@@ -728,12 +729,13 @@ int main (argc, argv)
- 		nodictflag++;
- 		break;
- 	    case 'b':
--		if (arglen > 2)
-+		if (arglen > 2 || xflag == 1)
- 		    usage ();
- 		xflag = 0;		/* Keep a backup file */
-+		bflag = 1;
- 		break;
- 	    case 'x':
--		if (arglen > 2)
-+		if (arglen > 2 || bflag == 1)
- 		    usage ();
- 		xflag = 1;		/* Don't keep a backup file */
- 		break;
--- 
diff --git a/pkgs/tools/text/ispell/patches/0024-Check-tempdir-creation.patch b/pkgs/tools/text/ispell/patches/0024-Check-tempdir-creation.patch
deleted file mode 100644
index fd35ee34ec1..00000000000
--- a/pkgs/tools/text/ispell/patches/0024-Check-tempdir-creation.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From: Robert Luberda <robert@debian.org>
-Date: Tue, 8 Mar 2011 21:00:31 +0100
-Subject: 0024 Check tempdir creation
-
-Fail if temporary directory cannot be created.
----
- findaffix.X |    3 ++-
- munchlist.X |    3 ++-
- subset.X    |    3 ++-
- zapdups.X   |    3 ++-
- 4 files changed, 8 insertions(+), 4 deletions(-)
-
-diff --git a/findaffix.X b/findaffix.X
-index 2c253e2..58cabab 100755
---- a/findaffix.X
-+++ b/findaffix.X
-@@ -179,7 +179,8 @@ TEMPDIR=`mktemp -d ${TDIR}/faffXXXXXXXXXX 2>/dev/null`  ||  TEMPDIR="$TDIR"
- TMP=${TEMPDIR}/faff$$
- if [ "$TEMPDIR" = "$TDIR" ]
- then
--    TOREMOVE="${TMP}*"
-+    echo "Failed to create temporary directory; exiting"
-+    exit 1
- else
-     TOREMOVE="$TEMPDIR"
- fi
-diff --git a/munchlist.X b/munchlist.X
-index ada3f1d..47bb908 100755
---- a/munchlist.X
-+++ b/munchlist.X
-@@ -180,7 +180,8 @@ MUNCHDIR=`mktemp -d ${TDIR}/munchXXXXXXXXXX 2>/dev/null`  ||  MUNCHDIR="$TDIR"
- TMP=${MUNCHDIR}/munch$$
- if [ "$MUNCHDIR" = "$TDIR" ]
- then
--    TOREMOVE="${TMP}*"
-+    echo "$0: Failed to create temporary directory, exiting..."
-+	exit 1
- else
-     TOREMOVE="$MUNCHDIR"
- fi
-diff --git a/subset.X b/subset.X
-index cc748ec..9c904cc 100755
---- a/subset.X
-+++ b/subset.X
-@@ -125,7 +125,8 @@ TEMPDIR=`mktemp -d ${TDIR}/ssetXXXXXXXXXX 2>/dev/null`  ||  TEMPDIR="$TDIR"
- TMP=${TEMPDIR}/sset$$
- if [ "$TEMPDIR" = "$TDIR" ]
- then
--    TOREMOVE="${TMP}*"
-+    echo "$0: Failed to create temporary directory, exiting..."
-+    exit 1
- else
-     TOREMOVE="$TEMPDIR"
- fi
-diff --git a/zapdups.X b/zapdups.X
-index a68852a..1c610d4 100755
---- a/zapdups.X
-+++ b/zapdups.X
-@@ -111,7 +111,8 @@ TEMPDIR=`mktemp -d ${TDIR}/zapdXXXXXXXXXX 2>/dev/null`  ||  TEMPDIR="$TDIR"
- TMP=${TEMPDIR}/zapd$$
- if [ "$TEMPDIR" = "$TDIR" ]
- then
--    TOREMOVE="${TMP}*"
-+    echo "$0: Failed to create temporary directory, exiting..."
-+    exit 1
- else
-     TOREMOVE="$TEMPDIR"
- fi
--- 
diff --git a/pkgs/tools/text/ispell/patches/0025-Languages.patch b/pkgs/tools/text/ispell/patches/0025-Languages.patch
deleted file mode 100644
index ffa114d28a1..00000000000
--- a/pkgs/tools/text/ispell/patches/0025-Languages.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-From: Robert Luberda <robert@debian.org>
-Date: Tue, 8 Mar 2011 21:02:47 +0100
-Subject: 0025 Languages
-
-Fix a few words.
----
- languages/english/british.0 |    1 +
- languages/english/english.0 |    8 ++++++--
- languages/english/english.1 |    3 ++-
- 3 files changed, 9 insertions(+), 3 deletions(-)
-
-diff --git a/languages/english/british.0 b/languages/english/british.0
-index dc4caa7..04d9177 100644
---- a/languages/english/british.0
-+++ b/languages/english/british.0
-@@ -46,6 +46,7 @@ armour/DGMRSZ
- armoured/U
- armourer/MS
- armoury/DMS
-+artefact/MS
- atomisation/MS
- atomise/DGRSZ
- authorisation/AMS
-diff --git a/languages/english/english.0 b/languages/english/english.0
-index fc13212..f85e15a 100644
---- a/languages/english/english.0
-+++ b/languages/english/english.0
-@@ -3502,6 +3502,7 @@ closure/DGMS
- cloth/DGS
- clothe/DGS
- clothed/U
-+cloths
- cloud/DGS
- clouded/U
- cloudless/PY
-@@ -10019,9 +10020,10 @@ mystery/MS
- mystic/MS
- mystical/Y
- mysticism/S
--myth/MS
-+myth/M
- mythical/Y
- mythology/MS
-+myths
- nag/MS
- nail/DGRS
- naive/PRY
-@@ -14818,6 +14820,7 @@ tent/DGRS
- tentacle/DS
- tentative/PY
- tented/U
-+tenth
- tenths
- tenure/DS
- tenured/U
-@@ -16511,8 +16514,9 @@ youngster/MS
- your/MS
- yourself
- yourselves
--youth/MS
-+youth/M
- youthful/PY
-+youths
- yuck
- Yugoslavian/MS
- yummy/R
-diff --git a/languages/english/english.1 b/languages/english/english.1
-index 2bfac86..78a7edf 100644
---- a/languages/english/english.1
-+++ b/languages/english/english.1
-@@ -7449,7 +7449,8 @@ metalloid
- metallurgic
- metallurgical/Y
- metallurgists
--metalsmith/S
-+metalsmith
-+metalsmiths
- metalwork/GJR
- metamorphic
- metamorphism
--- 
diff --git a/pkgs/tools/text/ispell/patches/0030-Display-whole-multibyte-character.patch b/pkgs/tools/text/ispell/patches/0030-Display-whole-multibyte-character.patch
deleted file mode 100644
index bf687f04413..00000000000
--- a/pkgs/tools/text/ispell/patches/0030-Display-whole-multibyte-character.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From: Robert Luberda <robert@debian.org>
-Date: Mon, 21 Mar 2011 10:36:15 +0100
-Subject: 0030 Display whole multibyte character
-
-Display all bytes from multibyte characters instead of converting them
-into `cat -v' format. This fixes an ugly screen content shown while
-checking UTF-8 files.
----
- correct.c |   11 +++++++----
- 1 files changed, 7 insertions(+), 4 deletions(-)
-
-diff --git a/correct.c b/correct.c
-index 982b7c6..c91b41b 100644
---- a/correct.c
-+++ b/correct.c
-@@ -733,11 +733,14 @@ static int show_char (cp, linew, output, maxw)
- 	ichar = SET_SIZE + laststringch;
-     else
- 	ichar = chartoichar (ch);
--    if (!vflag  &&  iswordch (ichar)  &&  len == 1)
-+    if (!vflag  &&  iswordch (ichar)  &&  len >= 1)
- 	{
--	if (output)
--	    (void) putchar (ch);
--	(*cp)++;
-+	for (i = 0; i < len; ++i)
-+	    {
-+		if (output)
-+			(void) putchar (**cp);
-+		(*cp)++;
-+	    }
- 	return 1;
- 	}
-     if (ch == '\t')
---