summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorG. Branden Robinson <g.branden.robinson@gmail.com>2023-02-20 13:32:53 -0600
committerG. Branden Robinson <g.branden.robinson@gmail.com>2023-02-20 14:01:14 -0600
commitd015cb475e7898d86a02ed258bada5b25fe81326 (patch)
tree5c6d785d379b2aa48a15264625186650c2e809d9
parent603daf68446c83af5e6cdc87e6b3b651a7f2e4c2 (diff)
[man]: Improve portability of a test.1.23.0.rc3
* tmac/tests/an_TS-do-not-keep-tables-when-cR-set.sh: Improve portability of script by using shell constructs instead of the nonstandard GNU coreutils 'seq' utility. Resolves test failure on Solaris 10. * HACKING: Document this problem.
-rw-r--r--ChangeLog8
-rw-r--r--HACKING9
-rwxr-xr-xtmac/tests/an_TS-do-not-keep-tables-when-cR-set.sh4
3 files changed, 19 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index df4532853..2ad0b5616 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
2023-02-20 G. Branden Robinson <g.branden.robinson@gmail.com>
+ * tmac/tests/an_TS-do-not-keep-tables-when-cR-set.sh: Improve
+ portability of script by using shell constructs instead of the
+ nonstandard GNU coreutils 'seq' utility. Resolves test failure
+ on Solaris 10.
+ * HACKING: Document this problem.
+
+2023-02-20 G. Branden Robinson <g.branden.robinson@gmail.com>
+
* m4/groff.m4 (GROFF_MAKE_DEFINES_RM): Test the make(1) in the
environment variable $MAKE if defined, instead a literal "make".
Required on (some) Solaris 10 configurations where traditional
diff --git a/HACKING b/HACKING
index 2bf6835f1..b0e78e679 100644
--- a/HACKING
+++ b/HACKING
@@ -83,6 +83,15 @@ Here are some portability notes on writing automated tests.
available at the Open Group's web site.
https://pubs.opengroup.org/onlinepubs/009656399/toc.pdf
+* The GNU coreutils "seq" command is handy but not standardized by
+ POSIX. Replace it with a while loop.
+
+ seq 53
+ n=1; while [ $n -le 53 ]; do echo $n; n=$(( n + 1 )); done
+
+ "unset" is supported by POSIX-conformant shell; use it to remove
+ temporary shell variables after use.
+
* The "od" command on macOS can put extra space characters (i.e., spaces
that don't correspond to the input) at the ends of lines when using
the "od -t c" format; GNU od does not.
diff --git a/tmac/tests/an_TS-do-not-keep-tables-when-cR-set.sh b/tmac/tests/an_TS-do-not-keep-tables-when-cR-set.sh
index b39249456..3c30cd48d 100755
--- a/tmac/tests/an_TS-do-not-keep-tables-when-cR-set.sh
+++ b/tmac/tests/an_TS-do-not-keep-tables-when-cR-set.sh
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# Copyright (C) 2020 Free Software Foundation, Inc.
+# Copyright (C) 2020-2023 Free Software Foundation, Inc.
#
# This file is part of groff.
#
@@ -42,7 +42,7 @@ is set.
.
.TS
l.
-'$(seq 53)'
+'$(n=1; while [ $n -le 53 ]; do echo $n; n=$(( n + 1 )); done)'
.TE'
OUTPUT=$(printf "%s\n" "$EXAMPLE" | "$groff" -Tascii -P-cbou -t -man)