From 8e92f7b4b3917287368080684ea967a5f9a19de1 Mon Sep 17 00:00:00 2001 From: Pierre Pronchery Date: Thu, 31 Oct 2013 00:22:30 +0100 Subject: [PATCH] Imported a manual page for pdfviewer(1) --- Makefile | 1 + config.sh | 5 ++ doc/Makefile | 33 +++++++++++ doc/docbook.sh | 138 ++++++++++++++++++++++++++++++++++++++++++++++ doc/pdfviewer.xml | 70 +++++++++++++++++++++++ doc/project.conf | 14 +++++ project.conf | 4 +- 7 files changed, 263 insertions(+), 2 deletions(-) create mode 100644 config.sh create mode 100644 doc/Makefile create mode 100755 doc/docbook.sh create mode 100644 doc/pdfviewer.xml create mode 100644 doc/project.conf diff --git a/Makefile b/Makefile index 99ff73d..7ddee9a 100644 --- a/Makefile +++ b/Makefile @@ -34,6 +34,7 @@ dist: $(PACKAGE)-$(VERSION)/Makefile \ $(PACKAGE)-$(VERSION)/COPYING \ $(PACKAGE)-$(VERSION)/config.h \ + $(PACKAGE)-$(VERSION)/config.sh \ $(PACKAGE)-$(VERSION)/project.conf $(RM) -- $(PACKAGE)-$(VERSION) diff --git a/config.sh b/config.sh new file mode 100644 index 0000000..7965ade --- /dev/null +++ b/config.sh @@ -0,0 +1,5 @@ +PACKAGE="PDFViewer" +VERSION="0.0.1" + +PREFIX="/usr/local" +LIBDIR="${PREFIX}/lib" diff --git a/doc/Makefile b/doc/Makefile new file mode 100644 index 0000000..1547aa7 --- /dev/null +++ b/doc/Makefile @@ -0,0 +1,33 @@ +TARGETS = pdfviewer.1 pdfviewer.html +PREFIX = /usr/local +DESTDIR = +RM = rm -f +LN = ln -f +MKDIR = mkdir -m 0755 -p +INSTALL = install + + +all: $(TARGETS) + +pdfviewer.1: pdfviewer.xml + ./docbook.sh -P "$(PREFIX)" -- "pdfviewer.1" + +pdfviewer.html: pdfviewer.xml + ./docbook.sh -P "$(PREFIX)" -- "pdfviewer.html" + +clean: + $(RM) -- $(pdfviewer.1_OBJS) $(pdfviewer.html_OBJS) + ./docbook.sh -c -P "$(PREFIX)" -- "pdfviewer.html" + +distclean: clean + $(RM) -- $(TARGETS) + +install: $(TARGETS) + ./docbook.sh -P "$(DESTDIR)$(PREFIX)" -i -- "pdfviewer.1" + ./docbook.sh -P "$(DESTDIR)$(PREFIX)" -i -- "pdfviewer.html" + +uninstall: + ./docbook.sh -P "$(DESTDIR)$(PREFIX)" -u -- "pdfviewer.1" + ./docbook.sh -P "$(DESTDIR)$(PREFIX)" -u -- "pdfviewer.html" + +.PHONY: all clean distclean install uninstall diff --git a/doc/docbook.sh b/doc/docbook.sh new file mode 100755 index 0000000..a9d498c --- /dev/null +++ b/doc/docbook.sh @@ -0,0 +1,138 @@ +#!/bin/sh +#$Id$ +#Copyright (c) 2012-2013 Pierre Pronchery +# +#Redistribution and use in source and binary forms, with or without +#modification, are permitted provided that the following conditions are met: +# +# * Redistributions of source code must retain the above copyright notice, this +# list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright notice, +# this list of conditions and the following disclaimer in the documentation +# and/or other materials provided with the distribution. +# +#THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +#AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +#IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +#DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +#FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +#DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +#SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +#CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +#OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +#OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + +#variables +PREFIX="/usr/local" +. "../config.sh" +#executables +DEBUG="_debug" +INSTALL="install -m 0644" +MKDIR="mkdir -m 0755 -p" +RM="rm -f" +XSLTPROC="xsltproc --nonet --xinclude" + + +#functions +#debug +_debug() +{ + echo "$@" 1>&2 + "$@" +} + + +#usage +_usage() +{ + echo "Usage: docbook.sh [-c|-i|-u][-P prefix] target..." 1>&2 + return 1 +} + + +#main +clean=0 +install=0 +uninstall=0 +while getopts "ciuP:" name; do + case "$name" in + c) + clean=1 + ;; + i) + uninstall=0 + install=1 + ;; + u) + install=0 + uninstall=1 + ;; + P) + PREFIX="$2" + ;; + ?) + _usage + exit $? + ;; + esac +done +shift $((OPTIND - 1)) +if [ $# -eq 0 ]; then + _usage + exit $? +fi + +[ -z "$DATADIR" ] && DATADIR="$PREFIX/share" +[ -z "$MANDIR" ] && MANDIR="$DATADIR/man" + +while [ $# -gt 0 ]; do + target="$1" + source="${target%.*}.xml" + shift + + #determine the type + ext="${target##*.}" + ext="${ext##.}" + case "$ext" in + html) + XSL="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl" + [ -f "${target%.*}.xsl" ] && XSL="${target%.*}.xsl" + instdir="$DATADIR/doc/$ext/$PACKAGE" + ;; + 1|2|3|4|5|6|7|8|9) + XSL="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" + instdir="$MANDIR/man$ext" + ;; + *) + echo "$0: $target: Unknown type" 1>&2 + exit 2 + ;; + esac + + #clean + [ "$clean" -ne 0 ] && continue + + #uninstall + if [ "$uninstall" -eq 1 ]; then + $DEBUG $RM -- "$instdir/$target" || exit 2 + continue + fi + + #install + if [ "$install" -eq 1 ]; then + $DEBUG $MKDIR -- "$instdir" || exit 2 + $DEBUG $INSTALL -- "$target" "$instdir/$target" || exit 2 + continue + fi + + #create + $DEBUG $XSLTPROC -o "$target" "$XSL" "$source" + #XXX ignore errors + if [ $? -ne 0 ]; then + echo "$0: $target: Could not create page" 1>&2 + $RM -- "$target" + break + fi +done diff --git a/doc/pdfviewer.xml b/doc/pdfviewer.xml new file mode 100644 index 0000000..9ec7679 --- /dev/null +++ b/doc/pdfviewer.xml @@ -0,0 +1,70 @@ + + + + + + + + + + + +]> + + + &title; + &package; + + + &firstname; + &surname; + Code and documentation. +
+ &email; +
+
+
+ + 2013 + &firstname; &surname; <&email;> + + + This manual page was written for the DeforaOS project (and may be + used by others). + Permission is granted to copy, distribute and/or modify this + document under the terms of the GNU General Public License, + Version 3 as published by the Free Software Foundation. + +
+ + &name; + §ion; + + + &name; + &purpose; + + + + &name; + filename + + + + Description + &name; is a PDF viewer. + + + Options + The filename of a file to edit can be supplied directly on the command + line. + + + Bugs + Issues can be listed and reported at . + +
+ diff --git a/doc/project.conf b/doc/project.conf new file mode 100644 index 0000000..e8094ae --- /dev/null +++ b/doc/project.conf @@ -0,0 +1,14 @@ +targets=pdfviewer.1,pdfviewer.html +dist=Makefile,docbook.sh,pdfviewer.xml + +[pdfviewer.1] +type=script +script=./docbook.sh +install= +depends=pdfviewer.xml + +[pdfviewer.html] +type=script +script=./docbook.sh +install= +depends=pdfviewer.xml diff --git a/project.conf b/project.conf index 80169f9..7312c62 100644 --- a/project.conf +++ b/project.conf @@ -1,6 +1,6 @@ package=PDFViewer version=0.0.1 -config=h +config=h,sh subdirs=data,src -dist=Makefile,COPYING,config.h +dist=Makefile,COPYING,config.h,config.sh