Submitted By: Richard Downing (richard dot downing at bcs dot org dot uk)
Date: 2003-11-23
Initial Package Version: 3.2.06-epa6
Origin: Richard Downing FBCS
Description: Makes ispell POSIX conformant

diff -Naur ispell-3.2.06.epa6/Makefile ispell.mod/Makefile
--- ispell-3.2.06.epa6/Makefile	2003-08-24 12:50:58.000000000 +0100
+++ ispell.mod/Makefile	2003-11-23 21:06:53.892174456 +0000
@@ -530,7 +530,7 @@
 	    cat config.X local.h \
 	      | sed -n -e "s/^#define[ 	]*$$var[ 	]*"'"'"/$$var=/p" \
 	      | sed -e 's/".*$$/'"'/" -e "s/=/='/" \
-	      | tail -1; \
+	      | tail -n 1; \
 	  done > config.sh; \
 	echo 'case "$$MAKE_SORTTMP" in "") \
 	  SORTTMP="-e /!!SORTTMP!!/s/=.*$$/=/";; *) SORTTMP=;; esac' \
diff -Naur ispell-3.2.06.epa6/Makepatch ispell.mod/Makepatch
--- ispell-3.2.06.epa6/Makepatch	2003-08-23 11:55:54.000000000 +0100
+++ ispell.mod/Makepatch	2003-11-23 21:08:04.220482928 +0000
@@ -137,7 +137,7 @@
 
 if [ -r "$destdir/Patch${baserelease}.01" ]
 then
-    lastpatch=`ls $destdir/Patch${baserelease}.?? | tail -1 \
+    lastpatch=`ls $destdir/Patch${baserelease}.?? | tail -n 1 \
       | sed "s;$destdir/Patch${baserelease}.;;"`
 else
     lastpatch=00
diff -Naur ispell-3.2.06.epa6/findaffix.X ispell.mod/findaffix.X
--- ispell-3.2.06.epa6/findaffix.X	2003-08-23 11:55:54.000000000 +0100
+++ ispell.mod/findaffix.X	2003-11-23 21:05:47.443276224 +0000
@@ -148,7 +148,8 @@
 elimlen=1
 lowcount=10
 cleanout=no
-finalsortopts='+3rn -4 +2rn -3 +1 -2 +0 -1'
+finalsortopts='-k 4rn,5 -k 3rn,4 -k 2,3 -k 1,2'
+#			  '+3rn -4 +2rn -3 +1 -2 +0 -1'
 tabch=/
 while :
 do
@@ -173,7 +174,8 @@
 	    shift
 	    ;;
 	-f)
-	    finalsortopts='+2rn -3 +3rn -4 +1 -2 +0 -1'
+	    finalsortopts='-k 3rn,4 -k 4rn,5 -k 2,3 -k 1,2'
+#                     '+2rn -3 +3rn -4 +1 -2 +0 -1'
 	    shift
 	    ;;
 	-c)
@@ -252,10 +254,10 @@
 	next
     '"$LOOP"'
     }' < ${TMP}a \
-  | sort "-t$tabch" +0 -1 +1 $SORTTMP -o ${TMP}a
+  | sort "-t$tabch" -k 1,2 $SORTTMP -o ${TMP}a
 join "-t$tabch" -o 1.2 2.2 2.3 ${TMP}a ${TMP}a \
   | awk "-F$tabch" "BEGIN{elimlen=$elimlen}$ELIM" \
-  | sort "-t$tabch" +1 -2 +0 -1 $SORTTMP \
+  | sort "-t$tabch" -k 2,3 -k 1,2 $SORTTMP \
   | awk "-F$tabch" 'BEGIN{tabch="'"$tabch"'"; lowcount='"$lowcount"'}
 	{
 	if ($1 == last1  &&  $2 == last2)
diff -Naur ispell-3.2.06.epa6/languages/english/Makefile ispell.mod/languages/english/Makefile
--- ispell-3.2.06.epa6/languages/english/Makefile	2003-08-23 11:56:33.000000000 +0100
+++ ispell.mod/languages/english/Makefile	2003-11-23 21:06:36.418830808 +0000
@@ -436,7 +436,7 @@
 	    done; \
 	    trap "rm -f english.sml" 1 2 15; \
 	    set -x; \
-	    eval sort -u -t/ +0f -1 +0 $$MAKE_SORTTMP -o english.sml $$dicts
+	    eval sort -u -t/ -k 1f,2 -k 1 $$MAKE_SORTTMP -o english.sml $$dicts
 
 $(DBUILD)english.sml+:	$(CONFIG) $(EXTRADICT)
 $(DBUILD)english.sml+:	english.0
@@ -476,7 +476,7 @@
 	    done; \
 	    trap "rm -f english.med" 1 2 15; \
 	    set -x; \
-	    eval sort -u -t/ +0f -1 +0 $$MAKE_SORTTMP -o english.med $$dicts
+	    eval sort -u -t/ -k 1f,2 -k 1 $$MAKE_SORTTMP -o english.med $$dicts
 
 $(DBUILD)english.med+:	$(CONFIG) $(EXTRADICT)
 $(DBUILD)english.med+:	english.0
@@ -524,7 +524,7 @@
 	    done; \
 	    trap "rm -f english.lrg" 1 2 15; \
 	    set -x; \
-	    eval sort -u -t/ +0f -1 +0 $$MAKE_SORTTMP -o english.lrg $$dicts
+	    eval sort -u -t/ -k 1f,2 -k 1 $$MAKE_SORTTMP -o english.lrg $$dicts
 
 $(DBUILD)english.lrg+:	$(CONFIG) $(EXTRADICT)
 $(DBUILD)english.lrg+:	english.0
@@ -577,7 +577,7 @@
 	    done; \
 	    trap "rm -f english.xlg" 1 2 15; \
 	    set -x; \
-	    eval sort -u -t/ +0f -1 +0 $$MAKE_SORTTMP -o english.xlg $$dicts
+	    eval sort -u -t/ -k 1f,2 -k 1 $$MAKE_SORTTMP -o english.xlg $$dicts
 
 $(DBUILD)english.xlg+:	$(CONFIG) $(EXTRADICT)
 $(DBUILD)english.xlg+:	english.0
diff -Naur ispell-3.2.06.epa6/munchlist.X ispell.mod/munchlist.X
--- ispell-3.2.06.epa6/munchlist.X	2003-08-23 11:55:55.000000000 +0100
+++ ispell.mod/munchlist.X	2003-11-23 21:05:47.443276224 +0000
@@ -418,7 +418,7 @@
     cat "$@" | $ISPELL "$wchars" -e1 -d $FAKEHASH -p /dev/null | tr " " '
 '
 fi \
-  | sort $SORTTMP -u +0f -1 +0 \
+  | sort $SORTTMP -u -k 1f,2 -k 1 \
   | $COMBINE $icflags $langtabs \
   | sort $SORTTMP -u > $EXPANDEDINPUT
 #
@@ -478,7 +478,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" -k 1,2 -k 2 \
   | $JOIN $SIGNED "-t$flagmarker" - $EXPANDEDINPUT > $CRUNCHEDINPUT
 #
 # We now have a list of legal roots, and of affixes that apply to the
@@ -504,7 +504,7 @@
 #
 $verbose  &&  echo 'Expanding dictionary into EXPANDEDPAIRS.' 1>&2
 $ISPELL "$wchars" -e3 -d $FAKEHASH -p /dev/null < $CRUNCHEDINPUT \
-  | sort $SORTTMP +1 > $EXPANDEDPAIRS
+  | sort $SORTTMP -k 2 > $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
@@ -532,7 +532,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" -k 1f,2 -k 1 \
   | $COMBINE $langtabs > $LEGALFLAGLIST
 
 #
@@ -562,7 +562,7 @@
   | sort $SORTTMP \
   | uniq -c \
   | tr '	' ' ' \
-  | sort $SORTTMP +0rn -1 +2 > $PRODUCTLIST
+  | sort $SORTTMP -k 1rn,2 -k 3 > $PRODUCTLIST
 
 if [ `egrep ' p ' $PRODUCTLIST | wc -l` -gt 0 \
   -a `egrep ' s ' $PRODUCTLIST | wc -l` -gt 0 ]
@@ -677,7 +677,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 -k 2 > $CROSSEXPANDED
 	#
 	# Now we join CROSSEXPANDED against EXPANDEDINPUT to produce
 	# CROSSPAIRS, and then comm that against CROSSEXPANDED to
@@ -761,7 +761,7 @@
 	      D
 	      }' \
 	  | comm -23 - $ILLEGALCOMBOS \
-	  | sort $SORTTMP -u "-t$flagmarker" +0f -1 +0 \
+	  | sort $SORTTMP -u "-t$flagmarker" -k 1f,2 -k 1 \
 	  | $COMBINE $langtabs > $CROSSROOTS
 	mv $CROSSROOTS $LEGALFLAGLIST
 	if [ "$debug" = yes ]
@@ -797,10 +797,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 -k 2,3 -k 3rn,4 -k 1,2 \
+  | sort $SORTTMP -um -k 2,3 \
   | sed -e 's; .*$;;' \
-  | sort $SORTTMP -u "-t$flagmarker" +0f -1 +0 > $MINIMALAFFIXES
+  | sort $SORTTMP -u "-t$flagmarker" -k 1f,2 -k 1 > $MINIMALAFFIXES
 /bin/rm -f $LEGALFLAGLIST
 #
 # Now we're almost done.  MINIMALAFFIXES covers some (with luck, most)
@@ -828,10 +828,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 -k 1f,2 -k 1
 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 -k 1f,2 -k 1 $STRIPPEDINPUT
 fi
 /bin/rm -f ${TMP}*
 if [ "X$MUNCHMAIL" != X ]
