aboutsummaryrefslogtreecommitdiffstats
path: root/pc
diff options
context:
space:
mode:
Diffstat (limited to 'pc')
-rw-r--r--pc/ChangeLog4
-rw-r--r--pc/Makefile98
-rw-r--r--pc/Makefile.tst205
-rw-r--r--pc/config.h2
-rw-r--r--pc/gawkmisc.pc2
5 files changed, 230 insertions, 81 deletions
diff --git a/pc/ChangeLog b/pc/ChangeLog
index 570c031b..04e5b419 100644
--- a/pc/ChangeLog
+++ b/pc/ChangeLog
@@ -1,3 +1,7 @@
+Thu Aug 1 19:46:00 1996 Scott Deifik <scottd@amgen.com>
+
+ * Makefile: Changes for MSC 8.
+
Wed Jan 10 22:58:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
* ChangeLog created.
diff --git a/pc/Makefile b/pc/Makefile
index cefd9c3d..a1329eb6 100644
--- a/pc/Makefile
+++ b/pc/Makefile
@@ -1,4 +1,4 @@
-# Makefile for gawk (GNU awk) 1 Sep 1995
+# Makefile for gawk (GNU awk) 7 Oct 1996
#
# - for GNU C (djgpp) [executable for DOS (32-bit)]
# - for GNU C (emx) [executable for OS/2 2.x or DOS (32-bit)]
@@ -6,9 +6,9 @@
# - for Microsoft C 6.00A [executable for OS/2 or DOS (16-bit)]
# - for Microsoft C 5.1 [executable for OS/2 or DOS (16-bit)]
-# Tested with ndmake and dmake-3.8 under DOS and dmake and
-# GNU make under OS/2. Compiling with dmake under DOS may require
-# the DOS-only version of dmake (so that swapping works).
+# Tested with GNU make and dmake-3.8 under OS/2 and DOS, and ndmake
+# under DOS. Compiling with dmake under DOS may require the DOS-only
+# version of dmake (so that swapping works).
default:
@echo "Enter $(MAK) target "
@@ -16,10 +16,11 @@ default:
@echo " djgpp ... DOS 32-bit exe [GNU C, Delorie, v1 or v2] "
@echo " emx ..... OS/2 32-bit exe [emx/gcc; uses emxlibc.dll] "
@echo " emxbnd .. OS/2 and DOS 32-bit exe [emx/gcc] "
- @echo " msc ..... DOS exe [Microsoft C 7] "
+ @echo " msc ..... DOS exe [Microsoft C 7 & 8 (AKA 1.52)] "
@echo " msc6 .... DOS exe [Microsoft C 6.00a] "
@echo " msc6os2 . OS/2 exe [Microsoft C 6.00a] "
@echo " msc6bnd . OS/2 and DOS exe [Microsoft C 6.00a] "
+ @echo " msvc32 .. DOS exe [Microsoft Visual C] "
@echo " ----------------------------------------------------- "
@echo " test .... Perform tests (see README_d/README.pc) "
@echo " install . Install gawk under $(prefix)/ "
@@ -35,7 +36,7 @@ RSPFILE = gawk.rsp
#
# If compiling under OS/2 or if make can pass long lines
#LDRSP = $(GAWKOBJS)
-#LINKRSP = $(LDRSP)
+#LNKRSP = $(LDRSP)
#
# else if make == dmake
# Response files for linker: dmake allows the macro expansion
@@ -43,17 +44,18 @@ RSPFILE = gawk.rsp
# The macro mktmp creates a temporary file for the linker.
# The 't' modifier is for tokenization.
#LDRSP = @$(mktmp $(<:t"\n"))
-#LINKRSP = @$(mktmp $(<:t"+\n") ) # Space before final paren req
+#LNKRSP = @$(mktmp $(<:t"+\n") ) # Space before final paren req
#
# else use brain-dead approach (emxbnd will need 'tr').
RSP = $(RSPFILE)
LDRSP = @$(RSP)
-LINKRSP = $(LDRSP)
+LNKRSP = $(LDRSP)
#------------------------------------------------------------------------
# Some makes do not define MAKE (and ndmake does not allow a define).
# Define MAK to be your make command.
-#MAK = $(MAKE) $(MAKEFILE)
-MAK = $(MAKE)
+#MAKE = dmake
+MAK = $(MAKE) $(MAKEFILE)
+#MAK = $(MAKE)
#MAKEFILE = -f Makefile
#MAK = make45 $(MAKEFILE)
#------------------------------------------------------------------------
@@ -82,13 +84,13 @@ BDJG = coff2exe gawk
djgpp:
$(MAK) all \
CC=gcc O=.o CF=-O \
- LINK=LDJG LF=-s LF2=-lm \
+ LNK=LDJG LF=-s LF2=-lm \
BIND=BDJG
djgpp-debug:
$(MAK) all \
CC=gcc O=.o CF=-g \
- LINK=LDJG LF2=-lm \
+ LNK=LDJG LF2=-lm \
BIND=BDJG
#========================================================================
@@ -101,25 +103,26 @@ LEMX = $(CC) $(LF) -o $@ $(GAWKOBJS) gawk.def -lbsd $(LF2)
# Link and bind for DOS and OS/2 versions.
# emx-09 needs '-p' emx option here or in EMXOPT environ var.
LEMXBND = $(CC) $(LF) -o a.out $(LDRSP) gawk.def -lbsd $(LF2)
-BEMX = emxbind -b /emx/bin/emxl.exe a.out $@ -p
-#BEMX = emxbind -b /emx/bin/emx.exe a.out $@ -p
+BEMX = emxbind -bs -o $@ a.out -p
+#BEMX = emxbind -bs /emx/bin/emx.exe a.out $@ -p
+BEMXD = emxbind -b -o $@ a.out -p
emx:
$(MAK) all \
"CC=gcc -Zomf" O=.obj "CF=-O -DOS2" \
- LINK=LEMX "LF=-s -Zcrtdll -Zstack 512" RSP=
+ LNK=LEMX "LF=-s -Zcrtdll -Zstack 512" RSP=
emxbnd:
$(MAK) all \
CC=gcc O=.o "CF=-O -DOS2 -DMSDOS" OBJ=popen.o \
- LINK=LEMXBND LF=-s \
+ LNK=LEMXBND \
BIND=BEMX "P=|tr \" \" \"\n\""
emxbnd-debug:
$(MAK) all \
CC=gcc O=.o CF="-g -DOS2 -DMSDOS" OBJ=popen.o \
- LINK=LEMXBND \
- BIND=BEMX "P=|tr \" \" \"\n\""
+ LNK=LEMXBND \
+ BIND=BEMXD "P=|tr \" \" \"\n\""
#========================================================================
#========================== MSC =========================================
@@ -143,7 +146,7 @@ MSCLIB = llibce
MSCCL = -FPi
#MSCCL = -FPc
-LMSC = link $(LF) $(LINKRSP) $(STDARGV)/NOE,$@,,/NOD:llibce $(MSCLIB)$(LF2)/STACK:0x6f00;
+LMSC = link $(LF) $(LNKRSP) $(STDARGV)/NOE,$@,,/NOD:llibce $(MSCLIB)$(LF2)/STACK:0x5900,nul
# CLMSC-linking works when building under OS/2
CLMSC = $(CC) -o $@ $(LF) $(GAWKOBJS) $(STDARGV) $(LF2) -link /NOE/NOI/STACK:0x6f00
@@ -164,30 +167,36 @@ msc:
$(MAK) all \
"CC=cl -nologo $(MSCCL)" O=.obj "CF=-AL -Ze -Ipc/include $(MSCOPT)" \
OBJ=popen.obj \
- LINK=LMSC P=+
+ LNK=LMSC P=+
msc-debug:
$(MAK) all \
"CC=cl $(MSCCL)" O=.obj "CF=-AL -Ze -Ipc/include -W2 -Zi -Od" \
OBJ=popen.obj \
- LINK=LMSC LF2=/CO P=+
+ LNK=LMSC LF2=/CO P=+
msc6:
+ $(MAK) builtin.obj \
+ "CC=cl -nologo $(MSCCL)" O=.obj "CF=-AL -Za $(MSCOPT) -Od"
$(MAK) all \
"CC=cl -nologo $(MSCCL)" O=.obj "CF=-AL -Za $(MSCOPT)" \
OBJ=popen.obj \
- LINK=LMSC P=+
+ LNK=LMSC P=+
msc6os2:
+ $(MAK) builtin.obj \
+ "CC=cl -nologo $(MSCCL)" O=.obj "CF=-AL -DOS2 -UMSDOS $(MSCOPT) -Od"
$(MAK) all \
"CC=cl $(MSCCL)" O=.obj "CF=-AL -DOS2 -UMSDOS $(MSCOPT)" \
- LINK=LMSC "LF2=p,gawk.def" P=+
+ LNK=LMSC "LF2=p,gawk.def" P=+
msc6bnd:
+ $(MAK) builtin.obj \
+ "CC=cl -nologo $(MSCCL)" O=.obj "CF=-AL -DOS2 $(MSCOPT) -Od"
$(MAK) all \
"CC=cl $(MSCCL)" O=.obj "CF=-AL -DOS2 $(MSCOPT)" \
OBJ=popen.obj \
- LINK=LMSC "LF2=p,gawk.def" P=+ \
+ LNK=LMSC "LF2=p,gawk.def" P=+ \
BIND=BMSC
# Support dropped in 3.0
@@ -195,13 +204,25 @@ msc6bnd:
# $(MAK) all \
# "CC=cl $(MSCCL)" O=.obj "CF=-AL -Za -D_MSC_VER=510 $(MSCOPT)" \
# OBJ=popen.obj \
-# LINK=LMSC P=+
+# LNK=LMSC P=+
#
#msc51bnd:
# $(MAK) all \
# "CC=cl -AL ($MSCCL)" O=.obj "CF=-DOS2 -D_MSC_VER=510 $(MSCOPT)" \
# OBJ=popen.obj \
-# LINK=CLMSC "LF=-Lp -Fb" "LF2=gawk.def"
+# LNK=CLMSC "LF=-Lp -Fb" "LF2=gawk.def"
+
+
+# The msvc32 target was supplied by a user, and is untested by the
+# OS/2 and DOS maintainers. Bug reports welcomed.
+
+LNKMSVC32="link -out:gawk.exe $(LNKRSP)"
+
+msvc32:
+ $(MAK) all \
+ "CC=cl -nologo" O=.obj "CF=-DMSDOS -D__STDC__=0" \
+ OBJ=popen.obj \
+ LNK=LNKMSVC32
#========================================================================
@@ -212,17 +233,17 @@ EMPTY=
CFLAGS = $(CF) -DGAWK -I. -DHAVE_CONFIG_H
# object files
-AWKOBJS1 = array$O builtin$O eval$O field$O gawkmisc$O io$O main$O
+AWKOBJS1 = array$O builtin$O eval$O field$O gawkmisc$O io$O main$O
AWKOBJS2 = missing$O msg$O node$O re$O version$O
AWKOBJS = $(AWKOBJS1) $(AWKOBJS2)
ALLOBJS = $(AWKOBJS) awktab$O getid$O $(OBJ)
-# GNUOBJS
-# GNU stuff that gawk uses as library routines.
-GNUOBJS= getopt$O getopt1$O regex$O dfa$O
+# LIBOBJS
+# GNU and other stuff that gawk uses as library routines.
+LIBOBJS= getopt$O getopt1$O regex$O dfa$O random$O
-GAWKOBJS = $(ALLOBJS) $(GNUOBJS)
+GAWKOBJS = $(ALLOBJS) $(LIBOBJS)
# clear out suffixes list
# .SUFFIXES:
@@ -234,14 +255,14 @@ GAWKOBJS = $(ALLOBJS) $(GNUOBJS)
# rules to build gawk
all : gawk.exe
-gawk.exe:: $(ALLOBJS) $(GNUOBJS) $(RSP)
- $($(LINK))
+gawk.exe:: $(GAWKOBJS) $(RSP)
+ $($(LNK))
$($(BIND))
$(RSPFILE) : $(GAWKOBJS)
echo $(AWKOBJS1)$P > $@
echo $(AWKOBJS2)$P >> $@
- echo awktab$O getid$O $(OBJ) $(GNUOBJS)$P >> $@
+ echo awktab$O getid$O $(OBJ) $(LIBOBJS)$P >> $@
$(ALLOBJS): awk.h dfa.h regex.h config.h
@@ -262,8 +283,6 @@ awktab.c: awk.y
alloca$O: alloca.c
-#.PRECIOUS: install
-#.PHONY: install
install: install$(install)
@@ -294,6 +313,11 @@ awklib/eg: doc/gawk.texi
sh -c "cd awklib && ../gawk -f extract.awk ../doc/gawk.texi"
check:
- cd test && $(MAK) -k AWK=../gawk.exe
+ @echo "Running the tests requires several unix-like utilities. The"
+ @echo "recommendation is to copy pc/Makefile.tst to test/Makefile. Under"
+ @echo "DOS, it may be necessary to run make from the test directory."
+# The `-k' option to make should be unnecessary if using pc/Makefile.tst.
+# sh -c "cd test && $(MAK) -k AWK=../gawk.exe"
+ sh -c "cd test && $(MAK) AWK=../gawk.exe bigtest extra"
test: check
diff --git a/pc/Makefile.tst b/pc/Makefile.tst
index 749d83ab..ebc171f3 100644
--- a/pc/Makefile.tst
+++ b/pc/Makefile.tst
@@ -1,6 +1,6 @@
# Makefile for GNU Awk test suite.
#
-# Copyright (C) 1988-1995 the Free Software Foundation, Inc.
+# Copyright (C) 1988-1996 the Free Software Foundation, Inc.
#
# This file is part of GAWK, the GNU implementation of the
# AWK Programming Language.
@@ -28,29 +28,38 @@
# to run this makefile:
#
# 1. The first thing that you will need to do is to convert all of the
-# files ending in ".ok" in the test directory and all of the files ending
-# in ".good" (or ".goo") in the test/reg directory from having a linefeed
-# to having carriage return/linefeed at the end of each line. There are
-# various public domain UNIX to DOS converters and any should work.
+# files ending in ".ok" in the test directory, all of the files ending
+# in ".good" (or ".goo") in the test/reg directory, and mmap8k.in from
+# having a linefeed to having carriage return/linefeed at the end of each
+# line. There are various public domain UNIX to DOS converters and any
+# should work. Alternatively, you can use diff instead of cmp--most
+# versions of diff don't care about how the lines end.
#
# 2. You will need an sh-compatible shell. Please refer to the "README.pc"
# file in the README_d directory for information about obtaining a copy.
# You will also need various UNIX utilities. At a minimum, you will
-# need: rm, tr, cmp, cat, wc, and sh.
+# need: rm, tr, cmp (or diff, see above), cat, wc, and sh.
# You should also have a UNIX-compatible date program.
#
# 3. You will need a \tmp directory on the same drive as the test directory
# for the poundba (called poundbang in the UNIX makefile) test.
#
-# The makefile has only been tested with dmake 3.8. After making all of these
-# changes, typing "dmake bigtest extra" should run successfully.
+# The makefile has only been tested with dmake 3.8 and DJGPP Make 3.74 or
+# later. After making all of these changes, typing "dmake bigtest extra"
+# or "make bigtest extra" (with DJGPP Make) should run successfully.
-# So far, the only MS-DOS & OS/2 shell that this has been found to work with
-# is Stewartson's sh 2.3. That version of sh will sometimes send long
+# So far, most of the testing has been with Stewartson's sh 2.3 under
+# MS-DOS & OS/2. That version of sh will sometimes send long
# command-line arguments to programs using the @ notation. You may need
# to disable this feature of sh for programs that you have which don't support
-# that feature. For more information about the @ notation please refer to
-# the sh documentation.
+# that feature. The DJGPP response file facility is incompatible with the
+# one used by Stewartson's sh, so you will certainly need to disable it if you
+# use DJGPP tools to run the tests. For more information about the @ notation
+# please refer to the sh documentation.
+#
+# A beta of the Bash shell (compiled with djgpp) was tested for gawk-3.0.1,
+# and worked very well with the djgpp-compiled gawk. See README.pc for
+# more information on OS/2 and DOS shells.
# You will almost certainly need to change some of the values (MACROS)
# defined on the next few lines.
@@ -59,49 +68,60 @@
.USESHELL = yes
# Using EMXSHELL=/bin/sh with emx versions can exhaust lower mem.
+# Lower mem can also be exhausted on some of the tests even with MSC gawk.
# The .SWAP setting forces (DOS-only) dmake to swap itself out.
-#.SWAP: childin fflush
+.SWAP: childin fflush getlnhd tweakfld
-# This won't work unless you have "sh" and set SHELL equal to it.
+# This won't work unless you have "sh" and set SHELL equal to it (Make 3.74
+# or later which comes with DJGPP will work with SHELL=/bin/sh if you have
+# sh.exe anywhere on your PATH).
#SHELL = e:\bin\sh.exe
SHELL = /bin/sh
# Point to gawk
AWK = ../gawk.exe
-# Set your cmp command here
-CMP = cmp
+# Set your cmp command here (you can use most versions of diff instead of cmp
+# if you don't want to convert the .ok files to the DOS CR/LF format).
+#CMP = cmp
+CMP = diff
+#CMP = diff -c
#CMP = gcmp
-# Set your "cp" command here. Note: It must take forward slashes.
-# 'command -c copy' will work for MS-DOS if "command=noexpand switch export" is
-# set in extend.lst.
-#CP = cp
-#CP = gcp
-CP = command -c copy
+# Set your "cp" and "mkdir" commands here. Note: cp must take forward
+# slashes. Using "command -c" may work for MS-DOS with Stewartson's shell
+# (but not bash) if "command=noexpand switch export" is set in extend.lst.
+# `true &&' is needed to force DJGPP Make to call the shell, or else the
+# conversion of `command -c' won't work.
+CP = cp
+#CP = true && command -c copy
+
+MKDIR = mkdir
+#MKDIR = true && command -c mkdir
# Set your unix-style date function here
#DATE = date
DATE = gdate
-# Set your mkdir command here.
-#MKDIR = /bin/mkdir
-MKDIR = command -c mkdir
-
# ============================================================================
# You shouldn't need to modify anything below this line.
# ============================================================================
srcdir = .
-bigtest: basic poundba gawk.extensions
+bigtest: basic unix-tests gawk.extensions
basic: msg swaplns messages argarray longwrds \
getline fstabplus compare arrayref rs fsrs rand \
fsbs negexp asgext anchgsub splitargv awkpath nfset reparse \
convfmt arrayparm paramdup nonl defref nofmtch litoct resplit \
rswhite prmarscl sclforin sclifin intprec childin noeffect \
- numsubstr pcntplus prmreuse math fflush fldchg
+ numsubstr pcntplus prmreuse math fldchg fldchgnf reindops \
+ sprintfc backgsub tweakfld clsflnam mmap8k fnarray \
+ dynlj substr eofsplit prt1eval gsubasgn prtoeval gsubtest splitwht \
+ back89 tradanch nlfldsep splitvar
+
+unix-tests: poundba fflush getlnhd
gawk.extensions: fieldwdth ignrcase posix manyfiles igncfs argtest \
badargs strftime gensub gnureops
@@ -176,7 +196,7 @@ regtes::
posix::
@echo 'posix test may fail due to 1.500000e+000 not being equal to'
- @echo '1.500000e+00 for MSC 7.0 gawk.'
+ @echo '1.500000e+00 for MSC gawk.'
@echo '1:2,3 4' | $(AWK) -f $(srcdir)/posix.awk >_$@
# $(CMP) $(srcdir)/posix.ok _$@ && rm -f _$@
-$(CMP) $(srcdir)/posix.ok _$@ && rm -f _$@
@@ -225,8 +245,8 @@ getline::
$(CMP) $(srcdir)/getline.ok _$@ && rm -f _$@
rand::
- @echo The following line should just be 19 random numbers between 1 and 100
- @$(AWK) -f $(srcdir)/rand.awk
+ @$(AWK) -f $(srcdir)/rand.awk >_$@
+ $(CMP) $(srcdir)/rand.ok _$@ && rm -f _$@
negexp::
@$(AWK) 'BEGIN { a = -2; print 10^a }' >_$@
@@ -275,11 +295,11 @@ convfmt::
$(CMP) $(srcdir)/convfmt.ok _$@ && rm -f _$@
arrayparm::
- @-AWKPATH=$(srcdir) $(AWK) -f arrayparm.awk >_$@ 2>&1
+ @-AWKPATH=$(srcdir) $(AWK) -f arrayparm.awk >_$@ 2>&1 || exit 0
$(CMP) $(srcdir)/arrayparm.ok _$@ && rm -f _$@
paramdup::
- @-AWKPATH=$(srcdir) $(AWK) -f paramdup.awk >_$@ 2>&1
+ @-AWKPATH=$(srcdir) $(AWK) -f paramdup.awk >_$@ 2>&1 || exit 0
$(CMP) $(srcdir)/paramdup.ok _$@ && rm -f _$@
nonl::
@@ -288,7 +308,7 @@ nonl::
$(CMP) $(srcdir)/nonl.ok _$@ && rm -f _$@
defref::
- @-AWKPATH=$(srcdir) $(AWK) --lint -f defref.awk >_$@ 2>&1
+ @-AWKPATH=$(srcdir) $(AWK) --lint -f defref.awk >_$@ 2>&1 || exit 0
$(CMP) $(srcdir)/defref.ok _$@ && rm -f _$@
nofmtch::
@@ -298,10 +318,11 @@ nofmtch::
strftime::
: this test could fail on slow machines or on a second boundary,
: so if it does, double check the actual results
-# @date | $(AWK) '{ $$3 = sprintf("%02d", $$3 + 0) ; print }' > strftime.ok
- @$(DATE) | $(AWK) '{ $$3 = sprintf("%02d", $$3 + 0) ; print }' > strftime.ok
- @$(AWK) 'BEGIN { print strftime() }' >_$@
- -$(CMP) strftime.ok _$@ && rm -f _$@ strftime.ok
+# @date | $(AWK) '{ $$3 = sprintf("%02d", $$3 + 0) ;
+ @$(DATE) | $(AWK) '{ $$3 = sprintf("%02d", $$3 + 0) ; \
+ print > "strftime.ok" ; \
+ print strftime() > "'_$@'" }'
+ $(CMP) strftime.ok _$@ && rm -f _$@ strftime.ok || exit 0
litoct::
@echo ab | $(AWK) --traditional -f $(srcdir)/litoct.awk >_$@
@@ -321,15 +342,15 @@ rswhite::
$(CMP) $(srcdir)/rswhite.ok _$@ && rm -f _$@
prmarscl::
- @-AWKPATH=$(srcdir) $(AWK) -f prmarscl.awk > _$@ 2>&1
+ @-AWKPATH=$(srcdir) $(AWK) -f prmarscl.awk > _$@ 2>&1 || exit 0
$(CMP) $(srcdir)/prmarscl.ok _$@ && rm -f _$@
sclforin::
- @-AWKPATH=$(srcdir) $(AWK) -f sclforin.awk > _$@ 2>&1
+ @-AWKPATH=$(srcdir) $(AWK) -f sclforin.awk > _$@ 2>&1 || exit 0
$(CMP) $(srcdir)/sclforin.ok _$@ && rm -f _$@
sclifin::
- @-AWKPATH=$(srcdir) $(AWK) -f sclifin.awk > _$@ 2>&1
+ @-AWKPATH=$(srcdir) $(AWK) -f sclifin.awk > _$@ 2>&1 || exit 0
$(CMP) $(srcdir)/sclifin.ok _$@ && rm -f _$@
intprec::
@@ -372,5 +393,105 @@ fldchg::
@$(AWK) -f $(srcdir)/fldchg.awk $(srcdir)/fldchg.in >_$@
$(CMP) $(srcdir)/fldchg.ok _$@ && rm -f _$@
+fldchgnf::
+ @$(AWK) -f $(srcdir)/fldchgnf.awk $(srcdir)/fldchgnf.in >_$@
+ $(CMP) $(srcdir)/fldchgnf.ok _$@ && rm -f _$@
+
+reindops::
+ @$(AWK) -f $(srcdir)/reindops.awk $(srcdir)/reindops.in >_$@
+ $(CMP) $(srcdir)/reindops.ok _$@ && rm -f _$@
+
+sprintfc::
+ @$(AWK) -f $(srcdir)/sprintfc.awk $(srcdir)/sprintfc.in >_$@
+ $(CMP) $(srcdir)/sprintfc.ok _$@ && rm -f _$@
+
+getlnhd::
+# We need to set COMSPEC to a UNIX-like shell for the here doc in getlnhd.awk
+# to work.
+# @$(AWK) -f $(srcdir)/getlnhd.awk >_$@
+ @echo 'Getlnhd is set to ignore errors. However, there should not be any.'
+ @echo 'If getlnhd fails, set sh to swap to disk only (in sh.rc).'
+ @echo 'If it still hangs with EMX gawk type ^C, then try the test when'
+ @echo 'not using DPMI and RSX (in particular, run outside MS-Windows).'
+ @echo 'If it fails with MSC, run make from the test directory.'
+ COMSPEC=$(SHELL) $(AWK) -f $(srcdir)/getlnhd.awk >_$@
+ -$(CMP) $(srcdir)/getlnhd.ok _$@ && rm -f _$@
+
+backgsub::
+ @$(AWK) -f $(srcdir)/backgsub.awk $(srcdir)/backgsub.in >_$@
+ $(CMP) $(srcdir)/backgsub.ok _$@ && rm -f _$@
+
+tweakfld::
+ @$(AWK) -f $(srcdir)/tweakfld.awk $(srcdir)/tweakfld.in >_$@
+ @rm -f errors.cleanup
+ $(CMP) $(srcdir)/tweakfld.ok _$@ && rm -f _$@
+
+clsflnam::
+ @$(AWK) -f $(srcdir)/clsflnam.awk $(srcdir)/clsflnam.in >_$@
+ $(CMP) $(srcdir)/clsflnam.ok _$@ && rm -f _$@
+
+mmap8k::
+ @echo 'If mmap8k fails make sure that mmap8k.in has CR/LFs.'
+ @$(AWK) '{ print }' $(srcdir)/mmap8k.in >_$@
+ $(CMP) $(srcdir)/mmap8k.in _$@ && rm -f _$@
+
+fnarray::
+ @-AWKPATH=$(srcdir) $(AWK) -f fnarray.awk >_$@ 2>&1 || exit 0
+ $(CMP) $(srcdir)/fnarray.ok _$@ && rm -f _$@
+
+dynlj::
+ @$(AWK) -f $(srcdir)/dynlj.awk >_$@
+ $(CMP) $(srcdir)/dynlj.ok _$@ && rm -f _$@
+
+substr::
+ @$(AWK) -f $(srcdir)/substr.awk >_$@
+ $(CMP) $(srcdir)/substr.ok _$@ && rm -f _$@
+
+eofsplit::
+ @$(AWK) -f $(srcdir)/eofsplit.awk >_$@
+ $(CMP) $(srcdir)/eofsplit.ok _$@ && rm -f _$@
+
+prt1eval::
+ @$(AWK) -f $(srcdir)/prt1eval.awk >_$@
+ $(CMP) $(srcdir)/prt1eval.ok _$@ && rm -f _$@
+
+gsubasgn::
+ @-AWKPATH=$(srcdir) $(AWK) -f gsubasgn.awk >_$@ 2>&1 || exit 0
+ $(CMP) $(srcdir)/gsubasgn.ok _$@ && rm -f _$@
+
+prtoeval::
+ @$(AWK) -f $(srcdir)/prtoeval.awk >_$@
+ $(CMP) $(srcdir)/prtoeval.ok _$@ && rm -f _$@
+
+gsubtest::
+ @$(AWK) -f $(srcdir)/gsubtest.awk >_$@
+ $(CMP) $(srcdir)/gsubtest.ok _$@ && rm -f _$@
+
+splitwht::
+ @$(AWK) -f $(srcdir)/splitwht.awk >_$@
+ $(CMP) $(srcdir)/splitwht.ok _$@ && rm -f _$@
+
+back89::
+ @$(AWK) '/a\8b/' $(srcdir)/back89.in >_$@
+ $(CMP) $(srcdir)/back89.ok _$@ && rm -f _$@
+
+tradanch::
+ @$(AWK) --traditional -f $(srcdir)/tradanch.awk $(srcdir)/tradanch.in >_$@
+ $(CMP) $(srcdir)/tradanch.ok _$@ && rm -f _$@
+
+nlfldsep::
+ AWK=$(AWK); export AWK; $(srcdir)/nlfldsep.sh > _$@
+ $(CMP) $(srcdir)/nlfldsep.ok _$@ && rm -f _$@
+
+splitvar::
+ @$(AWK) -f $(srcdir)/splitvar.awk $(srcdir)/splitvar.in >_$@
+ $(CMP) $(srcdir)/splitvar.ok _$@ && rm -f _$@
+
clean:
- rm -fr _* core junk
+ rm -fr _* core junk out1 out2 out3 strftime.ok *~
+
+distclean: clean
+ rm -f Makefile
+
+maintainer-clean: distclean
+
diff --git a/pc/config.h b/pc/config.h
index 00255c42..ff6ed616 100644
--- a/pc/config.h
+++ b/pc/config.h
@@ -129,7 +129,7 @@
#define SPRINTF_RET int /* return type of sprintf */
/* Define if you have the fmod function. */
-/* #undef HAVE_FMOD */
+#define HAVE_FMOD 1
/* Define if you have the memcmp function. */
#define HAVE_MEMCMP 1
diff --git a/pc/gawkmisc.pc b/pc/gawkmisc.pc
index 05db6c36..9912dcf3 100644
--- a/pc/gawkmisc.pc
+++ b/pc/gawkmisc.pc
@@ -3,7 +3,7 @@
*/
/*
- * Copyright (C) 1986, 1988, 1989, 1991 - 95 the Free Software Foundation, Inc.
+ * Copyright (C) 1986, 1988, 1989, 1991 - 96 the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
* AWK Progamming Language.