aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pc/ChangeLog5
-rw-r--r--pc/Makefile.tst16
-rw-r--r--test/ChangeLog6
-rw-r--r--test/Makefile.am7
-rw-r--r--test/Makefile.in7
-rw-r--r--test/readdir0.awk25
6 files changed, 46 insertions, 20 deletions
diff --git a/pc/ChangeLog b/pc/ChangeLog
index 12bf2f89..97fa6d94 100644
--- a/pc/ChangeLog
+++ b/pc/ChangeLog
@@ -1,3 +1,8 @@
+2014-01-20 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.tst (split_after_fpat, mpfrnegzero): Added, to
+ sync with main test Makefile.
+
2014-01-15 Eli Zaretskii <eliz@gnu.org>
* Makefile.tst (mbprintf4, profile5, backbigs1, backsmalls1):
diff --git a/pc/Makefile.tst b/pc/Makefile.tst
index 2cff3c2e..c454cae9 100644
--- a/pc/Makefile.tst
+++ b/pc/Makefile.tst
@@ -194,14 +194,16 @@ GAWK_EXT_TESTS = \
patsplit posix printfbad1 printfbad2 printfbad3 procinfs \
profile1 profile2 profile3 profile4 profile5 pty1 \
rebuf regx8bit reginttrad reint reint2 rsstart1 \
- rsstart2 rsstart3 rstest6 shadow sortfor sortu splitarg4 strftime \
+ rsstart2 rsstart3 rstest6 shadow sortfor sortu split_after_fpat \
+ splitarg4 strftime \
strtonum switch2 symtab1 symtab2 symtab3 symtab4 symtab5 symtab6 \
symtab7 symtab8 symtab9
EXTRA_TESTS = inftest regtest
INET_TESTS = inetdayu inetdayt inetechu inetecht
MACHINE_TESTS = double1 double2 fmtspcl intformat
-MPFR_TESTS = mpfrnr mpfrrnd mpfrieee mpfrexprange mpfrsort mpfrbigint
+MPFR_TESTS = mpfrnr mpfrnegzero mpfrrnd mpfrieee mpfrexprange \
+ mpfrsort mpfrbigint
LOCALE_CHARSET_TESTS = \
asort asorti backbigs1 backsmalls1 backsmalls2 \
fmttest fnarydel fnparydl jarebug lc_num1 mbfw1 \
@@ -913,6 +915,11 @@ mpfrrnd:
@$(AWK) -M -vPREC=53 -f "$(srcdir)"/$@.awk > _$@ 2>&1
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+mpfrnegzero:
+ @echo $@
+ @$(AWK) -M -f "$(srcdir)"/$@.awk > _$@ 2>&1
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
mpfrnr:
@echo $@
@$(AWK) -M -vPREC=113 -f "$(srcdir)"/$@.awk "$(srcdir)"/$@.in > _$@
@@ -2312,6 +2319,11 @@ sortu:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+split_after_fpat:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
splitarg4:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
diff --git a/test/ChangeLog b/test/ChangeLog
index 3be601d4..58749a43 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -5,6 +5,12 @@
2014-01-17 Arnold D. Robbins <arnold@skeeve.com>
+ * Makefile.am (readdir): Run ls commands outside the awk script.
+ * readdir0.awk: Read ls results from files. Helps with MinGW.
+ Thanks to Eli Zaretskii for the problem report.
+
+2014-01-17 Arnold D. Robbins <arnold@skeeve.com>
+
* Makefile.am: Quote instances of $(top_srcdir) also.
2014-01-16 Andrew J. Schorr <aschorr@telemetry-investments.com>
diff --git a/test/Makefile.am b/test/Makefile.am
index 32ec8c83..97848a00 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -1821,8 +1821,11 @@ readdir:
fi
@echo $@
@$(AWK) -f "$(srcdir)"/readdir.awk "$(top_srcdir)" > _$@
- @ls -afli "$(top_srcdir)" | sed 1d | $(AWK) -f "$(srcdir)"/readdir0.awk -v extout=_$@ "$(top_srcdir)" > $@.ok
- @-$(CMP) $@.ok _$@ && rm -f $@.ok _$@
+ @ls -afi "$(top_srcdir)" > _dirlist
+ @ls -lna "$(top_srcdir)" | sed 1d > _longlist
+ @$(AWK) -f "$(srcdir)"/readdir0.awk -v extout=_$@ \
+ -v dirlist=_dirlist -v longlist=_longlist > $@.ok
+ @-$(CMP) $@.ok _$@ && rm -f $@.ok _$@ _dirlist _longlist
fts:
@case `uname` in \
diff --git a/test/Makefile.in b/test/Makefile.in
index d5fd6dff..468c19c5 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -2245,8 +2245,11 @@ readdir:
fi
@echo $@
@$(AWK) -f "$(srcdir)"/readdir.awk "$(top_srcdir)" > _$@
- @ls -afli "$(top_srcdir)" | sed 1d | $(AWK) -f "$(srcdir)"/readdir0.awk -v extout=_$@ "$(top_srcdir)" > $@.ok
- @-$(CMP) $@.ok _$@ && rm -f $@.ok _$@
+ @ls -afi "$(top_srcdir)" > _dirlist
+ @ls -lna "$(top_srcdir)" | sed 1d > _longlist
+ @$(AWK) -f "$(srcdir)"/readdir0.awk -v extout=_$@ \
+ -v dirlist=_dirlist -v longlist=_longlist > $@.ok
+ @-$(CMP) $@.ok _$@ && rm -f $@.ok _$@ _dirlist _longlist
fts:
@case `uname` in \
diff --git a/test/readdir0.awk b/test/readdir0.awk
index 296c03c7..2b7674a4 100644
--- a/test/readdir0.awk
+++ b/test/readdir0.awk
@@ -1,4 +1,9 @@
+# NOTE: This program is not a generalized parser for the output of 'ls'.
+# It's job is to read the output of ls from the gawk source code directory,
+# where we know there are no symbolic links, nor are there files with
+# spaces in their file names, etc.
BEGIN {
+ # analyze results from readdir extension
while ((getline x < extout) > 0) {
numrec++
if ((split(x, f, "/") == 3) && (f[3] == "u"))
@@ -12,12 +17,7 @@ BEGIN {
}
BEGIN {
- dir = ARGV[1]
- delete ARGV[1]
- ls_afi = "ls -afi " dir
- ls_al = ("ls -lna " dir " | sed 1d")
-
- for (i = 1; (ls_afi | getline) > 0; i++) {
+ for (i = 1; (getline < dirlist) > 0; i++) {
# inode number is $1, filename is read of record
inode = $1
$1 = ""
@@ -26,21 +26,18 @@ BEGIN {
names[i] = $0
ino[names[i]] = inode
}
- close(ls_afi)
+ close(dirlist)
- for (j = 1; (ls_al | getline) > 0; j++) {
+ for (j = 1; (getline < longlist) > 0; j++) {
type_let = substr($0, 1, 1)
if (type_let == "-")
type_let = "f"
- $1 = $2 = $3 = $4 = $5 = $6 = $7 = $8 = ""
- $0 = $0
- sub(/^ */, "")
- type[$0] = type_let
+ type[$NF] = type_let
}
- close(ls_al)
+ close(longlist)
if (i != j)
- printf("mismatch: %d from `ls -afi' and %d from `ls -l'\n", i, j) > "/dev/stderr"
+ printf("mismatch: %d from `ls -afi' and %d from `ls -lna'\n", i, j) > "/dev/stderr"
for (i = 1; i in names; i++)
printf("%s/%s/%s\n", ino[names[i]], names[i], (ftype_unknown ? "u" : type[names[i]]))