1235274Sgabor#!/bin/sh 2235274Sgabor 3235274Sgabor# $FreeBSD$ 4235274Sgabor 5235274Sgaborrm -rf siks 6235274Sgabormkdir -p siks 7235274Sgabor 8235274Sgaborexport GNUSORT_NUMERIC_COMPATIBILITY=x 9235274Sgabor 10235274SgaborBSDSORT=../sort 11235274SgaborGNUSORT=~/coreutils/bin/sort 12235274Sgabor#GNUSORT=sort 13235274Sgabor 14235274SgaborFILECMP=cmp 15235274Sgabor 16235274SgaborINPUT_FILE=si 17235274Sgabor 18235274Sgaborrm -rf test.log 19235274Sgabor 20235274Sgabor#ru_RU.ISO-8859-5 en_US.ISO8859-15 zh_HK.Big5HKSCS 21235274Sgabor# 22235274Sgabor# ru KOI-8 is an "irregular" locale with non-trivial ordering. 23235274Sgabor# zh* is a 2-bytes locale 24235274Sgabor 25235274Sgaborfor lang in ru_RU.KOI8-R C ru_RU.ISO-8859-5 en_US.ISO8859-15 zh_HK.Big5HKSCS 26235274Sgabordo 27235274Sgabor 28235274Sgabor export LANG=${lang} 29235274Sgabor 30235274Sgabor for KEYS in -srh -sfrudb -Vs -sM -siz 31235274Sgabor do 32235274Sgabor 33235274Sgabor echo ${LANG} ${KEYS} 34235274Sgabor 35235274Sgabor ${BSDSORT} ${KEYS} ${INPUT_FILE} -o siks/sik1 36235274Sgabor ER=$? 37235274Sgabor if ! [ ${ER} -eq 0 ] ; then 38235274Sgabor echo ${LANG} ${KEYS} crash >> test.log 39235274Sgabor exit 40235274Sgabor fi 41235274Sgabor ${GNUSORT} ${KEYS} ${INPUT_FILE} -o siks/sik2 42235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.0.0 2>&1 ; then 43235274Sgabor echo ${LANG} ${KEYS} error >> test.log 44235274Sgabor fi 45235274Sgabor ${BSDSORT} -c ${KEYS} siks/sik1 46235274Sgabor ER=$? 47235274Sgabor if ! [ ${ER} -eq 0 ] ; then 48235274Sgabor echo ${LANG} ${KEYS} -c error >> test.log 49235274Sgabor fi 50235274Sgabor rm siks/res.0.0 51235274Sgabor 52235274Sgabor ${BSDSORT} ${KEYS} -t " " ${INPUT_FILE} -o siks/sik1 53235274Sgabor ER=$? 54235274Sgabor if ! [ ${ER} -eq 0 ] ; then 55235274Sgabor echo ${LANG} ${KEYS} -t " " crash >> test.log 56235274Sgabor exit 57235274Sgabor fi 58235274Sgabor ${GNUSORT} ${KEYS} -t " " ${INPUT_FILE} -o siks/sik2 59235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.0.0 2>&1 ; then 60235274Sgabor echo ${LANG} ${KEYS} error -t " " >> test.log 61235274Sgabor fi 62235274Sgabor ${BSDSORT} -c -t " " ${KEYS} siks/sik1 63235274Sgabor ER=$? 64235274Sgabor if ! [ ${ER} -eq 0 ] ; then 65235274Sgabor echo $? ${LANG} ${KEYS} -t " " -c error >> test.log 66235274Sgabor fi 67235274Sgabor rm siks/res.0.0 68235274Sgabor 69235274Sgabor ${BSDSORT} ${KEYS} -t "|" ${INPUT_FILE} -o siks/sik1 70235274Sgabor ER=$? 71235274Sgabor if ! [ ${ER} -eq 0 ] ; then 72235274Sgabor echo ${LANG} ${KEYS} -t "|" crash >> test.log 73235274Sgabor exit 74235274Sgabor fi 75235274Sgabor ${GNUSORT} ${KEYS} -t "|" ${INPUT_FILE} -o siks/sik2 76235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.0.0 2>&1 ; then 77235274Sgabor echo ${LANG} ${KEYS} error -t "|" >> test.log 78235274Sgabor fi 79235274Sgabor ${BSDSORT} -c -t "|" ${KEYS} siks/sik1 80235274Sgabor ER=$? 81235274Sgabor if ! [ ${ER} -eq 0 ] ; then 82235274Sgabor echo ${LANG} ${KEYS} -c -t "|" error >> test.log 83235274Sgabor fi 84235274Sgabor rm siks/res.0.0 85235274Sgabor 86235274Sgabor ${BSDSORT} ${KEYS} -t '\0' ${INPUT_FILE} -o siks/sik1 87235274Sgabor ER=$? 88235274Sgabor if ! [ ${ER} -eq 0 ] ; then 89235274Sgabor echo ${LANG} ${KEYS} -t 0 crash >> test.log 90235274Sgabor exit 91235274Sgabor fi 92235274Sgabor ${GNUSORT} ${KEYS} -t '\0' ${INPUT_FILE} -o siks/sik2 93235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.0.0 2>&1 ; then 94235274Sgabor echo ${LANG} ${KEYS} error -t '\0' >> test.log 95235274Sgabor fi 96235274Sgabor ${BSDSORT} -c -t '\0' ${KEYS} siks/sik1 97235274Sgabor ER=$? 98235274Sgabor if ! [ ${ER} -eq 0 ] ; then 99235274Sgabor echo ${LANG} ${KEYS} -c -t '\0' error >> test.log 100235274Sgabor fi 101235274Sgabor rm siks/res.0.0 102235274Sgabor 103235274Sgabor for f1 in 1 2 3 4 5 6 7 8 9 104235274Sgabor do 105235274Sgabor for c1 in 1 2 3 4 5 10 15 20 25 30 106235274Sgabor do 107235274Sgabor echo ${LANG} ${KEYS} ${f1} ${c1} 108235274Sgabor 109235274Sgabor ${BSDSORT} ${KEYS} +${f1}.${c1} ${INPUT_FILE} -o siks/sik1 110235274Sgabor ER=$? 111235274Sgabor if ! [ ${ER} -eq 0 ] ; then 112235274Sgabor echo ${LANG} ${KEYS} +${f1}.${c1} crash +- >> test.log 113235274Sgabor exit 114235274Sgabor fi 115235274Sgabor ${GNUSORT} ${KEYS} +${f1}.${c1} ${INPUT_FILE} -o siks/sik2 116235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1} 2>&1 ; then 117235274Sgabor echo ${LANG} ${KEYS} +${f1}.${c1} error +- >> test.log 118235274Sgabor fi 119235274Sgabor ${BSDSORT} -c ${KEYS} +${f1}.${c1} siks/sik1 120235274Sgabor ER=$? 121235274Sgabor if ! [ ${ER} -eq 0 ] ; then 122235274Sgabor echo ${LANG} ${KEYS} +${f1}.${c1} -c error +- >> test.log 123235274Sgabor fi 124235274Sgabor rm siks/res.${f1}.${c1} 125235274Sgabor 126235274Sgabor ${BSDSORT} ${KEYS} -k${f1}.${c1} ${INPUT_FILE} -o siks/sik1 127235274Sgabor ER=$? 128235274Sgabor if ! [ ${ER} -eq 0 ] ; then 129235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1} crash >> test.log 130235274Sgabor exit 131235274Sgabor fi 132235274Sgabor ${GNUSORT} ${KEYS} -k${f1}.${c1} ${INPUT_FILE} -o siks/sik2 133235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1} 2>&1 ; then 134235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1} error >> test.log 135235274Sgabor fi 136235274Sgabor ${BSDSORT} -c ${KEYS} -k${f1}.${c1} siks/sik1 137235274Sgabor ER=$? 138235274Sgabor if ! [ ${ER} -eq 0 ] ; then 139235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1} -c error >> test.log 140235274Sgabor fi 141235274Sgabor rm siks/res.${f1}.${c1} 142235274Sgabor 143235274Sgabor ${BSDSORT} ${KEYS} -k${f1}.${c1}b ${INPUT_FILE} -o siks/sik1 144235274Sgabor ER=$? 145235274Sgabor if ! [ ${ER} -eq 0 ] ; then 146235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}b crash >> test.log 147235274Sgabor exit 148235274Sgabor fi 149235274Sgabor ${GNUSORT} ${KEYS} -k${f1}.${c1}b ${INPUT_FILE} -o siks/sik2 150235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1} 2>&1 ; then 151235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}b error >> test.log 152235274Sgabor fi 153235274Sgabor ${BSDSORT} -c ${KEYS} -k${f1}.${c1}b siks/sik1 154235274Sgabor ER=$? 155235274Sgabor if ! [ ${ER} -eq 0 ] ; then 156235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}b -c error >> test.log 157235274Sgabor fi 158235274Sgabor rm siks/res.${f1}.${c1} 159235274Sgabor 160235274Sgabor ${BSDSORT} ${KEYS} -t " " -k${f1}.${c1} ${INPUT_FILE} -o siks/sik1 161235274Sgabor ER=$? 162235274Sgabor if ! [ ${ER} -eq 0 ] ; then 163235274Sgabor echo ${LANG} ${KEYS} -t -k${f1}.${c1} crash >> test.log 164235274Sgabor exit 165235274Sgabor fi 166235274Sgabor ${GNUSORT} ${KEYS} -t " " -k${f1}.${c1} ${INPUT_FILE} -o siks/sik2 167235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1} 2>&1 ; then 168235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1} error -t " " >> test.log 169235274Sgabor fi 170235274Sgabor ${BSDSORT} -c -t " " ${KEYS} -k${f1}.${c1} siks/sik1 171235274Sgabor ER=$? 172235274Sgabor if ! [ ${ER} -eq 0 ] ; then 173235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1} -t " " -c error >> test.log 174235274Sgabor fi 175235274Sgabor rm siks/res.${f1}.${c1} 176235274Sgabor 177235274Sgabor ${BSDSORT} ${KEYS} -t " " -k${f1}.${c1}n ${INPUT_FILE} -o siks/sik1 178235274Sgabor ER=$? 179235274Sgabor if ! [ ${ER} -eq 0 ] ; then 180235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}n crash >> test.log 181235274Sgabor exit 182235274Sgabor fi 183235274Sgabor ${GNUSORT} ${KEYS} -t " " -k${f1}.${c1}n ${INPUT_FILE} -o siks/sik2 184235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1} 2>&1 ; then 185235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1} error -t " " n >> test.log 186235274Sgabor fi 187235274Sgabor ${BSDSORT} -c -t " " ${KEYS} -k${f1}.${c1}n siks/sik1 188235274Sgabor ER=$? 189235274Sgabor if ! [ ${ER} -eq 0 ] ; then 190235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1} -c -t " " n error >> test.log 191235274Sgabor fi 192235274Sgabor rm siks/res.${f1}.${c1} 193235274Sgabor 194235274Sgabor ${BSDSORT} ${KEYS} -t "|" -k${f1}.${c1} ${INPUT_FILE} -o siks/sik1 195235274Sgabor ER=$? 196235274Sgabor if ! [ ${ER} -eq 0 ] ; then 197235274Sgabor echo ${LANG} ${KEYS} -t "|" -k${f1}.${c1} crash >> test.log 198235274Sgabor exit 199235274Sgabor fi 200235274Sgabor ${GNUSORT} ${KEYS} -t "|" -k${f1}.${c1} ${INPUT_FILE} -o siks/sik2 201235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1} 2>&1 ; then 202235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1} error -t "|" >> test.log 203235274Sgabor fi 204235274Sgabor ${BSDSORT} -c -t "|" ${KEYS} -k${f1}.${c1} siks/sik1 205235274Sgabor ER=$? 206235274Sgabor if ! [ ${ER} -eq 0 ] ; then 207235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1} -c -t "|" error >> test.log 208235274Sgabor fi 209235274Sgabor rm siks/res.${f1}.${c1} 210235274Sgabor 211235274Sgabor for f2 in 1 2 3 4 5 6 7 8 9 10 212235274Sgabor do 213235274Sgabor for c2 in 0 1 2 3 4 5 10 15 20 25 30 214235274Sgabor do 215235274Sgabor echo ${LANG} ${KEYS} ${f1} ${c1} ${f2} ${c2} 216235274Sgabor 217235274Sgabor ${BSDSORT} ${KEYS} +${f1}.${c1} -${f2}.${c2} ${INPUT_FILE} -o siks/sik1 218235274Sgabor ER=$? 219235274Sgabor if ! [ ${ER} -eq 0 ] ; then 220235274Sgabor echo ${LANG} ${KEYS} +${f1}.${c1} -${f2}.${c2} crash >> test.log 221235274Sgabor exit 222235274Sgabor fi 223235274Sgabor ${GNUSORT} ${KEYS} +${f1}.${c1} -${f2}.${c2} ${INPUT_FILE} -o siks/sik2 224235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1}.${f2}.${c2} 2>&1 ; then 225235274Sgabor echo ${LANG} ${KEYS} +${f1}.${c1} -${f2}.${c2} error +- >> test.log 226235274Sgabor fi 227235274Sgabor ${BSDSORT} -c ${KEYS} +${f1}.${c1} -${f2}.${c2} siks/sik1 228235274Sgabor ER=$? 229235274Sgabor if ! [ ${ER} -eq 0 ] ; then 230235274Sgabor echo ${LANG} ${KEYS} +${f1}.${c1} -${f2}.${c2} -c error +- >> test.log 231235274Sgabor fi 232235274Sgabor rm siks/res.${f1}.${c1}.${f2}.${c2} 233235274Sgabor 234235274Sgabor ${BSDSORT} ${KEYS} -k${f1}.${c1},${f2}.${c2} ${INPUT_FILE} -o siks/sik1 235235274Sgabor ER=$? 236235274Sgabor if ! [ ${ER} -eq 0 ] ; then 237235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1},${f2}.${c2} crash >> test.log 238235274Sgabor exit 239235274Sgabor fi 240235274Sgabor ${GNUSORT} ${KEYS} -k${f1}.${c1},${f2}.${c2} ${INPUT_FILE} -o siks/sik2 241235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1}.${f2}.${c2} 2>&1 ; then 242235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}.${f2}.${c2} error >> test.log 243235274Sgabor fi 244235274Sgabor ${BSDSORT} -c ${KEYS} -k${f1}.${c1},${f2}.${c2} siks/sik1 245235274Sgabor ER=$? 246235274Sgabor if ! [ ${ER} -eq 0 ] ; then 247235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1},${f2}.${c2} -c error >> test.log 248235274Sgabor fi 249235274Sgabor rm siks/res.${f1}.${c1}.${f2}.${c2} 250235274Sgabor 251235274Sgabor ${BSDSORT} ${KEYS} -k${f1}.${c1}b,${f2}.${c2} ${INPUT_FILE} -o siks/sik1 252235274Sgabor ER=$? 253235274Sgabor if ! [ ${ER} -eq 0 ] ; then 254235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}b,${f2}.${c2} crash >> test.log 255235274Sgabor exit 256235274Sgabor fi 257235274Sgabor ${GNUSORT} ${KEYS} -k${f1}.${c1}b,${f2}.${c2} ${INPUT_FILE} -o siks/sik2 258235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1}.${f2}.${c2} 2>&1 ; then 259235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}.b.${f2}.${c2} error >> test.log 260235274Sgabor fi 261235274Sgabor ${BSDSORT} -c ${KEYS} -k${f1}.${c1}b,${f2}.${c2} siks/sik1 262235274Sgabor ER=$? 263235274Sgabor if ! [ ${ER} -eq 0 ] ; then 264235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}b,${f2}.${c2} -c error >> test.log 265235274Sgabor fi 266235274Sgabor rm siks/res.${f1}.${c1}.${f2}.${c2} 267235274Sgabor 268235274Sgabor ${BSDSORT} ${KEYS} -t " " -k${f1}.${c1},${f2}.${c2} ${INPUT_FILE} -o siks/sik1 269235274Sgabor ER=$? 270235274Sgabor if ! [ ${ER} -eq 0 ] ; then 271235274Sgabor echo ${LANG} ${KEYS} -t " " -k${f1}.${c1},${f2}.${c2} crash >> test.log 272235274Sgabor exit 273235274Sgabor fi 274235274Sgabor ${GNUSORT} ${KEYS} -t " " -k${f1}.${c1},${f2}.${c2} ${INPUT_FILE} -o siks/sik2 275235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1}.${f2}.${c2} 2>&1 ; then 276235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}.${f2}.${c2} error -t " " >> test.log 277235274Sgabor fi 278235274Sgabor ${BSDSORT} -c -t " " ${KEYS} -k${f1}.${c1},${f2}.${c2} siks/sik1 279235274Sgabor ER=$? 280235274Sgabor if ! [ ${ER} -eq 0 ] ; then 281235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1},${f2}.${c2} -c -t " " error >> test.log 282235274Sgabor fi 283235274Sgabor rm siks/res.${f1}.${c1}.${f2}.${c2} 284235274Sgabor 285235274Sgabor ${BSDSORT} ${KEYS} -t " " -k${f1}.${c1}n,${f2}.${c2} ${INPUT_FILE} -o siks/sik1 286235274Sgabor ER=$? 287235274Sgabor if ! [ ${ER} -eq 0 ] ; then 288235274Sgabor echo ${LANG} ${KEYS} -t " " -k${f1}.${c1}n,${f2}.${c2} crash >> test.log 289235274Sgabor exit 290235274Sgabor fi 291235274Sgabor ${GNUSORT} ${KEYS} -t " " -k${f1}.${c1}n,${f2}.${c2} ${INPUT_FILE} -o siks/sik2 292235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1}.${f2}.${c2} 2>&1 ; then 293235274Sgabor echo ${LANG} ${KEYS} -t " " -k${f1}.${c1}.${f2}.${c2} error n >> test.log 294235274Sgabor fi 295235274Sgabor ${BSDSORT} -c -t " " ${KEYS} -k${f1}.${c1}n,${f2}.${c2} siks/sik1 296235274Sgabor ER=$? 297235274Sgabor if ! [ ${ER} -eq 0 ] ; then 298235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1},${f2}.${c2} -c -t " " n error >> test.log 299235274Sgabor fi 300235274Sgabor rm siks/res.${f1}.${c1}.${f2}.${c2} 301235274Sgabor 302235274Sgabor ${BSDSORT} ${KEYS} -t '\0' -k${f1}.${c1}n,${f2}.${c2} ${INPUT_FILE} -o siks/sik1 303235274Sgabor ER=$? 304235274Sgabor if ! [ ${ER} -eq 0 ] ; then 305235274Sgabor echo ${LANG} ${KEYS} -t '\0' -k${f1}.${c1}n,${f2}.${c2} crash >> test.log 306235274Sgabor exit 307235274Sgabor fi 308235274Sgabor ${GNUSORT} ${KEYS} -t '\0' -k${f1}.${c1}n,${f2}.${c2} ${INPUT_FILE} -o siks/sik2 309235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1}.${f2}.${c2} 2>&1 ; then 310235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}.${f2}.${c2} error -t '\0' n >> test.log 311235274Sgabor fi 312235274Sgabor ${BSDSORT} -c -t '\0' ${KEYS} -k${f1}.${c1}n,${f2}.${c2} siks/sik1 313235274Sgabor ER=$? 314235274Sgabor if ! [ ${ER} -eq 0 ] ; then 315235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1},${f2}.${c2} -c -t '\0' n error >> test.log 316235274Sgabor fi 317235274Sgabor rm siks/res.${f1}.${c1}.${f2}.${c2} 318235274Sgabor 319235274Sgabor ${BSDSORT} ${KEYS} -t "|" -k${f1}.${c1},${f2}.${c2} ${INPUT_FILE} -o siks/sik1 320235274Sgabor ER=$? 321235274Sgabor if ! [ ${ER} -eq 0 ] ; then 322235274Sgabor echo ${LANG} ${KEYS} -t "|" -k${f1}.${c1},${f2}.${c2} crash >> test.log 323235274Sgabor exit 324235274Sgabor fi 325235274Sgabor ${GNUSORT} ${KEYS} -t "|" -k${f1}.${c1},${f2}.${c2} ${INPUT_FILE} -o siks/sik2 326235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1}.${f2}.${c2} 2>&1 ; then 327235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}.${f2}.${c2} error -t "|" >> test.log 328235274Sgabor fi 329235274Sgabor ${BSDSORT} -c -t "|" ${KEYS} -k${f1}.${c1},${f2}.${c2} siks/sik1 330235274Sgabor ER=$? 331235274Sgabor if ! [ ${ER} -eq 0 ] ; then 332235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1},${f2}.${c2} -c -t "|" error >> test.log 333235274Sgabor fi 334235274Sgabor rm siks/res.${f1}.${c1}.${f2}.${c2} 335235274Sgabor 336235274Sgabor ${BSDSORT} ${KEYS} -t "|" -k${f1}.${c1},${f2}.${c2} -k${f2}.${c1},${f1}.${c2} ${INPUT_FILE} -o siks/sik1 337235274Sgabor ER=$? 338235274Sgabor if ! [ ${ER} -eq 0 ] ; then 339235274Sgabor echo ${LANG} ${KEYS} -t "|" -k${f1}.${c1},${f2}.${c2} -k${f2}.${c1},${f1}.${c2} crash >> test.log 340235274Sgabor exit 341235274Sgabor fi 342235274Sgabor ${GNUSORT} ${KEYS} -t "|" -k${f1}.${c1},${f2}.${c2} -k${f2}.${c1},${f1}.${c2} ${INPUT_FILE} -o siks/sik2 343235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1}.${f2}.${c2} 2>&1 ; then 344235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}.${f2}.${c2} error -t "|" 2k >> test.log 345235274Sgabor fi 346235274Sgabor ${BSDSORT} -c -t "|" ${KEYS} -k${f1}.${c1},${f2}.${c2} -k${f2}.${c1},${f1}.${c2} siks/sik1 347235274Sgabor ER=$? 348235274Sgabor if ! [ ${ER} -eq 0 ] ; then 349235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1},${f2}.${c2} -c -t "|" 2k error >> test.log 350235274Sgabor fi 351235274Sgabor rm siks/res.${f1}.${c1}.${f2}.${c2} 352235274Sgabor 353235274Sgabor ${BSDSORT} ${KEYS} -k${f1}.${c1}b,${f2}.${c2} -k${f2}.${c1},${f1}.${c2} ${INPUT_FILE} -o siks/sik1 354235274Sgabor ER=$? 355235274Sgabor if ! [ ${ER} -eq 0 ] ; then 356235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}b,${f2}.${c2} -k${f2}.${c1},${f1}.${c2} crash >> test.log 357235274Sgabor exit 358235274Sgabor fi 359235274Sgabor ${GNUSORT} ${KEYS} -k${f1}.${c1}b,${f2}.${c2} -k${f2}.${c1},${f1}.${c2} ${INPUT_FILE} -o siks/sik2 360235274Sgabor if ! ${FILECMP} siks/sik1 siks/sik2 >siks/res.${f1}.${c1}.${f2}.${c2} 2>&1 ; then 361235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}.b.${f2}.${c2} error 2k >> test.log 362235274Sgabor fi 363235274Sgabor ${BSDSORT} -c ${KEYS} -k${f1}.${c1}b,${f2}.${c2} -k${f2}.${c1},${f1}.${c2} siks/sik1 364235274Sgabor ER=$? 365235274Sgabor if ! [ ${ER} -eq 0 ] ; then 366235274Sgabor echo ${LANG} ${KEYS} -k${f1}.${c1}b,${f2}.${c2} -c 2k error >> test.log 367235274Sgabor fi 368235274Sgabor rm siks/res.${f1}.${c1}.${f2}.${c2} 369235274Sgabor 370235274Sgabor done 371235274Sgabor done 372235274Sgabor done 373235274Sgabor done 374235274Sgabor done 375235274Sgabordone 376235274Sgabor 377