From owner-svn-src-projects@FreeBSD.ORG Sun Nov 23 01:08:47 2014 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EE959867; Sun, 23 Nov 2014 01:08:46 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D68EEC66; Sun, 23 Nov 2014 01:08:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sAN18kaH017163; Sun, 23 Nov 2014 01:08:46 GMT (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sAN18hXa017148; Sun, 23 Nov 2014 01:08:43 GMT (envelope-from glebius@FreeBSD.org) Message-Id: <201411230108.sAN18hXa017148@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: glebius set sender to glebius@FreeBSD.org using -f From: Gleb Smirnoff Date: Sun, 23 Nov 2014 01:08:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r274908 - in projects/sendfile: bin/sh contrib/binutils/gas/config contrib/libarchive/cpio contrib/mdocml contrib/sqlite3 etc/defaults lib lib/libmandoc lib/libsqlite3 sbin/mount sbin/u... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 23 Nov 2014 01:08:47 -0000 Author: glebius Date: Sun Nov 23 01:08:42 2014 New Revision: 274908 URL: https://svnweb.freebsd.org/changeset/base/274908 Log: Merge head r258543 through r274907. Added: projects/sendfile/contrib/mdocml/INSTALL - copied unchanged from r274907, head/contrib/mdocml/INSTALL projects/sendfile/contrib/mdocml/LICENSE - copied unchanged from r274907, head/contrib/mdocml/LICENSE projects/sendfile/contrib/mdocml/Makefile - copied unchanged from r274907, head/contrib/mdocml/Makefile projects/sendfile/contrib/mdocml/Makefile.depend - copied unchanged from r274907, head/contrib/mdocml/Makefile.depend projects/sendfile/contrib/mdocml/apropos.1 - copied unchanged from r274907, head/contrib/mdocml/apropos.1 projects/sendfile/contrib/mdocml/apropos.c - copied unchanged from r274907, head/contrib/mdocml/apropos.c projects/sendfile/contrib/mdocml/cgi.c - copied unchanged from r274907, head/contrib/mdocml/cgi.c projects/sendfile/contrib/mdocml/cgi.h.example - copied unchanged from r274907, head/contrib/mdocml/cgi.h.example projects/sendfile/contrib/mdocml/compat_ohash.c - copied unchanged from r274907, head/contrib/mdocml/compat_ohash.c projects/sendfile/contrib/mdocml/compat_ohash.h - copied unchanged from r274907, head/contrib/mdocml/compat_ohash.h projects/sendfile/contrib/mdocml/compat_reallocarray.c - copied unchanged from r274907, head/contrib/mdocml/compat_reallocarray.c projects/sendfile/contrib/mdocml/compat_sqlite3_errstr.c - copied unchanged from r274907, head/contrib/mdocml/compat_sqlite3_errstr.c projects/sendfile/contrib/mdocml/compat_strcasestr.c - copied unchanged from r274907, head/contrib/mdocml/compat_strcasestr.c projects/sendfile/contrib/mdocml/compat_strsep.c - copied unchanged from r274907, head/contrib/mdocml/compat_strsep.c projects/sendfile/contrib/mdocml/config.h.post - copied unchanged from r274907, head/contrib/mdocml/config.h.post projects/sendfile/contrib/mdocml/config.h.pre - copied unchanged from r274907, head/contrib/mdocml/config.h.pre projects/sendfile/contrib/mdocml/configure - copied unchanged from r274907, head/contrib/mdocml/configure projects/sendfile/contrib/mdocml/demandoc.1 - copied unchanged from r274907, head/contrib/mdocml/demandoc.1 projects/sendfile/contrib/mdocml/demandoc.c - copied unchanged from r274907, head/contrib/mdocml/demandoc.c projects/sendfile/contrib/mdocml/gmdiff - copied unchanged from r274907, head/contrib/mdocml/gmdiff projects/sendfile/contrib/mdocml/makewhatis.8 - copied unchanged from r274907, head/contrib/mdocml/makewhatis.8 projects/sendfile/contrib/mdocml/man-cgi.css - copied unchanged from r274907, head/contrib/mdocml/man-cgi.css projects/sendfile/contrib/mdocml/man.cgi.8 - copied unchanged from r274907, head/contrib/mdocml/man.cgi.8 projects/sendfile/contrib/mdocml/mandoc.db.5 - copied unchanged from r274907, head/contrib/mdocml/mandoc.db.5 projects/sendfile/contrib/mdocml/mandoc_aux.c - copied unchanged from r274907, head/contrib/mdocml/mandoc_aux.c projects/sendfile/contrib/mdocml/mandoc_aux.h - copied unchanged from r274907, head/contrib/mdocml/mandoc_aux.h projects/sendfile/contrib/mdocml/mandoc_escape.3 - copied unchanged from r274907, head/contrib/mdocml/mandoc_escape.3 projects/sendfile/contrib/mdocml/mandoc_html.3 - copied unchanged from r274907, head/contrib/mdocml/mandoc_html.3 projects/sendfile/contrib/mdocml/mandoc_malloc.3 - copied unchanged from r274907, head/contrib/mdocml/mandoc_malloc.3 projects/sendfile/contrib/mdocml/mandocdb.c - copied unchanged from r274907, head/contrib/mdocml/mandocdb.c projects/sendfile/contrib/mdocml/manpage.c - copied unchanged from r274907, head/contrib/mdocml/manpage.c projects/sendfile/contrib/mdocml/manpath.c - copied unchanged from r274907, head/contrib/mdocml/manpath.c projects/sendfile/contrib/mdocml/manpath.h - copied unchanged from r274907, head/contrib/mdocml/manpath.h projects/sendfile/contrib/mdocml/mansearch.3 - copied unchanged from r274907, head/contrib/mdocml/mansearch.3 projects/sendfile/contrib/mdocml/mansearch.c - copied unchanged from r274907, head/contrib/mdocml/mansearch.c projects/sendfile/contrib/mdocml/mansearch.h - copied unchanged from r274907, head/contrib/mdocml/mansearch.h projects/sendfile/contrib/mdocml/mansearch_const.c - copied unchanged from r274907, head/contrib/mdocml/mansearch_const.c projects/sendfile/contrib/mdocml/mchars_alloc.3 - copied unchanged from r274907, head/contrib/mdocml/mchars_alloc.3 projects/sendfile/contrib/mdocml/preconv.1 - copied unchanged from r274907, head/contrib/mdocml/preconv.1 projects/sendfile/contrib/mdocml/preconv.c - copied unchanged from r274907, head/contrib/mdocml/preconv.c projects/sendfile/contrib/mdocml/tbl.3 - copied unchanged from r274907, head/contrib/mdocml/tbl.3 projects/sendfile/contrib/mdocml/test-fgetln.c - copied unchanged from r274907, head/contrib/mdocml/test-fgetln.c projects/sendfile/contrib/mdocml/test-getsubopt.c - copied unchanged from r274907, head/contrib/mdocml/test-getsubopt.c projects/sendfile/contrib/mdocml/test-mmap.c - copied unchanged from r274907, head/contrib/mdocml/test-mmap.c projects/sendfile/contrib/mdocml/test-ohash.c - copied unchanged from r274907, head/contrib/mdocml/test-ohash.c projects/sendfile/contrib/mdocml/test-reallocarray.c - copied unchanged from r274907, head/contrib/mdocml/test-reallocarray.c projects/sendfile/contrib/mdocml/test-sqlite3_errstr.c - copied unchanged from r274907, head/contrib/mdocml/test-sqlite3_errstr.c projects/sendfile/contrib/mdocml/test-strcasestr.c - copied unchanged from r274907, head/contrib/mdocml/test-strcasestr.c projects/sendfile/contrib/mdocml/test-strlcat.c - copied unchanged from r274907, head/contrib/mdocml/test-strlcat.c projects/sendfile/contrib/mdocml/test-strlcpy.c - copied unchanged from r274907, head/contrib/mdocml/test-strlcpy.c projects/sendfile/contrib/mdocml/test-strptime.c - copied unchanged from r274907, head/contrib/mdocml/test-strptime.c projects/sendfile/contrib/mdocml/test-strsep.c - copied unchanged from r274907, head/contrib/mdocml/test-strsep.c projects/sendfile/lib/libsqlite3/ - copied from r274907, head/lib/libsqlite3/ projects/sendfile/usr.bin/demandoc/ - copied from r274907, head/usr.bin/demandoc/ projects/sendfile/usr.bin/preconv/ - copied from r274907, head/usr.bin/preconv/ projects/sendfile/usr.bin/soeliminate/ - copied from r274907, head/usr.bin/soeliminate/ Deleted: projects/sendfile/contrib/mdocml/external.png projects/sendfile/sys/dev/joy/joy_pccard.c projects/sendfile/usr.bin/svn/lib/libsqlite3/ Modified: projects/sendfile/bin/sh/error.c projects/sendfile/bin/sh/expand.c projects/sendfile/bin/sh/parser.c projects/sendfile/contrib/binutils/gas/config/tc-arm.c projects/sendfile/contrib/libarchive/cpio/cpio.c projects/sendfile/contrib/mdocml/NEWS projects/sendfile/contrib/mdocml/TODO projects/sendfile/contrib/mdocml/arch.c projects/sendfile/contrib/mdocml/arch.in projects/sendfile/contrib/mdocml/att.c projects/sendfile/contrib/mdocml/chars.c projects/sendfile/contrib/mdocml/chars.in projects/sendfile/contrib/mdocml/config.h projects/sendfile/contrib/mdocml/eqn.c projects/sendfile/contrib/mdocml/eqn_html.c projects/sendfile/contrib/mdocml/eqn_term.c projects/sendfile/contrib/mdocml/html.c projects/sendfile/contrib/mdocml/html.h projects/sendfile/contrib/mdocml/lib.c projects/sendfile/contrib/mdocml/lib.in projects/sendfile/contrib/mdocml/libman.h projects/sendfile/contrib/mdocml/libmandoc.h projects/sendfile/contrib/mdocml/libmdoc.h projects/sendfile/contrib/mdocml/libroff.h projects/sendfile/contrib/mdocml/main.c projects/sendfile/contrib/mdocml/main.h projects/sendfile/contrib/mdocml/man.7 projects/sendfile/contrib/mdocml/man.c projects/sendfile/contrib/mdocml/man.h projects/sendfile/contrib/mdocml/man_hash.c projects/sendfile/contrib/mdocml/man_html.c projects/sendfile/contrib/mdocml/man_macro.c projects/sendfile/contrib/mdocml/man_term.c projects/sendfile/contrib/mdocml/man_validate.c projects/sendfile/contrib/mdocml/mandoc.1 projects/sendfile/contrib/mdocml/mandoc.3 projects/sendfile/contrib/mdocml/mandoc.c projects/sendfile/contrib/mdocml/mandoc.h projects/sendfile/contrib/mdocml/mdoc.7 projects/sendfile/contrib/mdocml/mdoc.c projects/sendfile/contrib/mdocml/mdoc.h projects/sendfile/contrib/mdocml/mdoc_argv.c projects/sendfile/contrib/mdocml/mdoc_hash.c projects/sendfile/contrib/mdocml/mdoc_html.c projects/sendfile/contrib/mdocml/mdoc_macro.c projects/sendfile/contrib/mdocml/mdoc_man.c projects/sendfile/contrib/mdocml/mdoc_term.c projects/sendfile/contrib/mdocml/mdoc_validate.c projects/sendfile/contrib/mdocml/msec.c projects/sendfile/contrib/mdocml/out.c projects/sendfile/contrib/mdocml/out.h projects/sendfile/contrib/mdocml/read.c projects/sendfile/contrib/mdocml/roff.7 projects/sendfile/contrib/mdocml/roff.c projects/sendfile/contrib/mdocml/st.c projects/sendfile/contrib/mdocml/st.in projects/sendfile/contrib/mdocml/tbl.c projects/sendfile/contrib/mdocml/tbl_data.c projects/sendfile/contrib/mdocml/tbl_html.c projects/sendfile/contrib/mdocml/tbl_layout.c projects/sendfile/contrib/mdocml/tbl_opts.c projects/sendfile/contrib/mdocml/tbl_term.c projects/sendfile/contrib/mdocml/term.c projects/sendfile/contrib/mdocml/term.h projects/sendfile/contrib/mdocml/term_ascii.c projects/sendfile/contrib/mdocml/term_ps.c projects/sendfile/contrib/mdocml/tree.c projects/sendfile/contrib/mdocml/vol.c projects/sendfile/contrib/sqlite3/configure projects/sendfile/contrib/sqlite3/configure.ac projects/sendfile/contrib/sqlite3/shell.c projects/sendfile/contrib/sqlite3/sqlite3.c projects/sendfile/contrib/sqlite3/sqlite3.h projects/sendfile/contrib/sqlite3/sqlite3ext.h projects/sendfile/etc/defaults/rc.conf projects/sendfile/lib/Makefile projects/sendfile/lib/libmandoc/Makefile projects/sendfile/sbin/mount/mount.8 projects/sendfile/sbin/umount/umount.8 projects/sendfile/share/mk/bsd.libnames.mk projects/sendfile/share/mk/src.libnames.mk projects/sendfile/sys/arm/arm/busdma_machdep-v6.c projects/sendfile/sys/cam/ctl/ctl_frontend_iscsi.c projects/sendfile/sys/conf/files projects/sendfile/sys/dev/asr/asr.c projects/sendfile/sys/dev/iscsi/icl.c projects/sendfile/sys/dev/iscsi/iscsi.c projects/sendfile/sys/dev/pccard/pccardvar.h projects/sendfile/sys/dev/usb/controller/saf1761_otg.c projects/sendfile/sys/dev/usb/controller/saf1761_otg_reg.h projects/sendfile/sys/dev/wi/if_wi_pccard.c projects/sendfile/sys/fs/autofs/autofs.c projects/sendfile/sys/fs/autofs/autofs.h projects/sendfile/sys/fs/autofs/autofs_vfsops.c projects/sendfile/sys/kern/imgact_elf.c projects/sendfile/sys/kern/kern_descrip.c projects/sendfile/sys/modules/joy/Makefile projects/sendfile/sys/ufs/ffs/ffs_suspend.c projects/sendfile/sys/ufs/ufs/ufs_acl.c projects/sendfile/sys/ufs/ufs/ufs_dirhash.c projects/sendfile/sys/ufs/ufs/ufs_gjournal.c projects/sendfile/sys/ufs/ufs/ufsmount.h projects/sendfile/sys/vm/vm_reserv.c projects/sendfile/usr.bin/Makefile projects/sendfile/usr.bin/dpv/Makefile projects/sendfile/usr.bin/locate/locate/util.c projects/sendfile/usr.bin/man/man.sh projects/sendfile/usr.bin/mandoc/Makefile projects/sendfile/usr.bin/svn/Makefile.inc projects/sendfile/usr.bin/svn/lib/Makefile projects/sendfile/usr.bin/svn/svn/Makefile projects/sendfile/usr.bin/svn/svnadmin/Makefile projects/sendfile/usr.bin/svn/svndumpfilter/Makefile projects/sendfile/usr.bin/svn/svnlook/Makefile projects/sendfile/usr.bin/svn/svnmucc/Makefile projects/sendfile/usr.bin/svn/svnrdump/Makefile projects/sendfile/usr.bin/svn/svnserve/Makefile projects/sendfile/usr.bin/svn/svnsync/Makefile projects/sendfile/usr.bin/svn/svnversion/Makefile projects/sendfile/usr.sbin/autofs/automount.8 projects/sendfile/usr.sbin/autofs/automount.c projects/sendfile/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_snmp.c projects/sendfile/usr.sbin/ctld/ctld.c projects/sendfile/usr.sbin/ctld/ctld.h projects/sendfile/usr.sbin/iscsid/iscsid.c projects/sendfile/usr.sbin/iscsid/iscsid.h projects/sendfile/usr.sbin/rtadvd/rtadvd.c Directory Properties: projects/sendfile/ (props changed) projects/sendfile/contrib/binutils/ (props changed) projects/sendfile/contrib/libarchive/ (props changed) projects/sendfile/contrib/libarchive/cpio/ (props changed) projects/sendfile/contrib/mdocml/ (props changed) projects/sendfile/contrib/sqlite3/ (props changed) projects/sendfile/etc/ (props changed) projects/sendfile/sbin/ (props changed) projects/sendfile/share/ (props changed) projects/sendfile/sys/ (props changed) projects/sendfile/sys/conf/ (props changed) projects/sendfile/usr.sbin/rtadvd/ (props changed) Modified: projects/sendfile/bin/sh/error.c ============================================================================== --- projects/sendfile/bin/sh/error.c Sun Nov 23 01:02:19 2014 (r274907) +++ projects/sendfile/bin/sh/error.c Sun Nov 23 01:08:42 2014 (r274908) @@ -139,6 +139,8 @@ vwarning(const char *msg, va_list ap) { if (commandname) outfmt(out2, "%s: ", commandname); + else if (arg0) + outfmt(out2, "%s: ", arg0); doformat(out2, msg, ap); out2fmt_flush("\n"); } Modified: projects/sendfile/bin/sh/expand.c ============================================================================== --- projects/sendfile/bin/sh/expand.c Sun Nov 23 01:02:19 2014 (r274907) +++ projects/sendfile/bin/sh/expand.c Sun Nov 23 01:08:42 2014 (r274908) @@ -337,7 +337,7 @@ done: if (home == NULL || *home == '\0') return (startp); if (quotes) - STPUTS_QUOTES(home, SQSYNTAX, expdest); + STPUTS_QUOTES(home, DQSYNTAX, expdest); else STPUTS(home, expdest); return (p); Modified: projects/sendfile/bin/sh/parser.c ============================================================================== --- projects/sendfile/bin/sh/parser.c Sun Nov 23 01:02:19 2014 (r274907) +++ projects/sendfile/bin/sh/parser.c Sun Nov 23 01:08:42 2014 (r274908) @@ -1879,6 +1879,8 @@ synerror(const char *msg) { if (commandname) outfmt(out2, "%s: %d: ", commandname, startlinno); + else if (arg0) + outfmt(out2, "%s: ", arg0); outfmt(out2, "Syntax error: %s\n", msg); error((char *)NULL); } Modified: projects/sendfile/contrib/binutils/gas/config/tc-arm.c ============================================================================== --- projects/sendfile/contrib/binutils/gas/config/tc-arm.c Sun Nov 23 01:02:19 2014 (r274907) +++ projects/sendfile/contrib/binutils/gas/config/tc-arm.c Sun Nov 23 01:08:42 2014 (r274908) @@ -6079,7 +6079,7 @@ parse_operands (char *str, const unsigne /* Functions for operand encoding. ARM, then Thumb. */ -#define rotate_left(v, n) (v << n | v >> (32 - n)) +#define rotate_left(v, n) (v << (n % 32) | v >> ((32 - n) % 32)) /* If VAL can be encoded in the immediate field of an ARM instruction, return the encoded form. Otherwise, return FAIL. */ Modified: projects/sendfile/contrib/libarchive/cpio/cpio.c ============================================================================== --- projects/sendfile/contrib/libarchive/cpio/cpio.c Sun Nov 23 01:02:19 2014 (r274907) +++ projects/sendfile/contrib/libarchive/cpio/cpio.c Sun Nov 23 01:08:42 2014 (r274908) @@ -1140,7 +1140,8 @@ list_item_verbose(struct cpio *cpio, str else fmt = cpio->day_first ? "%d %b %H:%M" : "%b %d %H:%M"; #else - if (abs(mtime - now) > (365/2)*86400) + if (mtime - now > 365*86400/2 + || mtime - now < -365*86400/2) fmt = cpio->day_first ? "%e %b %Y" : "%b %e %Y"; else fmt = cpio->day_first ? "%e %b %H:%M" : "%b %e %H:%M"; Copied: projects/sendfile/contrib/mdocml/INSTALL (from r274907, head/contrib/mdocml/INSTALL) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/sendfile/contrib/mdocml/INSTALL Sun Nov 23 01:08:42 2014 (r274908, copy of r274907, head/contrib/mdocml/INSTALL) @@ -0,0 +1,187 @@ +$Id: INSTALL,v 1.2 2014/08/10 17:22:26 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. +The toolset does not yet implement man(1); that is only scheduled +for the next release, 1.13.2. It can, however, already serve to +translate source manpages to the output displayed by man(1). +For general information, see . + +In this document, we describe the installation and deployment of +mandoc(1), first as a simple, standalone formatter, and then as part of +the man(1) system. + +In case you have questions or want to provide feedback, read +. 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, August 2014 + + +Installation +------------ +Before manually installing mandoc on your system, please check +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 . + +If mandoc is installed, you can check the version by running "mandoc -V". +The version contained in this distribution tarball is listed near +the beginning of the file "Makefile". + +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. Decide whether you want to build the base tools mandoc(1), +preconv(1) and demandoc(1) only or whether you also want to build the +database tools apropos(1) and makewhatis(8). For the latter, +the following dependencies are required: + +1.1. The SQLite database system, see . +The recommended version of SQLite is 3.8.4.3 or newer. The mandoc +toolset is known to work with version 3.7.5 or newer. Versions +older than 3.8.3 may not achieve full performance due to the +missing SQLITE_DETERMINISTIC optimization flag. Versions older +than 3.8.0 may not show full error information if opening a database +fails due to the missing sqlite3_errstr() API. Both are very minor +problems, apropos(1) is fully usable with SQLite 3.7.5. Versions +older than 3.7.5 may or may not work, they have not been tested. + +1.2. The fts(3) directory traversion functions. +A compatibility version will be bundled for 1.13.2 but is not available +yet. If you want apropos(1) and makewhatis(8) but do not have fts(3), +please stay with mandoc 1.12.3 for now and upgrade first to 1.12.4, +then to 1.13.2 when these versionns are released. Be careful: the +glibc version of fts(3) is known to be broken on 32bit platforms, +see . + +1.3. Marc Espie's ohash(3) library. +If your system does not have it, the bundled compatibility version +will be used, so you probably need not worry about it. + +2. If you choose to build the database tools, too, decide whether +you also want to build the CGI program, man.cgi(8). + +3. Read the beginning of the file "Makefile" from "USER SETTINGS" +to "END OF USER SETTINGS" and edit it as required. In particular, +disable "BUILD_TARGETS += db-build" if you do not want database +support or enable "BUILD_TARGETS += cgi-build" if you do want +the CGI program. + +4. Run "make". No separate "./configure" or "make depend" steps +are needed. The former is run automatically by "make". The latter +is a maintainer target. If you merely want to build the released +version as opposed to doing active development, there is no need +to regenerate the dependency specifications. Any POSIX-compatible +make, in particular both BSD make and GNU make, should work. + +5. Run "make -n install" and check whether everything will be +installed to the intended places. Otherwise, edit the *DIR variables +in the Makefile until it is. + +6. 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. To set up a man.cgi(8) server, read its manual page. + +8. To use mandoc(1) as your man(1) formatter, read the "Deployment" +section below. + + +Checking autoconfiguration quality +---------------------------------- +If you want to check whether automatic configuration works well +on your platform, consider the following: + +The mandoc package intentionally does not use GNU autoconf because +we consider that toolset a blatant example of overengineering that +is obsolete nowadays, since all modern operating systems are now +reasonably close to POSIX and do not need arcane shell magic any +longer. If your system does need such magic, consider upgrading +to reasonably modern POSIX-compliant tools rather than asking for +autoconf-style workarounds. + +As far as mandoc is using any features not mandated by ANSI X3.159-1989 +("ANSI C") or IEEE Std 1003.1-2008 ("POSIX") that some modern systems +do not have, we intend to provide autoconfiguration tests and +compat_*.c implementations. Please report any that turn out to be +missing. Note that while we do strive to produce portable code, +we do not slavishly restrict ourselves to POSIX-only interfaces. +For improved security and readability, we do use well-designed, +modern interfaces like reallocarray(3) even if they are still rather +uncommon, of course bundling compat_*.c implementations as needed. + +Where mandoc is using ANSI C or POSIX features that some systems +still lack and that compat_*.c implementations can be provided for +without too much hassle, we will consider adding them, too, so +please report whatever is missing on your platform. + +The following steps can be used to manually check the automatic +configuration on your platform: + +1. Run "make clean". + +2. Run "make config.h" + +3. Read the file "config.log". It shows the compiler commands used +to test the libraries installed on your system and the standard +output and standard error output these commands produce. Watch out +for unexpected failures. Those are most likely to happen if headers +or libraries are installed in unusual places or interfaces defined +in unusual headers. You can also look at the file "config.h" and +check that no expected "#define HAVE_*" lines are missing. The +list of tests run can be found in the file "configure". + + +Deployment +---------- +If you want to integrate the mandoc(1) tools with your existing +man(1) system as a formatter, then contact us first: on systems without +mandoc(1) as the default, you may have your work cut out for you! +Usually, you can have your default installation and mandoc(1) work right +alongside each other by using user-specific versions of the files +mentioned below. + +0. Back up each file you want to change! + +1. First see whether your system has "/etc/man.conf" or "/etc/manpath.conf" +(if it has neither, but man(1) is functional, then let us know) or, +if running as your own user, a per-user override file. In either +case, find where man(1) is executing nroff(1) or groff(1) to format +manuals. Replace these calls with mandoc(1). + +2. Then make sure that man(1) isn't running preprocessors, so you may +need to replace tbl(1), eqn(1), and similar references with cat(1). +Some man(1) implementations, like that on Mac OSX, let you run "man -d" +to see how the formatter is invoked. Use this to test your changes. On +Mac OS X, for instance, man(1) will prepend all files with ".ll" and +".nr" to set the terminal size, so you need to pass "tail -n+2 | +mandoc(1)" to disregard them. + +3. Finally, make sure that mandoc(1) is actually being invoked instead +of cached pages being pulled up. You can usually do this by commenting +out NOCACHE or similar. + +mandoc(1) still has a long way to go in understanding non-trivial +low-level roff(7) markup embedded in some man(7) pages. On the BSD +systems using mandoc(1), third-party software is generally vetted +on whether it may be formatted with mandoc(1). If not, groff(1) +is pulled in as a dependency and used to install a pre-formatted +"catpage" intead of directly as manual page source. + +For more background on switching operating systems to use mandoc(1) +instead of groff(1) to format manuals, see the two BSDCan presentations +by Ingo Schwarze: + + Copied: projects/sendfile/contrib/mdocml/LICENSE (from r274907, head/contrib/mdocml/LICENSE) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/sendfile/contrib/mdocml/LICENSE Sun Nov 23 01:08:42 2014 (r274908, copy of r274907, head/contrib/mdocml/LICENSE) @@ -0,0 +1,44 @@ +$Id: LICENSE,v 1.2 2014/04/23 21:06:41 schwarze Exp $ + +With the exceptions noted below, all code and documentation +contained in the mdocml toolkit is protected by the Copyright +of the following developers: + +Copyright (c) 2008, 2009, 2010, 2011, 2012 Kristaps Dzonsons +Copyright (c) 2010, 2011, 2012, 2013, 2014 Ingo Schwarze +Copyright (c) 2009, 2010, 2011, 2012 Joerg Sonnenberger +Copyright (c) 2013 Franco Fichtner +Copyright (c) 1999, 2004 Marc Espie +Copyright (c) 1998, 2010 Todd C. Miller +Copyright (c) 2008 Otto Moerbeek +Copyright (c) 2003 Jason McIntyre + +See the individual source files for information about who contributed +to which file during which years. + + +The mdocml distribution as a whole is distributed by its developers +under the following license: + +Permission to use, copy, modify, and distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + +The following files included from outside sources are protected by +other people's Copyright and are distributed under a 3-clause BSD +license; see these individual files for details. + +compat_getsubopt.c, compat_strcasestr.c, compat_strsep.c: +Copyright (c) 1990, 1993 The Regents of the University of California + +compat_fgetln.c: +Copyright (c) 1998 The NetBSD Foundation, Inc. Copied: projects/sendfile/contrib/mdocml/Makefile (from r274907, head/contrib/mdocml/Makefile) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/sendfile/contrib/mdocml/Makefile Sun Nov 23 01:08:42 2014 (r274908, copy of r274907, head/contrib/mdocml/Makefile) @@ -0,0 +1,505 @@ +# $Id: Makefile,v 1.435 2014/08/10 02:45:04 schwarze Exp $ +# +# Copyright (c) 2010, 2011, 2012 Kristaps Dzonsons +# Copyright (c) 2011, 2013, 2014 Ingo Schwarze +# +# Permission to use, copy, modify, and distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +VERSION = 1.13.1 + +# === USER SETTINGS ==================================================== + +# --- user settings relevant for all builds ---------------------------- + +# Specify this if you want to hard-code the operating system to appear +# in the lower-left hand corner of -mdoc manuals. +# +# CFLAGS += -DOSNAME="\"OpenBSD 5.5\"" + +# IFF your system supports multi-byte functions (setlocale(), wcwidth(), +# putwchar()) AND has __STDC_ISO_10646__ (that is, wchar_t is simply a +# UCS-4 value) should you define USE_WCHAR. If you define it and your +# system DOESN'T support this, -Tlocale will produce garbage. +# If you don't define it, -Tlocale is a synonym for -Tacsii. +# +CFLAGS += -DUSE_WCHAR + +CFLAGS += -g -DHAVE_CONFIG_H +CFLAGS += -W -Wall -Wstrict-prototypes -Wno-unused-parameter -Wwrite-strings +PREFIX = /usr/local +BINDIR = $(PREFIX)/bin +INCLUDEDIR = $(PREFIX)/include/mandoc +LIBDIR = $(PREFIX)/lib/mandoc +MANDIR = $(PREFIX)/man +EXAMPLEDIR = $(PREFIX)/share/examples/mandoc + +INSTALL = install +INSTALL_PROGRAM = $(INSTALL) -m 0555 +INSTALL_DATA = $(INSTALL) -m 0444 +INSTALL_LIB = $(INSTALL) -m 0444 +INSTALL_SOURCE = $(INSTALL) -m 0644 +INSTALL_MAN = $(INSTALL_DATA) + +# --- user settings related to database support ------------------------ + +# Building apropos(1) and makewhatis(8) requires both SQLite3 and fts(3). +# To avoid those dependencies, comment the following line. +# Be careful: the fts(3) implementation in glibc is broken on 32bit +# machines, see: https://sourceware.org/bugzilla/show_bug.cgi?id=15838 +# +BUILD_TARGETS += db-build + +# The remaining settings in this section +# are only relevant if db-build is enabled. +# Otherwise, they have no effect either way. + +# If your system has manpath(1), uncomment this. This is most any +# system that's not OpenBSD or NetBSD. If uncommented, apropos(1) +# and makewhatis(8) will use manpath(1) to get the MANPATH variable. +# +#CFLAGS += -DUSE_MANPATH + +# On some systems, SQLite3 may be installed below /usr/local. +# In that case, uncomment the following two lines. +# +#CFLAGS += -I/usr/local/include +#DBLIB += -L/usr/local/lib + +# OpenBSD has the ohash functions in libutil. +# Comment the following line if your system doesn't. +# +DBLIB += -lutil + +SBINDIR = $(PREFIX)/sbin + +# --- user settings related to man.cgi --------------------------------- + +# To build man.cgi, copy cgi.h.example to cgi.h, edit it, +# and enable the following line. +# Obviously, this requires that db-build is enabled, too. +# +#BUILD_TARGETS += cgi-build + +# The remaining settings in this section +# are only relevant if cgi-build is enabled. +# Otherwise, they have no effect either way. + +# If your system does not support static binaries, comment this, +# for example on Mac OS X. +# +STATIC = -static + +# Linux requires -pthread for statical linking. +# +#STATIC += -pthread + +WWWPREFIX = /var/www +HTDOCDIR = $(WWWPREFIX)/htdocs +CGIBINDIR = $(WWWPREFIX)/cgi-bin + +# === END OF USER SETTINGS ============================================= + +INSTALL_TARGETS = $(BUILD_TARGETS:-build=-install) + +BASEBIN = mandoc preconv demandoc +DBBIN = apropos makewhatis +CGIBIN = man.cgi + +DBLIB += -lsqlite3 + +TESTSRCS = test-fgetln.c \ + test-getsubopt.c \ + test-mmap.c \ + test-ohash.c \ + test-reallocarray.c \ + test-sqlite3_errstr.c \ + test-strcasestr.c \ + test-strlcat.c \ + test-strlcpy.c \ + test-strptime.c \ + test-strsep.c + +SRCS = apropos.c \ + arch.c \ + att.c \ + cgi.c \ + chars.c \ + compat_fgetln.c \ + compat_getsubopt.c \ + compat_ohash.c \ + compat_reallocarray.c \ + compat_sqlite3_errstr.c \ + compat_strcasestr.c \ + compat_strlcat.c \ + compat_strlcpy.c \ + compat_strsep.c \ + demandoc.c \ + eqn.c \ + eqn_html.c \ + eqn_term.c \ + html.c \ + lib.c \ + main.c \ + man.c \ + man_hash.c \ + man_html.c \ + man_macro.c \ + man_term.c \ + man_validate.c \ + mandoc.c \ + mandoc_aux.c \ + mandocdb.c \ + manpage.c \ + manpath.c \ + mansearch.c \ + mansearch_const.c \ + mdoc.c \ + mdoc_argv.c \ + mdoc_hash.c \ + mdoc_html.c \ + mdoc_macro.c \ + mdoc_man.c \ + mdoc_term.c \ + mdoc_validate.c \ + msec.c \ + out.c \ + preconv.c \ + read.c \ + roff.c \ + st.c \ + tbl.c \ + tbl_data.c \ + tbl_html.c \ + tbl_layout.c \ + tbl_opts.c \ + tbl_term.c \ + term.c \ + term_ascii.c \ + term_ps.c \ + tree.c \ + vol.c \ + $(TESTSRCS) + +DISTFILES = INSTALL \ + LICENSE \ + Makefile \ + Makefile.depend \ + NEWS \ + TODO \ + apropos.1 \ + arch.in \ + att.in \ + cgi.h.example \ + chars.in \ + compat_ohash.h \ + config.h.post \ + config.h.pre \ + configure \ + demandoc.1 \ + eqn.7 \ + example.style.css \ + gmdiff \ + html.h \ + lib.in \ + libman.h \ + libmandoc.h \ + libmdoc.h \ + libroff.h \ + main.h \ + makewhatis.8 \ + man-cgi.css \ + man.7 \ + man.cgi.8 \ + man.h \ + mandoc.1 \ + mandoc.3 \ + mandoc.db.5 \ + mandoc.h \ + mandoc_aux.h \ + mandoc_char.7 \ + mandoc_escape.3 \ + mandoc_html.3 \ + mandoc_malloc.3 \ + manpath.h \ + mansearch.3 \ + mansearch.h \ + mchars_alloc.3 \ + mdoc.7 \ + mdoc.h \ + msec.in \ + out.h \ + preconv.1 \ + predefs.in \ + roff.7 \ + st.in \ + style.css \ + tbl.3 \ + tbl.7 \ + term.h \ + vol.in \ + $(SRCS) + +LIBMAN_OBJS = man.o \ + man_hash.o \ + man_macro.o \ + man_validate.o + +LIBMDOC_OBJS = arch.o \ + att.o \ + lib.o \ + mdoc.o \ + mdoc_argv.o \ + mdoc_hash.o \ + mdoc_macro.o \ + mdoc_validate.o \ + st.o \ + vol.o + +LIBROFF_OBJS = eqn.o \ + roff.o \ + tbl.o \ + tbl_data.o \ + tbl_layout.o \ + tbl_opts.o + +LIBMANDOC_OBJS = $(LIBMAN_OBJS) \ + $(LIBMDOC_OBJS) \ + $(LIBROFF_OBJS) \ + chars.o \ + mandoc.o \ + mandoc_aux.o \ + msec.o \ + read.o + +COMPAT_OBJS = compat_fgetln.o \ + compat_getsubopt.o \ + compat_ohash.o \ + compat_reallocarray.o \ + compat_sqlite3_errstr.o \ + compat_strcasestr.o \ + compat_strlcat.o \ + compat_strlcpy.o \ + compat_strsep.o + +MANDOC_HTML_OBJS = eqn_html.o \ + html.o \ + man_html.o \ + mdoc_html.o \ + tbl_html.o + +MANDOC_MAN_OBJS = mdoc_man.o + +MANDOC_TERM_OBJS = eqn_term.o \ + man_term.o \ + mdoc_term.o \ + term.o \ + term_ascii.o \ + term_ps.o \ + tbl_term.o + +MANDOC_OBJS = $(MANDOC_HTML_OBJS) \ + $(MANDOC_MAN_OBJS) \ + $(MANDOC_TERM_OBJS) \ + main.o \ + out.o \ + tree.o + +MAKEWHATIS_OBJS = mandocdb.o mansearch_const.o manpath.o + +PRECONV_OBJS = preconv.o + +APROPOS_OBJS = apropos.o mansearch.o mansearch_const.o manpath.o + +CGI_OBJS = $(MANDOC_HTML_OBJS) \ + cgi.o \ + mansearch.o \ + mansearch_const.o \ + out.o + +MANPAGE_OBJS = manpage.o mansearch.o mansearch_const.o manpath.o + +DEMANDOC_OBJS = demandoc.o + +WWW_MANS = apropos.1.html \ + demandoc.1.html \ + mandoc.1.html \ + preconv.1.html \ + mandoc.3.html \ + mandoc_escape.3.html \ + mandoc_html.3.html \ + mandoc_malloc.3.html \ + mansearch.3.html \ + mchars_alloc.3.html \ + tbl.3.html \ + mandoc.db.5.html \ + eqn.7.html \ + man.7.html \ + mandoc_char.7.html \ + mdoc.7.html \ + roff.7.html \ + tbl.7.html \ + makewhatis.8.html \ + man.cgi.8.html \ + man.h.html \ + mandoc.h.html \ + mandoc_aux.h.html \ + manpath.h.html \ + mansearch.h.html \ + mdoc.h.html + +WWW_OBJS = mdocml.tar.gz \ + mdocml.sha256 + +# === DEPENDENCY HANDLING ============================================== + +all: base-build $(BUILD_TARGETS) + +base-build: $(BASEBIN) + +db-build: $(DBBIN) + +cgi-build: $(CGIBIN) + +install: base-install $(INSTALL_TARGETS) + +www: $(WWW_OBJS) $(WWW_MANS) + +include Makefile.depend + +# === TARGETS CONTAINING SHELL COMMANDS ================================ + +clean: + rm -f libmandoc.a $(LIBMANDOC_OBJS) + rm -f apropos $(APROPOS_OBJS) + rm -f makewhatis $(MAKEWHATIS_OBJS) + rm -f preconv $(PRECONV_OBJS) + rm -f man.cgi $(CGI_OBJS) + rm -f manpage $(MANPAGE_OBJS) + rm -f demandoc $(DEMANDOC_OBJS) + rm -f mandoc $(MANDOC_OBJS) + rm -f config.h config.log $(COMPAT_OBJS) + rm -f $(WWW_MANS) $(WWW_OBJS) + rm -rf *.dSYM + +base-install: base-build + mkdir -p $(DESTDIR)$(BINDIR) + mkdir -p $(DESTDIR)$(EXAMPLEDIR) + mkdir -p $(DESTDIR)$(LIBDIR) + mkdir -p $(DESTDIR)$(INCLUDEDIR) + mkdir -p $(DESTDIR)$(MANDIR)/man1 + mkdir -p $(DESTDIR)$(MANDIR)/man3 + mkdir -p $(DESTDIR)$(MANDIR)/man7 + $(INSTALL_PROGRAM) $(BASEBIN) $(DESTDIR)$(BINDIR) + $(INSTALL_LIB) libmandoc.a $(DESTDIR)$(LIBDIR) + $(INSTALL_LIB) man.h mandoc.h mandoc_aux.h mdoc.h \ + $(DESTDIR)$(INCLUDEDIR) + $(INSTALL_MAN) mandoc.1 preconv.1 demandoc.1 $(DESTDIR)$(MANDIR)/man1 + $(INSTALL_MAN) mandoc.3 mandoc_escape.3 mandoc_malloc.3 \ + mchars_alloc.3 tbl.3 $(DESTDIR)$(MANDIR)/man3 + $(INSTALL_MAN) man.7 mdoc.7 roff.7 eqn.7 tbl.7 mandoc_char.7 \ + $(DESTDIR)$(MANDIR)/man7 + $(INSTALL_DATA) example.style.css $(DESTDIR)$(EXAMPLEDIR) + +db-install: db-build + mkdir -p $(DESTDIR)$(BINDIR) + mkdir -p $(DESTDIR)$(SBINDIR) + mkdir -p $(DESTDIR)$(MANDIR)/man1 + mkdir -p $(DESTDIR)$(MANDIR)/man3 + mkdir -p $(DESTDIR)$(MANDIR)/man5 + mkdir -p $(DESTDIR)$(MANDIR)/man8 + $(INSTALL_PROGRAM) apropos $(DESTDIR)$(BINDIR) + ln -f $(DESTDIR)$(BINDIR)/apropos $(DESTDIR)$(BINDIR)/whatis + $(INSTALL_PROGRAM) makewhatis $(DESTDIR)$(SBINDIR) + $(INSTALL_MAN) apropos.1 $(DESTDIR)$(MANDIR)/man1 + ln -f $(DESTDIR)$(MANDIR)/man1/apropos.1 \ + $(DESTDIR)$(MANDIR)/man1/whatis.1 + $(INSTALL_MAN) mansearch.3 $(DESTDIR)$(MANDIR)/man3 + $(INSTALL_MAN) mandoc.db.5 $(DESTDIR)$(MANDIR)/man5 + $(INSTALL_MAN) makewhatis.8 $(DESTDIR)$(MANDIR)/man8 + +cgi-install: cgi-build + mkdir -p $(DESTDIR)$(CGIBINDIR) + mkdir -p $(DESTDIR)$(HTDOCDIR) + mkdir -p $(DESTDIR)$(WWWPREFIX)/man/mandoc/man1 + mkdir -p $(DESTDIR)$(WWWPREFIX)/man/mandoc/man8 + $(INSTALL_PROGRAM) man.cgi $(DESTDIR)$(CGIBINDIR) + $(INSTALL_DATA) example.style.css $(DESTDIR)$(HTDOCDIR)/man.css + $(INSTALL_DATA) man-cgi.css $(DESTDIR)$(HTDOCDIR) + $(INSTALL_MAN) apropos.1 $(DESTDIR)$(WWWPREFIX)/man/mandoc/man1/ + $(INSTALL_MAN) man.cgi.8 $(DESTDIR)$(WWWPREFIX)/man/mandoc/man8/ + +www-install: www + mkdir -p $(DESTDIR)$(HTDOCDIR)/snapshots + $(INSTALL_DATA) $(WWW_MANS) style.css $(DESTDIR)$(HTDOCDIR) + $(INSTALL_DATA) $(WWW_OBJS) $(DESTDIR)$(HTDOCDIR)/snapshots + $(INSTALL_DATA) mdocml.tar.gz \ + $(DESTDIR)$(HTDOCDIR)/snapshots/mdocml-$(VERSION).tar.gz + $(INSTALL_DATA) mdocml.sha256 \ + $(DESTDIR)$(HTDOCDIR)/snapshots/mdocml-$(VERSION).sha256 + +depend: config.h + mkdep -f Makefile.depend $(CFLAGS) $(SRCS) + perl -e 'undef $$/; $$_ = <>; s|/usr/include/\S+||g; \ + s|\\\n||g; s| +| |g; print;' Makefile.depend > Makefile.tmp + mv Makefile.tmp Makefile.depend + +libmandoc.a: $(COMPAT_OBJS) $(LIBMANDOC_OBJS) + $(AR) rs $@ $(COMPAT_OBJS) $(LIBMANDOC_OBJS) + +mandoc: $(MANDOC_OBJS) libmandoc.a + $(CC) $(LDFLAGS) -o $@ $(MANDOC_OBJS) libmandoc.a + +makewhatis: $(MAKEWHATIS_OBJS) libmandoc.a + $(CC) $(LDFLAGS) -o $@ $(MAKEWHATIS_OBJS) libmandoc.a $(DBLIB) + +preconv: $(PRECONV_OBJS) + $(CC) $(LDFLAGS) -o $@ $(PRECONV_OBJS) + +manpage: $(MANPAGE_OBJS) libmandoc.a + $(CC) $(LDFLAGS) -o $@ $(MANPAGE_OBJS) libmandoc.a $(DBLIB) + +apropos: $(APROPOS_OBJS) libmandoc.a + $(CC) $(LDFLAGS) -o $@ $(APROPOS_OBJS) libmandoc.a $(DBLIB) + +man.cgi: $(CGI_OBJS) libmandoc.a + $(CC) $(LDFLAGS) $(STATIC) -o $@ $(CGI_OBJS) libmandoc.a $(DBLIB) + +demandoc: $(DEMANDOC_OBJS) libmandoc.a + $(CC) $(LDFLAGS) -o $@ $(DEMANDOC_OBJS) libmandoc.a + +mdocml.sha256: mdocml.tar.gz + sha256 mdocml.tar.gz > $@ + +mdocml.tar.gz: $(DISTFILES) + mkdir -p .dist/mdocml-$(VERSION)/ + $(INSTALL_SOURCE) $(DISTFILES) .dist/mdocml-$(VERSION) + chmod 755 .dist/mdocml-$(VERSION)/configure + ( cd .dist/ && tar zcf ../$@ mdocml-$(VERSION) ) + rm -rf .dist/ + +config.h: configure config.h.pre config.h.post $(TESTSRCS) + rm -f config.log + CC="$(CC)" CFLAGS="$(CFLAGS)" DBLIB="$(DBLIB)" \ + VERSION="$(VERSION)" ./configure + +.PHONY: base-install cgi-install db-install install www-install +.PHONY: clean depend +.SUFFIXES: .1 .3 .5 .7 .8 .h +.SUFFIXES: .1.html .3.html .5.html .7.html .8.html .h.html + +.h.h.html: + highlight -I $< > $@ + +.1.1.html .3.3.html .5.5.html .7.7.html .8.8.html: mandoc + ./mandoc -Thtml -Wall,stop \ + -Ostyle=style.css,man=%N.%S.html,includes=%I.html $< > $@ Copied: projects/sendfile/contrib/mdocml/Makefile.depend (from r274907, head/contrib/mdocml/Makefile.depend) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/sendfile/contrib/mdocml/Makefile.depend Sun Nov 23 01:08:42 2014 (r274908, copy of r274907, head/contrib/mdocml/Makefile.depend) @@ -0,0 +1,70 @@ +apropos.o: apropos.c config.h manpath.h mansearch.h +arch.o: arch.c config.h mdoc.h libmdoc.h arch.in +att.o: att.c config.h mdoc.h libmdoc.h att.in +cgi.o: cgi.c config.h mandoc.h mandoc_aux.h main.h manpath.h mansearch.h cgi.h +chars.o: chars.c config.h mandoc.h mandoc_aux.h libmandoc.h chars.in +compat_fgetln.o: compat_fgetln.c config.h +compat_getsubopt.o: compat_getsubopt.c config.h +compat_ohash.o: compat_ohash.c config.h +compat_reallocarray.o: compat_reallocarray.c config.h +compat_sqlite3_errstr.o: compat_sqlite3_errstr.c config.h +compat_strcasestr.o: compat_strcasestr.c config.h +compat_strlcat.o: compat_strlcat.c config.h +compat_strlcpy.o: compat_strlcpy.c config.h +compat_strsep.o: compat_strsep.c config.h +demandoc.o: demandoc.c config.h man.h mdoc.h mandoc.h +eqn.o: eqn.c config.h mandoc.h mandoc_aux.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 libmandoc.h out.h html.h main.h +lib.o: lib.c config.h mdoc.h libmdoc.h lib.in +main.o: main.c config.h mandoc.h mandoc_aux.h main.h mdoc.h man.h +man.o: man.c config.h man.h mandoc.h mandoc_aux.h libman.h libmandoc.h +man_hash.o: man_hash.c config.h man.h mandoc.h libman.h +man_html.o: man_html.c config.h mandoc.h mandoc_aux.h out.h html.h man.h main.h +man_macro.o: man_macro.c config.h man.h mandoc.h libmandoc.h libman.h +man_term.o: man_term.c config.h mandoc.h mandoc_aux.h out.h man.h term.h main.h +man_validate.o: man_validate.c config.h man.h mandoc.h mandoc_aux.h libman.h libmandoc.h +mandoc.o: mandoc.c config.h mandoc.h mandoc_aux.h libmandoc.h +mandoc_aux.o: mandoc_aux.c config.h mandoc.h mandoc_aux.h +mandocdb.o: mandocdb.c config.h mdoc.h man.h mandoc.h mandoc_aux.h manpath.h mansearch.h +manpage.o: manpage.c config.h manpath.h mansearch.h +manpath.o: manpath.c config.h mandoc_aux.h manpath.h +mansearch.o: mansearch.c config.h mandoc.h mandoc_aux.h manpath.h mansearch.h +mansearch_const.o: mansearch_const.c config.h manpath.h mansearch.h +mdoc.o: mdoc.c config.h mdoc.h mandoc.h mandoc_aux.h libmdoc.h libmandoc.h +mdoc_argv.o: mdoc_argv.c config.h mdoc.h mandoc.h mandoc_aux.h libmdoc.h libmandoc.h +mdoc_hash.o: mdoc_hash.c config.h mdoc.h libmdoc.h +mdoc_html.o: mdoc_html.c config.h mandoc.h mandoc_aux.h out.h html.h mdoc.h main.h +mdoc_macro.o: mdoc_macro.c config.h mdoc.h mandoc.h libmdoc.h libmandoc.h +mdoc_man.o: mdoc_man.c config.h mandoc.h mandoc_aux.h out.h man.h mdoc.h main.h +mdoc_term.o: mdoc_term.c config.h mandoc.h mandoc_aux.h out.h term.h mdoc.h main.h +mdoc_validate.o: mdoc_validate.c config.h mdoc.h mandoc.h mandoc_aux.h libmdoc.h libmandoc.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 +read.o: read.c config.h mandoc.h mandoc_aux.h libmandoc.h mdoc.h man.h main.h +roff.o: roff.c config.h mandoc.h mandoc_aux.h libroff.h libmandoc.h predefs.in +st.o: st.c config.h mdoc.h libmdoc.h st.in +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 +tbl_html.o: tbl_html.c config.h mandoc.h out.h html.h +tbl_layout.o: tbl_layout.c config.h mandoc.h mandoc_aux.h libmandoc.h libroff.h +tbl_opts.o: tbl_opts.c config.h mandoc.h libmandoc.h libroff.h +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 main.h +term_ps.o: term_ps.c config.h mandoc.h mandoc_aux.h out.h main.h term.h +tree.o: tree.c config.h mandoc.h mdoc.h man.h main.h +vol.o: vol.c config.h mdoc.h libmdoc.h vol.in +test-fgetln.o: test-fgetln.c +test-getsubopt.o: test-getsubopt.c +test-mmap.o: test-mmap.c +test-ohash.o: test-ohash.c +test-reallocarray.o: test-reallocarray.c +test-sqlite3_errstr.o: test-sqlite3_errstr.c +test-strcasestr.o: test-strcasestr.c +test-strlcat.o: test-strlcat.c +test-strlcpy.o: test-strlcpy.c +test-strptime.o: test-strptime.c +test-strsep.o: test-strsep.c Modified: projects/sendfile/contrib/mdocml/NEWS ============================================================================== --- projects/sendfile/contrib/mdocml/NEWS Sun Nov 23 01:02:19 2014 (r274907) +++ projects/sendfile/contrib/mdocml/NEWS Sun Nov 23 01:08:42 2014 (r274908) @@ -1,7 +1,87 @@ -$Id: NEWS,v 1.3 2013/10/13 16:06:50 schwarze Exp $ +$Id: NEWS,v 1.5 2014/08/10 16:32:57 schwarze Exp $ This file lists the most important changes in the mdocml.bsd.lv distribution. +Changes in version 1.13.1, released on August 10, 2014 + + --- MAJOR NEW FEATURES --- + * A complete apropos(1)/makewhatis(8)/man.cgi(8) suite + based on SQLite3 is now included. + CAVEAT: This also requires a working fts(3) implementation. + If your system lacks that *and* you want apropos(1)/makewhatis(8), + stay with 1.12.3 for now, then go to 1.12.4 and 1.13.2. + * The roff(7) parser now provides an almost complete implementation + of numerical expressions. + * Warning and error messages have been improved in many ways. + Almost all fatal errors were downgraded to normal errors and some + even to warnings. Almost all messages now mention the macro where + the issue is detected and many indicate the workaround employed. + The mandoc(1) manual now includes a list explaining all messages. + --- MINOR NEW FEATURES --- + * The roff(7) parser now supports the .ami (append to macro with + indirectly specified name), .as (append to user-defined + string), .dei (define macro with indirectly specified name), + .ll (line length), and .rr (remove register) requests. + * The roff(7) parser now supports string comparison and numerical + conditionals in the .if and .ie requests. + * The roff parser now fully supports the \B (validate numerical + expression) and partially supports the \w (measure text width) + escape sequences. + * The terminal formatter now supports the \: (optional line break) + escape sequence. + * The roff parser now supports expansion of user-defined strings + involving indirect references. + * The roff(7) parser now handles some pre-defined read-only + number registers that occur in the pod2man(1) preamble. + * For backward compatibility, the mdoc(7) parser and formatters + now support the obsolete macros .En, .Es, .Fr, and .Ot. + * The mdoc(7) formatter non partially supports .Bd -centered. + * tbl(7) now handles leading and trailing vertical lines. + * The build system now provides fallback versions of strcasestr(3) + and strsep(3) for systems lacking them. + * The mdoc(7) manual now explains how various standards + supported by the .St macro are related to each other. + --- BUGFIXES --- + * In the roff(7) parser, several bugs were fixed with respect + to closing conditional blocks on macro lines. + * Parsing of roff(7) identifiers and escape sequences was improved + in multiple respects. + * In the mdoc(7) parser, the handling of defective document + prologues was improved in multiple ways. + * The mdoc(7) parser no longer skips content before the first section + header, and it no longer deletes non-.% content from .Rs blocks. + * In the mdoc(7) parser, a crash was fixed related to weird .Sh headers. + * In the mdoc(7) parser, handling of .Sm with missing or invalid + arguments was corrected. + * In the mdoc(7) parser, trailing punctuation at the end of partial + implicit macros no longer triggers end-of-sentence spacing. + * In the terminal formatter, two crashes were fixed: one triggered by + excessive indentation and another by excessively long .Nm arguments. + * In the terminal formatter, a floating point rounding bug was + fixed that sometimes caused an off-by-one error in indentation. + * In the UTF-8 formatter, rendering of accents, breakable hyphens, + and non-breakable spaces was corrected. + * In the HTML formatter, encoding of special characters was + corrected in multiple respects. + * In the mdoc(7) formatter, rendering of .Ex and .Rv was + improved for various edge cases. + * In the mdoc(7) formatter, handling of empty .Bl -inset item + heads was improved. + * In the man(7) formatter, some bugs were fixed with respect + to same-line detection in the context of .TP and .nf macros, + and the indentation of .IP and .TP blocks was improved. + * The mandoc(3) library no longer prints to stderr. + --- THANKS TO --- + Abhinav Upadhyay (NetBSD), Andreas Voegele, Anthony Bentley (OpenBSD), + Christian Weisgerber (OpenBSD), Havard Eidnes (NetBSD), Jan Stary, + Jason McIntyre (OpenBSD), Jeremie Courreges-Anglas (OpenBSD), + Joerg Sonnenberger (NetBSD), Juan Francisco Cantero Hurtado (OpenBSD), + Marc Espie (OpenBSD), Matthias Scheler (NetBSD), Pascal Stumpf (OpenBSD), + Paul Onyschuk (Alpine Linux), Sebastien Marie, Steffen Nurpmeso, + Stuart Henderson (OpenBSD), Ted Unangst (OpenBSD), Theo de Raadt (OpenBSD), + Thomas Klausner (NetBSD), and Ulrich Spoerlein (FreeBSD) + for reporting bugs and missing features. + Changes in version 1.12.3, released on December 31, 2013 * In the mdoc(7) SYNOPSIS, line breaks and hanging indentation Modified: projects/sendfile/contrib/mdocml/TODO ============================================================================== --- projects/sendfile/contrib/mdocml/TODO Sun Nov 23 01:02:19 2014 (r274907) +++ projects/sendfile/contrib/mdocml/TODO Sun Nov 23 01:08:42 2014 (r274908) @@ -1,13 +1,15 @@ ************************************************************************ * Official mandoc TODO. -* $Id: TODO,v 1.162 2013/12/25 14:40:34 schwarze Exp $ +* $Id: TODO,v 1.176 2014/08/09 14:24:53 schwarze Exp $ ************************************************************************ ************************************************************************ * crashes ************************************************************************ -None known. +- The abort() in bufcat(), html.c, can be triggered via buffmt_includes() + by running -Thtml -Oincludes on a file containing a long .In argument. + Fixing this will probably require reworking the whole bufcat() concept. ************************************************************************ * missing features @@ -15,11 +17,6 @@ None known. --- missing roff features ---------------------------------------------- -- roff.c should treat \n(.H>23 and \n(.V>19 in the pod2man(1) - preamble as true, see for example AUTHORS in MooseX::Getopt.3p - reported by Andreas Voegele - Tue, 22 Nov 2011 15:34:47 +0100 on ports@ - - .ad (adjust margins) .ad l -- adjust left margin only (flush left) .ad r -- adjust right margin only (flush right) @@ -29,20 +26,9 @@ None known. .ad -- re-enable adjustment without changing the mode Adjustment mode is ignored while in no-fill mode (.nf). *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***