diff options
author | Colin Watson <cjwatson@debian.org> | 2011-01-03 03:03:40 +0000 |
---|---|---|
committer | Colin Watson <cjwatson@debian.org> | 2011-01-03 03:03:40 +0000 |
commit | 0f4620d4ac262733db798f986aece1ef03796a12 (patch) | |
tree | 7666943c59a9c7451223d526960f0aa4b7ff3a53 /m4 | |
parent | f6d95ff590d165444141825069c4ad6da4680599 (diff) |
Add basic support for the Heirloom Documentation Tools.
* m4/man-heirloom-nroff.m4: New file.
* configure.ac: Call MAN_PROG_HEIRLOOM_NROFF. If successful and an
nroff macro was found, prepend -mg -msafe -mpadj to the nroff and
troff options.
* lib/encodings.c (charset_table) [HEIRLOOM_NROFF]: Disable latin1
and nippon devices.
(device_table) [HEIRLOOM_NROFF]: Add locale device.
* src/man.c (heirloom_line_length) [HEIRLOOM_NROFF]: New function.
(add_roff_line_length): Optionally return a command, which should
be inserted before troff.
(add_roff_line_length) [HEIRLOOM_NROFF]: Support Heirloom, which
needs text inserted at the start of the input.
(make_roff_command) [HEIRLOOM_NROFF]: Use locale device instead of
utf8 in UTF-8 locales. Handle add_roff_line_length return value.
Unset TROFFMACS if running setuid.
(make_browser): Compile only if TROFF_IS_GROFF.
(format_display): Only declare variables related to HTML output if
TROFF_IS_GROFF.
* src/tests/zsoelim-1: Ignore .ll and .lt lines inserted by
heirloom_line_length.
* NEWS: Document this.
Diffstat (limited to 'm4')
-rw-r--r-- | m4/man-heirloom-nroff.m4 | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/m4/man-heirloom-nroff.m4 b/m4/man-heirloom-nroff.m4 new file mode 100644 index 00000000..85144e7f --- /dev/null +++ b/m4/man-heirloom-nroff.m4 @@ -0,0 +1,33 @@ +# man-heirloom-nroff.m4 serial 1 +dnl MAN_PROG_HEIRLOOM_NROFF(PROGRAM-NAME) +dnl Check whether the given nroff program is from the Heirloom Documentation +dnl Tools. We do this by testing the .X number register; it should be +dnl non-zero, and should change to a different value if the -mg option is +dnl used to enable groff compatibility. +AC_DEFUN([MAN_PROG_HEIRLOOM_NROFF], +[AC_MSG_CHECKING([whether nroff is Heirloom nroff]) + +AC_CACHE_VAL([man_cv_prog_heirloom_nroff], + [man_heirloom_ext_plain=`$1 2>/dev/null <<EOF | tr -d '\n' +\\n(.X +EOF +` + man_heirloom_ext_mg=`$1 -mg 2>/dev/null <<EOF | tr -d '\n' +\\n(.X +EOF +` + if test "x$man_heirloom_ext_plain" != 0 && \ + test "x$man_heirloom_ext_mg" != 0 && \ + test "x$man_heirloom_ext_plain" != "x$man_heirloom_extflag_mg" + then + man_cv_prog_heirloom_nroff=yes + else + man_cv_prog_heirloom_nroff=no + fi]) + +if test "$man_cv_prog_heirloom_nroff" = "yes" +then + AC_DEFINE([HEIRLOOM_NROFF], [1], [Define if nroff is Heirloom nroff.]) +fi +AC_MSG_RESULT([$man_cv_prog_heirloom_nroff]) +]) |