oksh-noxz

[fork] Portable OpenBSD ksh, based on the Public Domain Korn Shell (pdksh).
git clone https://noxz.tech/git/oksh-noxz.git
oksh-noxz

commit: 05fda4706f967094f509c0a86f4138952feb479f
parent: 528c677a371ba28f988f317c314f8f0abb378d17
author: Brian Callahan <bcallah@openbsd.org>
date:   Tue, 7 Nov 2017 10:41:57 -0500
FreeBSD and DragonFly also need stravis().
MGNUmakefile6+++---
MREADME.md2+-
Rportable/darwin/vis.cportable/common/vis.c2+-
Mportable/freebsd/freebsd.h3+++
4 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/GNUmakefile b/GNUmakefile
@@ -28,17 +28,17 @@ OBJS +=	portable/common/reallocarray.o portable/linux/setmode.o \
 	portable/linux/unvis.o portable/linux/vis.o
 else ifeq ($(UNAME_S),FreeBSD)
 GROUP =	bin
-OBJS +=	portable/common/reallocarray.o
+OBJS +=	portable/common/reallocarray.o portable/common/vis.o
 else ifeq ($(UNAME_S),DragonFly)
 GROUP =	bin
-OBJS += portable/common/reallocarray.o
+OBJS += portable/common/reallocarray.o portable/common/vis.o
 else ifeq ($(UNAME_S),NetBSD)
 GROUP =	bin
 OBJS += portable/common/reallocarray.o
 else ifeq ($(UNAME_S),Darwin)
 GROUP =	bin
 OBJS += portable/common/reallocarray.o portable/common/strtonum.o \
-	portable/darwin/vis.o
+	portable/common/vis.o
 else ifeq ($(UNAME_S),OpenBSD)
 GROUP =	bin
 else ifeq ($(findstring CYGWIN,$(UNAME_S)),CYGWIN)
diff --git a/README.md b/README.md
@@ -19,4 +19,4 @@ The rest are BSD or ISC licensed.
 
 Get a tarball
 -------------
-http://devio.us/~bcallah/oksh/oksh-20171030.tar.gz
+http://devio.us/~bcallah/oksh/oksh-20171107.tar.gz
diff --git a/portable/darwin/vis.c b/portable/common/vis.c
rename portable/darwin/vis.c → portable/common/vis.c
@@ -39,7 +39,7 @@
 #include "darwin.h"
 
 
-/* Mac OS X is only missing stravis(). */
+/* Mac OS X/FreeBSD/DragonFly are missing stravis(). */
 int
 stravis(char **outp, const char *src, int flag)
 {
diff --git a/portable/freebsd/freebsd.h b/portable/freebsd/freebsd.h
@@ -25,3 +25,6 @@
                         (vsp)->tv_nsec += 1000000000L;                  \
                 }                                                       \
         } while (0)
+
+/* Prototypes */
+int	  stravis(char **, const char *, int);