groff/groff_1.22.2-2.debian.diff

569 lines
18 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: 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: 2013-01-07
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: 2013-01-07
Index: b/contrib/mom/groff_mom.man
===================================================================
--- a/contrib/mom/groff_mom.man
+++ b/contrib/mom/groff_mom.man
@@ -15,6 +15,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
@@ -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.
+..
.
.\" --------------------------------------------------------------------
.\" Setup
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
@@ -796,7 +796,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: 2013-01-07
Index: b/Makefile.in
===================================================================
--- a/Makefile.in
+++ b/Makefile.in
@@ -702,7 +702,7 @@
fi
do=all
-dodirs=$(ALLDIRS) $(OTHERDIRS) 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: 2013-01-07
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
@@ -616,7 +616,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: 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: 2013-01-07
Index: b/Makefile.in
===================================================================
--- a/Makefile.in
+++ b/Makefile.in
@@ -195,7 +195,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: 2013-01-07
Index: b/src/roff/groff/groff.cpp
===================================================================
--- a/src/roff/groff/groff.cpp
+++ b/src/roff/groff/groff.cpp
@@ -333,8 +333,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) {