"Fossies" - the Fresh Open Source Software Archive

Member "gawk-5.1.0/test/Makefile.am" (10 Apr 2020, 63638 Bytes) of package /linux/misc/gawk-5.1.0.tar.xz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for "Makefile.am": 5.0.1_vs_5.1.0.

    1 #
    2 # test/Makefile.am --- automake input file for gawk
    3 #
    4 # Copyright (C) 1988-2020 the Free Software Foundation, Inc.
    5 #
    6 # This file is part of GAWK, the GNU implementation of the
    7 # AWK Programming Language.
    8 #
    9 # GAWK is free software; you can redistribute it and/or modify
   10 # it under the terms of the GNU General Public License as published by
   11 # the Free Software Foundation; either version 3 of the License, or
   12 # (at your option) any later version.
   13 #
   14 # GAWK is distributed in the hope that it will be useful,
   15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
   16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   17 # GNU General Public License for more details.
   18 #
   19 # You should have received a copy of the GNU General Public License
   20 # along with this program; if not, write to the Free Software
   21 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
   22 #
   23 
   24 ## process this file with automake to produce Makefile.in
   25 
   26 EXTRA_DIST = \
   27 	reg \
   28 	lib \
   29 	ChangeLog.0 \
   30 	ChangeLog.1 \
   31 	Gentests \
   32 	Maketests \
   33 	README \
   34 	aadelete1.awk \
   35 	aadelete1.ok \
   36 	aadelete2.awk \
   37 	aadelete2.ok \
   38 	aarray1.awk \
   39 	aarray1.ok \
   40 	aasort.awk \
   41 	aasort.ok \
   42 	aasorti.awk \
   43 	aasorti.ok \
   44 	addcomma.awk \
   45 	addcomma.in \
   46 	addcomma.ok \
   47 	anchgsub.awk \
   48 	anchgsub.in \
   49 	anchgsub.ok \
   50 	anchor.awk \
   51 	anchor.in \
   52 	anchor.ok \
   53 	apiterm.awk \
   54 	apiterm.in \
   55 	apiterm.ok \
   56 	argarray.awk \
   57 	argarray.in \
   58 	argarray.ok \
   59 	argtest.awk \
   60 	argtest.ok \
   61 	arrayind1.awk \
   62 	arrayind1.in \
   63 	arrayind1.ok \
   64 	arrayind2.awk \
   65 	arrayind2.ok \
   66 	arrayind3.awk \
   67 	arrayind3.ok \
   68 	arrayparm.awk \
   69 	arrayparm.ok \
   70 	arrayprm2.awk \
   71 	arrayprm2.ok \
   72 	arrayprm3.awk \
   73 	arrayprm3.ok \
   74 	arrayref.awk \
   75 	arrayref.ok \
   76 	arraysort.awk \
   77 	arraysort.ok \
   78 	arraysort2.awk \
   79 	arraysort2.ok \
   80 	arraytype.awk \
   81 	arraytype.ok \
   82 	arrdbg.awk \
   83 	arrymem1.awk \
   84 	arrymem1.ok \
   85 	arryref2.awk \
   86 	arryref2.ok \
   87 	arryref3.awk \
   88 	arryref3.ok \
   89 	arryref4.awk \
   90 	arryref4.ok \
   91 	arryref5.awk \
   92 	arryref5.ok \
   93 	arynasty.awk \
   94 	arynasty.ok \
   95 	arynocls.awk \
   96 	arynocls.in \
   97 	arynocls.ok \
   98 	aryprm1.awk \
   99 	aryprm1.ok \
  100 	aryprm2.awk \
  101 	aryprm2.ok \
  102 	aryprm3.awk \
  103 	aryprm3.ok \
  104 	aryprm4.awk \
  105 	aryprm4.ok \
  106 	aryprm5.awk \
  107 	aryprm5.ok \
  108 	aryprm6.awk \
  109 	aryprm6.ok \
  110 	aryprm7.awk \
  111 	aryprm7.ok \
  112 	aryprm8.awk \
  113 	aryprm8.ok \
  114 	aryprm9.awk \
  115 	aryprm9.ok \
  116 	arysubnm.awk \
  117 	arysubnm.ok \
  118 	aryunasgn.awk \
  119 	aryunasgn.ok \
  120 	asgext.awk \
  121 	asgext.in \
  122 	asgext.ok \
  123 	asort.awk \
  124 	asort.ok \
  125 	asorti.awk \
  126 	asorti.ok \
  127 	assignnumfield.awk \
  128 	assignnumfield.in \
  129 	assignnumfield.ok \
  130 	assignnumfield2.awk \
  131 	assignnumfield2.ok \
  132 	awkpath.ok \
  133 	back89.awk \
  134 	back89.in \
  135 	back89.ok \
  136 	backgsub.awk \
  137 	backgsub.in \
  138 	backgsub.ok \
  139 	backw.awk \
  140 	backw.in \
  141 	backw.ok \
  142 	backbigs1.awk \
  143 	backbigs1.in \
  144 	backbigs1.ok \
  145 	backsmalls1.awk \
  146 	backsmalls1.in \
  147 	backsmalls1.ok \
  148 	backsmalls2.awk \
  149 	backsmalls2.ok \
  150 	badargs.ok \
  151 	badassign1.awk \
  152 	badassign1.ok \
  153 	badbuild.awk \
  154 	badbuild.in \
  155 	badbuild.ok \
  156 	beginfile1.awk \
  157 	beginfile1.ok \
  158 	beginfile2.in \
  159 	beginfile2.ok \
  160 	beginfile2.sh \
  161 	binmode1.ok \
  162 	callparam.awk \
  163 	callparam.ok \
  164 	charasbytes.awk \
  165 	charasbytes.in \
  166 	charasbytes.ok \
  167 	checknegtime.awk \
  168 	childin.awk \
  169 	childin.in \
  170 	childin.ok \
  171 	clobber.awk \
  172 	clobber.ok \
  173 	clos1way.awk \
  174 	clos1way.ok \
  175 	clos1way2.awk \
  176 	clos1way2.in \
  177 	clos1way2.ok \
  178 	clos1way3.awk \
  179 	clos1way3.ok \
  180 	clos1way4.awk \
  181 	clos1way4.ok \
  182 	clos1way5.awk \
  183 	clos1way5.ok \
  184 	clos1way6.awk \
  185 	clos1way6.ok \
  186 	closebad.awk \
  187 	closebad.ok \
  188 	clsflnam.awk \
  189 	clsflnam.in \
  190 	clsflnam.ok \
  191 	colonwarn.awk \
  192 	colonwarn.in \
  193 	colonwarn.ok \
  194 	compare.awk \
  195 	compare.in \
  196 	compare.ok \
  197 	compare2.awk \
  198 	compare2.ok \
  199 	concat1.awk \
  200 	concat1.in \
  201 	concat1.ok \
  202 	concat2.awk \
  203 	concat2.ok \
  204 	concat3.awk \
  205 	concat3.ok \
  206 	concat4.awk \
  207 	concat4.in \
  208 	concat4.ok \
  209 	concat5.awk \
  210 	concat5.ok \
  211 	convfmt.awk \
  212 	convfmt.ok \
  213 	crlf.awk \
  214 	crlf.ok \
  215 	datanonl.awk \
  216 	datanonl.in \
  217 	datanonl.ok \
  218 	dbugeval.in \
  219 	dbugeval.ok \
  220 	dbugeval2.awk \
  221 	dbugeval2.in \
  222 	dbugeval2.ok \
  223 	dbugeval3.awk \
  224 	dbugeval3.in \
  225 	dbugeval3.ok \
  226 	dbugtypedre1.awk \
  227 	dbugtypedre1.in \
  228 	dbugtypedre1.ok \
  229 	dbugtypedre2.awk \
  230 	dbugtypedre2.in \
  231 	dbugtypedre2.ok \
  232 	defref.awk \
  233 	defref.ok \
  234 	delargv.awk \
  235 	delargv.ok \
  236 	delarpm2.awk \
  237 	delarpm2.ok \
  238 	delarprm.awk \
  239 	delarprm.ok \
  240 	delfunc.awk \
  241 	delfunc.ok \
  242 	delsub.awk \
  243 	delsub.ok \
  244 	devfd.in1 \
  245 	devfd.in2 \
  246 	devfd.in4 \
  247 	devfd.in5 \
  248 	devfd.ok \
  249 	devfd1.awk \
  250 	devfd1.ok \
  251 	devfd2.ok \
  252 	dfacheck1.awk \
  253 	dfacheck1.in \
  254 	dfacheck1.ok \
  255 	dfamb1.awk \
  256 	dfamb1.in \
  257 	dfamb1.ok \
  258 	dfastress.awk \
  259 	dfastress.ok \
  260 	double1.awk \
  261 	double1.ok \
  262 	double2.awk \
  263 	double2.ok \
  264 	dtdgport.awk \
  265 	dumpvars.in \
  266 	dumpvars.ok \
  267 	dynlj.awk \
  268 	dynlj.ok \
  269 	escapebrace.awk \
  270 	escapebrace.in \
  271 	escapebrace.ok \
  272 	eofsplit.awk \
  273 	eofsplit.ok \
  274 	eofsrc1a.awk \
  275 	eofsrc1b.awk \
  276 	eofsrc1.ok \
  277 	errno.awk \
  278 	errno.in \
  279 	errno.ok \
  280 	exit.ok \
  281 	exit.sh \
  282 	exit2.awk \
  283 	exit2.ok \
  284 	exitval1.awk \
  285 	exitval1.ok \
  286 	exitval2.awk \
  287 	exitval2.ok \
  288 	exitval2.w32 \
  289 	exitval3.awk \
  290 	exitval3.ok \
  291 	fcall_exit.awk \
  292 	fcall_exit.ok \
  293 	fcall_exit2.awk \
  294 	fcall_exit2.in \
  295 	fcall_exit2.ok \
  296 	fflush.ok \
  297 	fflush.sh \
  298 	fieldwdth.awk \
  299 	fieldwdth.in \
  300 	fieldwdth.ok \
  301 	filefuncs.awk \
  302 	filefuncs.ok \
  303 	fix-fmtspcl.awk \
  304 	fldchg.awk \
  305 	fldchg.in \
  306 	fldchg.ok \
  307 	fldchgnf.awk \
  308 	fldchgnf.in \
  309 	fldchgnf.ok \
  310 	fldterm.awk \
  311 	fldterm.in \
  312 	fldterm.ok \
  313 	fmtspcl-mpfr.ok \
  314 	fmtspcl.awk \
  315 	fmtspcl.tok \
  316 	fmttest.awk \
  317 	fmttest.ok \
  318 	fnamedat.awk \
  319 	fnamedat.in \
  320 	fnamedat.ok \
  321 	fnarray.awk \
  322 	fnarray.ok \
  323 	fnarray2.awk \
  324 	fnarray2.in \
  325 	fnarray2.ok \
  326 	fnarydel-mpfr.ok \
  327 	fnarydel.awk \
  328 	fnarydel.ok \
  329 	fnaryscl.awk \
  330 	fnaryscl.ok \
  331 	fnasgnm.awk \
  332 	fnasgnm.in \
  333 	fnasgnm.ok \
  334 	fnmatch.awk \
  335 	fnmatch.ok \
  336 	fnmisc.awk \
  337 	fnmisc.ok \
  338 	fnparydl-mpfr.ok \
  339 	fnparydl.awk \
  340 	fnparydl.ok \
  341 	forcenum.awk \
  342 	forcenum.ok \
  343 	fordel.awk \
  344 	fordel.ok \
  345 	fork.awk \
  346 	fork.ok \
  347 	fork2.awk \
  348 	fork2.ok \
  349 	forref.awk \
  350 	forref.ok \
  351 	forsimp.awk \
  352 	forsimp.ok \
  353 	fpat1.awk \
  354 	fpat1.in \
  355 	fpat1.ok \
  356 	fpat2.awk \
  357 	fpat2.ok \
  358 	fpat3.awk \
  359 	fpat3.in \
  360 	fpat3.ok \
  361 	fpat4.awk \
  362 	fpat4.ok \
  363 	fpat5.awk \
  364 	fpat5.in \
  365 	fpat5.ok \
  366 	fpat6.awk \
  367 	fpat6.in \
  368 	fpat6.ok \
  369 	fpat7.awk \
  370 	fpat7.in \
  371 	fpat7.ok \
  372 	fpat8.awk \
  373 	fpat8.in \
  374 	fpat8.ok \
  375 	fpatnull.awk \
  376 	fpatnull.in \
  377 	fpatnull.ok \
  378 	fsbs.awk \
  379 	fsbs.in \
  380 	fsbs.ok \
  381 	fscaret.awk \
  382 	fscaret.in \
  383 	fscaret.ok \
  384 	fsfwfs.awk \
  385 	fsfwfs.in \
  386 	fsfwfs.ok \
  387 	fsnul1.awk \
  388 	fsnul1.in \
  389 	fsnul1.ok \
  390 	fsrs.awk \
  391 	fsrs.in \
  392 	fsrs.ok \
  393 	fsspcoln.awk \
  394 	fsspcoln.in \
  395 	fsspcoln.ok \
  396 	fstabplus.awk \
  397 	fstabplus.in \
  398 	fstabplus.ok \
  399 	fts.awk \
  400 	functab1.awk \
  401 	functab1.ok \
  402 	functab2.awk \
  403 	functab2.ok \
  404 	functab3.awk \
  405 	functab3.ok \
  406 	functab4.awk \
  407 	functab4.ok \
  408 	funlen.awk \
  409 	funlen.in \
  410 	funlen.ok \
  411 	funsemnl.awk \
  412 	funsemnl.ok \
  413 	funsmnam.awk \
  414 	funsmnam.ok \
  415 	funstack.awk \
  416 	funstack.in \
  417 	funstack.ok \
  418 	fwtest.awk \
  419 	fwtest.in \
  420 	fwtest.ok \
  421 	fwtest2.awk \
  422 	fwtest2.in \
  423 	fwtest2.ok \
  424 	fwtest3.awk \
  425 	fwtest3.in \
  426 	fwtest3.ok \
  427 	fwtest4.awk \
  428 	fwtest4.in \
  429 	fwtest4.ok \
  430 	fwtest5.awk \
  431 	fwtest5.in \
  432 	fwtest5.ok \
  433 	fwtest6.awk \
  434 	fwtest6.in \
  435 	fwtest6.ok \
  436 	fwtest7.awk \
  437 	fwtest7.in \
  438 	fwtest7.ok \
  439 	fwtest8.awk \
  440 	fwtest8.in \
  441 	fwtest8.ok \
  442 	genpot.awk \
  443 	genpot.ok \
  444 	gensub.awk \
  445 	gensub.in \
  446 	gensub.ok \
  447 	gensub2.awk \
  448 	gensub2.ok \
  449 	gensub3.awk \
  450 	gensub3.in \
  451 	gensub3.ok \
  452 	getfile.awk \
  453 	getfile.ok \
  454 	getline.awk \
  455 	getline.in \
  456 	getline.ok \
  457 	getline2.awk \
  458 	getline2.ok \
  459 	getline3.awk \
  460 	getline3.ok \
  461 	getline4.awk \
  462 	getline4.in \
  463 	getline4.ok \
  464 	getline5.awk \
  465 	getline5.ok \
  466 	getlnbuf.awk \
  467 	getlnbuf.in \
  468 	getlnbuf.ok \
  469 	getlndir.awk \
  470 	getlndir.ok \
  471 	getlnhd.awk \
  472 	getlnhd.ok \
  473 	getnr2tb.awk \
  474 	getnr2tb.in \
  475 	getnr2tb.ok \
  476 	getnr2tm.awk \
  477 	getnr2tm.in \
  478 	getnr2tm.ok \
  479 	gnuops2.awk \
  480 	gnuops2.ok \
  481 	gnuops3.awk \
  482 	gnuops3.ok \
  483 	gnureops.awk \
  484 	gnureops.ok \
  485 	gsubasgn.awk \
  486 	gsubasgn.ok \
  487 	gsubind.awk \
  488 	gsubind.ok \
  489 	gsubtest.awk \
  490 	gsubtest.ok \
  491 	gsubtst2.awk \
  492 	gsubtst2.ok \
  493 	gsubtst3.awk \
  494 	gsubtst3.in \
  495 	gsubtst3.ok \
  496 	gsubtst4.awk \
  497 	gsubtst4.ok \
  498 	gsubtst5.awk \
  499 	gsubtst5.in \
  500 	gsubtst5.ok \
  501 	gsubtst6.awk \
  502 	gsubtst6.ok \
  503 	gsubtst7.awk \
  504 	gsubtst7.in \
  505 	gsubtst7.ok \
  506 	gsubtst8.awk \
  507 	gsubtst8.in \
  508 	gsubtst8.ok \
  509 	gtlnbufv.awk \
  510 	hello.awk \
  511 	hex.awk \
  512 	hex.ok \
  513 	hex2.awk \
  514 	hex2.in \
  515 	hex2.ok \
  516 	hsprint.awk \
  517 	hsprint.ok \
  518 	icasefs.awk \
  519 	icasefs.ok \
  520 	icasers.awk \
  521 	icasers.in \
  522 	icasers.ok \
  523 	inpref.awk \
  524 	inpref.in \
  525 	inpref.ok \
  526 	id.awk \
  527 	id.ok \
  528 	igncdym.awk \
  529 	igncdym.in \
  530 	igncdym.ok \
  531 	igncfs.awk \
  532 	igncfs.in \
  533 	igncfs.ok \
  534 	ignrcas2.awk \
  535 	ignrcas2.ok \
  536 	ignrcas3.awk \
  537 	ignrcas3.ok \
  538 	ignrcas4.awk \
  539 	ignrcas4.ok \
  540 	ignrcase.awk \
  541 	ignrcase.in \
  542 	ignrcase.ok \
  543 	incdupe.ok \
  544 	incdupe2.ok \
  545 	incdupe3.ok \
  546 	incdupe4.ok \
  547 	incdupe5.ok \
  548 	incdupe6.ok \
  549 	incdupe7.ok \
  550 	inchello.awk \
  551 	inclib.awk \
  552 	include.awk \
  553 	include.ok \
  554 	include2.ok \
  555 	indirectbuiltin.awk \
  556 	indirectbuiltin.ok \
  557 	indirectcall.awk \
  558 	indirectcall.in \
  559 	indirectcall.ok \
  560 	indirectcall2.awk \
  561 	indirectcall2.ok \
  562 	inftest.awk \
  563 	inftest.ok \
  564 	inplace.in \
  565 	inplace.1.in \
  566 	inplace.2.in \
  567 	inplace1.ok \
  568 	inplace1.1.ok \
  569 	inplace1.2.ok \
  570 	inplace2.ok \
  571 	inplace2.1.ok \
  572 	inplace2.1.bak.ok \
  573 	inplace2.2.ok \
  574 	inplace2.2.bak.ok \
  575 	inplace2bcomp.1.ok \
  576 	inplace2bcomp.1.orig.ok \
  577 	inplace2bcomp.2.ok \
  578 	inplace2bcomp.2.orig.ok \
  579 	inplace2bcomp.ok \
  580 	inplace3.ok \
  581 	inplace3.1.ok \
  582 	inplace3.1.bak.ok \
  583 	inplace3.2.ok \
  584 	inplace3.2.bak.ok \
  585 	inplace3bcomp.1.ok \
  586 	inplace3bcomp.1.orig.ok \
  587 	inplace3bcomp.2.ok \
  588 	inplace3bcomp.2.orig.ok \
  589 	inplace3bcomp.ok \
  590 	inputred.awk \
  591 	inputred.ok \
  592 	intarray.awk \
  593 	intarray.ok \
  594 	intest.awk \
  595 	intest.ok \
  596 	intformat.awk \
  597 	intformat.ok \
  598 	intprec.awk \
  599 	intprec.ok \
  600 	iobug1.awk \
  601 	iobug1.ok \
  602 	isarrayunset.awk \
  603 	isarrayunset.ok \
  604 	jarebug.awk \
  605 	jarebug.in \
  606 	jarebug.ok \
  607 	jarebug.sh \
  608 	lc_num1.awk \
  609 	lc_num1.ok \
  610 	leaddig.awk \
  611 	leaddig.ok \
  612 	leadnl.awk \
  613 	leadnl.in \
  614 	leadnl.ok \
  615 	lint.awk \
  616 	lint.ok \
  617 	lintexp.awk \
  618 	lintexp.ok \
  619 	lintindex.awk \
  620 	lintindex.ok \
  621 	lintint.awk \
  622 	lintint.ok \
  623 	lintlength.awk \
  624 	lintlength.ok \
  625 	lintold.awk \
  626 	lintold.in \
  627 	lintold.ok \
  628 	lintset.awk \
  629 	lintset.ok \
  630 	lintwarn.awk \
  631 	lintwarn.ok \
  632 	litoct.awk \
  633 	litoct.in \
  634 	litoct.ok \
  635 	localenl.ok \
  636 	localenl.sh \
  637 	longsub.awk \
  638 	longsub.in \
  639 	longsub.ok \
  640 	longwrds.awk \
  641 	longwrds.in \
  642 	longwrds.ok \
  643 	manglprm.awk \
  644 	manglprm.in \
  645 	manglprm.ok \
  646 	manyfiles.awk \
  647 	manyfiles.ok \
  648 	muldimposix.awk \
  649 	muldimposix.ok \
  650 	match1.awk \
  651 	match1.ok \
  652 	match2.awk \
  653 	match2.ok \
  654 	match3.awk \
  655 	match3.in \
  656 	match3.ok \
  657 	math.awk \
  658 	math.ok \
  659 	mbfw1.awk \
  660 	mbfw1.in \
  661 	mbfw1.ok \
  662 	mbprintf1.awk \
  663 	mbprintf1.in \
  664 	mbprintf1.ok \
  665 	mbprintf2.awk \
  666 	mbprintf2.ok \
  667 	mbprintf3.awk \
  668 	mbprintf3.in \
  669 	mbprintf3.ok \
  670 	mbprintf4.awk \
  671 	mbprintf4.in \
  672 	mbprintf4.ok \
  673 	mbprintf5.awk \
  674 	mbprintf5.in \
  675 	mbprintf5.ok \
  676 	mbstr1.awk \
  677 	mbstr1.ok \
  678 	mbstr2.awk \
  679 	mbstr2.in \
  680 	mbstr2.ok \
  681 	membug1.awk \
  682 	membug1.in \
  683 	membug1.ok \
  684 	memleak.awk \
  685 	memleak.ok \
  686 	messages.awk \
  687 	minusstr.awk \
  688 	minusstr.ok \
  689 	mixed1.ok \
  690 	mktime.awk \
  691 	mktime.in \
  692 	mktime.ok \
  693 	mmap8k.awk \
  694 	mmap8k.in \
  695 	mmap8k.ok \
  696 	mpfrbigint.awk \
  697 	mpfrbigint.ok \
  698 	mpfrbigint2.awk \
  699 	mpfrbigint2.in \
  700 	mpfrbigint2.ok \
  701 	mpfrexprange.awk \
  702 	mpfrexprange.ok \
  703 	mpfrfield.awk \
  704 	mpfrfield.in \
  705 	mpfrfield.ok \
  706 	mpfrieee.awk \
  707 	mpfrieee.ok \
  708 	mpfrmemok1.awk \
  709 	mpfrmemok1.ok \
  710 	mpfrnegzero.awk \
  711 	mpfrnegzero.ok \
  712 	mpfrnr.awk \
  713 	mpfrnr.in \
  714 	mpfrnr.ok \
  715 	mpfrrem.awk \
  716 	mpfrrem.ok \
  717 	mpfrrnd.awk \
  718 	mpfrrnd.ok \
  719 	mpfrrndeval.awk \
  720 	mpfrrndeval.ok \
  721 	mpfrsort.awk \
  722 	mpfrsort.ok \
  723 	mpfrsqrt.awk \
  724 	mpfrsqrt.ok \
  725 	mpfrstrtonum.awk \
  726 	mpfrstrtonum.ok \
  727 	mpfruplus.ok \
  728 	mpfranswer42.awk \
  729 	mpfranswer42.ok \
  730 	mpgforcenum.awk \
  731 	mpgforcenum.ok \
  732 	mtchi18n.awk \
  733 	mtchi18n.in \
  734 	mtchi18n.ok \
  735 	nasty.awk \
  736 	nasty.ok \
  737 	nasty2.awk \
  738 	nasty2.ok \
  739 	nastyparm.awk \
  740 	nastyparm.ok \
  741 	negexp.awk \
  742 	negexp.ok \
  743 	negrange.awk \
  744 	negrange.ok \
  745 	negtime.awk \
  746 	negtime.ok \
  747 	nested.awk \
  748 	nested.in \
  749 	nested.ok \
  750 	next.ok \
  751 	next.sh \
  752 	nfldstr.awk \
  753 	nfldstr.in \
  754 	nfldstr.ok \
  755 	nfloop.awk \
  756 	nfloop.ok \
  757 	nfneg.awk \
  758 	nfneg.ok \
  759 	nfset.awk \
  760 	nfset.in \
  761 	nfset.ok \
  762 	nlfldsep.awk \
  763 	nlfldsep.in \
  764 	nlfldsep.ok \
  765 	nlinstr.awk \
  766 	nlinstr.in \
  767 	nlinstr.ok \
  768 	nlstrina.awk \
  769 	nlstrina.ok \
  770 	nlstringtest.awk \
  771 	nlstringtest.ok \
  772 	nlstringtest.po \
  773 	nlstringtest-nogettext.ok \
  774 	fr \
  775 	noeffect.awk \
  776 	noeffect.ok \
  777 	nofile.ok \
  778 	nofmtch.awk \
  779 	nofmtch.ok \
  780 	noloop1.awk \
  781 	noloop1.in \
  782 	noloop1.ok \
  783 	noloop2.awk \
  784 	noloop2.in \
  785 	noloop2.ok \
  786 	nondec.awk \
  787 	nondec.ok \
  788 	nondec2.awk \
  789 	nondec2.ok \
  790 	nonfatal1.awk \
  791 	nonfatal1.ok \
  792 	nonfatal2.awk \
  793 	nonfatal2.ok \
  794 	nonfatal3.awk \
  795 	nonfatal3.ok \
  796 	nonl.awk \
  797 	nonl.in \
  798 	nonl.ok \
  799 	noparms.awk \
  800 	noparms.ok \
  801 	nors.in \
  802 	nors.ok \
  803 	nsawk1.awk \
  804 	nsawk1a.ok \
  805 	nsawk1b.ok \
  806 	nsawk1c.ok \
  807 	nsawk2.awk \
  808 	nsawk2a.ok \
  809 	nsawk2b.ok \
  810 	nsbad.awk \
  811 	nsbad.ok \
  812 	nsbad_cmd.ok \
  813 	nsforloop.awk \
  814 	nsforloop.ok \
  815 	nsfuncrecurse.awk \
  816 	nsfuncrecurse.ok \
  817 	nsindirect1.awk \
  818 	nsindirect1.ok \
  819 	nsindirect2.awk \
  820 	nsindirect2.ok \
  821 	nsprof1.awk \
  822 	nsprof1.ok \
  823 	nsprof2.awk \
  824 	nsprof2.ok \
  825 	nulinsrc.awk \
  826 	nulinsrc.ok \
  827 	nulrsend.awk \
  828 	nulrsend.in \
  829 	nulrsend.ok \
  830 	numindex.awk \
  831 	numindex.in \
  832 	numindex.ok \
  833 	numrange.awk \
  834 	numrange.ok \
  835 	numstr1.awk \
  836 	numstr1.ok \
  837 	numsubstr.awk \
  838 	numsubstr.in \
  839 	numsubstr.ok \
  840 	octsub.awk \
  841 	octsub.ok \
  842 	ofmt.awk \
  843 	ofmt.in \
  844 	ofmt.ok \
  845 	ofmta.awk \
  846 	ofmta.ok \
  847 	ofmtbig.awk \
  848 	ofmtbig.in \
  849 	ofmtbig.ok \
  850 	ofmtfidl.awk \
  851 	ofmtfidl.in \
  852 	ofmtfidl.ok \
  853 	ofmts.awk \
  854 	ofmts.in \
  855 	ofmts.ok \
  856 	ofmtstrnum.awk \
  857 	ofmtstrnum.ok \
  858 	ofs1.awk \
  859 	ofs1.in \
  860 	ofs1.ok \
  861 	onlynl.awk \
  862 	onlynl.in \
  863 	onlynl.ok \
  864 	opasnidx.awk \
  865 	opasnidx.ok \
  866 	opasnslf.awk \
  867 	opasnslf.ok \
  868 	ordchr.awk \
  869 	ordchr.ok \
  870 	ordchr2.ok \
  871 	out1.ok \
  872 	out2.ok \
  873 	out3.ok \
  874 	paramasfunc1.awk \
  875 	paramasfunc1.ok \
  876 	paramasfunc2.awk \
  877 	paramasfunc2.ok \
  878 	paramdup.awk \
  879 	paramdup.ok \
  880 	paramres.awk \
  881 	paramres.ok \
  882 	paramtyp.awk \
  883 	paramtyp.ok \
  884 	paramuninitglobal.awk \
  885 	paramuninitglobal.ok \
  886 	parse1.awk \
  887 	parse1.in \
  888 	parse1.ok \
  889 	parsefld.awk \
  890 	parsefld.in \
  891 	parsefld.ok \
  892 	parseme.awk \
  893 	parseme.ok \
  894 	patsplit.awk \
  895 	patsplit.ok \
  896 	pcntplus.awk \
  897 	pcntplus.ok \
  898 	pid.awk \
  899 	pid.ok \
  900 	pid.sh \
  901 	pipeio1.awk \
  902 	pipeio1.ok \
  903 	pipeio2.awk \
  904 	pipeio2.in \
  905 	pipeio2.ok \
  906 	posix.awk \
  907 	posix.in \
  908 	posix.ok \
  909 	posix2008sub.awk \
  910 	posix2008sub.ok \
  911 	poundbang.awk \
  912 	prdupval.awk \
  913 	prdupval.in \
  914 	prdupval.ok \
  915 	prec.awk \
  916 	prec.ok \
  917 	printf0.awk \
  918 	printf0.ok \
  919 	printf1.awk \
  920 	printf1.ok \
  921 	printfbad1.awk \
  922 	printfbad1.ok \
  923 	printfbad2.awk \
  924 	printfbad2.in \
  925 	printfbad2.ok \
  926 	printfbad3.awk \
  927 	printfbad3.ok \
  928 	printfbad4.awk \
  929 	printfbad4.ok \
  930 	printfchar.awk \
  931 	printfchar.ok \
  932 	printfloat.awk \
  933 	printhuge.awk \
  934 	printhuge.ok \
  935 	printlang.awk \
  936 	prmarscl.awk \
  937 	prmarscl.ok \
  938 	prmreuse.awk \
  939 	prmreuse.ok \
  940 	procinfs.awk \
  941 	procinfs.ok \
  942 	profile0.awk \
  943 	profile0.in \
  944 	profile0.ok \
  945 	profile2.ok \
  946 	profile3.awk \
  947 	profile3.ok \
  948 	profile4.awk \
  949 	profile4.ok \
  950 	profile5.awk \
  951 	profile5.ok \
  952 	profile6.awk \
  953 	profile6.ok \
  954 	profile7.awk \
  955 	profile7.ok \
  956 	profile8.awk \
  957 	profile8.ok \
  958 	profile9.awk \
  959 	profile9.ok \
  960 	profile10.awk \
  961 	profile10.ok \
  962 	profile11.awk \
  963 	profile11.ok \
  964 	profile12.awk \
  965 	profile12.in \
  966 	profile12.ok \
  967 	profile13.awk \
  968 	profile13.ok \
  969 	prt1eval.awk \
  970 	prt1eval.ok \
  971 	prtoeval.awk \
  972 	prtoeval.ok \
  973 	pty1.awk \
  974 	pty1.ok \
  975 	pty2.awk \
  976 	pty2.ok \
  977 	rand-mpfr.ok \
  978 	rand.awk \
  979 	rand.ok \
  980 	randtest.sh \
  981 	randtest.ok \
  982 	range1.awk \
  983 	range1.in \
  984 	range1.ok \
  985 	range2.awk \
  986 	range2.ok \
  987 	readbuf.awk \
  988 	readbuf.ok \
  989 	readdir.awk \
  990 	readdir0.awk \
  991 	readdir_retest.awk \
  992 	readfile2.awk \
  993 	readfile2.ok \
  994 	rebrackloc.awk \
  995 	rebrackloc.in \
  996 	rebrackloc.ok \
  997 	rebt8b1.awk \
  998 	rebt8b1.ok \
  999 	rebt8b2.awk \
 1000 	rebt8b2.ok \
 1001 	rebuf.awk \
 1002 	rebuf.in \
 1003 	rebuf.ok \
 1004 	rebuild.awk \
 1005 	rebuild.in \
 1006 	rebuild.ok \
 1007 	redfilnm.awk \
 1008 	redfilnm.in \
 1009 	redfilnm.ok \
 1010 	regeq.awk \
 1011 	regeq.in \
 1012 	regeq.ok \
 1013 	regexpbrack.awk \
 1014 	regexpbrack.in \
 1015 	regexpbrack.ok \
 1016 	regexpbrack2.awk \
 1017 	regexpbrack2.in \
 1018 	regexpbrack2.ok \
 1019 	regexprange.awk \
 1020 	regexprange.ok \
 1021 	reginttrad.awk \
 1022 	reginttrad.ok \
 1023 	regnul1.awk \
 1024 	regnul1.ok \
 1025 	regnul2.awk \
 1026 	regnul2.ok \
 1027 	regrange.awk \
 1028 	regrange.ok \
 1029 	regtest.sh \
 1030 	regx8bit.awk \
 1031 	regx8bit.ok \
 1032 	reindops.awk \
 1033 	reindops.in \
 1034 	reindops.ok \
 1035 	reint.awk \
 1036 	reint.in \
 1037 	reint.ok \
 1038 	reint2.awk \
 1039 	reint2.in \
 1040 	reint2.ok \
 1041 	reparse.awk \
 1042 	reparse.in \
 1043 	reparse.ok \
 1044 	resplit.awk \
 1045 	resplit.in \
 1046 	resplit.ok \
 1047 	revout.awk \
 1048 	revout.ok \
 1049 	revtwoway.awk \
 1050 	revtwoway.ok \
 1051 	rri1.awk \
 1052 	rri1.in \
 1053 	rri1.ok \
 1054 	rs.awk \
 1055 	rs.in \
 1056 	rs.ok \
 1057 	rscompat.awk \
 1058 	rscompat.in \
 1059 	rscompat.ok \
 1060 	rsgetline.awk \
 1061 	rsgetline.in \
 1062 	rsgetline.ok \
 1063 	rsglstdin.ok \
 1064 	rsnul1nl.awk \
 1065 	rsnul1nl.in \
 1066 	rsnul1nl.ok \
 1067 	rsnulbig.ok \
 1068 	rsnulbig2.ok \
 1069 	rsnulw.awk \
 1070 	rsnulw.in \
 1071 	rsnulw.ok \
 1072 	rsstart1.awk \
 1073 	rsstart1.in \
 1074 	rsstart1.ok \
 1075 	rsstart2.awk \
 1076 	rsstart2.in \
 1077 	rsstart2.ok \
 1078 	rsstart3.ok \
 1079 	rstest1.awk \
 1080 	rstest1.ok \
 1081 	rstest2.awk \
 1082 	rstest2.ok \
 1083 	rstest3.awk \
 1084 	rstest3.ok \
 1085 	rstest4.awk \
 1086 	rstest4.ok \
 1087 	rstest5.awk \
 1088 	rstest5.ok \
 1089 	rstest6.awk \
 1090 	rstest6.in \
 1091 	rstest6.ok \
 1092 	rswhite.awk \
 1093 	rswhite.in \
 1094 	rswhite.ok \
 1095 	rtlen.ok \
 1096 	rtlen.sh \
 1097 	rtlenmb.ok \
 1098 	rtlen01.ok \
 1099 	rtlen01.sh \
 1100 	rwarray.awk \
 1101 	rwarray.in \
 1102 	rwarray.ok \
 1103 	sandbox1.awk \
 1104 	sandbox1.ok \
 1105 	scalar.awk \
 1106 	scalar.ok \
 1107 	sclforin.awk \
 1108 	sclforin.ok \
 1109 	sclifin.awk \
 1110 	sclifin.ok \
 1111 	setrec0.awk \
 1112 	setrec0.in \
 1113 	setrec0.ok \
 1114 	setrec1.awk \
 1115 	setrec1.ok \
 1116 	shadow.awk \
 1117 	shadow.ok \
 1118 	shadowbuiltin.awk \
 1119 	shadowbuiltin.ok \
 1120 	sigpipe1.awk \
 1121 	sigpipe1.ok \
 1122 	sort1.awk \
 1123 	sort1.ok \
 1124 	sortempty.awk \
 1125 	sortempty.ok \
 1126 	sortfor.awk \
 1127 	sortfor.in \
 1128 	sortfor.ok \
 1129 	sortfor2.awk \
 1130 	sortfor2.in \
 1131 	sortfor2.ok \
 1132 	sortglos.awk \
 1133 	sortglos.in \
 1134 	sortglos.ok \
 1135 	sortu.awk \
 1136 	sortu.ok \
 1137 	sourcesplit.ok \
 1138 	space.ok \
 1139 	spacere.awk \
 1140 	spacere.ok \
 1141 	split_after_fpat.awk \
 1142 	split_after_fpat.in \
 1143 	split_after_fpat.ok \
 1144 	splitarg4.awk \
 1145 	splitarg4.in \
 1146 	splitarg4.ok \
 1147 	splitargv.awk \
 1148 	splitargv.in \
 1149 	splitargv.ok \
 1150 	splitarr.awk \
 1151 	splitarr.ok \
 1152 	splitdef.awk \
 1153 	splitdef.ok \
 1154 	splitvar.awk \
 1155 	splitvar.in \
 1156 	splitvar.ok \
 1157 	splitwht.awk \
 1158 	splitwht.ok \
 1159 	sprintfc.awk \
 1160 	sprintfc.in \
 1161 	sprintfc.ok \
 1162 	status-close.awk \
 1163 	status-close.ok \
 1164 	strcat1.awk \
 1165 	strcat1.ok \
 1166 	strftime.awk \
 1167 	strftlng.awk \
 1168 	strftlng.ok \
 1169 	strftfld.awk \
 1170 	strftfld.in \
 1171 	strftfld.ok \
 1172 	strnum1.awk \
 1173 	strnum1.ok \
 1174 	strnum2.awk \
 1175 	strnum2.ok \
 1176 	strtod.awk \
 1177 	strtod.in \
 1178 	strtod.ok \
 1179 	strtonum.awk \
 1180 	strtonum.ok \
 1181 	strtonum1.awk \
 1182 	strtonum1.ok \
 1183 	stupid1.awk \
 1184 	stupid1.ok \
 1185 	stupid2.awk \
 1186 	stupid2.ok \
 1187 	stupid3.awk \
 1188 	stupid3.ok \
 1189 	stupid4.awk \
 1190 	stupid4.ok \
 1191 	subamp.awk \
 1192 	subamp.in \
 1193 	subamp.ok \
 1194 	subback.awk \
 1195 	subback.in \
 1196 	subback.ok \
 1197 	subi18n.awk \
 1198 	subi18n.ok \
 1199 	subsepnm.awk \
 1200 	subsepnm.ok \
 1201 	subslash.awk \
 1202 	subslash.ok \
 1203 	substr.awk \
 1204 	substr.ok \
 1205 	swaplns.awk \
 1206 	swaplns.in \
 1207 	swaplns.ok \
 1208 	switch2.awk \
 1209 	switch2.ok \
 1210 	symtab1.awk \
 1211 	symtab1.ok \
 1212 	symtab2.awk \
 1213 	symtab2.ok \
 1214 	symtab3.awk \
 1215 	symtab3.ok \
 1216 	symtab4.awk \
 1217 	symtab4.in \
 1218 	symtab4.ok \
 1219 	symtab5.awk \
 1220 	symtab5.in \
 1221 	symtab5.ok \
 1222 	symtab6.awk \
 1223 	symtab6.ok \
 1224 	symtab7.awk \
 1225 	symtab7.in \
 1226 	symtab7.ok \
 1227 	symtab8.awk \
 1228 	symtab8.in \
 1229 	symtab8.ok \
 1230 	symtab9.awk \
 1231 	symtab9.ok \
 1232 	symtab10.awk \
 1233 	symtab10.in \
 1234 	symtab10.ok \
 1235 	symtab11.awk \
 1236 	symtab11.ok \
 1237 	synerr1.awk \
 1238 	synerr1.ok \
 1239 	synerr2.awk \
 1240 	synerr2.ok \
 1241 	synerr3.awk \
 1242 	synerr3.ok \
 1243 	tailrecurse.awk \
 1244 	tailrecurse.ok \
 1245 	testext.ok \
 1246 	time.awk \
 1247 	time.ok \
 1248 	timeout.awk \
 1249 	timeout.ok \
 1250 	tradanch.awk \
 1251 	tradanch.in \
 1252 	tradanch.ok \
 1253 	trailbs.awk \
 1254 	trailbs.in \
 1255 	trailbs.ok \
 1256 	tweakfld.awk \
 1257 	tweakfld.in \
 1258 	tweakfld.ok \
 1259 	typedregex1.awk \
 1260 	typedregex1.ok \
 1261 	typedregex2.awk \
 1262 	typedregex2.ok \
 1263 	typedregex3.awk \
 1264 	typedregex3.ok \
 1265 	typedregex4.awk \
 1266 	typedregex4.ok \
 1267 	typedregex5.awk \
 1268 	typedregex5.in \
 1269 	typedregex5.ok \
 1270 	typedregex6.awk \
 1271 	typedregex6.in \
 1272 	typedregex6.ok \
 1273 	typeof1.awk \
 1274 	typeof1.ok \
 1275 	typeof2.awk \
 1276 	typeof2.ok \
 1277 	typeof3.awk \
 1278 	typeof3.ok \
 1279 	typeof4.awk \
 1280 	typeof4.ok \
 1281 	typeof5.awk \
 1282 	typeof5.in \
 1283 	typeof5.ok \
 1284 	uninit2.awk \
 1285 	uninit2.ok \
 1286 	uninit3.awk \
 1287 	uninit3.ok \
 1288 	uninit4.awk \
 1289 	uninit4.ok \
 1290 	uninit5.awk \
 1291 	uninit5.ok \
 1292 	uninitialized.awk \
 1293 	uninitialized.ok \
 1294 	unterm.awk \
 1295 	unterm.ok \
 1296 	uparrfs.awk \
 1297 	uparrfs.in \
 1298 	uparrfs.ok \
 1299 	uplus.awk \
 1300 	uplus.ok \
 1301 	valgrind.awk \
 1302 	watchpoint1.awk \
 1303 	watchpoint1.in \
 1304 	watchpoint1.ok \
 1305 	watchpoint1.script \
 1306 	wideidx.awk \
 1307 	wideidx.in \
 1308 	wideidx.ok \
 1309 	wideidx2.awk \
 1310 	wideidx2.ok \
 1311 	widesub.awk \
 1312 	widesub.ok \
 1313 	widesub2.awk \
 1314 	widesub2.ok \
 1315 	widesub3.awk \
 1316 	widesub3.in \
 1317 	widesub3.ok \
 1318 	widesub4.awk \
 1319 	widesub4.ok \
 1320 	wjposer1.awk \
 1321 	wjposer1.in \
 1322 	wjposer1.ok \
 1323 	xref.awk \
 1324 	xref.original \
 1325 	zero2.awk \
 1326 	zero2.ok \
 1327 	zeroe0.awk \
 1328 	zeroe0.ok \
 1329 	zeroflag.awk \
 1330 	zeroflag.ok
 1331 
 1332 
 1333 # Get rid of core files when cleaning and generated .ok file
 1334 CLEANFILES = core core.* fmtspcl.ok
 1335 
 1336 # try to keep these sorted. each letter starts a new line
 1337 BASIC_TESTS = \
 1338 	addcomma anchgsub anchor argarray arrayind1 arrayind2 arrayind3 arrayparm \
 1339 	arrayprm2 arrayprm3 arrayref arrymem1 arryref2 arryref3 arryref4 arryref5 \
 1340 	arynasty arynocls aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 \
 1341 	aryprm8 aryprm9 arysubnm aryunasgn asgext awkpath \
 1342 	assignnumfield assignnumfield2 \
 1343 	back89 backgsub badassign1 badbuild \
 1344 	callparam childin clobber closebad clsflnam compare compare2 \
 1345 	concat1 concat2 concat3 concat4 concat5 convfmt \
 1346 	datanonl defref delargv delarpm2 delarprm delfunc dfamb1 dfastress dynlj \
 1347 	escapebrace eofsplit eofsrc1 exit2 exitval1 exitval2 exitval3 \
 1348 	fcall_exit fcall_exit2 fldchg fldchgnf fldterm fnamedat fnarray fnarray2 \
 1349 	fnaryscl fnasgnm fnmisc fordel forref forsimp fsbs fscaret fsnul1 \
 1350 	fsrs fsspcoln fstabplus funsemnl funsmnam funstack \
 1351 	getline getline2 getline3 getline4 getline5 getlnbuf getnr2tb getnr2tm \
 1352 	gsubasgn gsubtest gsubtst2 gsubtst3 gsubtst4 gsubtst5 gsubtst6 gsubtst7 \
 1353 	gsubtst8 \
 1354 	hex hex2 hsprint \
 1355 	inpref inputred intest intprec iobug1 \
 1356 	leaddig leadnl litoct longsub longwrds \
 1357 	manglprm math membug1 memleak messages minusstr mmap8k \
 1358 	nasty nasty2 negexp negrange nested nfldstr nfloop nfneg nfset nlfldsep \
 1359 	nlinstr nlstrina noeffect nofile nofmtch noloop1 noloop2 nonl noparms \
 1360 	nors nulinsrc nulrsend numindex numrange numstr1 numsubstr \
 1361 	octsub ofmt ofmta ofmtbig ofmtfidl ofmts ofmtstrnum ofs1 onlynl \
 1362 	opasnidx opasnslf \
 1363 	paramasfunc1 paramasfunc2 paramdup paramres paramtyp paramuninitglobal \
 1364 	parse1 parsefld parseme pcntplus posix2008sub prdupval prec printf0 \
 1365 	printf1 printfchar prmarscl prmreuse prt1eval prtoeval \
 1366 	rand randtest range1 range2 readbuf rebrackloc rebt8b1 rebuild redfilnm regeq \
 1367 	regexpbrack regexpbrack2 regexprange regrange reindops reparse resplit \
 1368 	rri1 rs rscompat rsnul1nl rsnulbig rsnulbig2 rsnulw \
 1369 	rstest1 rstest2 rstest3 rstest4 rstest5 rswhite \
 1370 	scalar sclforin sclifin setrec0 setrec1 \
 1371 	sigpipe1 sortempty sortglos spacere splitargv splitarr \
 1372 	splitdef splitvar splitwht status-close strcat1 strnum1 strnum2 strtod \
 1373 	subamp subback subi18n subsepnm subslash substr swaplns synerr1 synerr2 synerr3 \
 1374 	tailrecurse tradanch trailbs tweakfld \
 1375 	uninit2 uninit3 uninit4 uninit5 uninitialized unterm uparrfs uplus \
 1376 	wideidx wideidx2 widesub widesub2 widesub3 widesub4 wjposer1 \
 1377 	zero2 zeroe0 zeroflag
 1378 
 1379 UNIX_TESTS = \
 1380 	fflush getlnhd localenl pid pipeio1 pipeio2 poundbang rtlen rtlen01 \
 1381 	space strftlng
 1382 
 1383 GAWK_EXT_TESTS = \
 1384 	aadelete1 aadelete2 aarray1 aasort aasorti argtest arraysort arraysort2 \
 1385 	arraytype \
 1386 	backw badargs beginfile1 beginfile2 binmode1 \
 1387 	charasbytes colonwarn clos1way clos1way2 clos1way3 clos1way4 clos1way5 \
 1388 	clos1way6 crlf \
 1389 	dbugeval dbugeval2 dbugeval3 dbugtypedre1 dbugtypedre2 delsub \
 1390 	devfd devfd1 devfd2 dfacheck1 dumpvars \
 1391 	errno exit fieldwdth forcenum \
 1392 	fpat1 fpat2 fpat3 fpat4 fpat5 fpat6 fpat7 fpat8 fpatnull \
 1393 	fsfwfs funlen functab1 functab2 functab3 \
 1394 	fwtest fwtest2 fwtest3 fwtest4 fwtest5 fwtest6 fwtest7 fwtest8 \
 1395 	genpot gensub gensub2 gensub3 getlndir gnuops2 gnuops3 gnureops gsubind \
 1396 	icasefs icasers id igncdym igncfs ignrcas2 ignrcas4 ignrcase incdupe \
 1397 	incdupe2 incdupe3 incdupe4 incdupe5 incdupe6 incdupe7 include include2 \
 1398 	indirectbuiltin indirectcall indirectcall2 intarray isarrayunset \
 1399 	lint lintexp lintindex lintint lintlength lintold lintset lintwarn \
 1400 	manyfiles match1 match2 match3 mbstr1 mbstr2 mixed1 mktime muldimposix \
 1401 	nastyparm negtime next nondec nondec2 nonfatal1 nonfatal2 nonfatal3 \
 1402 	nsawk1a nsawk1b nsawk1c nsawk2a nsawk2b \
 1403 	nsbad nsbad_cmd nsforloop nsfuncrecurse nsindirect1 nsindirect2 nsprof1 nsprof2 \
 1404 	patsplit posix printfbad1 printfbad2 printfbad3 printfbad4 printhuge \
 1405 	procinfs profile0 profile1 profile2 profile3 profile4 profile5 profile6 \
 1406 	profile7 profile8 profile9 profile10 profile11 profile12 profile13 pty1 pty2 \
 1407 	rebuf regnul1 regnul2 regx8bit reginttrad reint reint2 rsgetline rsglstdin \
 1408 	rsstart1 rsstart2 rsstart3 rstest6 \
 1409 	sandbox1 shadow shadowbuiltin sortfor sortfor2 sortu \
 1410 	sourcesplit split_after_fpat \
 1411 	splitarg4 strftfld strftime strtonum strtonum1 \
 1412 	stupid1 stupid2 stupid3 stupid4 \
 1413 	switch2 symtab1 symtab2 symtab3 symtab4 symtab5 symtab6 symtab7 \
 1414 	symtab8 symtab9 symtab10 symtab11 \
 1415 	timeout typedregex1 typedregex2 typedregex3 typedregex4 \
 1416 	typedregex5 typedregex6 \
 1417 	typeof1 typeof2 typeof3 typeof4 typeof5 \
 1418 	watchpoint1
 1419 
 1420 ARRAYDEBUG_TESTS = arrdbg
 1421 
 1422 EXTRA_TESTS = inftest regtest ignrcas3 
 1423 
 1424 INET_TESTS = inetdayu inetdayt inetechu inetecht
 1425 
 1426 MACHINE_TESTS = double1 double2 intformat
 1427 
 1428 LOCALE_CHARSET_TESTS = \
 1429 	asort asorti backbigs1 backsmalls1 backsmalls2 \
 1430 	fmttest fnarydel fnparydl jarebug lc_num1 mbfw1 \
 1431 	mbprintf1 mbprintf2 mbprintf3 mbprintf4 mbprintf5 \
 1432 	mtchi18n nlstringtest rebt8b2 rtlenmb sort1 sprintfc
 1433 
 1434 SHLIB_TESTS = \
 1435 	apiterm \
 1436 	filefuncs fnmatch fork fork2 fts functab4 \
 1437 	getfile \
 1438 	inplace1 inplace2 inplace2bcomp inplace3 inplace3bcomp \
 1439 	ordchr ordchr2 \
 1440 	readdir readdir_test readdir_retest readfile readfile2 revout \
 1441 	revtwoway rwarray \
 1442 	testext time
 1443 
 1444 # List of the tests which should be run with --debug option:
 1445 NEED_DEBUG = dbugtypedre1 dbugtypedre2 dbugeval2 dbugeval3 symtab10
 1446 
 1447 # List of the tests which should be run with --lint option:
 1448 NEED_LINT = \
 1449 	defref fmtspcl lintexp lintindex lintint lintlength lintwarn \
 1450 	noeffect nofmtch nonl shadow uninit2 uninit3 uninit4 uninit5 uninitialized
 1451 
 1452 # List of the tests which should be run with --lint-old option:
 1453 NEED_LINT_OLD = lintold
 1454 
 1455 # List of tests that must be run with -M
 1456 NEED_MPFR = mpfrbigint mpfrbigint2 mpfrexprange mpfrfield mpfrieee mpfrmemok1 \
 1457 	mpfrnegzero mpfrnr mpfrrem mpfrrnd mpfrrndeval mpfrsort mpfrsqrt \
 1458 	mpfrstrtonum mpgforcenum mpfruplus mpfranswer42
 1459 
 1460 # List of tests that need --non-decimal-data
 1461 NEED_NONDEC = mpfrbigint2 nondec2 intarray forcenum
 1462 
 1463 # List of tests that need --posix
 1464 NEED_POSIX = escapebrace printf0 posix2008sub paramasfunc1 paramasfunc2 muldimposix
 1465 
 1466 # List of tests that need --pretty-print
 1467 NEED_PRETTY = nsprof1 nsprof2 \
 1468 	profile4 profile5 profile8 profile9 profile10 profile11 profile13
 1469 
 1470 # List of tests that need --re-interval
 1471 NEED_RE_INTERVAL = gsubtst3 reint reint2
 1472 
 1473 # List of tests that need --sandbox
 1474 NEED_SANDBOX = sandbox1
 1475 
 1476 # List of tests that need --traditional
 1477 NEED_TRADITIONAL = litoct tradanch rscompat
 1478 
 1479 # Lists of tests that run a shell script
 1480 RUN_SHELL = exit fflush localenl next randtest rtlen rtlen01
 1481 
 1482 # List of the tests which fail with EXIT CODE 1
 1483 FAIL_CODE1 = \
 1484 	badassign1 badbuild callparam delfunc fcall_exit fcall_exit2 \
 1485 	fnamedat fnarray fnarray2 fnasgnm fnmisc funsmnam gsubasgn \
 1486 	incdupe2 lintwarn match2 mixed1 noparms paramasfunc1 paramasfunc2 \
 1487 	paramdup paramres parseme readbuf synerr1 synerr2 unterm
 1488 
 1489 # List of files which have .ok versions for MPFR
 1490 CHECK_MPFR = \
 1491 	rand fnarydel fnparydl
 1492 
 1493 # Lists of tests that need particular locales
 1494 NEED_LOCALE_C = \
 1495 	clos1way gsubtst6 range2
 1496 
 1497 NEED_LOCALE_EN = \
 1498 	backbigs1 backsmalls1 backsmalls2 concat4 dfamb1 ignrcas2 lc_num1 \
 1499 	mbfw1 mbprintf1 mbprintf3 mbprintf4 mbstr1 mbstr2 printhuge reint2 \
 1500 	rri1 subamp subi18n wideidx wideidx2 widesub widesub2 widesub3 widesub4
 1501 
 1502 # Unused at the moment, since nlstringtest has additional stufff it does
 1503 # NEED_LOCALE_FR =
 1504 # Same for ignrcas3
 1505 # NEED_LOCALE_GR =
 1506 
 1507 NEED_LOCALE_JP = mbprintf2
 1508 
 1509 NEED_LOCALE_RU = mtchi18n
 1510 
 1511 # List of tests that fail on DJGPP
 1512 EXPECTED_FAIL_DJGPP = \
 1513 	backbigs1 backsmalls1 backw beginfile1 clos1way clos1way2 \
 1514 	clos1way3 clos1way4 clos1way5 clos1way6 errno getlndir \
 1515 	getlnhd gnuops3 gnureops id ignrcas3 inetdayt inetdayu \
 1516 	inetecht inetechu inftest jarebug mbfw1 mbprintf1 mbprintf4 \
 1517 	mbstr1 mbstr2 mpfrsqrt nonfatal1 nonfatal2 nonfatal3 pid pty1 pty2 \
 1518 	randtest regx8bit strtod sigpipe1 symtab6 timeout
 1519 
 1520 # List of tests that fail on MinGW
 1521 EXPECTED_FAIL_MINGW = \
 1522 	backbigs1 backsmalls1 clos1way6 devfd devfd1 devfd2 \
 1523 	errno exitval2 fork fork2 fts getfile getlnhd ignrcas3 inetdayt \
 1524 	inetecht mbfw1 mbprintf1 mbprintf4 mbstr1 mbstr2 pid pipeio2 \
 1525 	pty1 pty2 readdir rstest4 rstest5 status-close timeout
 1526 
 1527 # List of tests that fail on z/OS
 1528 EXPECTED_FAIL_ZOS = \
 1529 	aasort aasorti arraysort asort asorti backbigs1 backsmalls1 \
 1530 	backsmalls2 beginfile1 beginfile2 charasbytes clos1way6 concat4 \
 1531 	dfamb1 double1 double2 errno fmttest forcenum getlndir gsubtst5 \
 1532 	ignrcas2 lc_num1 localenl localenl mbfw1 mbprintf1 mbprintf2 \
 1533 	mbprintf3 mbprintf4 mbprintf5 mbstr1 mbstr2 mtchi18n nlstringtest \
 1534 	nofile nonfatal2 numrange printhuge profile5 profile5 rebt8b2 \
 1535 	regrange reint2 rri1 sigpipe1 sort1 sortfor sortu space sprintfc \
 1536 	subamp subi18n symtab1 symtab11 symtab8 timeout wideidx wideidx2 \
 1537 	widesub widesub2 widesub3 widesub4
 1538 
 1539 ZOS_FAIL = @ZOS_FAIL@
 1540 
 1541 # List of the files that appear in manual tests or are for reserve testing:
 1542 GENTESTS_UNUSED = Makefile.in checknegtime.awk dtdgport.awk fix-fmtspcl.awk \
 1543 	fmtspcl-mpfr.ok fmtspcl.awk fmtspcl.tok gtlnbufv.awk hello.awk \
 1544 	inchello.awk inclib.awk inplace.1.in inplace.2.in inplace.in \
 1545 	printfloat.awk readdir0.awk valgrind.awk xref.awk
 1546 
 1547 # List of tests on MinGW or DJGPP that need a different cmp program
 1548 NEED_TESTOUTCMP = \
 1549 	beginfile2 double2 exit fmttest hsprint posix profile5 space
 1550 
 1551 CMP = cmp
 1552 AWKPROG = ../gawk$(EXEEXT)
 1553 SORT = sort
 1554 
 1555 # Default for VALGRIND is empty unless overridden by a command-line argument.
 1556 # This protects against cruft in the environment.
 1557 VALGRIND = 
 1558 
 1559 # This business forces the locale to be C for running the tests,
 1560 # unless we override it to something else for testing.
 1561 #
 1562 # This can also be done in individual tests where we wish to
 1563 # check things specifically not in the C locale.
 1564 
 1565 #
 1566 # And we set AWKLIBPATH to find the extension libraries we built.
 1567 LOCALES = LANGUAGE= LC_ALL=$${GAWKLOCALE:-C} LANG=$${GAWKLOCALE:-C}
 1568 AWK = $(LOCALES) AWKLIBPATH=../extension/.libs $(VALGRIND) $(AWKPROG)
 1569 
 1570 # Message stuff is to make it a little easier to follow.
 1571 # Make the pass-fail last and dependent on others to avoid
 1572 # spurious errors if `make -j' in effect.
 1573 check:	msg \
 1574 	printlang \
 1575 	basic-msg-start  basic           basic-msg-end \
 1576 	unix-msg-start   unix-tests      unix-msg-end \
 1577 	extend-msg-start gawk-extensions arraydebug-tests extend-msg-end \
 1578 	machine-msg-start machine-tests machine-msg-end \
 1579 	charset-tests-all \
 1580 	shlib-msg-start  shlib-tests     shlib-msg-end \
 1581 	mpfr-msg-start   mpfr-tests      mpfr-msg-end
 1582 	@$(MAKE) pass-fail || { $(MAKE) diffout; exit 1; }
 1583 
 1584 basic:	$(BASIC_TESTS)
 1585 
 1586 unix-tests: $(UNIX_TESTS)
 1587 
 1588 gawk-extensions: $(GAWK_EXT_TESTS)
 1589 
 1590 charset-tests-all:
 1591 	@case `uname` in \
 1592 	*MINGW* | *MS-DOS*) \
 1593 		$(MAKE) charset-msg-start charset-tests charset-msg-end ;; \
 1594 	*) \
 1595 		if locale -a | grep -i 'en_US.UTF.*8' > /dev/null && \
 1596 		   locale -a | grep -i 'fr_FR.UTF.*8' > /dev/null && \
 1597 		   locale -a | grep -i 'ru_RU.UTF.*8' > /dev/null && \
 1598 		   locale -a | grep -i 'ja_JP.UTF.*8' > /dev/null  ; \
 1599 		then \
 1600 			$(MAKE) charset-msg-start charset-tests charset-msg-end; \
 1601 		else \
 1602 			echo %%%%%%%%%% Inadequate locale support: skipping charset tests. ; \
 1603 			echo %%%%%%%%%% At least en_US.UTF-8, fr_FR.UTF-8, ru_RU.UTF-8 and ja_JP.UTF-8 are needed. ; \
 1604 		fi ;; \
 1605 	esac
 1606 
 1607 charset-tests: $(LOCALE_CHARSET_TESTS)
 1608 
 1609 extra:	$(EXTRA_TESTS) inet
 1610 
 1611 inet:	inetmesg $(INET_TESTS)
 1612 
 1613 machine-tests: $(MACHINE_TESTS)
 1614 
 1615 # The blank between ' and /MPFR/ is for running tests on Windows under
 1616 # MSYS, which thinks /MPFR is a Unix-style file name and converts it
 1617 # to Windows format, butchering it in the process.  Likewise for /API/
 1618 # in the next shlib-tests.
 1619 mpfr-tests:
 1620 	@if $(AWK) --version | $(AWK) ' /MPFR/ { exit 1 }' ; then \
 1621 	echo MPFR tests not supported on this system ; \
 1622 	else $(MAKE) $(NEED_MPFR) ; \
 1623 	fi
 1624 
 1625 arraydebug-tests:
 1626 	@if echo $(CFLAGS) | grep ARRAYDEBUG > /dev/null ; then \
 1627 	$(MAKE) $(ARRAYDEBUG_TESTS) ; \
 1628 	else echo gawk is not compiled to support the array debug tests ; \
 1629 	fi
 1630 
 1631 shlib-tests:
 1632 	@if $(AWK) --version | $(AWK) ' /API/ { exit 1 }' ; then \
 1633 	echo shlib tests not supported on this system ; \
 1634 	else $(MAKE) shlib-real-tests ; \
 1635 	fi
 1636 
 1637 shlib-real-tests: $(SHLIB_TESTS)
 1638 
 1639 msg::
 1640 	@echo ''
 1641 	@echo 'Any output from "$(CMP)" is bad news, although some differences'
 1642 	@echo 'in floating point values are probably benign -- in particular,'
 1643 	@echo 'some systems may omit a leading zero and the floating point'
 1644 	@echo 'precision may lead to slightly different output in a few cases.'
 1645 
 1646 printlang::
 1647 	@$(AWK) -f "$(srcdir)"/printlang.awk
 1648 
 1649 basic-msg-start:
 1650 	@echo "======== Starting basic tests ========"
 1651 
 1652 basic-msg-end:
 1653 	@echo "======== Done with basic tests ========"
 1654 
 1655 unix-msg-start:
 1656 	@echo "======== Starting Unix tests ========"
 1657 
 1658 unix-msg-end:
 1659 	@echo "======== Done with Unix tests ========"
 1660 
 1661 extend-msg-start:
 1662 	@echo "======== Starting gawk extension tests ========"
 1663 
 1664 extend-msg-end:
 1665 	@echo "======== Done with gawk extension tests ========"
 1666 
 1667 machine-msg-start:
 1668 	@echo "======== Starting machine-specific tests ========"
 1669 
 1670 machine-msg-end:
 1671 	@echo "======== Done with machine-specific tests ========"
 1672 
 1673 charset-msg-start:
 1674 	@echo "======== Starting tests that can vary based on character set or locale support ========"
 1675 	@echo "**************************************************************************"
 1676 	@echo "* Some or all of these tests may fail if you have inadequate or missing  *"
 1677 	@echo "* locale support. At least en_US.UTF-8, fr_FR.UTF-8, ru_RU.UTF-8 and     *"
 1678 	@echo "* ja_JP.UTF-8 are needed. The el_GR.iso88597 is optional but helpful.    *"
 1679 	@echo "* However, if you see this message, the Makefile thinks you have what    *"
 1680 	@echo "* you need ...                                                           *"
 1681 	@echo "**************************************************************************"
 1682 
 1683 charset-msg-end:
 1684 	@echo "======== Done with tests that can vary based on character set or locale support ========"
 1685 
 1686 shlib-msg-start:
 1687 	@echo "======== Starting shared library tests ========"
 1688 
 1689 shlib-msg-end:
 1690 	@echo "======== Done with shared library tests ========"
 1691 
 1692 mpfr-msg-start:
 1693 	@echo "======== Starting MPFR tests ========"
 1694 
 1695 mpfr-msg-end:
 1696 	@echo "======== Done with MPFR tests ========"
 1697 
 1698 
 1699 # This test is a PITA because increasingly, /tmp is getting
 1700 # mounted noexec.  So, we'll test it locally.  Sigh.
 1701 #
 1702 # More PITA; some systems have medium short limits on #! paths,
 1703 # so this can still fail
 1704 poundbang::
 1705 	@echo $@
 1706 	@sed "s;/tmp/gawk;`pwd`/$(AWKPROG);" < "$(srcdir)"/poundbang.awk > ./_pbd.awk
 1707 	@chmod +x ./_pbd.awk
 1708 	@if ./_pbd.awk "$(srcdir)"/poundbang.awk > _`basename $@` ; \
 1709 	then : ; \
 1710 	else \
 1711 		sed "s;/tmp/gawk;$(AWKPROG);" < "$(srcdir)"/poundbang.awk > ./_pbd.awk ; \
 1712 		chmod +x ./_pbd.awk ; \
 1713 		LC_ALL=$${GAWKLOCALE:-C} LANG=$${GAWKLOCALE:-C} ./_pbd.awk "$(srcdir)"/poundbang.awk > _`basename $@`;  \
 1714 	fi
 1715 	@-$(CMP) "$(srcdir)"/poundbang.awk _`basename $@` && rm -f _`basename $@` _pbd.awk
 1716 
 1717 messages::
 1718 	@echo $@
 1719 	@$(AWK) -f "$(srcdir)"/messages.awk >_out2 2>_out3 || echo EXIT CODE: $$? >> _$@
 1720 	@-$(CMP) "$(srcdir)"/out1.ok _out1 && $(CMP) "$(srcdir)"/out2.ok _out2 && $(CMP) "$(srcdir)"/out3.ok _out3 && rm -f _out1 _out2 _out3
 1721 
 1722 argarray::
 1723 	@echo $@
 1724 	@cp "$(srcdir)"/argarray.in ./argarray.input
 1725 	@TEST=test echo just a test | $(AWK) -f "$(srcdir)"/argarray.awk ./argarray.input - >_$@ || echo EXIT CODE: $$? >> _$@
 1726 	@rm -f ./argarray.input
 1727 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1728 
 1729 regtest::
 1730 	@echo $@
 1731 	@echo 'Some of the output from regtest is very system specific, do not'
 1732 	@echo 'be distressed if your output differs from that distributed.'
 1733 	@echo 'Manual inspection is called for.'
 1734 	@AWK=$(AWKPROG) "$(srcdir)"/regtest.sh
 1735 
 1736 manyfiles::
 1737 	@echo $@
 1738 	@rm -rf junk
 1739 	@mkdir junk
 1740 	@$(AWK) 'BEGIN { for (i = 1; i <= 1030; i++) print i, i}' >_$@
 1741 	@$(AWK) -f "$(srcdir)"/manyfiles.awk _$@ _$@ || echo EXIT CODE: $$? >> _$@
 1742 	@wc -l junk/* | $(AWK) '$$1 != 2' | wc -l | sed "s/  *//g" > _$@
 1743 	@rm -rf junk
 1744 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1745 
 1746 compare::
 1747 	@echo $@
 1748 	@$(AWK) -f "$(srcdir)"/compare.awk 0 1 "$(srcdir)"/compare.in >_$@ || echo EXIT CODE: $$? >> _$@
 1749 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1750 
 1751 inftest::
 1752 	@echo $@
 1753 	@echo This test is very machine specific...
 1754 	@$(AWK) -f "$(srcdir)"/inftest.awk | sed "s/inf/Inf/g" >_$@ || echo EXIT CODE: $$? >> _$@
 1755 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1756 
 1757 getline2::
 1758 	@echo $@
 1759 	@$(AWK) -f "$(srcdir)"/getline2.awk "$(srcdir)"/getline2.awk "$(srcdir)"/getline2.awk >_$@ || echo EXIT CODE: $$? >> _$@
 1760 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1761 
 1762 awkpath::
 1763 	@echo $@
 1764 	@AWKPATH="$(srcdir)$(PATH_SEPARATOR)$(srcdir)/lib" $(AWK) -f awkpath.awk >_$@ || echo EXIT CODE: $$? >> _$@
 1765 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1766 
 1767 argtest::
 1768 	@echo $@
 1769 	@$(AWK) -f "$(srcdir)"/argtest.awk -x -y abc >_$@ || echo EXIT CODE: $$? >> _$@
 1770 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1771 
 1772 badargs::
 1773 	@echo $@
 1774 	@-$(AWK) -f 2>&1 | grep -v patchlevel >_$@ || echo EXIT CODE: $$? >> _$@
 1775 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1776 
 1777 strftime::
 1778 	@echo $@
 1779 	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=C ; export GAWKLOCALE; \
 1780 	TZ=GMT0; export TZ; \
 1781 	$(AWK) -v OUTPUT=_$@ -v DATECMD="$(DATE)" -f "$(srcdir)"/strftime.awk || echo EXIT CODE: $$? >> _$@
 1782 	@-$(CMP) strftime.ok _$@ && rm -f _$@ strftime.ok || exit 0
 1783 
 1784 devfd::
 1785 	@echo $@
 1786 	@$(AWK) 1 /dev/fd/4 /dev/fd/5 4<"$(srcdir)"/devfd.in4 5<"$(srcdir)"/devfd.in5 >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@ || echo EXIT CODE: $$? >> _$@
 1787 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1788 
 1789 # This cannot be autogenerated; we want it to read the input name
 1790 # on the command line.
 1791 errno:
 1792 	@echo $@ $(ZOS_FAIL)
 1793 	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 1794 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1795 
 1796 tweakfld::
 1797 	@echo $@
 1798 	@$(AWK) -f "$(srcdir)"/tweakfld.awk "$(srcdir)"/tweakfld.in >_$@ || echo EXIT CODE: $$? >> _$@
 1799 	@rm -f errors.cleanup
 1800 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1801 
 1802 # AIX /bin/sh exec's the last command in a list, therefore issue a ":"
 1803 # command so that pid.sh is fork'ed as a child before being exec'ed.
 1804 pid::
 1805 	@echo $@
 1806 	@AWKPATH="$(srcdir)" AWK=$(AWKPROG) $(SHELL) "$(srcdir)"/pid.sh $$$$ > _`basename $@` ; :
 1807 	@-$(CMP) "$(srcdir)"/pid.ok _`basename $@` && rm -f _`basename $@`
 1808 
 1809 strftlng::
 1810 	@echo $@
 1811 	@TZ=UTC; export TZ; $(AWK) -f "$(srcdir)"/strftlng.awk >_$@
 1812 	@if $(CMP) "$(srcdir)"/strftlng.ok _$@ >/dev/null 2>&1 ; then : ; else \
 1813 	TZ=UTC0; export TZ; $(AWK) -f "$(srcdir)"/strftlng.awk >_$@ ; \
 1814 	fi
 1815 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1816 
 1817 nors::
 1818 	@echo $@
 1819 	@echo A B C D E | tr -d '\12\15' | $(AWK) '{ print $$NF }' - "$(srcdir)"/nors.in > _$@ || echo EXIT CODE: $$? >> _$@
 1820 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1821 
 1822 # fmtspcl.ok: fmtspcl.tok Makefile fix-fmtspcl.awk
 1823 # 	@$(AWK) -v "sd=$(srcdir)" -f "$(srcdir)/fix-fmtspcl.awk" < "$(srcdir)"/fmtspcl.tok > $@ 2>/dev/null
 1824 # 
 1825 # fmtspcl: fmtspcl.ok
 1826 # 	@echo $@
 1827 # 	@$(AWK) $(AWKFLAGS) -f "$(srcdir)"/fmtspcl.awk  --lint >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 1828 # 	@-if test -z "$$AWKFLAGS" ; then $(CMP) $@.ok _$@ && rm -f _$@ ; else \
 1829 # 	$(CMP) "$(srcdir)"/$@-mpfr.ok _$@ && rm -f _$@ ; \
 1830 # 	fi
 1831 
 1832 rebuf::
 1833 	@echo $@
 1834 	@AWKBUFSIZE=4096 AWKPATH="$(srcdir)" $(AWK) -f $@.awk  < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 1835 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1836 
 1837 rsglstdin:: 
 1838 	@echo $@
 1839 	@cat  "$(srcdir)"/rsgetline.in | AWKPATH="$(srcdir)" $(AWK) -f rsgetline.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 1840 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1841 
 1842 pipeio1::
 1843 	@echo $@
 1844 	@$(AWK) -f "$(srcdir)"/pipeio1.awk >_$@ || echo EXIT CODE: $$? >> _$@
 1845 	@rm -f test1 test2
 1846 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1847 
 1848 pipeio2::
 1849 	@echo $@
 1850 	@$(AWK) -v SRCDIR="$(srcdir)" -f "$(srcdir)"/pipeio2.awk >_$@ || echo EXIT CODE: $$? >> _$@
 1851 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1852 
 1853 clobber::
 1854 	@echo $@
 1855 	@$(AWK) -f "$(srcdir)"/clobber.awk >_$@ || echo EXIT CODE: $$? >> _$@
 1856 	@-$(CMP) "$(srcdir)"/clobber.ok seq && $(CMP) "$(srcdir)"/clobber.ok _$@ && rm -f _$@
 1857 	@rm -f seq
 1858 
 1859 arynocls::
 1860 	@echo $@
 1861 	@-AWKPATH="$(srcdir)" $(AWK) -v INPUT="$(srcdir)"/arynocls.in -f arynocls.awk >_$@ || echo EXIT CODE: $$? >> _$@
 1862 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1863 
 1864 getlnbuf::
 1865 	@echo $@
 1866 	@-AWKPATH="$(srcdir)" $(AWK) -f getlnbuf.awk "$(srcdir)"/getlnbuf.in > _$@ || echo EXIT CODE: $$? >> _$@
 1867 	@-AWKPATH="$(srcdir)" $(AWK) -f gtlnbufv.awk "$(srcdir)"/getlnbuf.in > _2$@ || echo EXIT CODE: $$? >> _$@
 1868 	@-$(CMP) "$(srcdir)"/getlnbuf.ok _$@ && $(CMP) "$(srcdir)"/getlnbuf.ok _2$@ && rm -f _$@ _2$@
 1869 
 1870 inetmesg::
 1871 	@echo These tests only work if your system supports the services
 1872 	@echo "'discard'" at port 9 and "'daytimed'" at port 13. Check your
 1873 	@echo file /etc/services and do "'netstat -a'".
 1874 
 1875 inetechu::
 1876 	@echo This test is for establishing UDP connections
 1877 	@-$(AWK) 'BEGIN {print "" |& "/inet/udp/0/127.0.0.1/9"}'
 1878 
 1879 inetecht::
 1880 	@echo This test is for establishing TCP connections
 1881 	@-$(AWK) 'BEGIN {print "" |& "/inet/tcp/0/127.0.0.1/9"}'
 1882 
 1883 inetdayu::
 1884 	@echo This test is for bidirectional UDP transmission
 1885 	@-$(AWK) 'BEGIN { print "" |& "/inet/udp/0/127.0.0.1/13"; \
 1886 	"/inet/udp/0/127.0.0.1/13" |& getline; print $0}'
 1887 
 1888 inetdayt::
 1889 	@echo This test is for bidirectional TCP transmission
 1890 	@-$(AWK) 'BEGIN { print "" |& "/inet/tcp/0/127.0.0.1/13"; \
 1891 	"/inet/tcp/0/127.0.0.1/13" |& getline; print $0}'
 1892 
 1893 redfilnm::
 1894 	@echo $@
 1895 	@$(AWK) -f "$(srcdir)"/redfilnm.awk srcdir="$(srcdir)" "$(srcdir)"/redfilnm.in >_$@ || echo EXIT CODE: $$? >> _$@
 1896 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1897 
 1898 space::
 1899 	@echo $@ $(ZOS_FAIL)
 1900 	@$(AWK) -f ' ' "$(srcdir)"/space.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ || echo EXIT CODE: $$? >> _$@
 1901 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1902 
 1903 rsnulbig::
 1904 	@echo $@
 1905 	@ : Suppose that block size for pipe is at most 128kB:
 1906 	@$(AWK) 'BEGIN { for (i = 1; i <= 128*64+1; i++) print "abcdefgh123456\n" }' 2>&1 | \
 1907 	$(AWK) 'BEGIN { RS = ""; ORS = "\n\n" }; { print }' 2>&1 | \
 1908 	$(AWK) ' /^[^a]/; END{ print NR }' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 1909 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1910 
 1911 rsnulbig2::
 1912 	@echo $@
 1913 	@$(AWK) 'BEGIN { ORS = ""; n = "\n"; for (i = 1; i <= 10; i++) n = (n n); \
 1914 		for (i = 1; i <= 128; i++) print n; print "abc\n" }' 2>&1 | \
 1915 		$(AWK) 'BEGIN { RS = ""; ORS = "\n\n" };{ print }' 2>&1 | \
 1916 		$(AWK) ' /^[^a]/; END { print NR }' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 1917 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1918 
 1919 # This test makes sure gawk exits with a zero code.
 1920 # Thus, unconditionally generate the exit code.
 1921 exitval1::
 1922 	@echo $@
 1923 	@$(AWK) -f "$(srcdir)"/exitval1.awk >_$@ 2>&1; echo EXIT CODE: $$? >>_$@
 1924 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1925 
 1926 fsspcoln::
 1927 	@echo $@
 1928 	@$(AWK) -f "$(srcdir)"/$@.awk 'FS=[ :]+' "$(srcdir)"/$@.in >_$@ || echo EXIT CODE: $$? >> _$@
 1929 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1930 
 1931 rsstart3::
 1932 	@echo $@
 1933 	@head "$(srcdir)"/rsstart1.in | $(AWK) -f "$(srcdir)"/rsstart2.awk >_$@ || echo EXIT CODE: $$? >> _$@
 1934 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1935 
 1936 # FIXME: Gentests can't really deal with something that is both a shell script
 1937 # and requires a locale. We might can fix that ...
 1938 rtlenmb::
 1939 	@echo $@
 1940 	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE ; \
 1941 	"$(srcdir)"/rtlen.sh >_$@ || echo EXIT CODE: $$? >>_$@
 1942 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1943 
 1944 nofile::
 1945 	@echo $@ $(ZOS_FAIL)
 1946 	@$(AWK) '{}' no/such/file >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 1947 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1948 
 1949 binmode1::
 1950 	@echo $@
 1951 	@$(AWK) -v BINMODE=3 'BEGIN { print BINMODE }' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 1952 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1953 
 1954 devfd1::
 1955 	@echo $@
 1956 	@$(AWK) -f "$(srcdir)"/$@.awk 4< "$(srcdir)"/devfd.in1 5< "$(srcdir)"/devfd.in2 >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 1957 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1958 
 1959 # The program text is the '1' which will print each record. How compact can you get?
 1960 devfd2::
 1961 	@echo $@
 1962 	@$(AWK) 1 /dev/fd/4 /dev/fd/5 4< "$(srcdir)"/devfd.in1 5< "$(srcdir)"/devfd.in2 >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 1963 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1964 
 1965 mixed1::
 1966 	@echo $@
 1967 	@$(AWK) -f /dev/null --source 'BEGIN {return junk}' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 1968 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1969 
 1970 mbprintf5::
 1971 	@echo $@ $(ZOS_FAIL)
 1972 	@-case `uname` in \
 1973 	CYGWIN* | MSYS* | MINGW32* | *MS-DOS*) echo this test fails on this system --- skipping $@ ;; \
 1974 	*) \
 1975 	[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE ; \
 1976 	$(AWK) -f "$(srcdir)"/$@.awk "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@ ; \
 1977 	$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; \
 1978 	esac
 1979 
 1980 printfbad2: printfbad2.ok
 1981 	@echo $@
 1982 	@$(AWK) --lint -f "$(srcdir)"/$@.awk "$(srcdir)"/$@.in 2>&1 | sed 's;$(srcdir)/;;g' >_$@ || echo EXIT CODE: $$?  >>_$@
 1983 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1984 
 1985 beginfile1::
 1986 	@echo $@ $(ZOS_FAIL)
 1987 	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk "$(srcdir)"/$@.awk . ./no/such/file Makefile  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 1988 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1989 
 1990 beginfile2:
 1991 	@echo $@ $(ZOS_FAIL)
 1992 	@-( cd "$(srcdir)" && LC_ALL=C AWK="$(abs_builddir)/$(AWKPROG)" $(abs_srcdir)/$@.sh $(abs_srcdir)/$@.in ) > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
 1993 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 1994 
 1995 dumpvars::
 1996 	@echo $@
 1997 	@AWKPATH="$(srcdir)" $(AWK) --dump-variables 1 < "$(srcdir)"/$@.in >/dev/null 2>&1 || echo EXIT CODE: $$? >>_$@ || echo EXIT CODE: $$? >> _$@
 1998 	@grep -v ENVIRON < awkvars.out | grep -v PROCINFO > _$@; rm awkvars.out
 1999 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2000 
 2001 profile0:
 2002 	@echo $@
 2003 	@$(AWK) --profile=ap-$@.out -f "$(srcdir)"/$@.awk "$(srcdir)"/$@.in > /dev/null
 2004 	@sed 1,2d < ap-$@.out > _$@; rm ap-$@.out
 2005 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2006 
 2007 profile1:
 2008 	@echo $@
 2009 	@$(AWK) -f "$(srcdir)"/xref.awk "$(srcdir)"/dtdgport.awk > _$@.out1
 2010 	@$(AWK) --pretty-print=ap-$@.out -f "$(srcdir)"/xref.awk
 2011 	@$(AWK) -f ./ap-$@.out "$(srcdir)"/dtdgport.awk > _$@.out2 ; rm ap-$@.out
 2012 	@-$(CMP) _$@.out1 _$@.out2 && rm _$@.out[12] || { echo EXIT CODE: $$? >>_$@ ; \
 2013 	cp "$(srcdir)"/dtdgport.awk $@.ok ; }
 2014 
 2015 profile2:
 2016 	@echo $@
 2017 	@$(AWK) --profile=ap-$@.out -v sortcmd=$(SORT) -f "$(srcdir)"/xref.awk "$(srcdir)"/dtdgport.awk > /dev/null
 2018 	@sed 1,2d < ap-$@.out > _$@; rm ap-$@.out
 2019 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2020 
 2021 profile3:
 2022 	@echo $@
 2023 	@$(AWK) --profile=ap-$@.out -f "$(srcdir)"/$@.awk > /dev/null
 2024 	@sed 1,2d < ap-$@.out > _$@; rm ap-$@.out
 2025 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2026 
 2027 profile5:
 2028 	@echo $@
 2029 	@AWKPATH="$(srcdir)" $(AWK) --pretty=_$@ -f $@.awk 2> _$@.err
 2030 	@cat _$@.err >> _$@ ; rm -f _$@.err
 2031 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2032 
 2033 profile6:
 2034 	@echo $@
 2035 	@$(AWK) --profile=ap-$@.out -f "$(srcdir)"/$@.awk > /dev/null
 2036 	@sed 1,2d < ap-$@.out > _$@; rm ap-$@.out
 2037 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2038 
 2039 profile7:
 2040 	@echo $@
 2041 	@$(AWK) --profile=ap-$@.out -f "$(srcdir)"/$@.awk > /dev/null
 2042 	@sed 1,2d < ap-$@.out > _$@; rm ap-$@.out
 2043 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2044 
 2045 profile12:
 2046 	@echo $@
 2047 	@$(AWK) --profile=ap-$@.out -f "$(srcdir)"/$@.awk "$(srcdir)"/$@.in > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
 2048 	@rm ap-$@.out
 2049 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2050 
 2051 mpfrieee:
 2052 	@echo $@
 2053 	@$(AWK) -M -vPREC=double -f "$(srcdir)"/$@.awk > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
 2054 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2055 
 2056 mpfrexprange:
 2057 	@echo $@
 2058 	@$(AWK) -M -vPREC=53 -f "$(srcdir)"/$@.awk > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
 2059 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2060 
 2061 mpfrrnd:
 2062 	@echo $@
 2063 	@$(AWK) -M -vPREC=53 -f "$(srcdir)"/$@.awk > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
 2064 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2065 
 2066 mpfrsort:
 2067 	@echo $@
 2068 	@$(AWK) -M -vPREC=53 -f "$(srcdir)"/$@.awk > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
 2069 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2070 
 2071 mpfruplus:
 2072 	@echo $@
 2073 	@$(AWK) -M -f "$(srcdir)"/uplus.awk > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
 2074 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2075 
 2076 mpfranswer42:
 2077 	@echo $@
 2078 	@$(AWK) -M -f "$(srcdir)"/mpfranswer42.awk > _$@ 2>&1 || echo EXIT CODE: $$? >> _$@
 2079 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2080 
 2081 mpfrmemok1:
 2082 	@echo $@
 2083 	@$(AWK) -p- -M -f "$(srcdir)"/$@.awk 2>&1 | sed 1d > _$@ || echo EXIT CODE: $$? >> _$@
 2084 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2085 
 2086 jarebug::
 2087 	@echo $@
 2088 	@"$(srcdir)"/$@.sh "$(AWKPROG)" "$(srcdir)"/$@.awk "$(srcdir)"/$@.in "_$@" || echo EXIT CODE: $$? >> _$@
 2089 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2090 
 2091 ordchr2::
 2092 	@echo $@
 2093 	@$(AWK) --load ordchr 'BEGIN {print chr(ord("z"))}' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2094 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2095 
 2096 # N.B. If the test fails, create readfile.ok so that "make diffout" will work
 2097 readfile::
 2098 	@echo $@
 2099 	@$(AWK) -l readfile 'BEGIN {printf "%s", readfile("$(srcdir)/Makefile.am")}' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2100 	@-$(CMP) "$(srcdir)/Makefile.am" _$@ && rm -f _$@ || cp -p "$(srcdir)/Makefile.am" $@.ok
 2101 
 2102 readfile2::
 2103 	@echo $@
 2104 	@$(AWK) -f "$(srcdir)"/$@.awk "$(srcdir)"/$@.awk "$(srcdir)"/readdir.awk > _$@ || echo EXIT CODE: $$? >>_$@
 2105 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2106 
 2107 nsawk1a::
 2108 	@echo $@
 2109 	@$(AWK) -f "$(srcdir)"/nsawk1.awk > _$@ || echo EXIT CODE: $$? >>_$@
 2110 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2111 
 2112 nsawk1b::
 2113 	@echo $@
 2114 	@$(AWK) -v I=fine -f "$(srcdir)"/nsawk1.awk > _$@ || echo EXIT CODE: $$? >>_$@
 2115 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2116 
 2117 nsawk1c::
 2118 	@echo $@
 2119 	@$(AWK) -v awk::I=fine -f "$(srcdir)"/nsawk1.awk > _$@ || echo EXIT CODE: $$? >>_$@
 2120 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2121 
 2122 nsawk2a::
 2123 	@echo $@
 2124 	@$(AWK) -v I=fine -f "$(srcdir)"/nsawk2.awk > _$@ || echo EXIT CODE: $$? >>_$@
 2125 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2126 
 2127 nsawk2b::
 2128 	@echo $@
 2129 	@$(AWK) -v awk::I=fine -f "$(srcdir)"/nsawk2.awk > _$@ || echo EXIT CODE: $$? >>_$@
 2130 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2131 
 2132 include2::
 2133 	@echo $@
 2134 	@AWKPATH="$(srcdir)" $(AWK) --include inclib 'BEGIN {print sandwich("a", "b", "c")}' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2135 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2136 
 2137 incdupe::
 2138 	@echo $@
 2139 	@AWKPATH="$(srcdir)" $(AWK) --lint -i inclib -i inclib.awk 'BEGIN {print sandwich("a", "b", "c")}' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2140 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2141 
 2142 incdupe2::
 2143 	@echo $@
 2144 	@AWKPATH="$(srcdir)" $(AWK) --lint -f inclib -f inclib.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2145 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2146 
 2147 incdupe3::
 2148 	@echo $@
 2149 	@AWKPATH="$(srcdir)" $(AWK) --lint -f hello -f hello.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2150 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2151 
 2152 incdupe4::
 2153 	@echo $@
 2154 	@AWKPATH="$(srcdir)" $(AWK) --lint -f hello -i hello.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2155 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2156 
 2157 incdupe5::
 2158 	@echo $@
 2159 	@AWKPATH="$(srcdir)" $(AWK) --lint -i hello -f hello.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2160 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2161 
 2162 incdupe6::
 2163 	@echo $@
 2164 	@AWKPATH="$(srcdir)" $(AWK) --lint -i inchello -f hello.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2165 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2166 
 2167 incdupe7::
 2168 	@echo $@
 2169 	@AWKPATH="$(srcdir)" $(AWK) --lint -f hello -i inchello >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2170 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2171 
 2172 inplace1::
 2173 	@echo $@
 2174 	@cp "$(srcdir)"/inplace.1.in _$@.1
 2175 	@cp "$(srcdir)"/inplace.2.in _$@.2
 2176 	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace 'BEGIN {print "before"} {gsub(/foo/, "bar"); print} END {print "after"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2177 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2178 	@-$(CMP) "$(srcdir)"/$@.1.ok _$@.1 && rm -f _$@.1
 2179 	@-$(CMP) "$(srcdir)"/$@.2.ok _$@.2 && rm -f _$@.2
 2180 
 2181 inplace2::
 2182 	@echo $@
 2183 	@cp "$(srcdir)"/inplace.1.in _$@.1
 2184 	@cp "$(srcdir)"/inplace.2.in _$@.2
 2185 	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace -v inplace::suffix=.bak 'BEGIN {print "before"} {gsub(/foo/, "bar"); print} END {print "after"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2186 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2187 	@-$(CMP) "$(srcdir)"/$@.1.ok _$@.1 && rm -f _$@.1
 2188 	@-$(CMP) "$(srcdir)"/$@.1.bak.ok _$@.1.bak && rm -f _$@.1.bak
 2189 	@-$(CMP) "$(srcdir)"/$@.2.ok _$@.2 && rm -f _$@.2
 2190 	@-$(CMP) "$(srcdir)"/$@.2.bak.ok _$@.2.bak && rm -f _$@.2.bak
 2191 
 2192 inplace2bcomp::
 2193 	@echo $@
 2194 	@cp "$(srcdir)"/inplace.1.in _$@.1
 2195 	@cp "$(srcdir)"/inplace.2.in _$@.2
 2196 	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace -v INPLACE_SUFFIX=.orig 'BEGIN {print "before"} {gsub(/foo/, "bar"); print} END {print "after"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2197 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2198 	@-$(CMP) "$(srcdir)"/$@.1.ok _$@.1 && rm -f _$@.1
 2199 	@-$(CMP) "$(srcdir)"/$@.1.orig.ok _$@.1.orig && rm -f _$@.1.orig
 2200 	@-$(CMP) "$(srcdir)"/$@.2.ok _$@.2 && rm -f _$@.2
 2201 	@-$(CMP) "$(srcdir)"/$@.2.orig.ok _$@.2.orig && rm -f _$@.2.orig
 2202 
 2203 inplace3::
 2204 	@echo $@
 2205 	@cp "$(srcdir)"/inplace.1.in _$@.1
 2206 	@cp "$(srcdir)"/inplace.2.in _$@.2
 2207 	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace -v inplace::suffix=.bak 'BEGIN {print "before"} {gsub(/foo/, "bar"); print} END {print "after"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2208 	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace -v inplace::suffix=.bak 'BEGIN {print "Before"} {gsub(/bar/, "foo"); print} END {print "After"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >>_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2209 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2210 	@-$(CMP) "$(srcdir)"/$@.1.ok _$@.1 && rm -f _$@.1
 2211 	@-$(CMP) "$(srcdir)"/$@.1.bak.ok _$@.1.bak && rm -f _$@.1.bak
 2212 	@-$(CMP) "$(srcdir)"/$@.2.ok _$@.2 && rm -f _$@.2
 2213 	@-$(CMP) "$(srcdir)"/$@.2.bak.ok _$@.2.bak && rm -f _$@.2.bak
 2214 
 2215 inplace3bcomp::
 2216 	@echo $@
 2217 	@cp "$(srcdir)"/inplace.1.in _$@.1
 2218 	@cp "$(srcdir)"/inplace.2.in _$@.2
 2219 	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace -v INPLACE_SUFFIX=.orig 'BEGIN {print "before"} {gsub(/foo/, "bar"); print} END {print "after"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2220 	@AWKPATH="$(srcdir)"/../awklib/eg/lib $(AWK) -i inplace -v INPLACE_SUFFIX=.orig 'BEGIN {print "Before"} {gsub(/bar/, "foo"); print} END {print "After"}' _$@.1 - _$@.2 < "$(srcdir)"/inplace.in >>_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2221 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2222 	@-$(CMP) "$(srcdir)"/$@.1.ok _$@.1 && rm -f _$@.1
 2223 	@-$(CMP) "$(srcdir)"/$@.1.orig.ok _$@.1.orig && rm -f _$@.1.orig
 2224 	@-$(CMP) "$(srcdir)"/$@.2.ok _$@.2 && rm -f _$@.2
 2225 	@-$(CMP) "$(srcdir)"/$@.2.orig.ok _$@.2.orig && rm -f _$@.2.orig
 2226 
 2227 testext::
 2228 	@echo $@
 2229 	@$(AWK) ' /^(@load|BEGIN)/,/^}/' "$(top_srcdir)"/extension/testext.c > testext.awk
 2230 	@$(AWK) -f ./testext.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2231 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ testext.awk testexttmp.txt
 2232 
 2233 getfile:
 2234 	@echo $@
 2235 	@AWKPATH="$(srcdir)" $(AWK) -v TESTEXT_QUIET=1 -ltestext -f $@.awk < $(srcdir)/$@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2236 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2237 
 2238 readdir:
 2239 	@echo $@
 2240 	@if [ "`uname`" = Linux ] && [ "`stat -f . 2>/dev/null | awk 'NR == 2 { print $$NF }'`" = nfs ];  then \
 2241 	echo This test may fail on GNU/Linux systems when run on NFS or JFS filesystems.; \
 2242 	echo If it does, try rerunning on an ext'[234]' filesystem. ; \
 2243 	fi
 2244 	@$(AWK) -f "$(srcdir)"/readdir.awk "$(top_srcdir)" > _$@ || echo EXIT CODE: $$? >> _$@
 2245 	@ls -afi "$(top_srcdir)" > _dirlist
 2246 	@ls -lna "$(top_srcdir)" | sed 1d > _longlist
 2247 	@$(AWK) -f "$(srcdir)"/readdir0.awk -v extout=_$@  \
 2248 		-v dirlist=_dirlist -v longlist=_longlist > $@.ok
 2249 	@-$(CMP) $@.ok _$@ && rm -f $@.ok _$@ _dirlist _longlist
 2250 
 2251 readdir_test:
 2252 	@echo $@
 2253 	@$(AWK) -lreaddir -F/ '{printf "[%s] [%s] [%s] [%s]\n", $$1, $$2, $$3, $$4}' "$(top_srcdir)" > $@.ok
 2254 	@$(AWK) -lreaddir_test '{printf "[%s] [%s] [%s] [%s]\n", $$1, $$2, $$3, $$4}' "$(top_srcdir)" > _$@
 2255 	@-$(CMP) $@.ok _$@ && rm -f $@.ok _$@
 2256 
 2257 readdir_retest:
 2258 	@echo $@
 2259 	@$(AWK) -lreaddir -F/ -f "$(srcdir)"/$@.awk "$(top_srcdir)" > $@.ok
 2260 	@$(AWK) -lreaddir_test -F/ -f "$(srcdir)"/$@.awk "$(top_srcdir)" > _$@
 2261 	@-$(CMP) $@.ok _$@ && rm -f $@.ok _$@
 2262 
 2263 fts:
 2264 	@echo $@
 2265 	@case `uname` in \
 2266 	IRIX) \
 2267 	echo This test may fail on IRIX systems when run on an NFS filesystem.; \
 2268 	echo If it does, try rerunning on an xfs filesystem. ;; \
 2269 	CYGWIN* | MSYS*) \
 2270 	echo This test may fail on CYGWIN systems when run on an NFS filesystem.; \
 2271 	echo If it does, try rerunning on an ntfs filesystem. ;; \
 2272 	esac
 2273 	@$(AWK) -f "$(srcdir)"/fts.awk || echo EXIT CODE: $$? >> _$@
 2274 	@-$(CMP) $@.ok _$@ && rm -f $@.ok _$@
 2275 
 2276 # BINMODE=2 is needed for PC tests.
 2277 charasbytes:
 2278 	@echo $@ $(ZOS_FAIL)
 2279 	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; export GAWKLOCALE; \
 2280 	AWKPATH="$(srcdir)" $(AWK) -b -v BINMODE=2 -f $@.awk "$(srcdir)"/$@.in | \
 2281 	od -c -t x1 | tr '	' ' ' | sed -e 's/  */ /g' -e 's/ *$$//' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2282 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2283 
 2284 symtab6:
 2285 	@echo $@
 2286 	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk > _$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2287 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2288 
 2289 symtab8:
 2290 	@echo $@ $(ZOS_FAIL)
 2291 	@$(AWK) -d__$@ -f "$(srcdir)"/$@.awk "$(srcdir)"/$@.in >_$@
 2292 	@grep -v '^ENVIRON' __$@ | grep -v '^PROCINFO' | grep -v '^FILENAME' >> _$@ ; rm __$@
 2293 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2294 
 2295 symtab9:
 2296 	@echo $@
 2297 	@$(AWK) -f "$(srcdir)"/$@.awk >_$@ || echo EXIT CODE: $$? >> _$@
 2298 	@rm -f testit.txt
 2299 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2300 
 2301 reginttrad:
 2302 	@echo $@
 2303 	@$(AWK) --traditional -r -f "$(srcdir)"/$@.awk > _$@ || echo EXIT CODE: $$? >> _$@
 2304 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2305 
 2306 colonwarn:
 2307 	@echo $@
 2308 	@for i in 1 2 3 ; \
 2309 	do $(AWK) -f "$(srcdir)"/$@.awk $$i < "$(srcdir)"/$@.in ; \
 2310 	done > _$@ || echo EXIT CODE: $$? >> _$@
 2311 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2312 
 2313 dbugeval::
 2314 	@echo $@
 2315 	@if [ -t 0 ]; then \
 2316 	$(AWK) --debug -f /dev/null < "$(srcdir)"/$@.in > _$@  2>&1 || echo EXIT CODE: $$? >>_$@ ; \
 2317 	$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; \
 2318 	fi
 2319 
 2320 filefuncs:
 2321 	@echo $@
 2322 	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk -v builddir="$(abs_top_builddir)"  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2323 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2324 
 2325 genpot:
 2326 	@echo $@
 2327 	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk --gen-pot >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2328 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2329 
 2330 negtime::
 2331 	@echo $@
 2332 	@TZ=GMT AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2333 	@AWKPATH="$(srcdir)" $(AWK) -f checknegtime.awk "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2334 
 2335 watchpoint1:
 2336 	@echo $@
 2337 	@AWKPATH="$(srcdir)" $(AWK) -D -f $@.awk $(srcdir)/$@.in < $(srcdir)/$@.script >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2338 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2339 
 2340 pty1:
 2341 	@echo $@
 2342 	@-case `uname` in \
 2343 	*[Oo][Ss]/390*) : ;; \
 2344 	*) AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ ; \
 2345 	$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ;; \
 2346 	esac
 2347 
 2348 ## 1/2018: The awk goop is to compensate for different output of od on
 2349 ## Mac OS X systems. Sigh.
 2350 pty2:
 2351 	@echo $@
 2352 	@-case `uname` in \
 2353 	*[Oo][Ss]/390*) : ;; \
 2354 	*) AWKPATH="$(srcdir)" $(AWK) -f $@.awk | od -c | $(AWK) '{ $$1 = $$1 ; print }' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ ; \
 2355 	$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ;; \
 2356 	esac
 2357 
 2358 ignrcas3::
 2359 	@echo $@
 2360 	@if locale -a | grep el_GR.iso88597 > /dev/null ; then \
 2361 	[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=el_GR.iso88597 ; export GAWKLOCALE; \
 2362 	AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ ; \
 2363 	$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; \
 2364 	fi
 2365 
 2366 arrdbg:
 2367 	@echo $@
 2368 	@$(AWK) -v "okfile=./$@.ok" -f "$(srcdir)"/$@.awk | grep array_f >_$@ || echo EXIT CODE: $$? >> _$@
 2369 	@-$(CMP) ./$@.ok _$@ && rm -f _$@ ./$@.ok
 2370 
 2371 sourcesplit:
 2372 	@echo $@
 2373 	@AWKPATH="$(srcdir)" $(AWK) --source='BEGIN { a = 5;' --source='print a }' >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2374 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2375 
 2376 eofsrc1:
 2377 	@echo $@
 2378 	@AWKPATH="$(srcdir)" $(AWK) -f $@a.awk -f $@b.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2379 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2380 
 2381 nsbad_cmd:
 2382 	@echo $@
 2383 	@AWKPATH="$(srcdir)" $(AWK) -v foo:bar=3 -v foo:::blat=4 1 /dev/null >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2384 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2385 
 2386 
 2387 # Use [:] in the regexp to keep MSYS from converting the /'s to \'s.
 2388 nonfatal1:
 2389 	@echo $@
 2390 	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk 2>&1 | $(AWK) '{print gensub(/invalid[:].*$$/, "invalid", 1, $$0)}' >_$@ || echo EXIT CODE: $$? >>_$@
 2391 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2392 
 2393 # 4/2018: On first call to $(CMP), send to /dev/null even with -s for MinGW.
 2394 nlstringtest::
 2395 	@echo $@
 2396 	@[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=fr_FR.UTF-8 ; export GAWKLOCALE ; \
 2397 	AWKPATH="$(srcdir)" $(AWK) -f $@.awk "$(srcdir)" >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2398 	@-if $(CMP) -s "$(srcdir)"/nlstringtest-nogettext.ok _$@ > /dev/null ; \
 2399 	then \
 2400 		rm -f _$@ ; \
 2401 	else \
 2402 		$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@ ; \
 2403 	fi
 2404 
 2405 
 2406 longwrds:
 2407 	@echo $@
 2408 	@AWKPATH="$(srcdir)" $(AWK) -f $@.awk -v SORT="$(SORT)" < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2409 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2410 
 2411 
 2412 spacere:
 2413 	@echo $@
 2414 	@LC_ALL=C AWKPATH="$(srcdir)" $(AWK) -f $@.awk  >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2415 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2416 
 2417 typedregex4:
 2418 	@echo $@
 2419 	@$(AWK) -v x=@/foo/ -f "$(srcdir)"/$@.awk y=@/bar/ /dev/null >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
 2420 	@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
 2421 
 2422 # Targets generated for other tests:
 2423 include Maketests
 2424 
 2425 Maketests: $(srcdir)/Makefile.am $(srcdir)/Gentests
 2426 	files=`cd "$(srcdir)" && echo *.awk *.in *.sh`; \
 2427 	$(AWK) -f "$(srcdir)"/Gentests "$(srcdir)"/Makefile.am $$files > $@
 2428 
 2429 clean-local:
 2430 	rm -fr _* core core.* fmtspcl.ok junk strftime.ok test1 test2 \
 2431 	seq *~ readfile.ok fork.tmp.* testext.awk fts.ok readdir.ok \
 2432 	readdir_test.ok readdir_retest.ok \
 2433 	profile1.ok
 2434 
 2435 # An attempt to print something that can be grepped for in build logs
 2436 pass-fail:
 2437 	@COUNT=`ls _* 2>/dev/null | wc -l` ; \
 2438 	if test $$COUNT = 0 ; \
 2439 	then	echo ALL TESTS PASSED ; \
 2440 	else	echo $$COUNT TESTS FAILED ; exit 1; \
 2441 	fi
 2442 
 2443 # This target for my convenience to look at all the results
 2444 # Don't use POSIX or bash-isms so that it'll work on !@#$%^&*() Solaris.
 2445 diffout:
 2446 	for i in _* ; \
 2447 	do  \
 2448 		if [ "$$i" != "_*" ]; then \
 2449 		echo ============== $$i ============= ; \
 2450 		base=`echo $$i | sed 's/^_//'` ; \
 2451 		if [ -r $${base}.ok ]; then \
 2452 		diff -c $${base}.ok $$i ; \
 2453 		else \
 2454 		diff -c "$(srcdir)"/$${base}.ok  $$i ; \
 2455 		fi ; \
 2456 		fi ; \
 2457 	done | more
 2458 
 2459 # make things easier for z/OS
 2460 zos-diffout:
 2461 	@for i in $(EXPECTED_FAIL_ZOS); do \
 2462 		if [ -f _$$i ]; then mv -f _$$i X_$$i ; fi ; \
 2463 		if [ ! -f X_$$i ]; then echo $$i apparently passed! please check ; fi ; done
 2464 	@echo checking for new failures ...
 2465 	@$(MAKE) diffout
 2466 
 2467 # convenient way to scan valgrind results for errors
 2468 valgrind-scan:
 2469 	@echo "Scanning valgrind log files for problems:"
 2470 	@$(AWK) -f "$(srcdir)"/valgrind.awk log.[0-9]*
 2471 
 2472 # This target is for testing with electric fence.
 2473 efence:
 2474 	for i in $$(ls _* | sed 's;_\(.*\);\1;') ; \
 2475 	do \
 2476 		bad=$$(wc -l < _$$i) \
 2477 		ok=$$(wc -l < $$i.ok) ; \
 2478 		if (( $$bad == $$ok + 2 )) ; \
 2479 		then \
 2480 			rm _$$i ; \
 2481 		fi ; \
 2482 	done