diff options
author | Aaron Andersen <aaron@fosslib.net> | 2019-09-01 08:52:32 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-01 08:52:32 -0400 |
commit | 72646582a477c7f8666ebfffe1b970487d2d3b93 (patch) | |
tree | 5662da99c22d0e57c9dacf1417f1ffff1245d609 /pkgs/tools/text | |
parent | d4283f47dca04ae5af0188b72c7f8d2b8e0cb7f1 (diff) | |
parent | 8dec5e6224c84cfcd027acdc288eda073ff5359a (diff) |
Merge pull request #64285 from tadeokondrak/ispell/update
ispell: 3.3.02 -> 3.4.00
Diffstat (limited to 'pkgs/tools/text')
-rw-r--r-- | pkgs/tools/text/ispell/default.nix | 19 | ||||
-rw-r--r-- | pkgs/tools/text/ispell/patches/0005-Do-not-reorder-words.patch | 52 |
2 files changed, 15 insertions, 56 deletions
diff --git a/pkgs/tools/text/ispell/default.nix b/pkgs/tools/text/ispell/default.nix index dbec8d353d94..2f61536ed2c0 100644 --- a/pkgs/tools/text/ispell/default.nix +++ b/pkgs/tools/text/ispell/default.nix @@ -1,14 +1,17 @@ { stdenv, fetchurl, bison, ncurses }: stdenv.mkDerivation rec { - name = "ispell-3.3.02"; + pname = "ispell"; + version = "3.4.00"; + src = fetchurl { - url = "http://fmg-www.cs.ucla.edu/geoff/tars/${name}.tar.gz"; + url = "http://fmg-www.cs.ucla.edu/geoff/tars/${pname}-${version}.tar.gz"; sha256 = "1d7c2fqrdjckp91ajpkn5nnmpci2qrxqn8b6cyl0zn1afb9amxbz"; }; + buildInputs = [ bison ncurses ]; + patches = [ - ./patches/0005-Do-not-reorder-words.patch ./patches/0007-Use-termios.patch ./patches/0008-Tex-backslash.patch ./patches/0009-Fix-FTBFS-on-glibc.patch @@ -21,6 +24,7 @@ stdenv.mkDerivation rec { ./patches/0025-Languages.patch ./patches/0030-Display-whole-multibyte-character.patch ]; + postPatch = '' cat >> local.h <<EOF ${stdenv.lib.optionalString (!stdenv.isDarwin) "#define USG"} @@ -37,11 +41,18 @@ stdenv.mkDerivation rec { #define MINIMENU #define HAS_RENAME 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 stdenv.lib; { + description = "An interactive spell-checking program for Unix"; + homepage = "https://www.cs.hmc.edu/~geoff/ispell.html"; + license = licenses.free; + platforms = platforms.unix; + }; } diff --git a/pkgs/tools/text/ispell/patches/0005-Do-not-reorder-words.patch b/pkgs/tools/text/ispell/patches/0005-Do-not-reorder-words.patch deleted file mode 100644 index 2d74c078601a..000000000000 --- a/pkgs/tools/text/ispell/patches/0005-Do-not-reorder-words.patch +++ /dev/null @@ -1,52 +0,0 @@ -From: Geoff Kuenning <geoff@cs.hmc.edu> -Date: Thu, 3 Nov 2005 14:14:15 -0800 -Subject: 0005 Do not reorder words - -ispell reorders words in personal dictionary without good reason. - -The correct approach is to build the internal data structure with variant -spellings stored in the same order as they appear in the personal dictionary. -Fortunately, this is easy, though the patch is to a different file. This one -has been tested (That's what I get for trying to rush out a fix before a -meeting!). ---- - makedent.c | 18 +++++++++++------- - 1 files changed, 11 insertions(+), 7 deletions(-) - -diff --git a/makedent.c b/makedent.c -index 0453d11..d121345 100644 ---- a/makedent.c -+++ b/makedent.c -@@ -447,9 +447,10 @@ int combinecaps (hdrp, newp) - if (retval == 0) - { - /* -- ** Couldn't combine the two entries. Add a new variant. For -- ** ease, we'll stick it right behind the header, rather than -- ** at the end of the list. -+ ** Couldn't combine the two entries. Add a new variant. We -+ ** stick it at the end of the variant list because it's -+ ** important to maintain order; this causes the personal -+ ** dictionary to have a stable ordering. - */ - forcevheader (hdrp, oldp, newp); - tdent = (struct dent *) mymalloc (sizeof (struct dent)); -@@ -460,10 +461,13 @@ int combinecaps (hdrp, newp) - return -1; - } - *tdent = *newp; -- tdent->next = hdrp->next; -- hdrp->next = tdent; -- tdent->flagfield |= (hdrp->flagfield & MOREVARIANTS); -- hdrp->flagfield |= MOREVARIANTS; -+ for (oldp = hdrp; -+ oldp->next != NULL && oldp->flagfield & MOREVARIANTS; -+ oldp = oldp->next) -+ ; -+ tdent->next = oldp->next; -+ oldp->next = tdent; -+ oldp->flagfield |= MOREVARIANTS; - combineaffixes (hdrp, newp); - hdrp->flagfield |= (newp->flagfield & KEEP); - if (captype (newp->flagfield) == FOLLOWCASE) --- |