man(1): fix build and adapt for DragonFly
authorFranco Fichtner <franco@lastsummer.de>
Sat, 5 Oct 2013 01:27:24 +0000 (03:27 +0200)
committerFranco Fichtner <franco@lastsummer.de>
Sun, 6 Oct 2013 11:57:14 +0000 (13:57 +0200)
swildner suggested to get rid of the cat* magic, so let's try this out
for mandoc(1).  Still not hooked up to the build, but ready for testing.
Don't forget to manually install etc/man.conf to your system.

etc/man.conf
usr.bin/man/Makefile
usr.bin/man/man.1
usr.bin/man/man.c
usr.bin/man/man.conf.5

index 8c8ab92..00bb27a 100644 (file)
@@ -7,7 +7,7 @@ _version        BSD.2
 _mandb /var/db/man.db
 
 # Subdirectories for paths ending in '/', IN SEARCH ORDER.
-_subdir                cat1 man1 cat8 man8 cat6 man6 cat2 man2 cat3 man3 cat4 man4 cat5 man5 cat7 man7 man3f cat9 man9 catn mann catl manl
+_subdir                man1 man8 man6 man2 man3 man4 man5 man7 man9
 
 # Files typed by suffix and their commands.
 # Note the order, .Z must come after .[1-9].Z, or it will match first.
@@ -27,8 +27,6 @@ _build                .tbl.bz2        /usr/bin/bzcat %s | /usr/bin/mandoc
 _build         .tbl.gz         /usr/bin/zcat %s | /usr/bin/mandoc
 _build         .tbl.xz         /usr/bin/xzcat %s | /usr/bin/mandoc
 
-_build         .me             /usr/bin/nroff -msafer -me %s 2>/dev/null | cat -s
-
 _crunch                .Z              /usr/bin/zcat > %s
 _crunch                .bz2            /usr/bin/bzcat > %s
 _crunch                .gz             /usr/bin/zcat > %s
@@ -48,21 +46,12 @@ packages    /usr/pkg/man/
 local          /usr/local/man/
 
 # Specific section/directory combinations.
-1              {cat,man}1
-2              {cat,man}2
-3              {cat,man}3
-3F             {cat,man}3f
-3f             {cat,man}3f
-4              {cat,man}4
-5              {cat,man}5
-6              {cat,man}6
-7              {cat,man}7
-8              {cat,man}8
-9              {cat,man}9
-l              {cat,man}l
-n              {cat,man}n
-
-# machine classes per machine
-_i386          x86
-_amd64         x86
-_sparc64       sparc
+1              man1
+2              man2
+3              man3
+4              man4
+5              man5
+6              man6
+7              man7
+8              man8
+9              man9
index 8219957..05c7638 100644 (file)
@@ -1,14 +1,10 @@
 #      $NetBSD: Makefile,v 1.14 2013/07/19 04:17:02 uwe Exp $
 #      @(#)Makefile    8.1 (Berkeley) 6/6/93
 
-WARNS?=        6
-
 PROG=  man
 SRCS=  man.c manconf.c
 MAN=   man.1 man.conf.5
 
-COPTS.man.c += -Wno-format-nonliteral
-
 DPADD+=        ${LIBUTIL}
 LDADD+=        -lutil
 
index 3433fed..ef1a8f7 100644 (file)
@@ -29,7 +29,7 @@
 .\"
 .\"     @(#)man.1      8.2 (Berkeley) 1/2/94
 .\"
-.Dd October 7, 2011
+.Dd October 5, 2013
 .Dt MAN 1
 .Os
 .Sh NAME
@@ -235,8 +235,6 @@ default man configuration file.
 .Nm
 conforms to
 .St -xcu5 .
-.\"and is expected to conform to
-.\".St -p1003.2-?? .
 .Sh BUGS
 The on-line man pages are, by necessity, forgiving toward stupid
 display devices, causing a few man pages to be not as nicely formatted
index bc83a0b..7e5343c 100644 (file)
@@ -114,10 +114,10 @@ static void        cat(const char *);
 static const char      *check_pager(const char *);
 static int      cleanup(void);
 static void     how(const char *);
-static void     jump(char **, const char *, const char *) __dead;
+static void     jump(char **, const char *, const char *) __dead2;
 static int      manual(char *, struct manstate *, glob_t *);
-static void     onsig(int) __dead;
-static void     usage(void) __dead;
+static void     onsig(int);
+static void     usage(void) __dead2;
 static void     addpath(struct manstate *, const char *, size_t, const char *);
 static const char *getclass(const char *);
 static void printmanpath(struct manstate *);
@@ -905,7 +905,7 @@ jump(char **argv, const char *flag, const char *name)
 {
        char **arg;
 
-       argv[0] = __UNCONST(name);
+       argv[0] = __DECONST(char *, name);
        for (arg = argv + 1; *arg; ++arg)
                if (!strcmp(*arg, flag))
                        break;
@@ -922,13 +922,9 @@ jump(char **argv, const char *flag, const char *name)
 static void
 onsig(int signo)
 {
-
        (void)cleanup();
-
-       (void)raise_default_signal(signo);
-
-       /* NOTREACHED */
-       exit(EXIT_FAILURE);
+       signal(signo, SIG_DFL);
+       raise(signo);
 }
 
 /*
index 4d5f803..0a28275 100644 (file)
@@ -29,7 +29,7 @@
 .\"
 .\"    @(#)man.conf.5  8.5 (Berkeley) 1/2/94
 .\"
-.Dd April 28, 2012
+.Dd October 5, 2013
 .Dt MAN.CONF 5
 .Os
 .Sh NAME