summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2016-12-11 14:40:31 -0800
committerMichael Forney <mforney@mforney.org>2016-12-11 14:40:55 -0800
commit4fc02f808c9b968c96bc8a18b553ec2b96ad4578 (patch)
tree40361673fe8a3b7245bae1a36879c42bc538ca12
parent8c1f3dc3ef1dc4cf417c93637615b4541606bee2 (diff)
mdocml: Use setprogname/getprogname from openbsd
-rw-r--r--core/mdocml/config.h2
-rw-r--r--core/mdocml/gen.rc3
-rw-r--r--core/openbsd/gen.rc2
-rw-r--r--core/openbsd/include/stdlib.h2
-rw-r--r--core/openbsd/patch/0013-setprogname-Explicitly-discard-const-qualifier.patch26
-rw-r--r--core/openbsd/rev2
6 files changed, 32 insertions, 5 deletions
diff --git a/core/mdocml/config.h b/core/mdocml/config.h
index d6aa80df..ba84e48b 100644
--- a/core/mdocml/config.h
+++ b/core/mdocml/config.h
@@ -4,7 +4,7 @@
#define HAVE_ERR 1
#define HAVE_FTS 1
#define HAVE_PLEDGE 0
-#define HAVE_PROGNAME 0
+#define HAVE_PROGNAME 1
#define HAVE_REALLOCARRAY 1
#define HAVE_REWB_BSD 0
#define HAVE_REWB_SYSV 1
diff --git a/core/mdocml/gen.rc b/core/mdocml/gen.rc
index 0ec06025..887b7319 100644
--- a/core/mdocml/gen.rc
+++ b/core/mdocml/gen.rc
@@ -35,8 +35,7 @@ lib libmandoc.a -d core/zlib/headers\
preconv.c\
read.c\
\
- compat_ohash.c\
- compat_progname.c
+ compat_ohash.c
exe mandoc\
main.c\
diff --git a/core/openbsd/gen.rc b/core/openbsd/gen.rc
index 50baaa85..56b446f1 100644
--- a/core/openbsd/gen.rc
+++ b/core/openbsd/gen.rc
@@ -15,7 +15,7 @@ cc '$outdir'/lib/libc/crypt/arc4random.c '||' '$outdir'/lib/libc/crypt/^(arc4ran
lib libbsd.a -d core/libressl/headers\
lib/libc/^(\
crypt/^(arc4random.c.o arc4random_uniform.c)\
- gen/^(fts.c vis.c warnc.c vwarnc.c)\
+ gen/^(fts.c getprogname.c setprogname.c vis.c warnc.c vwarnc.c)\
stdlib/^(reallocarray.c strtonum.c)\
string/^(explicit_bzero.c strmode.c timingsafe_memcmp.c)\
)\
diff --git a/core/openbsd/include/stdlib.h b/core/openbsd/include/stdlib.h
index 07b121f8..0e1aa252 100644
--- a/core/openbsd/include/stdlib.h
+++ b/core/openbsd/include/stdlib.h
@@ -5,4 +5,6 @@ long long strtonum(const char *, long long, long long, const char **);
uint32_t arc4random(void);
uint32_t arc4random_uniform(uint32_t);
void arc4random_buf(void *, size_t);
+void setprogname(const char *);
+const char *getprogname(void);
extern char *__progname;
diff --git a/core/openbsd/patch/0013-setprogname-Explicitly-discard-const-qualifier.patch b/core/openbsd/patch/0013-setprogname-Explicitly-discard-const-qualifier.patch
new file mode 100644
index 00000000..121e10e8
--- /dev/null
+++ b/core/openbsd/patch/0013-setprogname-Explicitly-discard-const-qualifier.patch
@@ -0,0 +1,26 @@
+From f976df1b8ad1ed79f25d04eb7285e582690ad965 Mon Sep 17 00:00:00 2001
+From: Michael Forney <mforney@mforney.org>
+Date: Sun, 11 Dec 2016 14:36:13 -0800
+Subject: [PATCH] setprogname: Explicitly discard const qualifier
+
+---
+ lib/libc/gen/setprogname.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/lib/libc/gen/setprogname.c b/lib/libc/gen/setprogname.c
+index ec3189fa699..173148ba8cf 100644
+--- a/lib/libc/gen/setprogname.c
++++ b/lib/libc/gen/setprogname.c
+@@ -25,7 +25,7 @@ setprogname(const char *progname)
+
+ tmpn = strrchr(progname, '/');
+ if (tmpn == NULL)
+- __progname = progname;
++ __progname = (char *)progname;
+ else
+- __progname = tmpn + 1;
++ __progname = (char *)tmpn + 1;
+ }
+--
+2.11.0
+
diff --git a/core/openbsd/rev b/core/openbsd/rev
index 1e8b3149..7f8f011e 100644
--- a/core/openbsd/rev
+++ b/core/openbsd/rev
@@ -1 +1 @@
-6
+7