Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 8 Aug 2017 11:35:27 +0000 (UTC)
From:      Baptiste Daroussin <bapt@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r322249 - in stable/11: contrib/mdocml usr.bin/mandoc
Message-ID:  <201708081135.v78BZRe3051731@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bapt
Date: Tue Aug  8 11:35:27 2017
New Revision: 322249
URL: https://svnweb.freebsd.org/changeset/base/322249

Log:
  MFC r313958, r319717, r321810
  
  r313958:
  Import mandoc 1.4.1rc2
  
  r319717:
  Import mandoc snapshot 2017-06-08
  
  It implements missing man(7) macros used in base by kerberos/ntp and makes them
  supported by mandoc.
  
  This import should have been done before the removal of groff.
  
  Reported by:	gordon
  
  r321810:
  Update mandoc to 1.14.2

Added:
  stable/11/contrib/mdocml/catman.8
     - copied, changed from r313958, head/contrib/mdocml/catman.8
  stable/11/contrib/mdocml/catman.c
     - copied unchanged from r313958, head/contrib/mdocml/catman.c
  stable/11/contrib/mdocml/compat_recallocarray.c
     - copied unchanged from r321810, head/contrib/mdocml/compat_recallocarray.c
  stable/11/contrib/mdocml/man.options.1
     - copied, changed from r313958, head/contrib/mdocml/man.options.1
  stable/11/contrib/mdocml/mandoc_xr.c
     - copied unchanged from r321810, head/contrib/mdocml/mandoc_xr.c
  stable/11/contrib/mdocml/mandoc_xr.h
     - copied unchanged from r321810, head/contrib/mdocml/mandoc_xr.h
  stable/11/contrib/mdocml/mandocd.8
     - copied, changed from r313958, head/contrib/mdocml/mandocd.8
  stable/11/contrib/mdocml/mandocd.c
     - copied, changed from r313958, head/contrib/mdocml/mandocd.c
  stable/11/contrib/mdocml/mdoc_markdown.c
     - copied, changed from r319717, head/contrib/mdocml/mdoc_markdown.c
  stable/11/contrib/mdocml/roff_html.c
     - copied, changed from r319717, head/contrib/mdocml/roff_html.c
  stable/11/contrib/mdocml/roff_term.c
     - copied, changed from r319717, head/contrib/mdocml/roff_term.c
  stable/11/contrib/mdocml/roff_validate.c
     - copied, changed from r319717, head/contrib/mdocml/roff_validate.c
  stable/11/contrib/mdocml/term_tab.c
     - copied, changed from r319717, head/contrib/mdocml/term_tab.c
  stable/11/contrib/mdocml/test-O_DIRECTORY.c
     - copied unchanged from r313958, head/contrib/mdocml/test-O_DIRECTORY.c
  stable/11/contrib/mdocml/test-cmsg.c
     - copied unchanged from r313958, head/contrib/mdocml/test-cmsg.c
  stable/11/contrib/mdocml/test-recallocarray.c
     - copied unchanged from r321810, head/contrib/mdocml/test-recallocarray.c
  stable/11/contrib/mdocml/test-recvmsg.c
     - copied unchanged from r313958, head/contrib/mdocml/test-recvmsg.c
Deleted:
  stable/11/contrib/mdocml/man_hash.c
  stable/11/contrib/mdocml/manpage.c
  stable/11/contrib/mdocml/mdoc_hash.c
Modified:
  stable/11/contrib/mdocml/INSTALL
  stable/11/contrib/mdocml/LICENSE
  stable/11/contrib/mdocml/Makefile
  stable/11/contrib/mdocml/Makefile.depend
  stable/11/contrib/mdocml/NEWS
  stable/11/contrib/mdocml/TODO
  stable/11/contrib/mdocml/apropos.1
  stable/11/contrib/mdocml/att.c
  stable/11/contrib/mdocml/cgi.c
  stable/11/contrib/mdocml/cgi.h.example
  stable/11/contrib/mdocml/chars.c
  stable/11/contrib/mdocml/compat_fts.c
  stable/11/contrib/mdocml/config.h
  stable/11/contrib/mdocml/configure
  stable/11/contrib/mdocml/configure.local.example
  stable/11/contrib/mdocml/dba.c
  stable/11/contrib/mdocml/dbm_map.c
  stable/11/contrib/mdocml/demandoc.c
  stable/11/contrib/mdocml/eqn.7
  stable/11/contrib/mdocml/eqn.c
  stable/11/contrib/mdocml/eqn_html.c
  stable/11/contrib/mdocml/eqn_term.c
  stable/11/contrib/mdocml/gmdiff
  stable/11/contrib/mdocml/html.c
  stable/11/contrib/mdocml/html.h
  stable/11/contrib/mdocml/lib.c
  stable/11/contrib/mdocml/libman.h
  stable/11/contrib/mdocml/libmandoc.h
  stable/11/contrib/mdocml/libmdoc.h
  stable/11/contrib/mdocml/libroff.h
  stable/11/contrib/mdocml/main.c
  stable/11/contrib/mdocml/main.h
  stable/11/contrib/mdocml/makewhatis.8
  stable/11/contrib/mdocml/man.1
  stable/11/contrib/mdocml/man.7
  stable/11/contrib/mdocml/man.c
  stable/11/contrib/mdocml/man.cgi.3
  stable/11/contrib/mdocml/man.cgi.8
  stable/11/contrib/mdocml/man.h
  stable/11/contrib/mdocml/man_html.c
  stable/11/contrib/mdocml/man_macro.c
  stable/11/contrib/mdocml/man_term.c
  stable/11/contrib/mdocml/man_validate.c
  stable/11/contrib/mdocml/manconf.h
  stable/11/contrib/mdocml/mandoc.1
  stable/11/contrib/mdocml/mandoc.3
  stable/11/contrib/mdocml/mandoc.c
  stable/11/contrib/mdocml/mandoc.css
  stable/11/contrib/mdocml/mandoc.h
  stable/11/contrib/mdocml/mandoc_aux.c
  stable/11/contrib/mdocml/mandoc_aux.h
  stable/11/contrib/mdocml/mandoc_char.7
  stable/11/contrib/mdocml/mandoc_escape.3
  stable/11/contrib/mdocml/mandoc_headers.3
  stable/11/contrib/mdocml/mandoc_html.3
  stable/11/contrib/mdocml/mandocdb.c
  stable/11/contrib/mdocml/manpath.c
  stable/11/contrib/mdocml/mansearch.3
  stable/11/contrib/mdocml/mansearch.c
  stable/11/contrib/mdocml/mansearch.h
  stable/11/contrib/mdocml/mdoc.7
  stable/11/contrib/mdocml/mdoc.c
  stable/11/contrib/mdocml/mdoc.h
  stable/11/contrib/mdocml/mdoc_argv.c
  stable/11/contrib/mdocml/mdoc_html.c
  stable/11/contrib/mdocml/mdoc_macro.c
  stable/11/contrib/mdocml/mdoc_man.c
  stable/11/contrib/mdocml/mdoc_state.c
  stable/11/contrib/mdocml/mdoc_term.c
  stable/11/contrib/mdocml/mdoc_validate.c
  stable/11/contrib/mdocml/msec.in
  stable/11/contrib/mdocml/out.c
  stable/11/contrib/mdocml/out.h
  stable/11/contrib/mdocml/preconv.c
  stable/11/contrib/mdocml/read.c
  stable/11/contrib/mdocml/roff.7
  stable/11/contrib/mdocml/roff.c
  stable/11/contrib/mdocml/roff.h
  stable/11/contrib/mdocml/roff_int.h
  stable/11/contrib/mdocml/soelim.1
  stable/11/contrib/mdocml/st.c
  stable/11/contrib/mdocml/st.in
  stable/11/contrib/mdocml/tag.c
  stable/11/contrib/mdocml/tbl.7
  stable/11/contrib/mdocml/tbl.c
  stable/11/contrib/mdocml/tbl_data.c
  stable/11/contrib/mdocml/tbl_html.c
  stable/11/contrib/mdocml/tbl_layout.c
  stable/11/contrib/mdocml/tbl_term.c
  stable/11/contrib/mdocml/term.c
  stable/11/contrib/mdocml/term.h
  stable/11/contrib/mdocml/term_ascii.c
  stable/11/contrib/mdocml/term_ps.c
  stable/11/contrib/mdocml/tree.c
  stable/11/usr.bin/mandoc/Makefile
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/contrib/mdocml/INSTALL
==============================================================================
--- stable/11/contrib/mdocml/INSTALL	Tue Aug  8 11:35:02 2017	(r322248)
+++ stable/11/contrib/mdocml/INSTALL	Tue Aug  8 11:35:27 2017	(r322249)
@@ -1,22 +1,24 @@
-$Id: INSTALL,v 1.17 2016/07/19 22:40:33 schwarze Exp $
+$Id: INSTALL,v 1.20 2017/07/28 14:57:56 schwarze Exp $
 
-About mdocml, the portable mandoc distribution
-----------------------------------------------
-The mandoc manpage compiler toolset is a suite of tools compiling
-mdoc(7), the roff(7) macro language of choice for BSD manual pages,
-and man(7), the predominant historical language for UNIX manuals.
+About the portable mandoc distribution
+--------------------------------------
+The mandoc manpage compiler toolset (formerly called "mdocml")
+is a suite of tools compiling mdoc(7), the roff(7) macro language
+of choice for BSD manual pages, and man(7), the predominant
+historical language for UNIX manuals.
+
 It includes a man(1) manual viewer and additional tools.
-For general information, see <http://mdocml.bsd.lv/>.
+For general information, see <http://mandoc.bsd.lv/>.
 
 In case you have questions or want to provide feedback, read
-<http://mdocml.bsd.lv/contact.html>.  Consider subscribing to the
+<http://mandoc.bsd.lv/contact.html>.  Consider subscribing to the
 discuss@ mailing list mentioned on that page.  If you intend to
 help with the development of mandoc, consider subscribing to the
 tech@ mailing list, too.
 
 Enjoy using the mandoc toolset!
 
-Ingo Schwarze, Karlsruhe, July 2016
+Ingo Schwarze, Karlsruhe, July 2017
 
 
 Installation
@@ -25,21 +27,27 @@ Before manually installing mandoc on your system, plea
 whether the newest version of mandoc is already installed by default
 or available via a binary package or a ports system.  A list of the
 latest bundled and ported versions of mandoc for various operating
-systems is maintained at <http://mdocml.bsd.lv/ports.html>.
+systems is maintained at <http://mandoc.bsd.lv/ports.html>.
 
 Regarding how packages and ports are maintained for your operating
 system, please consult your operating system documentation.
 To install mandoc manually, the following steps are needed:
 
-1. If you want to build the CGI program, man.cgi(8), too, run the
-command "echo BUILD_CGI=1 > configure.local".  Then run "cp
-cgi.h.examples cgi.h" and edit cgi.h as desired.
+1. If you want to build the CGI program, man.cgi(8), too,
+run the command "echo BUILD_CGI=1 >> configure.local".
+Then run "cp cgi.h.example cgi.h" and edit cgi.h as desired.
 
-2. Define MANPATH_DEFAULT in configure.local
+2. If you also want to build the catman(8) utility, run the
+command "echo BUILD_CATMAN=1 >> configure.local".  Note that it
+is unlikely to be a drop-in replacement providing the same
+functionality as your system's "catman", if your operating
+system contains one.
+
+3. Define MANPATH_DEFAULT in configure.local
 if /usr/share/man:/usr/X11R6/man:/usr/local/man is not appropriate
 for your operating system.
 
-3. Run "./configure".
+4. Run "./configure".
 This script attempts autoconfiguration of mandoc for your system.
 Read both its standard output and the file "Makefile.local" it
 generates.  If anything looks wrong or different from what you
@@ -49,27 +57,31 @@ result seems right to you.
 On Solaris 10 and earlier, you may have to run "ksh ./configure"
 because the native /bin/sh lacks some POSIX features.
 
-4. Run "make".
+5. Run "make".
 Any POSIX-compatible make, in particular both BSD make and GNU make,
 should work.  If the build fails, look at "configure.local.example"
 and go back to step 2.
 
-5. Run "make -n install" and check whether everything will be
+6. Run "make -n install" and check whether everything will be
 installed to the intended places.  Otherwise, put some *DIR or *NM*
-variables into "configure.local" and go back to step 3.
+variables into "configure.local" and go back to step 4.
 
-6. Run "sudo make install".  If you intend to build a binary
+7. Optionally run the regression suite.
+Basically, that amounts to "cd regress && ./regress.pl".
+But you should probably look at "./mandoc -l regress/regress.pl.1"
+first.
+
+8. Run "sudo make install".  If you intend to build a binary
 package using some kind of fake root mechanism, you may need a
 command like "make DESTDIR=... install".  Read the *-install targets
 in the "Makefile" to understand how DESTDIR is used.
 
-7. Run the command "sudo
-makewhatis" to build mandoc.db(5) databases in all the directory
-trees configured in step 6.  Whenever installing new manual pages,
-re-run makewhatis(8) to update the databases, or apropos(1) will
-not find the new pages.
+9. Run the command "sudo makewhatis" to build mandoc.db(5) databases
+in all the directory trees configured in step 3.  Whenever installing
+new manual pages, re-run makewhatis(8) to update the databases, or
+apropos(1) will not find the new pages.
 
-8. To set up a man.cgi(8) server, read its manual page.
+10. To set up a man.cgi(8) server, read its manual page.
 
 Note that some man(7) pages may contain low-level roff(7) markup
 that mandoc does not yet understand.  On some BSD systems using
@@ -87,9 +99,10 @@ The following libraries are required:
 
 2. The fts(3) directory traversion functions.
 If your system does not have them, the bundled compatibility version
-will be used, so you need not worry in that case.  But be careful: the
-glibc version of fts(3) is known to be broken on 32bit platforms,
-see <https://sourceware.org/bugzilla/show_bug.cgi?id=15838>.
+will be used, so you need not worry in that case.  But be careful: old
+glibc versions of fts(3) were known to be broken on 32bit platforms,
+see <https://sourceware.org/bugzilla/show_bug.cgi?id=11460>.
+That was presumably fixed in glibc-2.23.
 If you run into that problem, set "HAVE_FTS=0" in configure.local.
 
 3. Marc Espie's ohash(3) library.

Modified: stable/11/contrib/mdocml/LICENSE
==============================================================================
--- stable/11/contrib/mdocml/LICENSE	Tue Aug  8 11:35:02 2017	(r322248)
+++ stable/11/contrib/mdocml/LICENSE	Tue Aug  8 11:35:27 2017	(r322249)
@@ -1,18 +1,19 @@
-$Id: LICENSE,v 1.13 2016/10/18 14:15:33 schwarze Exp $
+$Id: LICENSE,v 1.17 2017/06/23 15:58:14 schwarze Exp $
 
 With the exceptions noted below, all code and documentation
-contained in the mdocml toolkit is protected by the Copyright
+contained in the mandoc toolkit is protected by the Copyright
 of the following developers:
 
 Copyright (c) 2008-2012, 2014 Kristaps Dzonsons <kristaps@bsd.lv>
-Copyright (c) 2010-2016 Ingo Schwarze <schwarze@openbsd.org>
+Copyright (c) 2010-2017 Ingo Schwarze <schwarze@openbsd.org>
 Copyright (c) 2009, 2010, 2011, 2012 Joerg Sonnenberger <joerg@netbsd.org>
 Copyright (c) 2013 Franco Fichtner <franco@lastsummer.de>
 Copyright (c) 2014 Baptiste Daroussin <bapt@freebsd.org>
 Copyright (c) 2016 Ed Maste <emaste@freebsd.org>
+Copyright (c) 2017 Michael Stapelberg <stapelberg@debian.org>
 Copyright (c) 1999, 2004 Marc Espie <espie@openbsd.org>
 Copyright (c) 1998, 2004, 2010 Todd C. Miller <Todd.Miller@courtesan.com>
-Copyright (c) 2008 Otto Moerbeek <otto@drijf.net>
+Copyright (c) 2008, 2017 Otto Moerbeek <otto@drijf.net>
 Copyright (c) 2004 Ted Unangst <tedu@openbsd.org>
 Copyright (c) 1994 Christos Zoulas <christos@netbsd.org>
 Copyright (c) 2003, 2007, 2008, 2014 Jason McIntyre <jmc@openbsd.org>
@@ -21,7 +22,7 @@ See the individual source files for information about 
 to which file during which years.
 
 
-The mdocml distribution as a whole is distributed by its developers
+The mandoc distribution as a whole is distributed by its developers
 under the following license:
 
 Permission to use, copy, modify, and distribute this software for any

Modified: stable/11/contrib/mdocml/Makefile
==============================================================================
--- stable/11/contrib/mdocml/Makefile	Tue Aug  8 11:35:02 2017	(r322248)
+++ stable/11/contrib/mdocml/Makefile	Tue Aug  8 11:35:27 2017	(r322249)
@@ -1,7 +1,7 @@
-# $Id: Makefile,v 1.493 2016/11/19 15:24:51 schwarze Exp $
+# $Id: Makefile,v 1.516 2017/07/20 16:24:53 schwarze Exp $
 #
 # Copyright (c) 2010, 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
-# Copyright (c) 2011, 2013-2016 Ingo Schwarze <schwarze@openbsd.org>
+# Copyright (c) 2011, 2013-2017 Ingo Schwarze <schwarze@openbsd.org>
 #
 # Permission to use, copy, modify, and distribute this software for any
 # purpose with or without fee is hereby granted, provided that the above
@@ -15,11 +15,12 @@
 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
-VERSION = 1.14.0
+VERSION = 1.14.2
 
 # === LIST OF FILES ====================================================
 
 TESTSRCS	 = test-be32toh.c \
+		   test-cmsg.c \
 		   test-dirent-namlen.c \
 		   test-EFTYPE.c \
 		   test-err.c \
@@ -30,11 +31,14 @@ TESTSRCS	 = test-be32toh.c \
 		   test-mkdtemp.c \
 		   test-nanosleep.c \
 		   test-ntohl.c \
+		   test-O_DIRECTORY.c \
 		   test-ohash.c \
 		   test-PATH_MAX.c \
 		   test-pledge.c \
 		   test-progname.c \
+		   test-recvmsg.c \
 		   test-reallocarray.c \
+		   test-recallocarray.c \
 		   test-rewb-bsd.c \
 		   test-rewb-sysv.c \
 		   test-sandbox_init.c \
@@ -49,6 +53,7 @@ TESTSRCS	 = test-be32toh.c \
 		   test-wchar.c
 
 SRCS		 = att.c \
+		   catman.c \
 		   cgi.c \
 		   chars.c \
 		   compat_err.c \
@@ -60,6 +65,7 @@ SRCS		 = att.c \
 		   compat_ohash.c \
 		   compat_progname.c \
 		   compat_reallocarray.c \
+		   compat_recallocarray.c \
 		   compat_strcasestr.c \
 		   compat_stringlist.c \
 		   compat_strlcat.c \
@@ -81,7 +87,6 @@ SRCS		 = att.c \
 		   lib.c \
 		   main.c \
 		   man.c \
-		   man_hash.c \
 		   man_html.c \
 		   man_macro.c \
 		   man_term.c \
@@ -89,16 +94,17 @@ SRCS		 = att.c \
 		   mandoc.c \
 		   mandoc_aux.c \
 		   mandoc_ohash.c \
+		   mandoc_xr.c \
+		   mandocd.c \
 		   mandocdb.c \
-		   manpage.c \
 		   manpath.c \
 		   mansearch.c \
 		   mdoc.c \
 		   mdoc_argv.c \
-		   mdoc_hash.c \
 		   mdoc_html.c \
 		   mdoc_macro.c \
 		   mdoc_man.c \
+		   mdoc_markdown.c \
 		   mdoc_state.c \
 		   mdoc_term.c \
 		   mdoc_validate.c \
@@ -107,6 +113,9 @@ SRCS		 = att.c \
 		   preconv.c \
 		   read.c \
 		   roff.c \
+		   roff_html.c \
+		   roff_term.c \
+		   roff_validate.c \
 		   soelim.c \
 		   st.c \
 		   tag.c \
@@ -119,6 +128,7 @@ SRCS		 = att.c \
 		   term.c \
 		   term_ascii.c \
 		   term_ps.c \
+		   term_tab.c \
 		   tree.c
 
 DISTFILES	 = INSTALL \
@@ -128,6 +138,7 @@ DISTFILES	 = INSTALL \
 		   NEWS \
 		   TODO \
 		   apropos.1 \
+		   catman.8 \
 		   cgi.h.example \
 		   compat_fts.h \
 		   compat_ohash.h \
@@ -156,6 +167,7 @@ DISTFILES	 = INSTALL \
 		   man.cgi.8 \
 		   man.conf.5 \
 		   man.h \
+		   man.options.1 \
 		   manconf.h \
 		   mandoc.1 \
 		   mandoc.3 \
@@ -169,6 +181,8 @@ DISTFILES	 = INSTALL \
 		   mandoc_html.3 \
 		   mandoc_malloc.3 \
 		   mandoc_ohash.h \
+		   mandoc_xr.h \
+		   mandocd.8 \
 		   mansearch.3 \
 		   mansearch.h \
 		   mchars_alloc.3 \
@@ -190,7 +204,6 @@ DISTFILES	 = INSTALL \
 		   $(TESTSRCS)
 
 LIBMAN_OBJS	 = man.o \
-		   man_hash.o \
 		   man_macro.o \
 		   man_validate.o
 
@@ -198,7 +211,6 @@ LIBMDOC_OBJS	 = att.o \
 		   lib.o \
 		   mdoc.o \
 		   mdoc_argv.o \
-		   mdoc_hash.o \
 		   mdoc_macro.o \
 		   mdoc_state.o \
 		   mdoc_validate.o \
@@ -206,6 +218,7 @@ LIBMDOC_OBJS	 = att.o \
 
 LIBROFF_OBJS	 = eqn.o \
 		   roff.o \
+		   roff_validate.o \
 		   tbl.o \
 		   tbl_data.o \
 		   tbl_layout.o \
@@ -218,6 +231,7 @@ LIBMANDOC_OBJS	 = $(LIBMAN_OBJS) \
 		   mandoc.o \
 		   mandoc_aux.o \
 		   mandoc_ohash.o \
+		   mandoc_xr.o \
 		   msec.o \
 		   preconv.o \
 		   read.o
@@ -231,6 +245,7 @@ COMPAT_OBJS	 = compat_err.o \
 		   compat_ohash.o \
 		   compat_progname.o \
 		   compat_reallocarray.o \
+		   compat_recallocarray.o \
 		   compat_strcasestr.o \
 		   compat_strlcat.o \
 		   compat_strlcpy.o \
@@ -242,16 +257,17 @@ MANDOC_HTML_OBJS = eqn_html.o \
 		   html.o \
 		   man_html.o \
 		   mdoc_html.o \
+		   roff_html.o \
 		   tbl_html.o
 
-MANDOC_MAN_OBJS  = mdoc_man.o
-
 MANDOC_TERM_OBJS = eqn_term.o \
 		   man_term.o \
 		   mdoc_term.o \
+		   roff_term.o \
 		   term.o \
 		   term_ascii.o \
 		   term_ps.o \
+		   term_tab.o \
 		   tbl_term.o
 
 DBM_OBJS	 = dbm.o \
@@ -271,6 +287,8 @@ MAIN_OBJS	 = $(MANDOC_HTML_OBJS) \
 		   $(DBA_OBJS) \
 		   main.o \
 		   manpath.o \
+		   mdoc_man.o \
+		   mdoc_markdown.o \
 		   out.o \
 		   tag.o \
 		   tree.o
@@ -280,9 +298,11 @@ CGI_OBJS	 = $(MANDOC_HTML_OBJS) \
 		   cgi.o \
 		   out.o
 
-MANPAGE_OBJS	 = $(DBM_OBJS) \
-		   manpage.o \
-		   manpath.o
+MANDOCD_OBJS	 = $(MANDOC_HTML_OBJS) \
+		   $(MANDOC_TERM_OBJS) \
+		   mandocd.o \
+		   out.o \
+		   tag.o
 
 DEMANDOC_OBJS	 = demandoc.o
 
@@ -298,6 +318,7 @@ WWW_MANS	 = apropos.1.html \
 		   man.1.html \
 		   mandoc.1.html \
 		   soelim.1.html \
+		   man.cgi.3.html \
 		   mandoc.3.html \
 		   mandoc_escape.3.html \
 		   mandoc_headers.3.html \
@@ -311,11 +332,12 @@ WWW_MANS	 = apropos.1.html \
 		   eqn.7.html \
 		   man.7.html \
 		   mandoc_char.7.html \
+		   mandocd.8.html \
 		   mdoc.7.html \
 		   roff.7.html \
 		   tbl.7.html \
+		   catman.8.html \
 		   makewhatis.8.html \
-		   man.cgi.3.html \
 		   man.cgi.8.html \
 		   man.h.html \
 		   manconf.h.html \
@@ -325,24 +347,17 @@ WWW_MANS	 = apropos.1.html \
 		   mdoc.h.html \
 		   roff.h.html
 
-WWW_OBJS	 = mdocml.tar.gz \
-		   mdocml.sha256
-
 # === USER CONFIGURATION ===============================================
 
 include Makefile.local
 
 # === DEPENDENCY HANDLING ==============================================
 
-all: base-build $(BUILD_TARGETS) Makefile.local
+all: mandoc demandoc soelim $(BUILD_TARGETS) Makefile.local
 
-base-build: mandoc demandoc soelim
-
-cgi-build: man.cgi
-
 install: base-install $(INSTALL_TARGETS)
 
-www: $(WWW_OBJS) $(WWW_MANS)
+www: $(WWW_MANS)
 
 $(WWW_MANS): mandoc
 
@@ -360,13 +375,13 @@ clean:
 	rm -f libmandoc.a $(LIBMANDOC_OBJS) $(COMPAT_OBJS)
 	rm -f mandoc $(MAIN_OBJS)
 	rm -f man.cgi $(CGI_OBJS)
-	rm -f manpage $(MANPAGE_OBJS)
+	rm -f mandocd catman catman.o $(MANDOCD_OBJS)
 	rm -f demandoc $(DEMANDOC_OBJS)
 	rm -f soelim $(SOELIM_OBJS)
-	rm -f $(WWW_MANS) $(WWW_OBJS)
+	rm -f $(WWW_MANS) mandoc.tar.gz mandoc.sha256
 	rm -rf *.dSYM
 
-base-install: base-build
+base-install: mandoc demandoc soelim
 	mkdir -p $(DESTDIR)$(BINDIR)
 	mkdir -p $(DESTDIR)$(SBINDIR)
 	mkdir -p $(DESTDIR)$(MANDIR)/man1
@@ -375,29 +390,28 @@ base-install: base-build
 	mkdir -p $(DESTDIR)$(MANDIR)/man8
 	$(INSTALL_PROGRAM) mandoc demandoc $(DESTDIR)$(BINDIR)
 	$(INSTALL_PROGRAM) soelim $(DESTDIR)$(BINDIR)/$(BINM_SOELIM)
-	ln -f $(DESTDIR)$(BINDIR)/mandoc $(DESTDIR)$(BINDIR)/$(BINM_MAN)
-	ln -f $(DESTDIR)$(BINDIR)/mandoc $(DESTDIR)$(BINDIR)/$(BINM_APROPOS)
-	ln -f $(DESTDIR)$(BINDIR)/mandoc $(DESTDIR)$(BINDIR)/$(BINM_WHATIS)
-	ln -f $(DESTDIR)$(BINDIR)/mandoc \
-		$(DESTDIR)$(SBINDIR)/$(BINM_MAKEWHATIS)
+	cd $(DESTDIR)$(BINDIR) && $(LN) mandoc $(BINM_MAN)
+	cd $(DESTDIR)$(BINDIR) && $(LN) mandoc $(BINM_APROPOS)
+	cd $(DESTDIR)$(BINDIR) && $(LN) mandoc $(BINM_WHATIS)
+	cd $(DESTDIR)$(SBINDIR) && \
+		$(LN) ${BIN_FROM_SBIN}/mandoc $(BINM_MAKEWHATIS)
 	$(INSTALL_MAN) mandoc.1 demandoc.1 $(DESTDIR)$(MANDIR)/man1
 	$(INSTALL_MAN) soelim.1 $(DESTDIR)$(MANDIR)/man1/$(BINM_SOELIM).1
 	$(INSTALL_MAN) man.1 $(DESTDIR)$(MANDIR)/man1/$(BINM_MAN).1
 	$(INSTALL_MAN) apropos.1 $(DESTDIR)$(MANDIR)/man1/$(BINM_APROPOS).1
-	ln -f $(DESTDIR)$(MANDIR)/man1/$(BINM_APROPOS).1 \
-		$(DESTDIR)$(MANDIR)/man1/$(BINM_WHATIS).1
-	$(INSTALL_MAN) man.conf.5 $(DESTDIR)$(MANDIR)/man5/${MANM_MANCONF}.5
+	cd $(DESTDIR)$(MANDIR)/man1 && $(LN) $(BINM_APROPOS).1 $(BINM_WHATIS).1
+	$(INSTALL_MAN) man.conf.5 $(DESTDIR)$(MANDIR)/man5/$(MANM_MANCONF).5
 	$(INSTALL_MAN) mandoc.db.5 $(DESTDIR)$(MANDIR)/man5
-	$(INSTALL_MAN) man.7 $(DESTDIR)$(MANDIR)/man7/${MANM_MAN}.7
-	$(INSTALL_MAN) mdoc.7 $(DESTDIR)$(MANDIR)/man7/${MANM_MDOC}.7
-	$(INSTALL_MAN) roff.7 $(DESTDIR)$(MANDIR)/man7/${MANM_ROFF}.7
-	$(INSTALL_MAN) eqn.7 $(DESTDIR)$(MANDIR)/man7/${MANM_EQN}.7
-	$(INSTALL_MAN) tbl.7 $(DESTDIR)$(MANDIR)/man7/${MANM_TBL}.7
+	$(INSTALL_MAN) man.7 $(DESTDIR)$(MANDIR)/man7/$(MANM_MAN).7
+	$(INSTALL_MAN) mdoc.7 $(DESTDIR)$(MANDIR)/man7/$(MANM_MDOC).7
+	$(INSTALL_MAN) roff.7 $(DESTDIR)$(MANDIR)/man7/$(MANM_ROFF).7
+	$(INSTALL_MAN) eqn.7 $(DESTDIR)$(MANDIR)/man7/$(MANM_EQN).7
+	$(INSTALL_MAN) tbl.7 $(DESTDIR)$(MANDIR)/man7/$(MANM_TBL).7
 	$(INSTALL_MAN) mandoc_char.7 $(DESTDIR)$(MANDIR)/man7
 	$(INSTALL_MAN) makewhatis.8 \
 		$(DESTDIR)$(MANDIR)/man8/$(BINM_MAKEWHATIS).8
 
-lib-install: base-build
+lib-install: libmandoc.a
 	mkdir -p $(DESTDIR)$(LIBDIR)
 	mkdir -p $(DESTDIR)$(INCLUDEDIR)
 	mkdir -p $(DESTDIR)$(MANDIR)/man3
@@ -407,13 +421,70 @@ lib-install: base-build
 	$(INSTALL_MAN) mandoc.3 mandoc_escape.3 mandoc_malloc.3 \
 		mansearch.3 mchars_alloc.3 tbl.3 $(DESTDIR)$(MANDIR)/man3
 
-cgi-install: cgi-build
+cgi-install: man.cgi
 	mkdir -p $(DESTDIR)$(CGIBINDIR)
 	mkdir -p $(DESTDIR)$(HTDOCDIR)
 	$(INSTALL_PROGRAM) man.cgi $(DESTDIR)$(CGIBINDIR)
 	$(INSTALL_DATA) mandoc.css $(DESTDIR)$(HTDOCDIR)
 
-Makefile.local config.h: configure ${TESTSRCS}
+catman-install: mandocd catman
+	mkdir -p $(DESTDIR)$(SBINDIR)
+	mkdir -p $(DESTDIR)$(MANDIR)/man8
+	$(INSTALL_PROGRAM) mandocd $(DESTDIR)$(SBINDIR)
+	$(INSTALL_PROGRAM) catman $(DESTDIR)$(SBINDIR)/$(BINM_CATMAN)
+	$(INSTALL_MAN) mandocd.8 $(DESTDIR)$(MANDIR)/man8
+	$(INSTALL_MAN) catman.8 $(DESTDIR)$(MANDIR)/man8/$(BINM_CATMAN).8
+
+uninstall:
+	rm -f $(DESTDIR)$(BINDIR)/mandoc
+	rm -f $(DESTDIR)$(BINDIR)/demandoc
+	rm -f $(DESTDIR)$(BINDIR)/$(BINM_SOELIM)
+	rm -f $(DESTDIR)$(BINDIR)/$(BINM_MAN)
+	rm -f $(DESTDIR)$(BINDIR)/$(BINM_APROPOS)
+	rm -f $(DESTDIR)$(BINDIR)/$(BINM_WHATIS)
+	rm -f $(DESTDIR)$(SBINDIR)/$(BINM_MAKEWHATIS)
+	rm -f $(DESTDIR)$(MANDIR)/man1/mandoc.1
+	rm -f $(DESTDIR)$(MANDIR)/man1/demandoc.1
+	rm -f $(DESTDIR)$(MANDIR)/man1/$(BINM_SOELIM).1
+	rm -f $(DESTDIR)$(MANDIR)/man1/$(BINM_MAN).1
+	rm -f $(DESTDIR)$(MANDIR)/man1/$(BINM_APROPOS).1
+	rm -f $(DESTDIR)$(MANDIR)/man1/$(BINM_WHATIS).1
+	rm -f $(DESTDIR)$(MANDIR)/man5/$(MANM_MANCONF).5
+	rm -f $(DESTDIR)$(MANDIR)/man5/mandoc.db.5
+	rm -f $(DESTDIR)$(MANDIR)/man7/$(MANM_MAN).7
+	rm -f $(DESTDIR)$(MANDIR)/man7/$(MANM_MDOC).7
+	rm -f $(DESTDIR)$(MANDIR)/man7/$(MANM_ROFF).7
+	rm -f $(DESTDIR)$(MANDIR)/man7/$(MANM_EQN).7
+	rm -f $(DESTDIR)$(MANDIR)/man7/$(MANM_TBL).7
+	rm -f $(DESTDIR)$(MANDIR)/man7/mandoc_char.7
+	rm -f $(DESTDIR)$(MANDIR)/man8/$(BINM_MAKEWHATIS).8
+	rm -f $(DESTDIR)$(CGIBINDIR)/man.cgi
+	rm -f $(DESTDIR)$(HTDOCDIR)/mandoc.css
+	rm -f $(DESTDIR)$(SBINDIR)/mandocd
+	rm -f $(DESTDIR)$(SBINDIR)/$(BINM_CATMAN)
+	rm -f $(DESTDIR)$(MANDIR)/man8/mandocd.8
+	rm -f $(DESTDIR)$(MANDIR)/man8/$(BINM_CATMAN).8
+	rm -f $(DESTDIR)$(LIBDIR)/libmandoc.a
+	rm -f $(DESTDIR)$(MANDIR)/man3/mandoc.3
+	rm -f $(DESTDIR)$(MANDIR)/man3/mandoc_escape.3
+	rm -f $(DESTDIR)$(MANDIR)/man3/mandoc_malloc.3
+	rm -f $(DESTDIR)$(MANDIR)/man3/mansearch.3
+	rm -f $(DESTDIR)$(MANDIR)/man3/mchars_alloc.3
+	rm -f $(DESTDIR)$(MANDIR)/man3/tbl.3
+	rm -f $(DESTDIR)$(INCLUDEDIR)/man.h
+	rm -f $(DESTDIR)$(INCLUDEDIR)/mandoc.h
+	rm -f $(DESTDIR)$(INCLUDEDIR)/mandoc_aux.h
+	rm -f $(DESTDIR)$(INCLUDEDIR)/mdoc.h
+	rm -f $(DESTDIR)$(INCLUDEDIR)/roff.h
+	[ ! -e $(DESTDIR)$(INCLUDEDIR) ] || rmdir $(DESTDIR)$(INCLUDEDIR)
+
+regress: all
+	cd regress && ./regress.pl
+
+regress-clean:
+	cd regress && ./regress.pl . clean
+
+Makefile.local config.h: configure $(TESTSRCS)
 	@echo "$@ is out of date; please run ./configure"
 	@exit 1
 
@@ -423,12 +494,15 @@ libmandoc.a: $(COMPAT_OBJS) $(LIBMANDOC_OBJS)
 mandoc: $(MAIN_OBJS) libmandoc.a
 	$(CC) -o $@ $(LDFLAGS) $(MAIN_OBJS) libmandoc.a $(LDADD)
 
-manpage: $(MANPAGE_OBJS) libmandoc.a
-	$(CC) -o $@ $(LDFLAGS) $(MANPAGE_OBJS) libmandoc.a $(LDADD)
-
 man.cgi: $(CGI_OBJS) libmandoc.a
 	$(CC) $(STATIC) -o $@ $(LDFLAGS) $(CGI_OBJS) libmandoc.a $(LDADD)
 
+mandocd: $(MANDOCD_OBJS) libmandoc.a
+	$(CC) -o $@ $(LDFLAGS) $(MANDOCD_OBJS) libmandoc.a $(LDADD)
+
+catman: catman.o libmandoc.a
+	$(CC) -o $@ $(LDFLAGS) catman.o libmandoc.a $(LDADD)
+
 demandoc: $(DEMANDOC_OBJS) libmandoc.a
 	$(CC) -o $@ $(LDFLAGS) $(DEMANDOC_OBJS) libmandoc.a $(LDADD)
 
@@ -438,13 +512,7 @@ soelim: $(SOELIM_OBJS)
 # --- maintainer targets ---
 
 www-install: www
-	mkdir -p $(HTDOCDIR)/snapshots
 	$(INSTALL_DATA) $(WWW_MANS) mandoc.css $(HTDOCDIR)
-	$(INSTALL_DATA) $(WWW_OBJS) $(HTDOCDIR)/snapshots
-	$(INSTALL_DATA) mdocml.tar.gz \
-		$(HTDOCDIR)/snapshots/mdocml-$(VERSION).tar.gz
-	$(INSTALL_DATA) mdocml.sha256 \
-		$(HTDOCDIR)/snapshots/mdocml-$(VERSION).sha256
 
 depend: config.h
 	mkdep -f Makefile.depend $(CFLAGS) $(SRCS)
@@ -453,16 +521,43 @@ depend: config.h
 		Makefile.depend > Makefile.tmp
 	mv Makefile.tmp Makefile.depend
 
-dist: mdocml.sha256
+regress-distclean:
+	@find regress \
+		-name '.#*' -o \
+		-name '*.orig' -o \
+		-name '*.rej' -o \
+		-name '*.core' \
+		-exec rm -i {} \;
 
-mdocml.sha256: mdocml.tar.gz
-	sha256 mdocml.tar.gz > $@
+regress-distcheck:
+	@find regress ! -type d ! -type f
+	@find regress -type f \
+		! -path '*/CVS/*' \
+		! -name Makefile \
+		! -name Makefile.inc \
+		! -name '*.in' \
+		! -name '*.out_ascii' \
+		! -name '*.out_utf8' \
+		! -name '*.out_html' \
+		! -name '*.out_markdown' \
+		! -name '*.out_lint' \
+		! -path regress/regress.pl \
+		! -path regress/regress.pl.1
 
-mdocml.tar.gz: $(DISTFILES)
-	mkdir -p .dist/mdocml-$(VERSION)/
-	$(INSTALL) -m 0644 $(DISTFILES) .dist/mdocml-$(VERSION)
-	chmod 755 .dist/mdocml-$(VERSION)/configure
-	( cd .dist/ && tar zcf ../$@ mdocml-$(VERSION) )
+dist: mandoc.sha256
+
+mandoc.sha256: mandoc.tar.gz
+	sha256 mandoc.tar.gz > $@
+
+mandoc.tar.gz: $(DISTFILES)
+	ls regress/*/*/*.mandoc_* && exit 1 || true
+	mkdir -p .dist/mandoc-$(VERSION)/
+	$(INSTALL) -m 0644 $(DISTFILES) .dist/mandoc-$(VERSION)
+	cp -pR regress .dist/mandoc-$(VERSION)
+	find .dist/mandoc-$(VERSION)/regress \
+	    -type d -name CVS -print0 | xargs -0 rm -rf
+	chmod 755 .dist/mandoc-$(VERSION)/configure
+	( cd .dist/ && tar zcf ../$@ mandoc-$(VERSION) )
 	rm -rf .dist/
 
 # === SUFFIX RULES =====================================================

Modified: stable/11/contrib/mdocml/Makefile.depend
==============================================================================
--- stable/11/contrib/mdocml/Makefile.depend	Tue Aug  8 11:35:02 2017	(r322248)
+++ stable/11/contrib/mdocml/Makefile.depend	Tue Aug  8 11:35:27 2017	(r322249)
@@ -1,4 +1,5 @@
-att.o: att.c config.h roff.h mdoc.h libmdoc.h
+att.o: att.c config.h mandoc.h roff.h mdoc.h libmdoc.h
+catman.o: catman.c config.h compat_fts.h
 cgi.o: cgi.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h man.h main.h manconf.h mansearch.h cgi.h
 chars.o: chars.c config.h mandoc.h mandoc_aux.h mandoc_ohash.h compat_ohash.h libmandoc.h
 compat_err.o: compat_err.c config.h
@@ -10,6 +11,7 @@ compat_mkdtemp.o: compat_mkdtemp.c config.h
 compat_ohash.o: compat_ohash.c config.h compat_ohash.h
 compat_progname.o: compat_progname.c config.h
 compat_reallocarray.o: compat_reallocarray.c config.h
+compat_recallocarray.o: compat_recallocarray.c config.h
 compat_strcasestr.o: compat_strcasestr.c config.h
 compat_stringlist.o: compat_stringlist.c config.h compat_stringlist.h
 compat_strlcat.o: compat_strlcat.c config.h
@@ -23,42 +25,45 @@ dba_read.o: dba_read.c mandoc_aux.h mansearch.h dba_ar
 dba_write.o: dba_write.c config.h dba_write.h
 dbm.o: dbm.c config.h mansearch.h dbm_map.h dbm.h
 dbm_map.o: dbm_map.c config.h mansearch.h dbm_map.h dbm.h
-demandoc.o: demandoc.c config.h roff.h man.h mdoc.h mandoc.h
-eqn.o: eqn.c config.h mandoc.h mandoc_aux.h libmandoc.h libroff.h
+demandoc.o: demandoc.c config.h mandoc.h roff.h man.h mdoc.h
+eqn.o: eqn.c config.h mandoc_aux.h mandoc.h roff.h libmandoc.h libroff.h
 eqn_html.o: eqn_html.c config.h mandoc.h out.h html.h
 eqn_term.o: eqn_term.c config.h mandoc.h out.h term.h
-html.o: html.c config.h mandoc.h mandoc_aux.h out.h html.h manconf.h main.h
-lib.o: lib.c config.h roff.h mdoc.h libmdoc.h lib.in
-main.o: main.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h man.h tag.h main.h manconf.h mansearch.h
+html.o: html.c config.h mandoc_aux.h mandoc.h roff.h out.h html.h manconf.h main.h
+lib.o: lib.c config.h mandoc.h roff.h mdoc.h libmdoc.h lib.in
+main.o: main.c config.h mandoc_aux.h mandoc.h mandoc_xr.h roff.h mdoc.h man.h tag.h main.h manconf.h mansearch.h
 man.o: man.c config.h mandoc_aux.h mandoc.h roff.h man.h libmandoc.h roff_int.h libman.h
-man_hash.o: man_hash.c config.h mandoc.h roff.h man.h libmandoc.h libman.h
-man_html.o: man_html.c config.h mandoc_aux.h roff.h man.h out.h html.h main.h
+man_html.o: man_html.c config.h mandoc_aux.h mandoc.h roff.h man.h out.h html.h main.h
 man_macro.o: man_macro.c config.h mandoc.h roff.h man.h libmandoc.h roff_int.h libman.h
 man_term.o: man_term.c config.h mandoc_aux.h mandoc.h roff.h man.h out.h term.h main.h
 man_validate.o: man_validate.c config.h mandoc_aux.h mandoc.h roff.h man.h libmandoc.h roff_int.h libman.h
-mandoc.o: mandoc.c config.h mandoc.h mandoc_aux.h libmandoc.h
+mandoc.o: mandoc.c config.h mandoc_aux.h mandoc.h roff.h libmandoc.h
 mandoc_aux.o: mandoc_aux.c config.h mandoc.h mandoc_aux.h
 mandoc_ohash.o: mandoc_ohash.c mandoc_aux.h mandoc_ohash.h compat_ohash.h
+mandoc_xr.o: mandoc_xr.c mandoc_aux.h mandoc_ohash.h compat_ohash.h mandoc_xr.h
+mandocd.o: mandocd.c config.h mandoc.h roff.h mdoc.h man.h main.h manconf.h
 mandocdb.o: mandocdb.c config.h compat_fts.h mandoc_aux.h mandoc_ohash.h compat_ohash.h mandoc.h roff.h mdoc.h man.h manconf.h mansearch.h dba_array.h dba.h
-manpage.o: manpage.c config.h manconf.h mansearch.h
 manpath.o: manpath.c config.h mandoc_aux.h manconf.h
 mansearch.o: mansearch.c config.h mandoc.h mandoc_aux.h mandoc_ohash.h compat_ohash.h manconf.h mansearch.h dbm.h
 mdoc.o: mdoc.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h libmandoc.h roff_int.h libmdoc.h
 mdoc_argv.o: mdoc_argv.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h libmandoc.h roff_int.h libmdoc.h
-mdoc_hash.o: mdoc_hash.c config.h mandoc.h roff.h mdoc.h libmandoc.h libmdoc.h
-mdoc_html.o: mdoc_html.c config.h mandoc_aux.h roff.h mdoc.h out.h html.h main.h
+mdoc_html.o: mdoc_html.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h out.h html.h main.h
 mdoc_macro.o: mdoc_macro.c config.h mandoc.h roff.h mdoc.h libmandoc.h roff_int.h libmdoc.h
 mdoc_man.o: mdoc_man.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h man.h out.h main.h
+mdoc_markdown.o: mdoc_markdown.c mandoc_aux.h mandoc.h roff.h mdoc.h main.h
 mdoc_state.o: mdoc_state.c mandoc.h roff.h mdoc.h libmandoc.h libmdoc.h
 mdoc_term.o: mdoc_term.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h out.h term.h tag.h main.h
-mdoc_validate.o: mdoc_validate.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h libmandoc.h roff_int.h libmdoc.h
+mdoc_validate.o: mdoc_validate.c config.h mandoc_aux.h mandoc.h mandoc_xr.h roff.h mdoc.h libmandoc.h roff_int.h libmdoc.h
 msec.o: msec.c config.h mandoc.h libmandoc.h msec.in
 out.o: out.c config.h mandoc_aux.h mandoc.h out.h
 preconv.o: preconv.c config.h mandoc.h libmandoc.h
-read.o: read.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h man.h libmandoc.h roff_int.h
-roff.o: roff.c config.h mandoc.h mandoc_aux.h roff.h libmandoc.h roff_int.h libroff.h predefs.in
+read.o: read.c config.h mandoc_aux.h mandoc.h roff.h mdoc.h man.h libmandoc.h
+roff.o: roff.c config.h mandoc.h mandoc_aux.h mandoc_ohash.h compat_ohash.h roff.h libmandoc.h roff_int.h libroff.h predefs.in
+roff_html.o: roff_html.c mandoc.h roff.h out.h html.h
+roff_term.o: roff_term.c mandoc.h roff.h out.h term.h
+roff_validate.o: roff_validate.c mandoc.h roff.h libmandoc.h roff_int.h
 soelim.o: soelim.c config.h compat_stringlist.h
-st.o: st.c config.h roff.h mdoc.h libmdoc.h st.in
+st.o: st.c config.h mandoc.h roff.h mdoc.h libmdoc.h st.in
 tag.o: tag.c config.h mandoc_aux.h mandoc_ohash.h compat_ohash.h tag.h
 tbl.o: tbl.c config.h mandoc.h mandoc_aux.h libmandoc.h libroff.h
 tbl_data.o: tbl_data.c config.h mandoc.h mandoc_aux.h libmandoc.h libroff.h
@@ -69,4 +74,5 @@ tbl_term.o: tbl_term.c config.h mandoc.h out.h term.h
 term.o: term.c config.h mandoc.h mandoc_aux.h out.h term.h main.h
 term_ascii.o: term_ascii.c config.h mandoc.h mandoc_aux.h out.h term.h manconf.h main.h
 term_ps.o: term_ps.c config.h mandoc_aux.h out.h term.h manconf.h main.h
+term_tab.o: term_tab.c mandoc_aux.h out.h term.h
 tree.o: tree.c config.h mandoc.h roff.h mdoc.h man.h main.h

Modified: stable/11/contrib/mdocml/NEWS
==============================================================================
--- stable/11/contrib/mdocml/NEWS	Tue Aug  8 11:35:02 2017	(r322248)
+++ stable/11/contrib/mdocml/NEWS	Tue Aug  8 11:35:27 2017	(r322249)
@@ -1,7 +1,221 @@
-$Id: NEWS,v 1.12 2016/07/14 11:09:06 schwarze Exp $
+$Id: NEWS,v 1.26 2017/07/28 14:57:56 schwarze Exp $
 
-This file lists the most important changes in the mdocml.bsd.lv distribution.
+This file lists the most important changes in the mandoc.bsd.lv distribution.
 
+Changes in version 1.14.2, released on July 28, 2017
+
+    --- MAJOR NEW FEATURES ---
+ * New mdoc(7) -Tmarkdown output mode.
+ * For -Thtml, implement internal hyperlinks pointing to authoritative
+   definitions of various syntax elements, similar to the ctags(1)-like
+   less(1) :t internal searching in terminal mode.
+ * Provide a superset of the functionality of the former mdoclint(1)
+   utility and a new -Wstyle message level with several new messages,
+   including validity checking of .Xr cross references.
+ * tbl(7): Implement automatic line breaking inside individual table
+   cells, and several other formatting improvements.
+ * eqn(7): Complete rewrite of the lexer, resulting in several bugfixes.
+ * Continue parser unification, in particular allowing generation
+   of syntax tree nodes on the roff(7) level, allowing implementation
+   of many additional roff requests.
+    --- REMOVED FUNCTIONALITY ---
+ * Delete the manpage(1) utility.  It was never enabled in any release.
+ * Delete the -Txhtml command line option.  It has been an obsolete
+   alias for the -Thtml output mode for more than two years.
+    --- MINOR NEW FEATURES ---
+ * -Tlint now puts parser messages on stdout instead of stderr,
+   making commands like "man -l -Tlint *.1" useful.
+ * mdoc(7): Various .Lk formatting improvements.
+ * mdoc(7) -Thtml: Better CSS for .Bl lists.
+ * man(7): Implement the .MT/.ME block macro (mailto hyperlink).
+ * man(7): Implement the .DT macro (restore default tab positions).
+ * man(7): Improved support for manuals generated with reStructuredText
+   by partial support for the \n[an-margin] number register.
+ * man(7) -Thtml: Support deep linking to .SH and .SS headers.
+ * tbl(7): Implement the "allbox" table option.
+ * tbl(7): Implement the column spacing and the 'w' (minimum column
+   width) layout modifiers.
+ * tbl(7): Significant improvements of the manual page.
+ * eqn(7): Much improved font selection, including recognition of
+   well-known function names, and a few other formatting improvements.
+ * eqn(7) -Thtml: Use <mn> and <mo> in addition to <mi>.
+ * roff(7): Implement the .ce (centering), .mc (margin character),
+   .rj (right justify), .ta (define tab stops), .ti (temporary indent),
+   .als (macro alias), .ec and .eo (escape character control),
+   .po (page offset), and .rn (macro rename) requests.
+ * roff(7) .am: Implement appending to mdoc(7) and man(7) macros.
+ * roff(7): implement the \h (horizontol motion), \l (horizontal
+   line drawing), and \p (break output line) escape sequences,
+   and also several additional character escape sequences.
+ * roff(7): Implement the 'd' conditional (macro or string defined).
+ * man.cgi(8) now uses pledge(2), too.
+ * regress.pl(1): simpler user interface, better summary output,
+   simpler code, and no more recursion.
+    --- THANKS TO ---
+ * Anthony Bentley (OpenBSD) for the implementation of .MT/.ME,
+   reports of many bugs and missing features, and suggestions
+   for a number of feature and documentation improvements.
+ * Sebastien Marie (OpenBSD) for two source code patches and
+   for some useful discussions.
+ * Florian Obser (OpenBSD) for a bugfix patch and a bug report.
+ * Jonathan Gray (OpenBSD) for several bug reports from afl(1)
+   and several more from static analysis tools.
+ * Theo Buehler (OpenBSD) for several bug reports, most from afl(1).
+ * Jason McIntyre (OpenBSD) for many useful discussions about a
+   wide variety of topics, lots of continuous testing, a number of
+   bug reports, and some suggestions for messages and documentation.
+ * Thomas Klausner (NetBSD) for lots of help while migrating
+   mdoclint(1) functionality to mandoc -Tlint, for suggesting
+   several useful new messages, and for release testing.
+ * Reyk Floeter (OpenBSD) and Vsevolod Stakhov (FreeBSD) for
+   suggesting a markdown output mode.
+ * Thomas Guettler for suggesting -Thtml internal hyperlinks.
+ * Yuri Pankov (Illumos) for inspiring new warning messages and
+   for extensive release testing.
+ * Anton Lindqvist and TJ Townsend (both OpenBSD) and Jan Stary
+   for multiple bug reports.
+ * Leah Neukirchen (Void Linux) for bug reports and release testing.
+ * Michael Stapelberg (Debian) for suggesting feature improvements
+   and for release testing.
+ * Martin Natano and Theo de Raadt (both OpenBSD), Andreas Voegele,
+   Gabriel Guzman, Gonzalo Tornaria, Markus Waldeck, and Raf Czlonka
+   for bug reports.
+ * Antoine Jacoutot (OpenBSD) and Steffen Nurpmeso for suggesting
+   feature improvements.
+ * Dag-Erling Smoergrav (FreeBSD) for inspiring new warning messages.
+ * Ted Unangst and Marc Espie (OpenBSD) for providing useful ideas.
+ * Svyatoslav Mishyn (Crux Linux) for release testing.
+ * Carsten Kunze (Heirloom roff) for help keeping mandoc and groff
+   compatible and for committing some of my patches to groff.
+
+Changes in version 1.14.1, released on February 21, 2017
+
+    --- MAJOR NEW FEATURES ---
+ * apropos(1): Reimplement complete semantic search functionality
+   without the dependency on SQLite3, using only POSIX APIs.
+   This comes with a completely new mandoc.db(5) file format.
+ * man(1): Support more than one tag entry for the same search term,
+   plus some minor improvements to the less(1) :t support.
+ * -Thtml: Use real macro names for CSS classes.
+   Systematic cleanup of and many improvements to mandoc.css.
+ * -Thtml: Produce human readable HTML code by using indentation
+   and better line breaks.  Improve various HTML elements,
+   and trim several useless ones.
+ * New catman(8) utility, still somewhat experimental.
+ * Now includes a portable version of the OpenBSD mandoc regression
+   suite, see regress/regress.pl.1 for details.
+    --- REMOVED FUNCTIONALITY ---
+ * Operating systems that don't provide mmap(3) are no longer supported.
+ * Drop support for manpath(1).  Even if your system has manpath(1),
+   it is simpler to use MANPATH_DEFAULT in configure.local for
+   operating system defaults, man.conf(5) for machine-specific
+   modifications, and ${MANPATH}, -m, and -M for user preferences
+   than to bother with the complexity of manpath(1).
+ * makewhatis(8) -p: No longer warn about missing MLINKS since these
+   are no longer needed for anything.
+    --- MINOR NEW FEATURES ---
+ * mdoc(7): Warn about invalid punctuation and content below NAME.
+ * mdoc(7): Warn about .Xr lacking the second argument (section).
+ * mdoc(7): Warn about violations of the rule "new sentence, new line".
+ * roff(7): Warn about trailing whitespace at the end of comments.
+ * mdoc(7): Improve rendering of double quotes.
+ * mdoc(7): Always do text production in the validator, never in the
+   formatters.  Cleaner, simpler, shorter, helps NetBSD apropos(1)
+   and also makes -Ttree output more useful.
+ * -Ttree: Show metadata and some additional node flags.
+   New -Onoval output option to show the unvalidated tree.
+    --- RELIABILITY BUGFIXES ---
+ * man(1): Make "man -l" work with standard input from a pipe or file,
+   as long as standard output is a terminal.
+ * man(7): Fix out of bounds read access if a text node immediately
+   preceded the first .SH header.
+ * mdoc(7): Fix out of bounds read access for .Bl without a type
+   but with a width.
+ * mdoc(7): Fix out of bounds read access for .Bl -column starting
+   with a tab character instead of a child .It macro.
+ * mdoc(7): Fix syntax tree corruption leading to segfaults caused
+   by stray block end macros in nested blocks of mismatching type.
+ * man(1): Fix NULL dereference when the first of multiple pages
+   shown was preformatted.
+ * mdoc(7): Fix syntax tree corruption leading to NULL dereference
+   caused by partial implicit macros inside .Bl -column table cells.
+ * mdoc(7): Fix syntax tree corruption leading to NULL dereference
+   for macro sequences like .Bl .Bl .It Bo .El .It.
+ * mdoc(7): Fix syntax tree corruption leading to NULL dereference
+   caused by .Ta following a nested .Bl -column breaking another block.
+ * mdoc(7): Fix syntax tree corruption sometimes leading to NULL
+   dereference caused by indirectly broken .Nd or .Nm blocks.
+ * mdoc(7) -Thtml: Fix a NULL dereference for .Bl -column with 0 columns.
+ * mdoc(7): Fix NULL dereference in some specific cases of a
+   block-end macro calling another block-end macro.
+ * mdoc(7): Fix NULL dereference if the only child of the head
+   of the first .Sh was an empty in-line macro.
+ * eqn(7): Fix NULL dereference in the terminal formatter
+   for empty matrices and empty square roots.
+ * mdoc(7): Fix an assertion failure for a .Bd without a type that
+   breaks another block.
+ * mdoc(7): Fix an assertion failure that happened for some .Bl -column
+   lists containing a column width of "-4n", "-3n", or "-2n".
+ * mdoc(7): Fix an assertion failure caused by .Bl -column without .It
+   but containing eqn(7) or tbl(7) code.
+ * roff(7): Fix an assertion failure caused by \z\[u00FF] with -Tps/-Tpdf.
+ * roff(7): Fix an assertion failures caused by whitespace inside \o''
+   (overstrike) sequences.
+ * -Thtml: Fix an assertion failure caused by -Oman or -Oincludes of
+   excessive length.
+    --- PORTABILITY IMPROVEMENTS ---
+ * man(1): Do not mix stdio narrow and wide stream orientation
+   on stdout, which could cause output corruption on glibc.
+ * mandoc(1): Autodetect a suitable locale for -Tutf8 mode.
+ * ./configure: Autodetect whether PATH_MAX and O_DIRECTORY are defined.
+ * ./configure: Autodetect if nanosleep(3) needs -lrt.
+ * ./configure: Provide an ${LN} configuration variable.
+ * ./configure: Put compiler arguments that may contain -l at the end.
+    --- MINOR BUGFIXES ---
+ * mdoc(7): Fix SYNOPSIS output if the first child of .Nm is a macro.
+ * mdoc(7) -Thtml: Improve formatting of .Bl -tag with short tags.
+ * man(7) -Thtml: Preserve whitespace in .nf (nofill) mode.
+ * mandoc(1): Error out on invalid output options on the command line.
+    --- STRUCTURAL CHANGES, no functional change ---
+ * Redesign part of the mandoc_html(3) interfaces, making them much
+   easier to use and reducing the amount of code by a few hundred lines.
+    --- THANKS TO ---
+ * Michael Stapelberg (Debian) for designing the new mandocd(8)
+   and parts of the new catman(8), for release testing, and for a
+   number of patches and bug reports.
+ * Baptiste Daroussin (FreeBSD) for profiling the new makewhatis(8)
+   implementation and suggesting an algorithmic improvement which
+   more than doubled performance, and for a few bug reports.
+ * Ed Maste (FreeBSD) for an important patch improving reproducibility
+   of builds in makewhatis(8), and for a few bug reports.
+ * Theo Buehler (OpenBSD) for almost twenty important bug reports,
+   most of them found by systematic afl(1) fuzzing.
+ * Benny Lofgren, David Dahlberg, and in particular Vadim Zhukov
+   for crucial help in getting .Bl -tag CSS formatting fixed.
+ * Svyatoslav Mishyn (Crux Linux) for an initial version of the
+   patch to autodetect a suitable locale for -Tutf8 mode
+   and for release testing.
+ * Jason McIntyre (OpenBSD) for multiple useful discussions
+   and a number of bug reports.
+ * Sevan Janiyan (NetBSD) for extensive release testing and multiple
+   bug reports.
+ * Thomas Klausner and Christos Zoulas (NetBSD), Yuri Pankov (illumos),
+   and Leah Neukirchen (Void Linux) for release testing and bug reports.
+ * Ulrich Spoerlein (FreeBSD) for release testing.
+ * Alexander Bluhm, Andrew Fresh, Antoine Jacoutot, Antony Bentley,
+   Christian Weisgerber, Jonathan Gray, Marc Espie, Martijn van Duren,
+   Stuart Henderson, Ted Unangst, Theo de Raadt (OpenBSD), Abhinav
+   Upadhyay, Kamil Rytarowski (NetBSD), Aaron M. Ucko, Bdale Garbee,
+   Reiner Herrmann, Shane Kerr (Debian), Daniel Sabogal (Alpine Linux),
+   Carsten Kunze (Heirloom roff), Kristaps Dzonsons (bsd.lv),
+   Anton Lindqvist, Jan Stary, Jeremy A. Mates, Mark Patruck,
+   Pavan Maddamsetti, Sean Levy <attila@stalphonsos.com>, and
+   Tiago Silva for bug reports.
+ * Brent Cook, Marc Espie, Philip Guenther, Todd Miller (OpenBSD)
+   and Markus Waldeck for useful discussions.
+ * And as usual, OpenCSW for providing me with a Solaris 9/10/11
+   testing environment.
+
 Changes in version 1.13.4, released on July 14, 2016
 
     --- MAJOR NEW FEATURES ---
@@ -109,7 +323,7 @@ Changes in version 1.13.4, released on July 14, 2016
    again resulting in more than half a dozen important bug reports.
  * Svyatoslav Mishyn (Crux Linux) for some patches, several bug
    reports, and extensive release testing.
- * Christian Neukirchen (void Linux) for a number of compatibility
+ * Leah Neukirchen (Void Linux) for a number of compatibility
    patches and suggestions and several bug reports.
  * Christos Zoulas (NetBSD) for a bug fix patch and some useful
    suggestions for cleanup.
@@ -146,11 +360,11 @@ Changes in version 1.13.3, released on March 13, 2015
  * New -Wunsupp message level.
     --- POTENTIONALLY SECURITY RELEVANT BUGFIXES ---
  * Fix a potential write buffer overrun on incomplete string conditionals.
-   http://mdocml.bsd.lv/cgi-bin/cvsweb/roff.c#rev1.241
+   http://mandoc.bsd.lv/cgi-bin/cvsweb/roff.c#rev1.241
  * Fix a potential write buffer overrun on backslash at EOF in a conditional.
-   http://mdocml.bsd.lv/cgi-bin/cvsweb/roff.c#rev1.247
+   http://mandoc.bsd.lv/cgi-bin/cvsweb/roff.c#rev1.247
  * Fix a use after free sometimes hit when validation deletes a block.
-   http://mdocml.bsd.lv/cgi-bin/cvsweb/mdoc_macro.c#rev1.180
+   http://mandoc.bsd.lv/cgi-bin/cvsweb/mdoc_macro.c#rev1.180
     --- MAJOR FUNCTIONALLY RELEVANT BUGFIXES ---
  * Let man(1) show manuals for the current architecture by default,
    and support the MACHINE environment variable.
@@ -761,4 +975,4 @@ Changes in version 1.9.15, released on February 18, 20
  * and column lengths handled correctly.
 
 For older releases, see the ChangeLog files
-in http://mdocml.bsd.lv/snapshots/ .
+in http://mandoc.bsd.lv/snapshots/ .

Modified: stable/11/contrib/mdocml/TODO
==============================================================================
--- stable/11/contrib/mdocml/TODO	Tue Aug  8 11:35:02 2017	(r322248)
+++ stable/11/contrib/mdocml/TODO	Tue Aug  8 11:35:27 2017	(r322249)
@@ -1,6 +1,6 @@
 ************************************************************************
 * Official mandoc TODO.
-* $Id: TODO,v 1.223 2017/01/17 15:32:43 schwarze Exp $
+* $Id: TODO,v 1.246 2017/07/24 11:15:12 schwarze Exp $
 ************************************************************************
 
 Many issues are annotated for difficulty as follows:
@@ -61,37 +61,14 @@ are mere guesses, and some may be wrong.
   reported by brad@  Sat, 15 Jan 2011 15:45:23 -0500
   loc ***  exist ***  algo ***  size **  imp *
 
-- .ta (tab settings)
-  #1 most important issue naddy@ Mon, 16 Feb 2015 20:59:17 +0100
-  ircbug(1) gnats(1) reported by brad@  Sat, 15 Jan 2011 15:50:51 -0500
-  also Tcl_NewStringObj(3) via wiz@  Wed, 5 Mar 2014 22:27:43 +0100
-  also posix2time(3) Carsten Kunze  Mon, 1 Dec 2014 13:03:10 +0100
-  loc **  exist ***  algo **  size **  imp ***

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201708081135.v78BZRe3051731>