pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/textproc/mandoc Import mandoc-1.14.2 as textproc/mandoc.



details:   https://anonhg.NetBSD.org/pkgsrc/rev/ba9dfaaacd2e
branches:  trunk
changeset: 366034:ba9dfaaacd2e
user:      wiz <wiz%pkgsrc.org@localhost>
date:      Tue Aug 01 15:06:24 2017 +0000

description:
Import mandoc-1.14.2 as textproc/mandoc.

The mandoc manual page parser and formatter contains:
 * complete validating parsers for the mdoc and man languages
 * a slightly incomplete parser handling most of the tbl language
 * a very incomplete parser handling a part of the eqn language
 * support for a few selected roff requests that often occur in manuals
 * complete ASCII, UTF8, HTML and XHTML text output formatters
 * simple PostScript and PDF output formatters
 * output formatters producing indented mdoc and man parse trees

To format manuals for console display, it can be used as a smaller
and faster drop-in replacement for nroff -mandoc.  Some rare manuals
using lots of uncommon low-level roff requests may not work with
mandoc but require a full roff implementation.

Changes to mdocml-1.14.1:

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.

diffstat:

 textproc/mandoc/DESCR                   |  13 ++++++++
 textproc/mandoc/Makefile                |  51 +++++++++++++++++++++++++++++++++
 textproc/mandoc/PLIST                   |  23 ++++++++++++++
 textproc/mandoc/distinfo                |   8 +++++
 textproc/mandoc/patches/patch-configure |  15 +++++++++
 textproc/mandoc/patches/patch-roff.7    |  19 ++++++++++++
 6 files changed, 129 insertions(+), 0 deletions(-)

diffs (153 lines):

diff -r ee86fcda8645 -r ba9dfaaacd2e textproc/mandoc/DESCR
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/textproc/mandoc/DESCR     Tue Aug 01 15:06:24 2017 +0000
@@ -0,0 +1,13 @@
+The mandoc manual page parser and formatter contains:
+ * complete validating parsers for the mdoc and man languages
+ * a slightly incomplete parser handling most of the tbl language
+ * a very incomplete parser handling a part of the eqn language
+ * support for a few selected roff requests that often occur in manuals
+ * complete ASCII, UTF8, HTML and XHTML text output formatters
+ * simple PostScript and PDF output formatters
+ * output formatters producing indented mdoc and man parse trees
+
+To format manuals for console display, it can be used as a smaller
+and faster drop-in replacement for nroff -mandoc.  Some rare manuals
+using lots of uncommon low-level roff requests may not work with
+mandoc but require a full roff implementation.
diff -r ee86fcda8645 -r ba9dfaaacd2e textproc/mandoc/Makefile
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/textproc/mandoc/Makefile  Tue Aug 01 15:06:24 2017 +0000
@@ -0,0 +1,51 @@
+# $NetBSD: Makefile,v 1.1 2017/08/01 15:06:24 wiz Exp $
+
+DISTNAME=      mandoc-1.14.2
+CATEGORIES=    textproc devel
+MASTER_SITES=  http://mdocml.bsd.lv/snapshots/
+
+MAINTAINER=    schwarze%usta.de@localhost
+HOMEPAGE=      http://mdocml.bsd.lv/
+COMMENT=       Convert man pages from mdoc, man, and tbl to txt, html, ps, or pdf
+LICENSE=       2-clause-bsd # not exactly, but near enough
+
+HAS_CONFIGURE= yes
+
+WRKSRC=                ${WRKDIR}/${DISTNAME:C/rc[0-9]*//}
+
+SUBST_CLASSES+=                roff
+SUBST_STAGE.roff=      pre-build
+SUBST_FILES.roff=      mandoc.1 mandoc.3
+SUBST_FILES.roff+=     eqn.7 man.7 mdoc.7 tbl.7
+SUBST_SED.roff=                -e 's,Xr roff,Xr mandoc-roff,g'
+
+# test needs perl
+USE_TOOLS+=    perl:build
+TEST_TARGET=   regress
+
+.include "../../mk/bsd.fast.prefs.mk"
+
+post-extract:
+       ${ECHO} PREFIX=${PREFIX} > ${WRKSRC}/configure.local
+       ${ECHO} MANDIR=${PREFIX}/${PKGMANDIR} >> ${WRKSRC}/configure.local
+       ${ECHO} CFLAGS=\"${CFLAGS:Q}\" >> ${WRKSRC}/configure.local
+       ${ECHO} LDFLAGS=\"${LDFLAGS:Q}\" >> ${WRKSRC}/configure.local
+       ${ECHO} LD_SQLITE3=\"${LDFLAGS} -lsqlite3\" >> ${WRKSRC}/configure.local
+       ${ECHO} INSTALL=\"${INSTALL:Q}\" >> ${WRKSRC}/configure.local
+       ${ECHO} INSTALL_PROGRAM=\"${INSTALL_PROGRAM:Q}\" >> ${WRKSRC}/configure.local
+       ${ECHO} INSTALL_LIB=\"${INSTALL_DATA:Q}\" >> ${WRKSRC}/configure.local
+       ${ECHO} INSTALL_MAN=\"${INSTALL_MAN:Q}\" >> ${WRKSRC}/configure.local
+       ${ECHO} INSTALL_DATA=\"${INSTALL_DATA:Q}\" >> ${WRKSRC}/configure.local
+       ${ECHO} MANM_ROFF="mandoc-roff" >> ${WRKSRC}/configure.local
+       ${ECHO} BINM_SOELIM="msoelim" >> ${WRKSRC}/configure.local
+# Need -lrt for nanosleep(2) on Solaris.
+.if ${OPSYS} == "SunOS"
+       ${ECHO} LDADD=\"-lrt\" >> ${WRKSRC}/configure.local
+.endif
+# Mac OS X and Solaris 10 and newer do not support static binaries.
+.if ${OPSYS} == "Darwin" || ${OPSYS} == "SunOS"
+       ${ECHO} STATIC= >> ${WRKSRC}/configure.local
+.endif
+
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff -r ee86fcda8645 -r ba9dfaaacd2e textproc/mandoc/PLIST
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/textproc/mandoc/PLIST     Tue Aug 01 15:06:24 2017 +0000
@@ -0,0 +1,23 @@
+@comment $NetBSD: PLIST,v 1.1 2017/08/01 15:06:24 wiz Exp $
+bin/apropos
+bin/demandoc
+bin/man
+bin/mandoc
+bin/msoelim
+bin/whatis
+man/man1/apropos.1
+man/man1/demandoc.1
+man/man1/man.1
+man/man1/mandoc.1
+man/man1/msoelim.1
+man/man1/whatis.1
+man/man5/man.conf.5
+man/man5/mandoc.db.5
+man/man7/eqn.7
+man/man7/man.7
+man/man7/mandoc-roff.7
+man/man7/mandoc_char.7
+man/man7/mdoc.7
+man/man7/tbl.7
+man/man8/makewhatis.8
+sbin/makewhatis
diff -r ee86fcda8645 -r ba9dfaaacd2e textproc/mandoc/distinfo
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/textproc/mandoc/distinfo  Tue Aug 01 15:06:24 2017 +0000
@@ -0,0 +1,8 @@
+$NetBSD: distinfo,v 1.1 2017/08/01 15:06:24 wiz Exp $
+
+SHA1 (mandoc-1.14.2.tar.gz) = f0c0398398af88364f56334e93c1b307c5bea7df
+RMD160 (mandoc-1.14.2.tar.gz) = f572c277d8b2eccd7a8bc9f6e1b15ee11626a6ef
+SHA512 (mandoc-1.14.2.tar.gz) = 1691e4552b0417a30a3a546cff651665f8b4b3fbe2357c734546ca29c56eef9c971a6bd88daa170f4697fb50d14048138f4bc6f5ef55aa24a7ac03903d04c868
+Size (mandoc-1.14.2.tar.gz) = 616843 bytes
+SHA1 (patch-configure) = bd53ddf7d98de53bc04dafe6b2dbb1b79e35399e
+SHA1 (patch-roff.7) = a11e2377e034393f4d900d292b094a9e751a6c0a
diff -r ee86fcda8645 -r ba9dfaaacd2e textproc/mandoc/patches/patch-configure
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/textproc/mandoc/patches/patch-configure   Tue Aug 01 15:06:24 2017 +0000
@@ -0,0 +1,15 @@
+$NetBSD: patch-configure,v 1.1 2017/08/01 15:06:24 wiz Exp $
+
+Avoid broken CC detection.
+
+--- configure.orig     2017-02-21 00:25:20.000000000 +0000
++++ configure
+@@ -39,7 +39,7 @@ MANPATH_DEFAULT="/usr/share/man:/usr/X11
+ OSNAME=
+ UTF8_LOCALE=
+ 
+-CC=`printf "all:\\n\\t@echo \\\$(CC)\\n" | env -i make -sf -`
++#CC=`printf "all:\\n\\t@echo \\\$(CC)\\n" | env -i make -sf -`
+ CFLAGS="-g -W -Wall -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings"
+ CFLAGS="${CFLAGS} -Wno-unused-parameter"
+ LDADD=
diff -r ee86fcda8645 -r ba9dfaaacd2e textproc/mandoc/patches/patch-roff.7
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/textproc/mandoc/patches/patch-roff.7      Tue Aug 01 15:06:24 2017 +0000
@@ -0,0 +1,19 @@
+$NetBSD: patch-roff.7,v 1.1 2017/08/01 15:06:24 wiz Exp $
+
+Install roff with 'mandoc-' prefix to avoid conflict with groff.
+
+--- roff.7.orig        2017-07-20 16:39:59.000000000 +0000
++++ roff.7
+@@ -16,10 +16,10 @@
+ .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ .\"
+ .Dd $Mdocdate: July 5 2017 $
+-.Dt ROFF 7
++.Dt MANDOC-ROFF 7
+ .Os
+ .Sh NAME
+-.Nm roff
++.Nm mandoc-roff
+ .Nd roff language reference for mandoc
+ .Sh DESCRIPTION
+ The



Home | Main Index | Thread Index | Old Index