diff options
-rw-r--r-- | .gitmodules | 3 | ||||
-rw-r--r-- | Makefile.am | 4 | ||||
-rw-r--r-- | configure.ac | 25 | ||||
-rw-r--r-- | doc/Makefile.am | 113 | ||||
-rwxr-xr-x | doc/check-docs.sh | 74 | ||||
-rw-r--r-- | doc/fix-sentence-spacing.sed | 4 | ||||
-rw-r--r-- | doc/mastermenu.el | 90 | ||||
-rw-r--r-- | doc/pies.texi | 16 | ||||
-rw-r--r-- | doc/rendition.texi | 94 | ||||
-rw-r--r-- | doc/untabify.el | 13 | ||||
m--------- | imprimatur | 0 | ||||
-rw-r--r-- | src/pies.c | 4 |
12 files changed, 39 insertions, 401 deletions
diff --git a/.gitmodules b/.gitmodules index fea8f96..c20307a 100644 --- a/.gitmodules +++ b/.gitmodules @@ -3 +3,4 @@ url = git://git.gnu.org.ua/grecs.git +[submodule "imprimatur"] + path = imprimatur + url = git://git.gnu.org.ua/imprimatur.git diff --git a/Makefile.am b/Makefile.am index c4893c2..b3c49a2 100644 --- a/Makefile.am +++ b/Makefile.am @@ -16,5 +16,5 @@ -ACLOCAL_AMFLAGS = -I m4 -I am -I grecs/am +ACLOCAL_AMFLAGS = -I m4 -I am -I grecs/am -I imprimatur -SUBDIRS=gnu grecs lib src doc po +SUBDIRS=gnu grecs lib src imprimatur doc po diff --git a/configure.ac b/configure.ac index 0d2881c..a8848dd 100644 --- a/configure.ac +++ b/configure.ac @@ -67,3 +67,3 @@ AM_ICONV AM_GNU_GETTEXT([external], [need-formatstring-macros]) -AM_GNU_GETTEXT_VERSION([0.17]) +AM_GNU_GETTEXT_VERSION([0.18]) @@ -77,18 +77,9 @@ AC_ARG_ENABLE([inetd], -# Doc hints. -# Select a rendition level: -# DISTRIB for stable releases (at most one dot in the version number) -# and maintenance releases (two dots, patchlevel < 50) -# PROOF for alpha releases. -# PUBLISH can only be required manually when running make in doc/ -AC_SUBST(RENDITION) -case `echo $VERSION|sed 's/[[^.]]//g'` in -""|".") RENDITION=DISTRIB;; -"..") if test `echo $VERSION | sed 's/.*\.//'` -lt 50; then - RENDITION=DISTRIB - else - RENDITION=PROOF - fi;; -*) RENDITION=PROOF;; -esac +AH_BOTTOM([ +# ifndef ATTRIBUTE_NORETURN +# define ATTRIBUTE_NORETURN __attribute__ ((__noreturn__)) +# endif +]) + +IMPRIMATUR_INIT diff --git a/doc/Makefile.am b/doc/Makefile.am index da7d47c..492a6ae 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -21,3 +21,2 @@ pies_TEXINFOS=\ macros.texi\ - rendition.texi\ usr-acl.texi @@ -25,7 +24,3 @@ pies_TEXINFOS=\ EXTRA_DIST = \ - check-docs.sh\ - fix-sentence-spacing.sed\ - gendocs_template\ - mastermenu.el\ - untabify.el + gendocs_template @@ -35,18 +30,12 @@ clean-local: # Checking -check-tabs: - @if test -n "`cat $(info_TEXINFOS) $(pies_TEXINFOS) | tr -d -c '\t'`"; then \ - echo "Sources contain tabs; run make untabify"; \ - false; \ - fi -check-sentence-spacing: - @if cat $(info_TEXINFOS) $(pies_TEXINFOS) | sed 's/i\.e\. //g;s/e\.g\. //g;s/\.\.\. @//g' | grep -q '\. [@A-Z]'; then \ - echo >&2 "Sources contain single-space sentence separators"; \ - echo >&2 "Run make fix-sentence-spacing to fix"; \ - fi +AM_MAKEINFOFLAGS = @IMPRIMATUR_MAKEINFOFLAGS@ +imprimatur_INPUT=$(info_TEXINFOS) $(pies_TEXINFOS) +include ../imprimatur/imprimatur.mk +CHECK_DOCS=$(top_srcdir)/@IMPRIMATUR_MODULE_DIR@/check-docs.sh -check-format: check-tabs check-sentence-spacing +check-format: imprimatur-format imprimatur-check-sentence-spacing check-options: - @check-docs.sh options \ + @$(CHECK_DOCS) options \ '/argp_option options\[\] = /,/^}/s/[ \t]*{ *"\([^,"]*\)".*/\1/pg' \ @@ -58,3 +47,3 @@ check-options: check-config: - @check-docs.sh 'configuration statements' \ + @$(CHECK_DOCS) 'configuration statements' \ '/pies_keywords\[\] *= *{/,/^}/s/[ \t]*{ *"\([^,"]*\)".*/\1/pg' \ @@ -68,3 +57,3 @@ check-sub-config: while read ident kw; do \ - check-docs.sh "$$ident configuration statements" \ + $(CHECK_DOCS) "$$ident configuration statements" \ "/$$kw"'\[\] *= *{/,/^}/s/[ \t]*{ *"\([^,"]*\)".*/\1/pg' \ @@ -76,56 +65,4 @@ check-sub-config: -check-refs: - @for file in $(info_TEXINFOS) $(pies_TEXINFOS); \ - do \ - sed -e = $$file | \ - sed -n 'N;/@FIXME-.*ref/{s/\(^[0-9][0-9]*\).*@FIXME-.*ref{\([^}]*\)}.*/'$$file':\1: \2/gp}'; \ - done > $@-t; \ - if [ -s $@-t ]; then \ - echo "Unresolved cross-references:"; \ - cat $@-t;\ - rm $@-t; \ - else \ - rm -f $@-t; \ - fi - -check-fixmes: - @for file in $(info_TEXINFOS) $(pies_TEXINFOS); \ - do \ - sed -e = $$file | \ - sed -n 'N;/@FIXME{/{s/\(^[0-9][0-9]*\).*@FIXME{\([^}]*\).*/'$$file':\1: \2/gp}'; \ - done > $@-t; \ - if [ -s $@-t ]; then \ - echo "Unresolved FIXMEs:"; \ - cat $@-t; \ - rm $@-t; \ - false; \ - else \ - rm -f $@-t; \ - fi - -check-writeme: - @grep -Hn @WRITEME $(info_TEXINFOS) $(pies_TEXINFOS) > $@-t; \ - if [ -s $@-t ]; then \ - echo "Empty nodes:"; \ - cat $@-t; \ - rm $@-t; \ - false;\ - else \ - rm $@-t; \ - fi - -check-unrevised: - @grep -Hn @UNREVISED $(info_TEXINFOS) $(pies_TEXINFOS) > $@-t; \ - if [ -s $@-t ]; then \ - echo "Unrevised nodes:"; \ - cat $@-t; \ - rm $@-t; \ - false;\ - else \ - rm $@-t; \ - fi - -all-check-docs: check-format check-options \ - check-config check-sub-config \ - check-refs check-fixmes check-writeme check-unrevised +all-check-docs: imprimatur-basic-checks \ + check-options check-config check-sub-config @@ -135,24 +72,5 @@ check-docs: # - -master-menu: - $(AM_V_GEN)emacs -batch -l mastermenu.el -f make-master-menu $(info_TEXINFOS) - -untabify: - @emacs -batch -l untabify.el $(info_TEXINFOS) $(pies_TEXINFOS) - -fix-sentence-spacing: - for file in $(info_TEXINFOS) $(wydawca_TEXINFOS); \ - do \ - if grep -q '\. [@A-Z]' $$file; then \ - mv $$file $${file}~; \ - sed -r -f fix-sentence-spacing.sed $${file}~ > $$file; \ - fi; \ - done - -final: untabify fix-sentence-spacing master-menu - -# The rendering level is one of PUBLISH, DISTRIB or PROOF. -# Just call `make RENDITION=PROOF [target]' if you want PROOF rendition. - -MAKEINFOFLAGS=-D$(RENDITION) +master-menu: imprimatur-master-menu +untabify: imprimatur-untabify +final: imprimatur-final @@ -168,4 +86,5 @@ manual: TEXINPUTS=$(srcdir):$(top_srcdir)/build-aux:$(TEXINPUTS) \ - MAKEINFO="$(MAKEINFO) $(MAKEINFOFLAGS)" \ + MAKEINFO="$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS)" \ TEXI2DVI="$(TEXI2DVI) -t @finalout" \ + TEXI2HTML="texi2html $(AM_MAKEINFOFLAGS)" \ $(GENDOCS) --texi2html $(PACKAGE) '$(PACKAGE_NAME) manual' diff --git a/doc/check-docs.sh b/doc/check-docs.sh deleted file mode 100755 index 709b1d6..0000000 --- a/doc/check-docs.sh +++ /dev/null @@ -1,74 +0,0 @@ -#! /bin/sh -# This file is part of mailfrom filter. -# Copyright (C) 2006, 2007, 2010 Sergey Poznyakoff -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -usage() { - cat <<EOT -usage: $0 item code-sed doc-sed sources -- args... -EOT -} - -if [ $# -le 4 ]; then - usage - exit 2 -fi - -item=$1 -shift -codesexp="$1" -shift -docsexp=$1 -shift - -source= -while [ $# -ne 0 ] -do - if [ "$1" = "--" ]; then - shift - break; - fi - source="$source $1" - shift -done - -TEMPDIR=/tmp/mfck.$$ -mkdir $TEMPDIR || exit 1 -trap 'rm -rf $TEMPDIR' 1 2 13 15 - -sed -n "$codesexp" $source | sort | uniq > $TEMPDIR/src -$* | \ - sed -n '/^@macro/,/^@end macro/d;'"$docsexp" \ - | sort | uniq > $TEMPDIR/doc - -join -v1 $TEMPDIR/src $TEMPDIR/doc > $TEMPDIR/src-doc -join -v2 $TEMPDIR/src $TEMPDIR/doc > $TEMPDIR/doc-src -(if [ -s $TEMPDIR/src-doc ]; then - echo "Not documented $item:" - cat $TEMPDIR/src-doc - fi - if [ -s $TEMPDIR/doc-src ]; then - echo "Non-existing $item:" - cat $TEMPDIR/doc-src - fi) > $TEMPDIR/report - -if [ -s $TEMPDIR/report ]; then - cat $TEMPDIR/report - rm -rf $TEMPDIR - exit 1 -else - rm -rf $TEMPDIR - exit 0 -fi diff --git a/doc/fix-sentence-spacing.sed b/doc/fix-sentence-spacing.sed deleted file mode 100644 index 906a670..0000000 --- a/doc/fix-sentence-spacing.sed +++ /dev/null @@ -1,4 +0,0 @@ -s/\. ([@A-Z])/. \1/g -s/e\.g\. /e.g. /g -s/i\.e\. /i.e. /g -s/\.\.\. @\}/... @}/g diff --git a/doc/mastermenu.el b/doc/mastermenu.el deleted file mode 100644 index 3ab3341..0000000 --- a/doc/mastermenu.el +++ /dev/null @@ -1,90 +0,0 @@ -;;; mastermenu.el --- Redefinition of texinfo-master-menu-list - -;; Copyright (C) 2006, 2007 Free Software Foundation, Inc. - -;; Author: Sergey Poznyakoff -;; Maintainer: bug-tar@gnu.org -;; Keywords: maint, tex, docs - -;; This file is part of GNU tar documentation suite - -;; This program is free software; you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation; either version 3, or (at your option) -;; any later version. - -;; This program is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with this program. If not, see <http://www.gnu.org/licenses/>. - -;;; Commentary: - -;; This file redefines texinfo-master-menu-list so that it takes into -;; account included files. - -;; Known bugs: @menu without previous sectioning command will inherit -;; documentation string from the previous menu. However, since such a -;; menu is illegal in a texinfo file, we can live with it. - -(require 'texinfo) -(require 'texnfo-upd) - -(defun texinfo-master-menu-list-recursive (title) - "Auxiliary function used by `texinfo-master-menu-list'." - (save-excursion - (let (master-menu-list) - (while (re-search-forward "\\(^@menu\\|^@include\\)" nil t) - (cond - ((string= (match-string 0) "@include") - (skip-chars-forward " \t") - (let ((included-name (let ((start (point))) - (end-of-line) - (skip-chars-backward " \t") - (buffer-substring start (point))))) - (end-of-line) - (let ((prev-title (texinfo-copy-menu-title))) - (save-excursion - (set-buffer (find-file-noselect included-name)) - (setq master-menu-list - (append (texinfo-master-menu-list-recursive prev-title) - master-menu-list)))))) - (t - (setq master-menu-list - (cons (list - (texinfo-copy-menu) - (let ((menu-title (texinfo-copy-menu-title))) - (if (string= menu-title "") - title - menu-title))) - master-menu-list))))) - master-menu-list))) - -(defun texinfo-master-menu-list () - "Return a list of menu entries and header lines for the master menu, -recursing into included files. - -Start with the menu for chapters and indices and then find each -following menu and the title of the node preceding that menu. - -The master menu list has this form: - - \(\(\(... \"entry-1-2\" \"entry-1\"\) \"title-1\"\) - \(\(... \"entry-2-2\" \"entry-2-1\"\) \"title-2\"\) - ...\) - -However, there does not need to be a title field." - - (reverse (texinfo-master-menu-list-recursive ""))) - -(defun make-master-menu () - "Create master menu in the first Emacs argument." - (find-file (car command-line-args-left)) - (texinfo-master-menu nil) - (save-buffer)) - - -;;; mastermenu.el ends here diff --git a/doc/pies.texi b/doc/pies.texi index 4a7bfa7..a77e4cf 100644 --- a/doc/pies.texi +++ b/doc/pies.texi @@ -473,3 +473,3 @@ EOT double-quoted string, unless @var{word} is preceded by a backslash -(e.g. @samp{<<\EOT}) or enclosed in double-quotes, in which case +(e.g.@: @samp{<<\EOT}) or enclosed in double-quotes, in which case the text is read as is, without interpretation of escape sequences. @@ -515,3 +515,3 @@ dependents (pmult, auth); without being a member of a list: it is equivalent to a list with a -single member. This means that, e.g. @samp{dependents auth;} is +single member. This means that, e.g.@: @samp{dependents auth;} is equivalent to @samp{dependents (auth);}. @@ -654,3 +654,3 @@ comma-separated list of flags. Valid flags are: @item disable -This component is disabled, i.e. @command{pies} will parse and +This component is disabled, i.e.@: @command{pies} will parse and remember its settings, but will not start it. @@ -687,3 +687,3 @@ names, instead of IP addresses. -@deffn {Config: component} acl @{ ... @} +@deffn {Config: component} acl @{ @dots{} @} Set access control list for this component. @xref{ACL}, for a @@ -1106,3 +1106,3 @@ Sets the socket type. Allowed values for @var{type} are: some socket types may not be implemented by all protocol -families, e.g. @samp{seqpacket} is not implemented for +families, e.g.@: @samp{seqpacket} is not implemented for @samp{inet}. @@ -1768,3 +1768,3 @@ the client @acronym{IP} address and @var{netmask} equals to @var{addr}. The network mask must be specified in ``dotted quad'' -form, e.g. @samp{255.255.255.224}. +form, e.g.@: @samp{255.255.255.224}. @@ -1990,3 +1990,3 @@ behavior as a whole. @anchor{syslog} -@deffn {Config} syslog @{ ... @} +@deffn {Config} syslog @{ @dots{} @} This block statement configures logging via syslog. It has two @@ -2017,3 +2017,3 @@ limits}, for a detailed description of @var{arg}. -@deffn {Config} return-code @{ ... @} +@deffn {Config} return-code @{ @dots{} @} Configure global exit actions. @xref{Exit Actions}, for a detailed diff --git a/doc/rendition.texi b/doc/rendition.texi deleted file mode 100644 index 45ac068..0000000 --- a/doc/rendition.texi +++ /dev/null @@ -1,94 +0,0 @@ -@c Let's use the concept of 'renditions' by Fra@,{c}ois Pinard -@c I extended it by adding a FIXME_FOOTNOTE variable, which controls -@c whether FIXME information should be placed in footnotes or -@c inlined. - -@c ====================================================================== -@c This document has three levels of rendition: PUBLISH, DISTRIB or PROOF, -@c as decided by @set symbols. The PUBLISH rendition does not show -@c notes or marks asking for revision. Most users will prefer having more -@c information, even if this information is not fully revised for adequacy, -@c so DISTRIB is the default for distributions. The PROOF rendition -@c show all marks to the point of ugliness, but is nevertheless useful to -@c those working on the manual itself. -@c ====================================================================== - -@c Set this symbol if you wish FIXMEs to appear in footnotes, instead -@c of being inserted into the text. -@c @set PROOF_FOOTNOTED - -@ifclear PUBLISH -@ifclear DISTRIB -@ifclear PROOF -@set DISTRIB -@end ifclear -@end ifclear -@end ifclear - -@ifset PUBLISH -@set RENDITION The book, version -@end ifset - -@ifset DISTRIB -@set RENDITION FTP release, version -@end ifset - -@ifset PROOF -@set RENDITION Proof reading version -@end ifset - -@c Output marks for nodes needing revision, but not in PUBLISH rendition. - -@macro WRITEME -@ifclear PUBLISH -@quotation -@emph{This node is to be written.} -@end quotation -@end ifclear -@end macro - -@macro UNREVISED -@ifclear PUBLISH -@quotation -(@emph{The information in this node may be obsolete or otherwise inaccurate.} -This message will disappear, once this node revised.) -@end quotation -@end ifclear -@end macro - -@c Output various FIXME information only in PROOF rendition. - -@macro FIXME{string} -@ifset PROOF -@ifset PROOF_FOOTNOTED -@footnote{@strong{FIXME:} \string\} -@end ifset -@ifclear PROOF_FOOTNOTED -@cartouche -@strong{<FIXME>} \string\ @strong{</>} -@end cartouche -@end ifclear -@end ifset - -@end macro - -@macro FIXME-ref{string} -@ifset PROOF -@strong{<REF>} \string\ @strong{</>} -@end ifset - -@end macro - -@macro FIXME-pxref{string} -@ifset PROOF -@strong{<PXREF>} \string\ @strong{</>} -@end ifset - -@end macro - -@macro FIXME-xref{string} -@ifset PROOF -@strong{<XREF>} \string\ @strong{</>} -@end ifset - -@end macro diff --git a/doc/untabify.el b/doc/untabify.el deleted file mode 100644 index 77dd5c0..0000000 --- a/doc/untabify.el +++ /dev/null @@ -1,13 +0,0 @@ -;;;; Untabify the sources. -;;;; Usage: emacs -batch -l untabify.el [file ...] - -(defun global-untabify (buflist) - (mapcar - (lambda (bufname) - (set-buffer (find-file bufname)) - (untabify (point-min) (point-max)) - (save-buffer) - (kill-buffer (current-buffer))) - buflist)) - -(global-untabify command-line-args-left) diff --git a/imprimatur b/imprimatur new file mode 160000 +Subproject f32ef1983968e755cd580b06e369476d7e7f88b @@ -2395,4 +2395,4 @@ main (int argc, char **argv) logmsg (LOG_NOTICE, - N_("not started as an absolute pathname; " - "SIGHUP will not work")); + _("not started as an absolute pathname; " + "SIGHUP will not work")); |