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