Package: ispell Version: 3.1.20.0-4 Severity: serious Tags: patch pbuilder fails to build ispell in an unstable chroot on i386:
> + munchlist -v -l ../english/english.aff /usr/share/dict/british-english > english.0 english.1 british.0 british.1 > Collecting input. > sort: invalid option -- 1 > Try `sort --help' for more information. > tr: write error: Broken pipe > tr: write error > Finding flag marker. > Generating roots and affixes. > sort: invalid option -- 1 > Try `sort --help' for more information. > Expanding dictionary into EXPANDEDPAIRS. > sort: open failed: +1: No such file or directory > Creating list of legal roots/flags. > sort: invalid option -- 1 > Try `sort --help' for more information. > Creating list of flags that participate in cross-products. > sort: invalid option -- 1 > Try `sort --help' for more information. > Eliminating non-optimal affixes. > sort: invalid option -- 2 > Try `sort --help' for more information. > sort: invalid option -- 2 > Try `sort --help' for more information. > sort: invalid option -- 1 > Try `sort --help' for more information. > Generating output word list. > sort: invalid option -- 1 > Try `sort --help' for more information. > test -s english.med+ \ > || (echo 'error: zero-length dictionary generated'; \ > rm -f english.med+; exit 1) > error: zero-length dictionary generated The attached patch makes it use -k instead, which fixes these problems. -- Matt
diff -u ispell-3.1.20.0/munchlist.X ispell-3.1.20.0/munchlist.X
--- ispell-3.1.20.0/munchlist.X
+++ ispell-3.1.20.0/munchlist.X
@@ -357,7 +357,7 @@
cat "$@" | ispell "$wchars" -e1 -d $FAKEHASH -p /dev/null | tr " " '
'
fi \
- | sort $SORTTMP -u +0f -1 +0 \
+ | sort $SORTTMP -u -k1f,2 -k1 \
| $COMBINE $icflags $langtabs \
| sort $SORTTMP -u > $EXPANDEDINPUT
#
@@ -417,7 +417,7 @@
ispell "$wchars" -c -W0 -d $FAKEHASH -p /dev/null < $STRIPPEDINPUT \
| tr " " '
' \
- | egrep "$flagmarker" | sort $SORTTMP -u "-t$flagmarker" +0 -1 +1 \
+ | egrep "$flagmarker" | sort $SORTTMP -u "-t$flagmarker" -k1,2 -k2 \
| $JOIN $SIGNED "-t$flagmarker" - $EXPANDEDINPUT > $CRUNCHEDINPUT
#
# We now have a list of legal roots, and of affixes that apply to the
@@ -443,7 +443,7 @@
#
$verbose && echo 'Expanding dictionary into EXPANDEDPAIRS.' 1>&2
ispell "$wchars" -e3 -d $FAKEHASH -p /dev/null < $CRUNCHEDINPUT \
- | sort $SORTTMP +1 > $EXPANDEDPAIRS
+ | sort $SORTTMP -k2 > $EXPANDEDPAIRS
#
# Now we want to extract the lines in EXPANDEDPAIRS in which the second field
# is *not* listed in the original dictionary EXPANDEDINPUT; these illegal
@@ -471,7 +471,7 @@
| (sed -e 's; .*$;;' ; /bin/rm -f $JOINEDPAIRS $EXPANDEDPAIRS) \
| uniq \
| (comm -13 - $CRUNCHEDINPUT ; /bin/rm -f $CRUNCHEDINPUT) \
- | sort $SORTTMP -u "-t$flagmarker" +0f -1 +0 \
+ | sort $SORTTMP -u "-t$flagmarker" -k1f,2 -k1 \
| $COMBINE $langtabs > $LEGALFLAGLIST
#
@@ -501,7 +501,7 @@
| sort $SORTTMP \
| uniq -c \
| tr ' ' ' ' \
- | sort $SORTTMP +0rn -1 +2 > $PRODUCTLIST
+ | sort $SORTTMP -k1rn,2 -k3 > $PRODUCTLIST
if [ `egrep ' p ' $PRODUCTLIST | wc -l` -gt 0 \
-a `egrep ' s ' $PRODUCTLIST | wc -l` -gt 0 ]
@@ -616,7 +616,7 @@
#
$verbose && echo "Creating cross expansions (pass $dbnum)." 1>&2
ispell "$wchars" -e3 -d $FAKEHASH -p /dev/null < $CROSSROOTS \
- | sort $SORTTMP +1 > $CROSSEXPANDED
+ | sort $SORTTMP -k2 > $CROSSEXPANDED
#
# Now we join CROSSEXPANDED against EXPANDEDINPUT to produce
# CROSSPAIRS, and then comm that against CROSSEXPANDED to
@@ -686,7 +686,7 @@
D
}' \
| comm -23 - $ILLEGALCOMBOS \
- | sort $SORTTMP -u "-t$flagmarker" +0f -1 +0 \
+ | sort $SORTTMP -u "-t$flagmarker" -k1f,2 -k1 \
| $COMBINE $langtabs > $CROSSROOTS
mv $CROSSROOTS $LEGALFLAGLIST
if [ "$debug" = yes ]
@@ -722,10 +722,10 @@
#
$verbose && echo 'Eliminating non-optimal affixes.' 1>&2
ispell "$wchars" -e4 -d $FAKEHASH -p /dev/null < $LEGALFLAGLIST \
- | sort $SORTTMP +1 -2 +2rn -3 +0 -1 \
- | sort $SORTTMP -um +1 -2 \
+ | sort $SORTTMP -k2,3 -k3rn,4 -k1,2 \
+ | sort $SORTTMP -um -k2,3 \
| sed -e 's; .*$;;' \
- | sort $SORTTMP -u "-t$flagmarker" +0f -1 +0 > $MINIMALAFFIXES
+ | sort $SORTTMP -u "-t$flagmarker" -k1f,2 -k1 > $MINIMALAFFIXES
/bin/rm -f $LEGALFLAGLIST
#
# Now we're almost done. MINIMALAFFIXES covers some (with luck, most)
@@ -753,10 +753,10 @@
fi
(ispell "$wchars" -l -d $FAKEHASH -p /dev/null < $STRIPPEDINPUT; \
$COMBINE $langtabs < $MINIMALAFFIXES) \
- | sort $SORTTMP "-t$flagmarker" -u +0f -1 +0
+ | sort $SORTTMP "-t$flagmarker" -u -k1f,1 -k1
else
# MINIMALAFFIXES is empty; just produce a sorted version of STRIPPEDINPUT
- sort $SORTTMP "-t$flagmarker" -u +0f -1 +0 $STRIPPEDINPUT
+ sort $SORTTMP "-t$flagmarker" -u -k1f,2 -k1 $STRIPPEDINPUT
fi
/bin/rm -rf ${TDIR}
if [ "X$MUNCHMAIL" != X ]
signature.asc
Description: Digital signature

