groff/groff_1.20.1-10.debian.diff
OBS User autobuild fd2d41ec69 Accepting request 49958 from M17N
Copy from M17N/groff based on submit request 49958 from user mvyskocil

OBS-URL: https://build.opensuse.org/request/show/49958
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/groff?expand=0&rev=25
2010-10-07 22:24:02 +00:00

1015 lines
31 KiB
Diff

Description: Use mktemp in groffer to eliminate a race condition
This was forwarded in
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=278265#12 and addressed
differently, but it would still be much better to use mktemp if available.
Origin: vendor, https://bugzilla.redhat.com/show_bug.cgi?id=136313
Author: Mark Cox <mjc@redhat.com>
Author: Colin Watson <cjwatson@debian.org>
Bug-Debian: http://bugs.debian.org/278265
Forwarded: no
Last-Update: 2010-03-01
Index: b/contrib/groffer/shell/groffer2.sh
===================================================================
--- a/contrib/groffer/shell/groffer2.sh
+++ b/contrib/groffer/shell/groffer2.sh
@@ -5222,28 +5222,7 @@
_TMP_DIR="${mi_dir}"'/';
;;
esac;
- _TMP_DIR="${_TMP_DIR}groffer${_PROCESS_ID}";
- if obj _TMP_DIR rm_tree
- then
- :
- else
- mi_tdir_="${_TMP_DIR}"_;
- mi_n=1;
- mi_tdir_n="${mi_tdir_}${mi_n}";
-### main_init()
- while obj mi_tdir_n is_existing
- do
- if obj mi_tdir_n rm_tree
- then
- # directory could not be removed
- mi_n="$(expr "${mi_n}" + 1)";
- mi_tdir_n="${mi_tdir_}${mi_n}";
- continue;
- fi;
- done;
- _TMP_DIR="${mi_tdir_n}";
- fi;
- eval mkdir "${_TMP_DIR}";
+ _TMP_DIR="$(mktemp -d "${_TMP_DIR}groffer.XXXXXX")";
if is_not_equal "$?" 0
then
obj _TMP_DIR rm_tree;
Description: Fix temporary file handling vulnerabilities in pdfroff
Origin: vendor, http://cvsweb.openwall.com/cgi/cvsweb.cgi/Owl/packages/groff/groff-1.20.1-owl-tmp.diff
Bug-Debian: http://bugs.debian.org/538330
Forwarded: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=538330#8
Last-Update: 2010-03-01
Index: b/contrib/pdfmark/pdfroff.man
===================================================================
--- a/contrib/pdfmark/pdfroff.man
+++ b/contrib/pdfmark/pdfroff.man
@@ -529,7 +529,7 @@
.B GROFF_TMPDIR
Identifies the directory in which
.B pdfroff
-should create temporary files.
+should create a subdirectory for its temporary files.
If
.B \%GROFF_TMPDIR
is
@@ -541,7 +541,8 @@
.B TEMP
are considered in turn, as possible temporary file repositories.
If none of these are set, then temporary files are created
-in the current directory.
+in a subdirectory of
+.BR /tmp .
.
.TP
.B GROFF_GHOSTSCRIPT_INTERPRETER
Index: b/contrib/pdfmark/pdfroff.sh
===================================================================
--- a/contrib/pdfmark/pdfroff.sh
+++ b/contrib/pdfmark/pdfroff.sh
@@ -137,7 +137,15 @@
#
# Set up temporary/intermediate file locations.
#
- WRKFILE=${GROFF_TMPDIR=${TMPDIR-${TMP-${TEMP-"."}}}}/pdf$$.tmp
+ MYTMPDIR=${GROFF_TMPDIR-${TMPDIR-${TMP-${TEMP-"/tmp"}}}}
+ WRKDIR="`unset TMPDIR && mktemp -dp "$MYTMPDIR" groff-pdfroff.XXXXXXXXXX`" || exit
+
+ trap 'rm -rf -- "$WRKDIR"' EXIT
+ trap 'trap - EXIT; rm -rf -- "$WRKDIR"; exit 1' HUP INT QUIT PIPE TERM
+
+ GROFF_TMPDIR=${WRKDIR}
+
+ WRKFILE=${GROFF_TMPDIR}/pdf$$.tmp
#
REFCOPY=${GROFF_TMPDIR}/pdf$$.cmp
REFFILE=${GROFF_TMPDIR}/pdf$$.ref
@@ -146,11 +154,6 @@
TC_DATA=${GROFF_TMPDIR}/pdf$$.tc
BD_DATA=${GROFF_TMPDIR}/pdf$$.ps
#
-# Set a trap, to delete temporary files on exit.
-# (FIXME: may want to include other signals, in released version).
-#
- trap "rm -f ${GROFF_TMPDIR}/pdf$$.*" 0
-#
# Initialise 'groff' format control settings,
# to discriminate table of contents and document body formatting passes.
#
Description: Use -dSAFER when calling gs from pdfroff
Author: Colin Watson <cjwatson@debian.org>
Bug-Debian: http://bugs.debian.org/538338
Forwarded: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=538338#8
Last-Update: 2010-03-01
Index: b/contrib/pdfmark/pdfroff.man
===================================================================
--- a/contrib/pdfmark/pdfroff.man
+++ b/contrib/pdfmark/pdfroff.man
@@ -521,7 +521,7 @@
.IP
.I
.ad l
-.NH gs \-dBATCH \-dQUIET \-dNOPAUSE \-sDEVICE=pdfwrite \-sOutputFile=\-
+.NH gs \-dBATCH \-dQUIET \-dNOPAUSE \-dSAFER \-sDEVICE=pdfwrite \-sOutputFile=\-
.ad
.RE
.
Index: b/contrib/pdfmark/pdfroff.sh
===================================================================
--- a/contrib/pdfmark/pdfroff.sh
+++ b/contrib/pdfmark/pdfroff.sh
@@ -600,7 +600,7 @@
$SAY >&2 $n "Writing PDF output ..$c"
if test -z "$PDFROFF_POSTPROCESSOR_COMMAND"
then
- PDFROFF_POSTPROCESSOR_COMMAND="$GS -dQUIET -dBATCH -dNOPAUSE
+ PDFROFF_POSTPROCESSOR_COMMAND="$GS -dQUIET -dBATCH -dNOPAUSE -dSAFER
-sDEVICE=pdfwrite -sOutputFile="${PDF_OUTPUT-"-"}
elif test -n "$PDF_OUTPUT"
Description: Remove unnecessary bashisms from gdiffmk
Author: Colin Watson <cjwatson@debian.org>
Bug-Debian: http://bugs.debian.org/547750
Forwarded: http://lists.gnu.org/archive/html/bug-groff/2009-09/msg00003.html
Last-Update: 2010-03-01
Index: b/contrib/gdiffmk/gdiffmk.sh
===================================================================
--- a/contrib/gdiffmk/gdiffmk.sh
+++ b/contrib/gdiffmk/gdiffmk.sh
@@ -21,7 +21,7 @@
cmd=$( basename $0 )
-function Usage {
+Usage () {
if test "$#" -gt 0
then
echo >&2 "${cmd}: $@"
@@ -60,7 +60,7 @@
}
-function Exit {
+Exit () {
exitcode=$1
shift
for arg
@@ -75,7 +75,7 @@
#
# Check for existence and readability of given file name.
# If not found or not readable, print message and exit with EXIT_CODE.
-function FileRead {
+FileRead () {
case "$2" in
-)
return
@@ -97,7 +97,7 @@
#
# Create the given filename if it doesn't exist.
# If unable to create or write, print message and exit with EXIT_CODE.
-function FileCreate {
+FileCreate () {
case "$2" in
-)
return
@@ -115,7 +115,7 @@
fi
}
-function WouldClobber {
+WouldClobber () {
case "$2" in
-)
return
@@ -136,7 +136,7 @@
MARK1='[['
MARK2=']]'
-function RequiresArgument {
+RequiresArgument () {
# Process flags that take either concatenated or
# separated values.
case "$1" in
Description: Use POSIX-compliant 'trap' arguments
Author: David Weinehall <tao@debian.org>
Author: Colin Watson <cjwatson@debian.org>
Forwarded: http://lists.gnu.org/archive/html/bug-groff/2010-02/msg00005.html
Last-Update: 2010-03-01
Index: b/contrib/eqn2graph/eqn2graph.sh
===================================================================
--- a/contrib/eqn2graph/eqn2graph.sh
+++ b/contrib/eqn2graph/eqn2graph.sh
@@ -75,7 +75,7 @@
{ (exit 1); exit 1; }
fi
-trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 2 15
+trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' EXIT INT TERM
# Here goes:
# 1. Add .EQ/.EN.
Index: b/contrib/grap2graph/grap2graph.sh
===================================================================
--- a/contrib/grap2graph/grap2graph.sh
+++ b/contrib/grap2graph/grap2graph.sh
@@ -71,7 +71,7 @@
{ (exit 1); exit 1; }
fi
-trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 2 15
+trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' EXIT INT TERM
# Here goes:
# 1. Add .G1/.G2.
Index: b/contrib/pic2graph/pic2graph.sh
===================================================================
--- a/contrib/pic2graph/pic2graph.sh
+++ b/contrib/pic2graph/pic2graph.sh
@@ -86,7 +86,7 @@
{ (exit 1); exit 1; }
fi
-trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 2 15
+trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' EXIT INT TERM
# Here goes:
# 1. Wrap the input in dummy .PS/PE macros (and add possibly null .EQ/.EN)
Description: The *2graph scripts use $RANDOM, which is bash-specific
Author: Colin Watson <cjwatson@debian.org>
Forwarded: no
Last-Update: 2010-03-01
Index: b/contrib/eqn2graph/eqn2graph.sh
===================================================================
--- a/contrib/eqn2graph/eqn2graph.sh
+++ b/contrib/eqn2graph/eqn2graph.sh
@@ -1,4 +1,4 @@
-#! /bin/sh
+#! /bin/bash
#
# eqn2graph -- compile EQN equation descriptions to bitmap images
#
Index: b/contrib/grap2graph/grap2graph.sh
===================================================================
--- a/contrib/grap2graph/grap2graph.sh
+++ b/contrib/grap2graph/grap2graph.sh
@@ -1,4 +1,4 @@
-#! /bin/sh
+#! /bin/bash
#
# grap2graph -- compile graph description descriptions to bitmap images
#
Index: b/contrib/pic2graph/pic2graph.sh
===================================================================
--- a/contrib/pic2graph/pic2graph.sh
+++ b/contrib/pic2graph/pic2graph.sh
@@ -1,4 +1,4 @@
-#! /bin/sh
+#! /bin/bash
#
# pic2graph -- compile PIC image descriptions to bitmap images
#
Description: Avoid relying on awk in mdate.sh
The results were unpredictable on mips/mipsel.
Author: Florian Lohoff <flo@rfc822.org>
Bug-Debian: http://bugs.debian.org/62554
Forwarded: no
Last-Update: 2010-03-01
Index: b/mdate.sh
===================================================================
--- a/mdate.sh
+++ b/mdate.sh
@@ -20,41 +20,4 @@
#
# Print the modification date of $1 `nicely'.
-# Don't want foreign dates.
-
-LANGUAGE=
-LC_ALL=C; export LC_ALL
-
-
-(date;
-if ls -L /dev/null 1>/dev/null 2>&1; then ls -L -l $1; else ls -l $1; fi
-) | awk '
-BEGIN {
- full["Jan"] = "January"; number["Jan"] = 1;
- full["Feb"] = "February"; number["Feb"] = 2;
- full["Mar"] = "March"; number["Mar"] = 3;
- full["Apr"] = "April"; number["Apr"] = 4;
- full["May"] = "May"; number["May"] = 5;
- full["Jun"] = "June"; number["Jun"] = 6;
- full["Jul"] = "July"; number["Jul"] = 7;
- full["Aug"] = "August"; number["Aug"] = 8;
- full["Sep"] = "September"; number["Sep"] = 9;
- full["Oct"] = "October"; number["Oct"] = 10;
- full["Nov"] = "November"; number["Nov"] = 11;
- full["Dec"] = "December"; number["Dec"] = 12;
-}
-
-NR == 1 {
- month = $2;
- year = $NF;
-}
-
-NR == 2 {
- if ($(NF-1) ~ /:/) {
- if (number[$(NF-3)] > number[month])
- year--;
- }
- else
- year = $(NF-1);
- print $(NF-2), full[$(NF-3)], year
-}'
+perl -MPOSIX -le 'print strftime("%d %B %Y", localtime((stat $ARGV[0])[9]))' $1
Description: Unset IFS at nroff startup
It's questionable whether we should forward this; as noted in the bug
trail, there's a decent argument that this is a dash bug.
Author: Colin Watson <cjwatson@debian.org>
Bug-Debian: http://bugs.debian.org/541621
Forwarded: no
Last-Update: 2010-03-01
Index: b/src/roff/nroff/nroff.sh
===================================================================
--- a/src/roff/nroff/nroff.sh
+++ b/src/roff/nroff/nroff.sh
@@ -22,6 +22,8 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+unset IFS
+
prog="$0"
# Default device.
Description: '+' isn't a regex metacharacter in sed by default
Why are we only doing this for devascii? Probably a bug one way or
another, but needs review before forwarding.
Author: Fumitoshi UKAI <ukai@debian.or.jp>
Forwarded: no
Last-Update: 2010-03-01
Index: b/font/devascii/Makefile.sub
===================================================================
--- a/font/devascii/Makefile.sub
+++ b/font/devascii/Makefile.sub
@@ -12,8 +12,8 @@
@-rm -f $@
@(charwidth=`expr $(RES) / $(CPI)` ; \
sed -e "s/^name [A-Z]*$$/name $@/" \
- -e "s/^\\([^ ]*\\) [0-9]+ /\\1 $$charwidth /" \
- -e "s/^spacewidth [0-9]+$$/spacewidth $$charwidth/" \
+ -e "s/^\\([^ ]*\\) [0-9][0-9]* /\\1 $$charwidth /" \
+ -e "s/^spacewidth [0-9][0-9]*$$/spacewidth $$charwidth/" \
-e "s/^internalname .*$$/internalname $@/" \
-e "/^internalname/s/BI/3/" \
-e "/^internalname/s/B/2/" \
Description: Adjust #! line of font/devlj4/generate/special.awk
awk is in /usr/bin/awk on Debian, not /bin/awk.
Author: Colin Watson <cjwatson@debian.org>
Forwarded: no
Last-Update: 2010-03-01
Index: b/font/devlj4/generate/special.awk
===================================================================
--- a/font/devlj4/generate/special.awk
+++ b/font/devlj4/generate/special.awk
@@ -1,4 +1,4 @@
-#! /bin/awk -f
+#! /usr/bin/awk -f
# Correct Intellifont-based height metrics for several glyphs in
# special font for TrueType CG Times (LaserJet 4000 and later).
Description: Set appropriate papersize when calling gs from HTML preprocessor
This patch seems fishy. get_papersize was removed upstream in r335.1.348,
so should we even be applying this any more? Furthermore, we don't use
gsPaper anywhere, and looking at devps/DESC here is just nasty. Needs
review.
Author: Colin Watson <cjwatson@debian.org>
Forwarded: no
Last-Update: 2010-03-01
Index: b/src/preproc/html/pre-html.cpp
===================================================================
--- a/src/preproc/html/pre-html.cpp
+++ b/src/preproc/html/pre-html.cpp
@@ -152,6 +152,10 @@
#define DEFAULT_IMAGE_RES 100 // number of pixels per inch resolution
#define IMAGE_BOARDER_PIXELS 0
#define INLINE_LEADER_CHAR '\\'
+#define A4_LENGTH 841890 // taken from devps/Makefile.sub
+#define LETTER_LENGTH 792000 // taken from devps/Makefile.sub
+#define A4_OFFSET 0
+#define LETTER_OFFSET 50 // 50/72 of an inch
// Don't use colour names here! Otherwise there is a dependency on
// a file called `rgb.txt' which maps names to colours.
@@ -199,6 +203,7 @@
// by -D
static int troff_arg = 0; // troff arg index
static char *image_dir = NULL; // user specified image directory
+static char *gsPaper = NULL; // the paper size that gs must use
static int textAlphaBits = MAX_ALPHA_BITS;
static int graphicAlphaBits = MAX_ALPHA_BITS;
static char *antiAlias = NULL; // antialias arguments we pass to gs
@@ -312,6 +317,54 @@
}
/*
+ * get_papersize - returns an integer determining the paper length from
+ * devps/DESC
+ */
+
+static int get_papersize (void)
+{
+ char *pathp;
+ FILE *f;
+ int res;
+ f = font_path.open_file("devps/DESC", &pathp);
+ if (f == 0)
+ fatal("can't open devps/DESC");
+ while (get_line(f)) {
+ int n = sscanf(linebuf, "paperlength %d", &res);
+ if (n >= 1) {
+ fclose(f);
+ return res;
+ }
+ if (!strncmp(linebuf, "papersize", 9)) {
+ double length;
+ char *p = linebuf + 9;
+ while (*p == ' ' || *p == '\t')
+ p++;
+ for (p = strtok(p, " \t"); p; p = strtok(0, " \t")) {
+ if (font::scan_papersize(p, 0, &length, 0)) {
+ fclose(f);
+ return int(length * postscriptRes + 0.5);
+ }
+ }
+ fatal("bad argument to `papersize' keyword in devps/DESC");
+ }
+ }
+ fatal("can't find `papersize' or `paperlength' keyword in devps/DESC");
+ return 0;
+}
+
+/*
+ * determine_vertical_offset - works out the default vertical offset from
+ * the page length
+ */
+
+static void determine_vertical_offset (void)
+{
+ vertical_offset = ((A4_LENGTH-get_papersize())*72)/postscriptRes;
+ gsPaper = "-sPAPERSIZE=a4";
+}
+
+/*
* html_system - A wrapper for system().
*/
@@ -1781,6 +1834,7 @@
if (image_gen == NULL || (strcmp(image_gen, "") == 0))
fatal("devhtml/DESC must set the image_generator field, exiting");
postscriptRes = get_resolution();
+ determine_vertical_offset();
i = scanArguments(argc, argv);
setupAntiAlias();
checkImageDir();
Description: Call `ec' before mapping characters
Origin: upstream, http://bazaar.launchpad.net/~vcs-imports/groff/main/revision/1822
Forwarded: yes
Last-Update: 2010-03-01
Index: b/tmac/doc.tmac
===================================================================
--- a/tmac/doc.tmac
+++ b/tmac/doc.tmac
@@ -6425,6 +6425,9 @@
.blm doc-empty-line
.
.
+.ec
+.
+.
.\" For UTF-8, map some characters conservatively for the sake
.\" of easy cut and paste.
.
@@ -6438,9 +6441,6 @@
.\}
.
.
-.ec
-.
-.
.\" load local modifications
.mso mdoc.local
.
Description: Update mdoc for newer FreeBSD and POSIX versions
Author: Colin Watson <cjwatson@debian.org>
Forwarded: http://lists.gnu.org/archive/html/bug-groff/2010-02/msg00007.html
Last-Update: 2010-03-01
Index: b/tmac/doc-common
===================================================================
--- a/tmac/doc-common
+++ b/tmac/doc-common
@@ -504,6 +504,9 @@
.ds doc-operating-system-FreeBSD-6.4 6.4
.ds doc-operating-system-FreeBSD-7.0 7.0
.ds doc-operating-system-FreeBSD-7.1 7.1
+.ds doc-operating-system-FreeBSD-7.2 7.2
+.ds doc-operating-system-FreeBSD-7.3 7.3
+.ds doc-operating-system-FreeBSD-8.0 8.0
.
.ds doc-operating-system-Darwin-8.0.0 8.0.0
.ds doc-operating-system-Darwin-8.1.0 8.1.0
Index: b/tmac/doc-syms
===================================================================
--- a/tmac/doc-syms
+++ b/tmac/doc-syms
@@ -637,6 +637,8 @@
.as doc-str-St--p1003.1-2001 " (\*[Lq]\)\*[Px]\*[doc-str-St].1\*[Rq])
.ds doc-str-St--p1003.1-2004 \*[doc-Tn-font-size]\%IEEE\*[doc-str-St] Std 1003.1-2004
.as doc-str-St--p1003.1-2004 " (\*[Lq]\)\*[Px]\*[doc-str-St].1\*[Rq])
+.ds doc-str-St--p1003.1-2008 \*[doc-Tn-font-size]\%IEEE\*[doc-str-St] Std 1003.1-2008
+.as doc-str-St--p1003.1-2008 " (\*[Lq]\)\*[Px]\*[doc-str-St].1\*[Rq])
.
.\" POSIX Part 2: Shell and Utilities
.ds doc-str-St--p1003.2 \*[doc-Tn-font-size]\%IEEE\*[doc-str-St] Std 1003.2
Index: b/tmac/groff_mdoc.man
===================================================================
--- a/tmac/groff_mdoc.man
+++ b/tmac/groff_mdoc.man
@@ -870,7 +870,7 @@
1.0, 1.1, 1.1.5, 1.1.5.1, 2.0, 2.0.5, 2.1, 2.1.5, 2.1.6, 2.1.7, 2.2, 2.2.1,
2.2.2, 2.2.5, 2.2.6, 2.2.7, 2.2.8, 3.0, 3.1, 3.2, 3.3, 3.4, 3.5, 4.0, 4.1,
4.1.1, 4.2, 4.3, 4.4, 4.5, 4.6, 4.6.2, 4.7, 4.8, 4.9, 4.10, 4.11, 5.0, 5.1,
-5.2, 5.2.1, 5.3, 5.4, 5.5, 6.0, 6.1, 6.2, 6.3, 6.4, 7.0, 7.1
+5.2, 5.2.1, 5.3, 5.4, 5.5, 6.0, 6.1, 6.2, 6.3, 6.4, 7.0, 7.1, 7.2, 7.3, 8.0
.It DragonFly
1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.8, 1.8.1, 1.10, 1.12, 1.12.2, 2.0
.It Darwin
@@ -1974,6 +1974,8 @@
.St -p1003.1-2001
.It Li \-p1003.1\-2004
.St -p1003.1-2004
+.It Li \-p1003.1\-2008
+.St -p1003.1-2008
.El
.Pp
.
Description: Add GFDL references to manual pages licensed under GFDL
Author: Colin Watson <cjwatson@debian.org>
Bug-Debian: http://bugs.debian.org/292229
Forwarded: not-needed
Last-Update: 2010-03-01
Index: b/contrib/mom/groff_mom.man
===================================================================
--- a/contrib/mom/groff_mom.man
+++ b/contrib/mom/groff_mom.man
@@ -14,6 +14,10 @@
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+Debian package as /usr/share/doc/groff/copyright.
+..
.
.do nr groff_mom_C \n[.C]
.cp 0
Index: b/man/ditroff.man
===================================================================
--- a/man/ditroff.man
+++ b/man/ditroff.man
@@ -17,6 +17,10 @@
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+Debian package as /usr/share/doc/groff/copyright.
+..
.
.
.\" --------------------------------------------------------------------
Index: b/man/groff.man
===================================================================
--- a/man/groff.man
+++ b/man/groff.man
@@ -19,6 +19,10 @@
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+Debian package as /usr/share/doc/groff/copyright.
+..
.
.\" --------------------------------------------------------------------
.\" Setup
Index: b/man/groff_char.man
===================================================================
--- a/man/groff_char.man
+++ b/man/groff_char.man
@@ -32,6 +32,10 @@
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+Debian package as /usr/share/doc/groff/copyright.
+..
.
.\" --------------------------------------------------------------------
.\" Setup Part 1
Index: b/man/groff_diff.man
===================================================================
--- a/man/groff_diff.man
+++ b/man/groff_diff.man
@@ -22,6 +22,10 @@
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+Debian package as /usr/share/doc/groff/copyright.
+..
.
.
.\" --------------------------------------------------------------------
Index: b/man/groff_out.man
===================================================================
--- a/man/groff_out.man
+++ b/man/groff_out.man
@@ -19,6 +19,10 @@
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+Debian package as /usr/share/doc/groff/copyright.
+..
.
.\" --------------------------------------------------------------------
.\" Setup
Index: b/man/groff_tmac.man
===================================================================
--- a/man/groff_tmac.man
+++ b/man/groff_tmac.man
@@ -19,6 +19,10 @@
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+Debian package as /usr/share/doc/groff/copyright.
+..
.ds Ellipsis \&.\|.\|.\&\"
.
.TH GROFF_TMAC @MAN5EXT@ "@MDATE@" "Groff Version @VERSION@"
Index: b/man/roff.man
===================================================================
--- a/man/roff.man
+++ b/man/roff.man
@@ -18,6 +18,10 @@
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+Debian package as /usr/share/doc/groff/copyright.
+..
.
.
.\" --------------------------------------------------------------------
Index: b/src/roff/groff/groff.man
===================================================================
--- a/src/roff/groff/groff.man
+++ b/src/roff/groff/groff.man
@@ -14,6 +14,10 @@
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+Debian package as /usr/share/doc/groff-base/copyright.
+..
.
.
.\" --------------------------------------------------------------------
Index: b/src/roff/troff/troff.man
===================================================================
--- a/src/roff/troff/troff.man
+++ b/src/roff/troff/troff.man
@@ -21,6 +21,10 @@
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+Debian package as /usr/share/doc/groff-base/copyright.
+..
.
.\" --------------------------------------------------------------------
.\" Title
Index: b/tmac/groff_trace.man
===================================================================
--- a/tmac/groff_trace.man
+++ b/tmac/groff_trace.man
@@ -21,6 +21,10 @@
A copy of the Free Documentation License is included as a file called
FDL in the main directory of the groff source package.
..
+.ig
+A copy of the GNU Free Documentation License is also available in this
+Debian package as /usr/share/doc/groff/copyright.
+..
.
.ds Ellipsis .\|.\|.\&\"
.
Description: Adjust documentation references to account for compression
Author: Colin Watson <cjwatson@debian.org>
Bug-Debian: http://bugs.debian.org/498356
Forwarded: not-needed
Last-Update: 2010-03-01
Index: b/contrib/pdfmark/pdfroff.man
===================================================================
--- a/contrib/pdfmark/pdfroff.man
+++ b/contrib/pdfmark/pdfroff.man
@@ -783,7 +783,7 @@
in PDF format, in the reference guide
.BR "\*(lqPortable Document Format Publishing with GNU Troff\*(rq" ,
included in the installed documentation set as
-.BR \%@PDFDOCDIR@/pdfmark.pdf .
+.BR \%@PDFDOCDIR@/pdfmark.pdf.gz .
.
.
.\" --------------------------------------------------------------------
Index: b/src/preproc/pic/pic.man
===================================================================
--- a/src/preproc/pic/pic.man
+++ b/src/preproc/pic/pic.man
@@ -227,7 +227,7 @@
A complete documentation is available in the file
.LP
.RS
-.B @DOCDIR@/pic.ms
+.B @DOCDIR@/pic.ms.gz
.RE
.
.SS \*(tx mode
Description: Adjust default recursive make targets
This has been in the groff packaging since records began, and the reason
for it is unclear. Needs investigation.
Author: unknown
Forwarded: no
Last-Update: 2010-03-01
Index: b/Makefile.in
===================================================================
--- a/Makefile.in
+++ b/Makefile.in
@@ -641,7 +641,7 @@
fi
do=all
-dodirs=$(ALLDIRS) dot
+dodirs=$(DISTDIRS)
# Default target for subdir_Makefile
subdir=src/roff/troff
Description: Inhibit -wmac warnings due to pic and eqn
Define .PS and .PE to empty strings in pic output to inhibit -wmac
warnings; similarly, define .EQ and .EN to empty strings in eqn output.
Author: Colin Watson <cjwatson@debian.org>
Bug-Debian: http://bugs.debian.org/495713
Forwarded: no
Last-Update: 2010-03-01
Index: b/src/preproc/eqn/main.cpp
===================================================================
--- a/src/preproc/eqn/main.cpp
+++ b/src/preproc/eqn/main.cpp
@@ -374,6 +374,8 @@
}
init_table(device);
init_char_table();
+ printf(".if !dEQ .ds EQ\n"
+ ".if !dEN .ds EN\n");
if (output_format == troff) {
printf(".if !'\\*(.T'%s' "
".if !'\\*(.T'html' " // the html device uses `-Tps' to render
Index: b/src/preproc/pic/main.cpp
===================================================================
--- a/src/preproc/pic/main.cpp
+++ b/src/preproc/pic/main.cpp
@@ -612,7 +612,11 @@
out = make_fig_output();
else
#endif
+ {
out = make_troff_output();
+ printf(".if !dPS .ds PS\n"
+ ".if !dPE .ds PE\n");
+ }
#ifdef FIG_SUPPORT
if (whole_file_flag) {
if (optind >= argc)
Description: Handle ditroff command `Dt' without argument gracefully
Without this patch, grotty goes into an infinite loop if it tries to
process:
.
x T utf8
x res 240 24 40
x init
p1
Dt
Origin: upstream, http://bazaar.launchpad.net/~vcs-imports/groff/main/revision/1876
Forwarded: yes
Last-Update: 2010-05-09
Index: b/src/libs/libdriver/input.cpp
===================================================================
--- a/src/libs/libdriver/input.cpp
+++ b/src/libs/libdriver/input.cpp
@@ -3,13 +3,13 @@
// <groff_src_dir>/src/libs/libdriver/input.cpp
/* Copyright (C) 1989, 1990, 1991, 1992, 2001, 2002, 2003, 2004, 2005,
- 2006, 2008, 2009
+ 2006, 2008, 2009, 2010
Free Software Foundation, Inc.
Written by James Clark (jjc@jclark.com)
Major rewrite 2001 by Bernd Warken (bwarken@mayn.de)
- Last update: 5 Jan 2009
+ Last update: 9 May 2010
This file is part of groff, the GNU roff text processing system.
@@ -790,7 +790,7 @@
c = get_char();
}
if (!isdigit((int) c))
- error("integer argument expected");
+ fatal("integer argument expected");
while (isdigit((int) c)) {
buf.append(c);
c = get_char();
@@ -879,6 +879,7 @@
break;
default:
error("integer argument expected");
+ done = true;
break;
}
}
@@ -946,7 +947,7 @@
case '\n':
case EOF:
error("missing argument");
- break;
+ return c;
default: // first essential character
return c;
}
Description: Allow adding a version-independent directory to the macro path
This allows us to put /usr/share/groff/tmac at the end of groff's macro
path in Debian.
Author: Colin Watson <cjwatson@debian.org>
Forwarded: no
Last-Update: 2010-03-01
Index: b/Makefile.in
===================================================================
--- a/Makefile.in
+++ b/Makefile.in
@@ -190,7 +190,11 @@
# directory will be always added.
# `troffrc' and `troffrc-end' (and `eqnrc') are searched neither in the
# current nor in the home directory.
+ifeq (,$(extratmacdirs))
tmacpath=$(systemtmacdir)$(RT_SEP)$(localtmacdir)$(RT_SEP)$(tmacdir)
+else
+tmacpath=$(systemtmacdir)$(RT_SEP)$(localtmacdir)$(RT_SEP)$(tmacdir)$(RT_SEP)$(extratmacdirs)
+endif
# `sys_tmac_prefix' is prefix (if any) for system macro packages.
sys_tmac_prefix=@sys_tmac_prefix@
Description: Use /etc/papersize in preference to configure-time selection
Author: Colin Watson <cjwatson@debian.org>
Forwarded: not-needed
Last-Update: 2010-03-01
Index: b/font/devdvi/Makefile.sub
===================================================================
--- a/font/devdvi/Makefile.sub
+++ b/font/devdvi/Makefile.sub
@@ -16,8 +16,8 @@
DESC: DESC.in
cat $(srcdir)/DESC.in >DESC
if test "$(PAGE)" = A4; then \
- echo "papersize a4" >>DESC; \
+ echo "papersize /etc/papersize a4" >>DESC; \
else \
- echo "papersize letter" >>DESC; \
+ echo "papersize /etc/papersize letter" >>DESC; \
fi
test -z '$(DVIPRINT)' || echo print '$(DVIPRINT)' >>DESC
Index: b/font/devlbp/Makefile.sub
===================================================================
--- a/font/devlbp/Makefile.sub
+++ b/font/devlbp/Makefile.sub
@@ -13,9 +13,9 @@
-rm -f DESC
cat $(srcdir)/DESC.in >>DESC
if test "$(PAGE)" = A4; then \
- echo "papersize a4" >>DESC; \
+ echo "papersize /etc/papersize a4" >>DESC; \
else \
- echo "papersize letter" >>DESC; \
+ echo "papersize /etc/papersize letter" >>DESC; \
fi
test -z '$(LBPPRINT)' || echo print '$(LBPPRINT)' >>DESC
Index: b/font/devlj4/Makefile.sub
===================================================================
--- a/font/devlj4/Makefile.sub
+++ b/font/devlj4/Makefile.sub
@@ -30,9 +30,9 @@
echo "unitwidth `expr 7620000 / $(LJ4RES)`" >>DESC
cat $(srcdir)/DESC.in >>DESC
if test "$(PAGE)" = A4; then \
- echo "papersize a4" >>DESC; \
+ echo "papersize /etc/papersize a4" >>DESC; \
else \
- echo "papersize letter" >>DESC; \
+ echo "papersize /etc/papersize letter" >>DESC; \
fi
test -z '$(LJ4PRINT)' || echo print '$(LJ4PRINT)' >>DESC
Index: b/font/devps/Makefile.sub
===================================================================
--- a/font/devps/Makefile.sub
+++ b/font/devps/Makefile.sub
@@ -40,9 +40,9 @@
cat $(srcdir)/DESC.in >DESC
echo broken $(BROKEN_SPOOLER_FLAGS) >>DESC
if test "$(PAGE)" = A4; then \
- echo "papersize a4" >>DESC; \
+ echo "papersize /etc/papersize a4" >>DESC; \
else \
- echo "papersize letter" >>DESC; \
+ echo "papersize /etc/papersize letter" >>DESC; \
fi
test -z '$(PSPRINT)' || echo print '$(PSPRINT)' >>DESC
Description: Display more helpful output when failing to load a device
If the device is known to be one of the devices in the groff binary package
rather than groff-base, refer the user to that.
Author: Colin Watson <cjwatson@debian.org>
Forwarded: not-needed
Last-Update: 2010-03-01
Index: b/src/roff/groff/groff.cpp
===================================================================
--- a/src/roff/groff/groff.cpp
+++ b/src/roff/groff/groff.cpp
@@ -323,8 +323,16 @@
commands[PIC_INDEX].append_arg("-U");
}
font::set_unknown_desc_command_handler(handle_unknown_desc_command);
- if (!font::load_desc())
- fatal("invalid device `%1'", device);
+ if (!font::load_desc()) {
+ if (strcmp(device, "X100") == 0 || strcmp(device, "X100-12") == 0 ||
+ strcmp(device, "X75") == 0 || strcmp(device, "X75-12") == 0 ||
+ strcmp(device, "dvi") == 0 || strcmp(device, "html") == 0 ||
+ strcmp(device, "lbp") == 0 || strcmp(device, "lj4") == 0)
+ fatal("invalid device `%1' (try installing the `groff' package?)",
+ device);
+ else
+ fatal("invalid device `%1'", device);
+ }
if (!postdriver)
fatal("no `postpro' command in DESC file for device `%1'", device);
if (predriver && !zflag) {