commit 5eb04ece650131cc2b36254313445b863d5173f7519797cad942ba939bbf9795 Author: Adrian Schröter Date: Fri May 3 13:18:03 2024 +0200 Sync from SUSE:SLFO:Main groff revision cf304a93883ef40e7d054cc0f068abd4 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/0001-locale-support-in-papersize-definition.patch b/0001-locale-support-in-papersize-definition.patch new file mode 100644 index 0000000..7c77c81 --- /dev/null +++ b/0001-locale-support-in-papersize-definition.patch @@ -0,0 +1,96 @@ +From 15c71e2588058f20169440c0add955a527144c7a Mon Sep 17 00:00:00 2001 +From: Michal Vyskocil +Date: Mon, 26 Sep 2011 13:23:56 +0200 +Subject: [PATCH] locale support in papersize definition + +The papersize definition in groff_font(5) has been extended by new +keyword "locale". In this mode groff determine the paper size from +LC_PAPER variable. + +The algorithm is simple - there is a small static list of countries +using letter based on territory language information page [1] (CLDR +2.0). If the LC_PAPER contains the country code (for instance _CL - +Chile), letter dimmensions are used. Otherwise a4. + +[1] http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/territory_language_information.html +[2] http://wiki.services.openoffice.org/wiki/DefaultPaperSize +--- + src/include/paper.h | 4 ++-- + src/libs/libgroff/paper.cpp | 42 ++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 44 insertions(+), 2 deletions(-) + +diff --git a/src/include/paper.h b/src/include/paper.h +index 73e070c..f5a8039 100644 +--- a/src/include/paper.h ++++ b/src/include/paper.h +@@ -30,7 +30,7 @@ public: + papersize_init(); + } _papersize_init; + +-// A0-A7, B0-B7, C0-C7, D0-D7, 8 American paper sizes, 1 special size */ +-#define NUM_PAPERSIZES 4*8 + 8 + 1 ++// A0-A7, B0-B7, C0-C7, D0-D7, 8 American paper sizes, 1 special size and the locale */ ++#define NUM_PAPERSIZES 4*8 + 8 + 1 + 1 + + extern paper papersizes[]; +diff --git a/src/libs/libgroff/paper.cpp b/src/libs/libgroff/paper.cpp +index 27a7c8c..42dea69 100644 +--- a/src/libs/libgroff/paper.cpp ++++ b/src/libs/libgroff/paper.cpp +@@ -58,6 +58,46 @@ static void add_american_paper(const char *name, int idx, + papersizes[idx].width = width; + } + ++static int is_letter(const char* variable) { ++ ++ // CLDR 1.8.1 http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/territory_la ++ // http://wiki.services.openoffice.org/wiki/DefaultPaperSize ++ #define COUNTRIES 13 ++ static const char* countries[COUNTRIES] = { ++ "_BZ", "_CA", "CL", "CO", "CR", "GT", "MX", "NI", "PA", "PH", "PR", "SV", "US", ++ }; ++ ++ if (! variable) { ++ return 0; ++ } ++ ++ for (int i = 0; i != COUNTRIES; i++) { ++ if (strstr(variable, countries[i])) { ++ return 1; ++ } ++ } ++ ++ return 0; ++} ++ ++static void add_locale_paper(int idx) { ++ char * lc_paper; ++ double l = 297/25.4; ++ double w = 210/25.4; ++ ++ //XXX: setlocale(LC_PAPER, NULL) does not work ++ // at least on glibc 2.14 ++ lc_paper = setlocale(LC_PAPER, ""); ++ ++ if (is_letter(lc_paper)) { ++ l = 11; ++ w = 8.5; ++ } ++ ++ add_american_paper("locale", idx, l, w); ++ ++} ++ + int papersize_init::initialised = 0; + + papersize_init::papersize_init() +@@ -80,4 +120,6 @@ papersize_init::papersize_init() + add_american_paper("monarch", 39, 7.5, 3.875); + // this is an ISO format, but it easier to use add_american_paper + add_american_paper("dl", 40, 220/25.4, 110/25.4); ++ // the format from locale ++ add_locale_paper(41); + } +-- +1.7.6.3 + diff --git a/0002-documentation-for-the-locale-keyword.patch b/0002-documentation-for-the-locale-keyword.patch new file mode 100644 index 0000000..b804745 --- /dev/null +++ b/0002-documentation-for-the-locale-keyword.patch @@ -0,0 +1,79 @@ +From d4f65688290a2362af9a66ecb3ae93beb591fbf9 Mon Sep 17 00:00:00 2001 +From: Michal Vyskocil +Date: Thu, 29 Sep 2011 09:19:01 +0200 +Subject: [PATCH] documentation for the locale keyword + +--- + doc/groff.texi | 28 +++++++++++++++++++++++++++- + man/groff_font.5.man | 8 +++++++- + 2 files changed, 34 insertions(+), 2 deletions(-) + +Index: b/doc/groff.texi +=================================================================== +--- a/doc/groff.texi ++++ b/doc/groff.texi +@@ -18404,10 +18404,36 @@ for points, and @samp{P} for picas. Exa + argument that starts with a digit is always treated as a custom paper + format. + +-Finally, the argument can be a file name (e.g., @file{/etc/papersize}); ++Or, the argument can be a file name (e.g., @file{/etc/papersize}); + if the file can be opened, the first line is read and a match attempted + against each of the other forms. No comment syntax is supported. + ++Finally, @var{string} can be a keyword @code{locale}. In this case groff will ++determine the default paper size from the country code of @code{LC_PAPER}. For ++most of combinations (including @code{LC_PAPER=C} or @code{POSIX}) a4 is used. ++In case of countries listed in Common Language Data Repository 2.0 of Unicode ++Consorcium - US (@code{US}), Canada (@code{CA}), Belize (@code{BZ}), Chile ++(@code{CL}), Colombia (@code{CO}), Costa Rica (@code{CR}), El Salvador ++(@code{SV}), Guatemala (@code{GT}), Panama (@code{PA}), Philippines ++(@code{PH}), Puerto Rico (@code{PR}), Mexico (@code{MX}), Nicaragua (@code{NI}) ++and the Venezula (@code{VE}) size letter is used. The value of @code{LC_PAPER} ++is usually derived from @code{LANG} or @code{LC_ALL} and needs to be changed ++only if your main locale does not match the expected default paper size. Then ++you need to put the correct LC_PAPER variable into your environment. ++ ++@example ++@group ++# the locale keyword is in devpts ++shell> grep papersize /usr/share/groff/current/font/devps/DESC ++papersize locale ++# default locale is US producing a letter papersize ++shell> locale | grep LC_PAPER ++LC_PAPER="en_US.UTF-8" ++# let's use a4 (German default) in this case ++shell> LC_PAPER=de_DE.UTF-8 groff -Tps ... ++@end group ++@end example ++ + More than one argument can be specified; + each is scanned in turn and the first valid paper specification used. + +Index: b/man/groff_font.5.man +=================================================================== +--- a/man/groff_font.5.man ++++ b/man/groff_font.5.man +@@ -286,7 +286,7 @@ format. + . + . + .IP +-Finally, ++Or, + the argument can be a file name + (e.g., + .IR /etc/papersize ); +@@ -296,7 +296,13 @@ the first line is read and a match attem + No comment syntax is supported. + . + . ++Finally ++.I string ++can be a keyword locale, so ++.B groff ++will determine the papersize from system locale (LC_PAPER). + .IP ++. + More than one argument can be specified; + each is scanned in turn and the first valid paper specification used. + . diff --git a/0004-don-t-use-usr-bin-env-in-shebang.patch b/0004-don-t-use-usr-bin-env-in-shebang.patch new file mode 100644 index 0000000..95551ad --- /dev/null +++ b/0004-don-t-use-usr-bin-env-in-shebang.patch @@ -0,0 +1,76 @@ +From e263e19aa1c63dbcbe710e8aae79c8e298606e4c Mon Sep 17 00:00:00 2001 +From: Peter Schiffer +Date: Tue, 4 Nov 2014 14:49:57 +0100 +Subject: [PATCH] don't use /usr/bin/env in shebang + +There might be an issue that the script is executed with unwanted version of + if that language is provided by enabled dynamic software collection. + +Resolves: #987069 +--- + contrib/chem/chem.pl | 2 +- + contrib/groffer/groffer.pl | 2 +- + contrib/groffer/roff2.pl | 2 +- + src/roff/grog/grog.pl | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +Index: b/contrib/chem/chem.pl +=================================================================== +--- a/contrib/chem/chem.pl ++++ b/contrib/chem/chem.pl +@@ -1,4 +1,4 @@ +-#! /usr/bin/env perl ++#! /usr/bin/perl + + # chem - a groff preprocessor for producing chemical structure diagrams + +Index: b/contrib/glilypond/glilypond.pl +=================================================================== +--- a/contrib/glilypond/glilypond.pl ++++ b/contrib/glilypond/glilypond.pl +@@ -1,4 +1,4 @@ +-#! /usr/bin/env perl ++#! /usr/bin/perl + + package main; + +Index: b/contrib/gperl/gperl.pl +=================================================================== +--- a/contrib/gperl/gperl.pl ++++ b/contrib/gperl/gperl.pl +@@ -1,4 +1,4 @@ +-#! /usr/bin/env perl ++#! /usr/bin/perl + + # gperl - add Perl part to groff files, this is the preprocessor for that + +Index: b/contrib/gpinyin/gpinyin.pl +=================================================================== +--- a/contrib/gpinyin/gpinyin.pl ++++ b/contrib/gpinyin/gpinyin.pl +@@ -1,4 +1,4 @@ +-#! /usr/bin/env perl ++#! /usr/bin/perl + + # gpinyin - European-like Chinese writing 'pinyin' into 'groff' + +Index: b/mdate.pl +=================================================================== +--- a/mdate.pl ++++ b/mdate.pl +@@ -1,4 +1,4 @@ +-#! /usr/bin/env perl ++#! /usr/bin/perl + # + # Copyright (C) 1991-2020 Free Software Foundation, Inc. + # +Index: b/tmac/hyphenex.pl +=================================================================== +--- a/tmac/hyphenex.pl ++++ b/tmac/hyphenex.pl +@@ -1,4 +1,4 @@ +-#! /usr/bin/env perl ++#! /usr/bin/perl + # + # + # hyphenex.pl diff --git a/_multibuild b/_multibuild new file mode 100644 index 0000000..9a7aa78 --- /dev/null +++ b/_multibuild @@ -0,0 +1,4 @@ + + full + + diff --git a/bash-scripts.patch b/bash-scripts.patch new file mode 100644 index 0000000..6d90347 --- /dev/null +++ b/bash-scripts.patch @@ -0,0 +1,45 @@ +From e3d8901a5e24e11e1fa8a80329309295a20eb47f Mon Sep 17 00:00:00 2001 +From: Colin Watson +Date: Thu, 2 Jan 2014 13:13:09 +0000 +Subject: The *2graph scripts use $RANDOM, which is bash-specific + +Forwarded: https://lists.gnu.org/archive/html/groff/2014-01/msg00008.html +Last-Update: 2018-03-05 + +Patch-Name: bash-scripts.patch +--- + contrib/eqn2graph/eqn2graph.sh | 2 +- + contrib/grap2graph/grap2graph.sh | 2 +- + contrib/pic2graph/pic2graph.sh | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/contrib/eqn2graph/eqn2graph.sh b/contrib/eqn2graph/eqn2graph.sh +index 3e9c37486..454754b52 100644 +--- 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 + # +diff --git a/contrib/grap2graph/grap2graph.sh b/contrib/grap2graph/grap2graph.sh +index 29df25bb1..062f2eecd 100644 +--- 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 + # +diff --git a/contrib/pic2graph/pic2graph.sh b/contrib/pic2graph/pic2graph.sh +index b22991483..cc92ce075 100644 +--- 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 + # diff --git a/groff-1.20.1-deunicode.patch b/groff-1.20.1-deunicode.patch new file mode 100644 index 0000000..ac6d3b8 --- /dev/null +++ b/groff-1.20.1-deunicode.patch @@ -0,0 +1,16 @@ +Index: b/tmac/tty.tmac +=================================================================== +--- a/tmac/tty.tmac ++++ b/tmac/tty.tmac +@@ -70,6 +70,11 @@ + .fchar \[radicalex] \[rn] + .fchar \[sqrtex] \[rn] + . ++.if '\*[.T]'utf8' \{\ ++.\" use ascii hyphenation characters - bnc#68385 ++. shc - ++.\} ++. + .\" color definitions + .defcolor black rgb #000000 + .defcolor red rgb #ff0000 diff --git a/groff-1.20.1-nroff-empty-LANGUAGE.patch b/groff-1.20.1-nroff-empty-LANGUAGE.patch new file mode 100644 index 0000000..aba8407 --- /dev/null +++ b/groff-1.20.1-nroff-empty-LANGUAGE.patch @@ -0,0 +1,13 @@ +Index: b/src/roff/nroff/nroff.sh +=================================================================== +--- a/src/roff/nroff/nroff.sh ++++ b/src/roff/nroff/nroff.sh +@@ -131,7 +131,7 @@ then + *) + # Some old shells don't support ${FOO:-bar} expansion syntax. We + # should switch to it when it is safe to abandon support for them. +- case "${LC_ALL-${LC_CTYPE-${LANG}}}" in ++ case "${LC_ALL:-${LC_CTYPE:-${LANG}}}" in + *.UTF-8) + Tloc=utf8 ;; + iso_8859_1 | *.ISO-8859-1 | *.ISO8859-1 | \ diff --git a/groff-1.21-CVE-2009-5044.patch b/groff-1.21-CVE-2009-5044.patch new file mode 100644 index 0000000..eb788f0 --- /dev/null +++ b/groff-1.21-CVE-2009-5044.patch @@ -0,0 +1,68 @@ +--- + contrib/pdfmark/pdfroff.sh | 22 ++++++++++++---------- + 1 file changed, 12 insertions(+), 10 deletions(-) + +Index: groff-1.21/contrib/pdfmark/pdfroff.sh +=================================================================== +--- groff-1.21.orig/contrib/pdfmark/pdfroff.sh 2010-12-31 08:33:09.000000000 +0100 ++++ groff-1.21/contrib/pdfmark/pdfroff.sh 2011-06-27 13:13:32.807924590 +0200 +@@ -157,7 +157,7 @@ + # as default), and schedule removal of only the temporary files. + # + GROFF_TMPDIR=${TMPDIR} +- trap "rm -f ${GROFF_TMPDIR}/pdf$$.*" 0 ++ trap "rm -f ${GROFF_TMPDIR}/*" 0 + fi + # + # In the case of abnormal termination events, we force an exit +@@ -168,14 +168,16 @@ + # + trap "exit 1" 1 2 3 13 15 + # +- WRKFILE=${GROFF_TMPDIR}/pdf$$.tmp ++ WRKFILE=`mktemp --tmpdir="${GROFF_TMPDIR}" pdfXXXXXXXXXX.tmp` + # +- REFCOPY=${GROFF_TMPDIR}/pdf$$.cmp +- REFFILE=${GROFF_TMPDIR}/pdf$$.ref ++ REFCOPY=`mktemp --tmpdir="${GROFF_TMPDIR}" pdfXXXXXXXXXX.cmp` ++ REFFILE=`mktemp --tmpdir="${GROFF_TMPDIR}" pdfXXXXXXXXXX.ref` + # + CS_DATA="" +- TC_DATA=${GROFF_TMPDIR}/pdf$$.tc +- BD_DATA=${GROFF_TMPDIR}/pdf$$.ps ++ TC_DATA=`mktemp --tmpdir="${GROFF_TMPDIR}" pdfXXXXXXXXXX.tc` ++ BD_DATA=`mktemp --tmpdir="${GROFF_TMPDIR}" pdfXXXXXXXXXX.ps` ++ ++ STREAMFILE=`mktemp --tmpdir="${GROFF_TMPDIR}" pdfXXXXXXXXXX.in` + # + # Initialise 'groff' format control settings, + # to discriminate table of contents and document body formatting passes. +@@ -328,7 +330,7 @@ + ;; + + --stylesheet) +- STYLESHEET="$OPTARG" CS_DATA=${GROFF_TMPDIR}/pdf$$.cs ++ STYLESHEET="$OPTARG" CS_DATA=`mktemp --tmpdir="${GROFF_TMPDIR}" pdfXXXXXXXXXX.cs` + ;; + + --no-toc-relocation) +@@ -361,7 +363,7 @@ + # so set up a mechanism to achieve this, for ALL 'groff' passes. + # + - | -i*) +- STREAM="$CAT ${GROFF_TMPDIR}/pdf$$.in |" ++ STREAM="$CAT ${STREAMFILE} |" + test "$1" = "-" && INPUT_FILES="$INPUT_FILES $1" \ + || GROFF_STYLE="$GROFF_STYLE $1" + ;; +@@ -433,8 +435,8 @@ + # or if no input files are specified, then we need to capture STDIN, + # so we can replay it into each 'groff' processing pass. + # +- test -z "$INPUT_FILES" && STREAM="$CAT ${GROFF_TMPDIR}/pdf$$.in |" +- test -n "$STREAM" && $CAT > ${GROFF_TMPDIR}/pdf$$.in ++ test -z "$INPUT_FILES" && STREAM="$CAT ${STREAMFILE} |" ++ test -n "$STREAM" && $CAT > ${STREAMFILE} + # + # Unless reference resolution is explicitly suppressed, + # we initiate it by touching the cross reference dictionary file, diff --git a/groff-1.21-CVE-2009-5081.patch b/groff-1.21-CVE-2009-5081.patch new file mode 100644 index 0000000..1f1fecd --- /dev/null +++ b/groff-1.21-CVE-2009-5081.patch @@ -0,0 +1,70 @@ +Index: b/contrib/pdfmark/pdfroff.1.man +=================================================================== +--- a/contrib/pdfmark/pdfroff.1.man ++++ b/contrib/pdfmark/pdfroff.1.man +@@ -619,7 +619,7 @@ gs \-dBATCH \-dQUIET \-dNOPAUSE \-dSAFER + .I GROFF_TMPDIR + Identifies the directory in which + .I pdfroff +-should create temporary files. ++should create a subdirectory for its temporary files. + . + If + .I \%GROFF_TMPDIR +Index: b/doc/groff.texi +=================================================================== +--- a/doc/groff.texi ++++ b/doc/groff.texi +@@ -16005,9 +16005,9 @@ The following code fragment introduces t + @pindex perl + @Example + .sy perl -e 'printf ".nr H %d\\n.nr M %d\\n.nr S %d\\n",\ +- (localtime(time))[2,1,0]' > /tmp/x\n[$$] +-.so /tmp/x\n[$$] +-.sy rm /tmp/x\n[$$] ++ (localtime(time))[2,1,0]' > timefile\n[$$] ++.so timefile\n[$$] ++.sy rm timefile\n[$$] + \nH:\nM:\nS + @endExample + +Index: b/gendef.sh +=================================================================== +--- a/gendef.sh ++++ b/gendef.sh +@@ -33,11 +33,9 @@ do + #define $def" + done + +-# Use $TMPDIR if defined. Default to cwd, for non-Unix systems +-# which don't have /tmp on each drive (we are going to remove +-# the file before we exit anyway). Put the PID in the basename, +-# since the extension can only hold 3 characters on MS-DOS. +-t=${TMPDIR-.}/gro$$.tmp ++t="`mktemp -t groff-gendef.XXXXXXXXXX`" || exit ++trap 'rm -f -- "$t"' EXIT ++trap 'trap - EXIT; rm -f -- "$t"; exit 1' HUP INT QUIT TERM + + sed -e 's/=/ /' >$t <$@ \ + && if test "$(PAGE)" = A4; then \ +- echo "papersize a4" >>$@; \ ++ echo "papersize locale a4" >>$@; \ + else \ +- echo "papersize letter" >>$@; \ ++ echo "papersize locale letter" >>$@; \ + fi \ + && (test -z '$(DVIPRINT)' \ + || echo print '$(DVIPRINT)' >>$@) +Index: b/font/devlbp/devlbp.am +=================================================================== +--- a/font/devlbp/devlbp.am ++++ b/font/devlbp/devlbp.am +@@ -45,9 +45,9 @@ font/devlbp/DESC: $(devlbp_srcdir)/DESC. + $(AM_V_GEN)$(MKDIR_P) `dirname $@` \ + && cat $(devlbp_srcdir)/DESC.in >$@ \ + && if test "$(PAGE)" = A4; then \ +- echo "papersize a4" >>$@; \ ++ echo "papersize locale a4" >>$@; \ + else \ +- echo "papersize letter" >>$@; \ ++ echo "papersize locale letter" >>$@; \ + fi \ + && (test -z '$(LBPPRINT)' \ + || echo print '$(LBPPRINT)' >>$@) +Index: b/font/devlj4/devlj4.am +=================================================================== +--- a/font/devlj4/devlj4.am ++++ b/font/devlj4/devlj4.am +@@ -90,9 +90,9 @@ font/devlj4/DESC: $(devlj4_srcdir)/DESC. + && echo "unitwidth `expr 7620000 / $(LJ4RES)`" >>$@ \ + && cat $(devlj4_srcdir)/DESC.in >>$@ \ + && if test "$(PAGE)" = A4; then \ +- echo "papersize a4" >>$@; \ ++ echo "papersize locale a4" >>$@; \ + else \ +- echo "papersize letter" >>$@; \ ++ echo "papersize locale letter" >>$@; \ + fi \ + && (test -z '$(LJ4PRINT)' \ + || echo print '$(LJ4PRINT)' >>$@) +Index: b/font/devpdf/devpdf.am +=================================================================== +--- a/font/devpdf/devpdf.am ++++ b/font/devpdf/devpdf.am +@@ -92,9 +92,9 @@ font/devpdf/DESC: $(devpdf_srcdir)/DESC. + && cat $(devpdf_srcdir)/DESC.in \ + >$(top_builddir)/font/devpdf/DESC \ + && if test "$(PAGE)" = A4; then \ +- echo "papersize a4" >>$(top_builddir)/font/devpdf/DESC; \ ++ echo "papersize locale a4" >>$(top_builddir)/font/devpdf/DESC; \ + else \ +- echo "papersize letter" \ ++ echo "papersize locale letter" \ + >>$(top_builddir)/font/devpdf/DESC; \ + fi + +Index: b/font/devps/devps.am +=================================================================== +--- a/font/devps/devps.am ++++ b/font/devps/devps.am +@@ -144,9 +144,9 @@ font/devps/DESC: $(devps_srcdir)/DESC.in + && cat $(devps_srcdir)/DESC.in >$@.tmp \ + && echo broken $(BROKEN_SPOOLER_FLAGS) >>$@.tmp \ + && if test "$(PAGE)" = A4; then \ +- echo "papersize a4" >>$@.tmp; \ ++ echo "papersize locale a4" >>$@.tmp; \ + else \ +- echo "papersize letter" >>$@.tmp; \ ++ echo "papersize locale letter" >>$@.tmp; \ + fi \ + && (test -z '$(PSPRINT)' \ + || echo print '$(PSPRINT)' >>$@.tmp) diff --git a/groff.changes b/groff.changes new file mode 100644 index 0000000..e80c55e --- /dev/null +++ b/groff.changes @@ -0,0 +1,978 @@ +------------------------------------------------------------------- +Wed Oct 4 23:01:54 UTC 2023 - Luciano Santos + +- Define ext_man="%{?ext_man}%{!?ext_man:.gz}" shell variable in + the install directive, and replace "%{?ext_man}" with + "${ext_man:-}" to fix groff-gf.7.gz file ending up uncompressed + (despite the name) due to the use of %{?ext_man} in the mv/ln + TARGET parameter used for the preparation of Alternatives. Also + define a simple shell contruct which identifies whether the + manpage file is compressed. If not, it unsets the $ext_man + variable, then ajdusting the mv/ln calls. That's all necessary + because even though ext_man macro is defined, it doesn't mean the + file has the extension (which dependes whether the build script + compresses it). + +------------------------------------------------------------------- +Fri Sep 8 19:42:28 UTC 2023 - Antonio Teixeira + +- Refresh bash-scripts.patch +- Add nroff-map-CW-to-R.patch + * Fixes man-db build errors + +------------------------------------------------------------------- +Tue Aug 29 14:21:17 UTC 2023 - Antonio Teixeira + +- Update to 1.23.0: + * Too many changes, see NEWS file for details. +- Refreshed patches: + * 0002-documentation-for-the-locale-keyword.patch + * 0004-don-t-use-usr-bin-env-in-shebang.patch + * groff-1.20.1-deunicode.patch + * groff-1.20.1-nroff-empty-LANGUAGE.patch + * groff-1.21-CVE-2009-5081.patch + * groff-force-locale-usage.patch +- Drop sort-perl-hash-keys.patch (upstreamed) +- Drop doc-volume-operating-system and doc-default-operating-system + changes (doesn't default to BSD anymore) +- Configure flag --with-appresdir has been renamed to --with-appdefdir +- Update file list with files that were removed from the package + +------------------------------------------------------------------- +Thu Mar 16 10:04:16 UTC 2023 - pgajdos@suse.com + +- ship %{_docdir}/groff/pdf also in groff-doc [bsc#1208498] + +------------------------------------------------------------------- +Wed Jan 4 12:16:28 UTC 2023 - pgajdos@suse.com + +- set doc-default-operating-system and doc-volume-operating-system + to SUSE [bsc#1185613c#5], $PRETTY_NAME cannot be used build time + +------------------------------------------------------------------- +Thu Dec 15 12:45:32 UTC 2022 - pgajdos@suse.com + +- set doc-default-operating-system and doc-volume-operating-system + to $PRETTY_NAME [bsc#1185613] + +------------------------------------------------------------------- +Mon Feb 7 20:17:31 UTC 2022 - Stanislav Brabec + +- Do not fail with rpm --excludedocs (bsc#1192195). + +------------------------------------------------------------------- +Tue Nov 30 22:32:55 UTC 2021 - Stanislav Brabec + +- Remove /usr/share/groff/current from groff-full. It creates file + conflicts during version upgrade (bsc#1192195#c8). + +------------------------------------------------------------------- +Sat Oct 10 11:43:01 UTC 2020 - Dominique Leuenberger + +- Don't create recursive link 'current' inside + /usr/share/groff/%{version}. + +------------------------------------------------------------------- +Thu Jan 9 09:34:19 UTC 2020 - Ludwig Nussel + +- don't recommend groff-full as that would pull in X etc by default. + Instead use packageand on groff and ghostscript-library to only install + groff-full when other deps are already there. + +------------------------------------------------------------------- +Mon Dec 16 15:53:33 CET 2019 - Matej Cepl + +- Add man page roff(7) to alternatives to avoid conflict with + mandoc. + +------------------------------------------------------------------- +Mon Feb 18 04:03:32 UTC 2019 - Marguerite Su + +- install essential build files needed by ghostscript-fonts-grops + +------------------------------------------------------------------- +Sat Jan 12 12:53:14 UTC 2019 - Jan Engelhardt + +- Trim tm signs + +------------------------------------------------------------------- +Fri Jan 4 12:44:27 UTC 2019 - Tomáš Chvátal + +- Version update to 1.22.4: + * Many fixes for hyphenation helping + * Various build tweaks + * See the NEWS file for details +- New signature -> update keyring file +- Remove upstream merged patches: + * groff-multi-thread.patch + * groff-reproducible-mdate.patch + * groff-use-SDE.patch +- Remove groff-1.21-groffer-libexecdir.patch as upstream redid + the autotools rules and uses configure option now +- Rebase patch groff-1.20.1-deunicode.patch +- Rebase patch groff-1.21-CVE-2009-5081.patch +- Drop patch groff-1.21-CVE-2009-5080.patch as it seems the shell + script now properly safeguards against this +- Rebase patch 0002-documentation-for-the-locale-keyword.patch +- Recreate groff-force-locale-usage.patch for autotools buildsystem +- Add patch 0004-don-t-use-usr-bin-env-in-shebang.patch +- Remove groff_1.22.3-1.debian.diff and replace it with split + debian patches: + * bash-scripts.patch + * sort-perl-hash-keys.patch + +------------------------------------------------------------------- +Thu Jan 3 12:52:35 UTC 2019 - Tomáš Chvátal + +- Switch to multibuild in order to avoid having to manage 2 + differentiating spec files + +------------------------------------------------------------------- +Wed Oct 30 23:50:14 UTC 2018 - Bernhard Wiedemann + +- add groff-reproducible-mdate.patch and groff-use-SDE.patch to allow + to override build time to make package build reproducible (boo#1047218) + +------------------------------------------------------------------- +Mon Mar 19 11:47:37 CET 2018 - kukuk@suse.de + +- Use %license instead of %doc [bsc#1082318] + +------------------------------------------------------------------- +Mon Dec 18 10:38:07 UTC 2017 - tchvatal@suse.com + +- Set the license to GPL-3.0+ as per COPYING + +------------------------------------------------------------------- +Thu Dec 14 18:47:28 UTC 2017 - crrodriguez@opensuse.org + +- Replace xorg-x11-devel buildrequires by the needed individual + libraries + +------------------------------------------------------------------- +Thu Jul 21 11:12:50 UTC 2016 - tchvatal@suse.com + +- Add patch for bnc#989903 and move all scripts from libdir to + libexecdir + +------------------------------------------------------------------- +Wed Feb 4 10:30:49 UTC 2015 - tchvatal@suse.com + +- Version bump to latest release 1.22.3: + * X11 resources for `gxditview', which were previously installed in + /usr/X11/lib/X11/app-defaults no matter which `prefix' was set, are + now installed in appresdir=$prefix/lib/X11/app-defaults. If + `appresdir' is not a standard X11 resource directory, the environment + variable XFILESEARCHPATH should be set to this path. The standard + default directories depends on the system `libXt'. + * This new preprocessor (contributed by Bernd Warken) allows embedding of + code for GNU LilyPond (http://www.lilypond.org), a music typesetter. The + data gets automatically processed and embedded as EPS images. + * Bernd Warken contributed a new preprocessor to handle Perl code that can + be evaluated and then processed by groff. + * Another preprocessor from Bernd Warken to pretty-print Pinyin syllables + like `guo2wang2' as `guówáng'. + * The pdfroff utility script now activates its `--no-toc-relocation' option + by default, unless a request similar to: + .if !\n[PHASE] .tm pdfroff-option:set toc_relocation=enabled + is invoked during input file processing; (`.if !\n[PHASE] ...' ensures + that the effect of the `.tm' request is restricted to the document setup + phase of processing, as pdfroff sets it to 1 or 2 in the output phase, + but leaves it unset in the setup phase). + The bundled `spdf.tmac' macro package, which implicitly activates + `-mpdfmark' for `ms' macro users, ensures that TOC relocation is + appropriately enabled, when the `.TC' macro is invoked. + * The -mom macro package now has full support for eqn, pic, and tbl, as well + as captioning and labelling of pdf images and preprocessor output. Lists + of Figures, Equations, and Tables can now be autogenerated. PDF_IMAGE has + a new FRAME option. + * A French introduction to the -me macro package has been added (file + `meintro_fr.me'). + * In -mdoc, command %C is now available, providing a city or place + reference. +- Refreshed patches: + * groff-1.21-CVE-2009-5081.patch + * groff-1.21-groffer-libexecdir.patch + * groff-force-locale-usage.patch +- Replaced patches: + * deleted groff_1.22.2-2.debian.diff + * added groff_1.22.3-1.debian.diff +- New patches: + * groff-multi-thread.patch + +------------------------------------------------------------------- +Sat Dec 20 14:34:44 UTC 2014 - meissner@suse.com + +- build with PIE + +------------------------------------------------------------------- +Tue Jun 25 06:38:16 UTC 2013 - mvyskocil@suse.com + +- move man.local and mdoc.local from groff-full to groff + * fixes libssh2.org testsuite + +------------------------------------------------------------------- +Mon Jun 17 11:18:11 UTC 2013 - werner@suse.de + +- Take care of mmroff.1.gz as well as of mmroff perl script + +------------------------------------------------------------------- +Mon Jun 17 10:18:59 UTC 2013 - werner@suse.de + +- Move important non-graphical macros from groff-full back to groff + as otherwise many packages do not build anymore + +------------------------------------------------------------------- +Wed Jun 5 09:00:09 UTC 2013 - mvyskocil@suse.com + +- modify groff_1.22.2-2.debian.diff - remove the part related to + src/preproc/html/pre-html.cpp, fixes bnc#755533 + +------------------------------------------------------------------- +Thu May 9 09:16:49 UTC 2013 - mvyskocil@suse.com + +- update to groff 1.22.2 + * gropdf: A new driver for generating PDF output directly, + contributed by Deri James and written in Perl + * The -mom macro package has reached version 2.0, focusing on + PDF output with gropdf (using the new `pdfmom' wrapper script). + See the file`version-2.html' of the -mom documentation for a list + of the many changes. + * pdfmom: A new wrapper around groff that facilitates the production of PDF + documents from files formatted with the -mom macros. + * and a lot more, see NEWS for details +- obsoletes: + config-guess-sub-update.patch, dtto + groff_1.21-6.debian.diff, replaced by +- added groff_1.22.2-2.debian.diff +- create a stripped-down version of groff usable for viewing of manual pages +- new groff-full package contains the rest of groff tools capable to work with + images, html or pdf. It contains the devx fonts, thus obsoletes groff-devx + it aims to fix bnc#755533 - grohtml built without pnm* tools in PATH +- gxdview.spec is removed as gxdview is built from groff-full.spec +- verify the tarball using gpg-offline - this is done in groff-full only + to retain a limited list of dependencies for base groff +- Remove not really needed patch groff-1.20.1-destbufferoverflow.patch + +------------------------------------------------------------------- +Tue May 7 14:40:06 UTC 2013 - schwab@suse.de + +- config-guess-sub-update.patch: Update config.guess/sub for aarch64 + +------------------------------------------------------------------- +Mon Feb 4 14:33:41 UTC 2013 - coolo@suse.com + +- update license to new format + +------------------------------------------------------------------- +Fri Sep 7 13:02:36 UTC 2012 - coolo@suse.com + +- add explicit buildrequire makeinfo + +------------------------------------------------------------------- +Sun Mar 18 00:14:49 UTC 2012 - jengelh@medozas.de + +- Remove redundant tags/sections from specfile +- Enable parallel build with %_smp_mflags + +------------------------------------------------------------------- +Thu Sep 29 12:49:28 UTC 2011 - adrian@suse.de + +- use RPM_OPT_FLAGS for compile + +------------------------------------------------------------------- +Thu Sep 29 08:09:33 UTC 2011 - mvyskocil@suse.cz + +- implemented FATE#312586 - Add locales support for groff papersize + * the default papersize is now determined from system locale (LC_PAPER) + * /etc/papersize is no longer owned by the groff package + +------------------------------------------------------------------- +Thu Sep 22 12:50:27 UTC 2011 - mvyskocil@suse.cz + +- fix bnc#703665 - VUL-1: groff: missing checks for mktemp failures + (CVE-2009-5080) +- fix bnc#703666 - VUL-1: groff: insufficient number of X for mktemp + (CVE-2009-5081) + +------------------------------------------------------------------- +Mon Jun 27 11:14:25 UTC 2011 - mvyskocil@suse.cz + +- update to 1.21 a bugfix release + * use new groff_1.21-6.debian.diff + * refresh libexecdir and pdfroff patch +- fix FATE#311297: Get rid of SuSEconfig.groff + * removed + +------------------------------------------------------------------- +Wed Jun 8 09:06:44 UTC 2011 - mvyskocil@suse.cz + +- fix bnc#698290: insecure temporary file handling in pdfroff + * groff-1.20.1-CVE-2009-5044.patch +- fix bnc#683857: Unicode characters in use properly + * change the soft hyphenation char to - in tty.tmac + +------------------------------------------------------------------- +Mon Jun 6 10:10:08 UTC 2011 - mvyskocil@suse.cz + +- +- fix bnc#682913: device X100 is missing + * create new groff-devx package containing all devX devices, as they + need X for build +- fix bnc#683857: Unicode characters in use + * groff-1.20.1-deunicode.patch adds deunicode.tmac to tty.tmac removes + all unecessary unicode characters in tty output + +------------------------------------------------------------------- +Tue Mar 15 08:34:56 UTC 2011 - mvyskocil@suse.cz + +- fix bnc#679585 - groff.info is not installed + * install info files as %{name}.info.gz + +------------------------------------------------------------------- +Thu Oct 7 09:33:18 UTC 2010 - mvyskocil@suse.cz + +- fix bnc#644467: SuSEconfig.groff overwrites /etc/papersize + use the check_md5_and_move to prevent it +- deprecation warning for GROFF* variables in /etc/sysconfig/suseconfig + +------------------------------------------------------------------- +Tue Oct 5 12:25:28 UTC 2010 - mvyskocil@suse.cz + +- fix bnc#633128: Update groff to 1.20.1 + this update obsoletes a big number of SUSE patches + * groff_1.18.1.1-1-debian.diff.bz2 - adds Japanese support, which is now + upstreamed. However new groff_1.20.1-10.debian.diff has been added + * suse.patch - not needed + * pic-html.patch - probably not needed + * gcc4.patch - already fixed by upstream + * groff-1.17.2-gcc3.patch - seems not needed + * utf8.patch - http://www.mail-archive.com/groff@gnu.org/msg05273.html says + iconv hack is no longer needed, new version uses preconv + * debian-fix.patch - already fixed by upstream + * double-free.patch - already fixed by upstream + * groffer-security.patch - in debian diff + * groff-1.18.1.1-gcc41.patch - already fixed by upstream + * bugzilla-217106-too-few-arguments-in-function-call.patch - makes sense + only with ENABLE_MULTIBYTE, which was added by old debian diff + * bugzilla-292412-special-encoding-handling-also-for-chinese.patch - seems not necessary + * gcc43.patch - already fixed by upstream + * fgets-overflow.patch - already fixed by upstream + * bnc446710.patch - seems not needed anymore + * groff-1.18.1.1-debian-538330.patch - part of debian diff +- fix bnc#643083 - groff: default /etc/papersize should be "a4" + no "papersize a4" without SuSEconfig anymore +- move docs and examples to groff-docs subpackage + +------------------------------------------------------------------- +Wed Oct 14 13:48:20 UTC 2009 - mvyskocil@suse.cz + +- fixed bnc#529557 - groff: insecure file handling + +------------------------------------------------------------------- +Mon Sep 21 11:11:05 CEST 2009 - tiwai@suse.de + +- fix broken output of man page when $LANGUAGE is set empty + (bnc#540600) + +------------------------------------------------------------------- +Mon Feb 02 18:47:32 CET 2009 - mfabian@suse.de + +- bnc#470921: add more workarounds for Korean to fix the truncation + of some non-Korean man-pages in ko_KR.UTF-8 locale. + +------------------------------------------------------------------- +Mon Dec 22 15:18:31 CET 2008 - mls@suse.de + +- keep zzz-groff.csh from aborting if LANG is unset + +------------------------------------------------------------------- +Tue Nov 25 15:15:44 CET 2008 - mfabian@suse.de + +- bnc#448185: improve workaround for bnc#446710. After the + tmandocdb workaround was removed from "man", the new + workaround in groff failed in some locales. + +------------------------------------------------------------------- +Fri Nov 21 15:54:34 CET 2008 - mfabian@suse.de + +- bnc#401952: Add a workaround to /usr/bin/nroff to make Korean + man-pages display correctly again. +- /etc/profile.d/groff.{sh,csh} moved to + /etc/profile.d/zzz-groff.{sh,csh} to be able to check for LANG. + Changes in these scripts: + • Don’t set GROFF_NO_SGR by default anymore, it causes problems + with Korean man pages. + • For CJK languages, set MAN_KEEP_FORMATTING by default. + Without MAN_KEEP_FORMATTING man will use GROFF_NO_SGR when + writing to a pipe or file and will also pipe the result + through "col -b -p -x". This doesn’t work well for CJK, at + least not with the current version of groff. + +------------------------------------------------------------------- +Thu Nov 20 17:48:24 CET 2008 - mfabian@suse.de + +- bnc#446710: add the workarounds from + /usr/share/groff/site-tmac/tmac.andocdb (man package) directly + to groff. These workarounds are to avoid rendering - as + U+2010 (HYPHEN), \- as U+2212 (MINUS SIGN), ` as U+2018 + (LEFT SINGLE QUOTATION MARK), and ' as U+2019 (RIGHT SINGLE + QUOTATION MARK). Using these non-ASCII characters for rendering + man-pages with programm examples and command line options is + confusing and prevents cut and paste of code examples + impossible. + +------------------------------------------------------------------- +Wed Oct 8 02:10:33 CEST 2008 - crrodriguez@suse.de + +- fix buffer overflow in ps.cc + +------------------------------------------------------------------- +Mon Oct 6 22:15:13 CEST 2008 - meissner@suse.de + +- fixed fgets overflow +- fixed some rpmlint issues + +------------------------------------------------------------------- +Mon Apr 21 17:25:52 CEST 2008 - mfabian@suse.de + +- bnc#381905: remove the hack in /usr/bin/nroff to convert + UTF-8 encoded man-pages back to the appropriate legacy encoding + because newer versions of “man” also do this conversion now + and doing the same conversion twice breaks it. + +------------------------------------------------------------------- +Tue Mar 25 13:11:08 CET 2008 - mfabian@suse.de + +- bnc#373284: fix wrong spelling of UTF-8 in iconv call used in + nroff.sh (Thanks to Bruno Haible for the fix). + +------------------------------------------------------------------- +Wed Nov 7 09:37:39 CET 2007 - meissner@suse.de + +- fixed gcc4.3 build + +------------------------------------------------------------------- +Tue Jul 24 11:51:08 CEST 2007 - mfabian@suse.de + +- Bugzilla #292412: make the hacks for Chinese less weird by + applying the patch from comment #31 by Peng Wu + and adapting the patch to /usr/bin/nroff. +- remove shebang from SuSEconfig.groff (is sourced, not executed). + +------------------------------------------------------------------- +Mon Jul 23 19:41:27 CEST 2007 - mfabian@suse.de + +- Bugzilla #292412: add some more hacks to /usr/bin/nroff to + support Chinese man pages as well. + +------------------------------------------------------------------- +Mon Mar 26 15:50:16 CEST 2007 - rguenther@suse.de + +- add bison BuildRequires. + +------------------------------------------------------------------- +Wed Jan 17 14:33:50 CET 2007 - mfabian@suse.de + +- Bugzilla #217106: too few arguments in function call. + +------------------------------------------------------------------- +Tue Jan 09 22:01:52 CET 2007 - mfabian@suse.de + +- do not build as root. +- make it build in the openSUSE build service. + +------------------------------------------------------------------- +Tue Jan 02 18:58:35 CET 2007 - mfabian@suse.de + +- Bugzilla #230030: make Russian and Czech man-pages display + correctly again in UTF-8 locales (has been broken by the + update to man-2.4.3). + +------------------------------------------------------------------- +Tue Sep 5 11:59:42 CEST 2006 - rguenther@suse.de + +- Split gxdview to a separate spec file. + +------------------------------------------------------------------- +Mon Sep 4 14:41:08 CEST 2006 - rguenther@suse.de + +- Remove unneeded build dependency on ghostscript-mini. + +------------------------------------------------------------------- +Sun Aug 6 15:19:35 CEST 2006 - cthiel@suse.de + +- fix build with X.org 7.1 + +------------------------------------------------------------------- +Tue Feb 28 18:12:58 CET 2006 - mfabian@suse.de + +- Bugzilla #148472: use -Tlatin1 instead of -Tascii8 for + languages which used ISO-8859-1 as legacy encoding. + With -Tascii8, "\(:u" for ü won't work. + +------------------------------------------------------------------- +Thu Feb 09 15:34:48 CET 2006 - mfabian@suse.de + +- Bugzilla #148922: nroff hangs when input comes from a file + and not from a pipe: Improfe UTF-8 workaround to handle this + case as well by parsing the options with getopt to find out + whether a file was given as an argument. + +------------------------------------------------------------------- +Fri Jan 27 01:40:24 CET 2006 - mls@suse.de + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Thu Jan 26 15:51:26 CET 2006 - sbrabec@suse.cz + +- Added %install_info_prereq. + +------------------------------------------------------------------- +Mon Jan 23 18:31:45 CET 2006 - mfabian@suse.de + +- Bugzilla #144726: add workaround to allow UTF-8 encoded sources + of man-pages. Some packages already contain man-pages with + UTF-8 encoded man-page sources, for example "mc". Hopefully + one day groff will really support this. Until then a workaround + is better than nothing. + +------------------------------------------------------------------- +Fri Dec 9 15:04:53 CET 2005 - meissner@suse.de + +- -fno-strict-aliasing. + +------------------------------------------------------------------- +Thu Oct 13 10:11:33 CEST 2005 - meissner@suse.de + +- fixed build. + +------------------------------------------------------------------- +Sat Sep 17 21:14:11 CEST 2005 - meissner@suse.de + +- fixed implicits. + +------------------------------------------------------------------- +Mon Aug 22 12:37:18 CEST 2005 - mfabian@suse.de + +- Bugzilla #105807: /etc/papersize can be changed by SuSEconfig, + don't verify md5, size, mtime. + /usr/share/groff/1.18.1/tmac/mm/locale and + /usr/share/groff/1.18.1/tmac/mm/se_locale are empty by default, + don't verify md5. + +------------------------------------------------------------------- +Wed Jun 22 11:39:33 CEST 2005 - mfabian@suse.de + +- improve papersize detection in SuSEconfig.groff. + +------------------------------------------------------------------- +Thu Jun 02 15:01:11 CEST 2005 - mfabian@suse.de + +- add symbolic link for tetex (and others): + /usr/share/groff/%{version} -> /usr/share/groff/current + +------------------------------------------------------------------- +Mon Dec 06 22:13:15 CET 2004 - mfabian@suse.de + +- Bugzilla #47862: fix insecure creation of temporary directory + in groffer.sh, see also CAN-2004-0969. + +------------------------------------------------------------------- +Fri Sep 17 11:41:38 CEST 2004 - mfabian@suse.de + +- add gcc4 patch received from Andreas Jaeger. + +------------------------------------------------------------------- +Thu Sep 16 17:06:37 CEST 2004 - schwab@suse.de + +- Fix double free. + +------------------------------------------------------------------- +Tue Sep 7 12:37:19 CEST 2004 - mfabian@suse.de + +- Bugzilla #44115: add groff.{sh,csh} and set GROFF_NO_SGR to + disable the use of ANSI colour sequences by default. They don't + work well with many pagers (e.g. lv, (X)Emacs) and they cause + problems when searching in man-pages when using less as the + pager. + +------------------------------------------------------------------- +Tue Jun 29 19:23:18 CEST 2004 - mfabian@suse.de + +- update to 1.18.1.1 +- remove bison patch, voiddecl patch and patch to node.cc + (fixed upstream). + +------------------------------------------------------------------- +Mon Apr 19 14:57:21 CEST 2004 - mmj@suse.de + +- Declare void functions as such, and make int functions return such + +------------------------------------------------------------------- +Tue Aug 26 01:11:37 CEST 2003 - mfabian@suse.de + +- Bugzilla #28394: add workaround to display the euro symbol in + 'man iso-8859-15' correctly in UTF-8 locales. + +------------------------------------------------------------------- +Thu Aug 14 17:12:41 CEST 2003 - mfabian@suse.de + +- Bugzilla #28945: add missing activation metadata to + sysconfig template + +------------------------------------------------------------------- +Wed May 21 13:44:11 CEST 2003 - coolo@suse.de + +- making /etc/papersize noreplace (the chances are very small the + package knows the papersize better than the user) +- installing the info pages + +------------------------------------------------------------------- +Thu Mar 6 17:19:49 CET 2003 - ro@suse.de + +- readd ghostscript-mini to neededforbuild (fix docu) + +------------------------------------------------------------------- +Thu Mar 6 13:26:37 CET 2003 - mfabian@suse.de + +- Bug #24758: fix segfault on copying an empty bracket_node + was reproducible with echo ' \b"" ' | troff + +------------------------------------------------------------------- +Mon Jan 27 16:51:04 CET 2003 - mfabian@suse.de + +- Bug #22693: add missing metadata to sysconfig.suseconfig-groff + +------------------------------------------------------------------- +Mon Jan 20 19:50:43 CET 2003 - mfabian@suse.de + +- fix file list to include /usr/share/man{5,7}/* +- extend workaround for non-latin1 man-page sources in UTF-8 + locales to Hungarian, Croatian, Polish, and Russian + +------------------------------------------------------------------- +Fri Dec 6 23:11:19 CET 2002 - olh@suse.de + +- remove ghostscript-mini-packages to build groff anyway + +------------------------------------------------------------------- +Wed Nov 20 17:11:35 CET 2002 - ro@suse.de + +- use ghostscript-mini-packages + +------------------------------------------------------------------- +Wed Nov 13 08:40:10 CET 2002 - ro@suse.de + +- fix build with current bison (end all rules with ";") + +------------------------------------------------------------------- +Sun Oct 13 19:30:45 CEST 2002 - mfabian@suse.de + +- remove bogus "Requires: bc". + +------------------------------------------------------------------- +Wed Aug 28 14:48:04 CEST 2002 - mfabian@suse.de + +- fix display of Czech man pages in cs_CZ.UTF-8 locale + +------------------------------------------------------------------- +Thu Aug 1 14:09:54 CEST 2002 - mfabian@suse.de + +- add %fillup_prereq to Prereq: + +------------------------------------------------------------------- +Tue Jun 4 20:06:46 CEST 2002 - mfabian@suse.de + +- fix typo + +------------------------------------------------------------------- +Tue Jun 4 18:22:29 CEST 2002 - mfabian@suse.de + +- fix display of Japanese man pages in ja_JP.UTF-8 locale + +------------------------------------------------------------------- +Thu May 2 14:02:51 CEST 2002 - meissner@suse.de + +- Fixed g++ 3 issue (do not link C++ libraries with gcc) + +------------------------------------------------------------------- +Sun Apr 7 17:42:44 CEST 2002 - schwab@suse.de + +- Fix for new autoconf. + +------------------------------------------------------------------- +Tue Mar 19 00:11:05 CET 2002 - mfabian@suse.de + +- fix bug #15052: add 'libgimpprint glib glib-devel' to + '# neededforbuild' because 'gs' needs this to run. When 'gs' + doesn't run, some .png pictures in the 'doc' directory + can't be created and remain empty. +- add groff-1.17.2-pic-html.diff to avoid using the process ID + in the names of the created .png files. + +------------------------------------------------------------------- +Sun Mar 10 15:56:25 CET 2002 - mfabian@suse.de + +- write just 'a4' or 'letter' into /etc/papersize, not + 'papersize a4' or 'papersize letter'. All this papersize + stuff doesn't seem to matter much anyway as groff calls + grops with the '-g' option (guess page length). + +------------------------------------------------------------------- +Sat Mar 9 14:25:36 CET 2002 - ro@suse.de + +- replaced plp by lprng in neededforbuild + +------------------------------------------------------------------- +Fri Mar 1 13:43:08 CET 2002 - mfabian@suse.de + +- fix /sbin/conf.d/SuSEconfig.groff: + prefer paper size information from the locale, use GROFF_PAGESIZE + as an override. + +------------------------------------------------------------------- +Fri Feb 1 00:26:07 CET 2002 - ro@suse.de + +- changed neededforbuild to + +------------------------------------------------------------------- +Wed Jan 16 16:01:50 CET 2002 - ro@suse.de + +- moved variables to sysconfig/suseconfig + +------------------------------------------------------------------- +Thu Jan 10 14:59:01 CET 2002 - mfabian@suse.de + +- move *GROFF* variables from /etc/rc.config to + /etc/sysconfig/groff (fix Bug #12739) + +------------------------------------------------------------------- +Mon Oct 15 16:20:23 CEST 2001 - mfabian@suse.de + +- add /etc/papersize (fix Bug #11810) + +------------------------------------------------------------------- +Mon Sep 3 13:37:56 CEST 2001 - mfabian@suse.de + +- add obsoletes jgroff + +------------------------------------------------------------------- +Thu Aug 30 11:41:16 CEST 2001 - mfabian@suse.de + +- upgrade debian patch to groff_1.17.2-7.diff + (fixes the problem with bold utf-8 characters, i.e. obsoletes + groff_1.17.2-6.1-debian-fix-minus.diff and includes a fix + for the troff man-page) + +------------------------------------------------------------------- +Tue Aug 21 18:48:29 CEST 2001 - mfabian@suse.de + +- upgrade debian patch to groff_1.17.2-6.1.diff + (fix hyphen character problem in EUC-JP encoding, + Fumitoshi UKAI Fri, 17 Aug 2001) +- fix problem with bold minus characters in utf-8 caused by + debian patch (thanks to ) + +------------------------------------------------------------------- +Fri Aug 17 12:11:48 CEST 2001 - mfabian@suse.de + +- include patch for Japanese support from Debian +- security fix from Sebastian Krahmer seems + to be included upstream, removed. + +------------------------------------------------------------------- +Fri Jul 20 12:06:42 CEST 2001 - kukuk@suse.de + +- changed neededforbuild to +- changed neededforbuild to +- changed neededforbuild to + +------------------------------------------------------------------- +Thu Jul 12 12:33:45 CEST 2001 - fehr@suse.de + +- update to version 1.17.2 + +------------------------------------------------------------------- +Fri Jul 6 11:22:27 CEST 2001 - fehr@suse.de + +- add security fix from Sebastian Krahmer + +------------------------------------------------------------------- +Mon Jun 25 12:48:25 CEST 2001 - fehr@suse.de + +- update to version 1.17.1 + +------------------------------------------------------------------- +Tue Jun 12 12:01:43 CEST 2001 - fehr@suse.de + +- make it build with newer compilers (ia64, axp) + +------------------------------------------------------------------- +Tue May 22 18:40:53 CEST 2001 - fehr@suse.de + +- update to version 1.17 + +------------------------------------------------------------------- +Mon May 7 12:39:47 CEST 2001 - mfabian@suse.de + +- bzip2 source + +------------------------------------------------------------------- +Sat Apr 21 21:25:32 CEST 2001 - schwab@suse.de + +- Fix C++ constraint violation. + +------------------------------------------------------------------- +Wed Mar 7 16:23:29 CET 2001 - uli@suse.de + +- added xf86 to neededforbuild + +------------------------------------------------------------------- +Wed Dec 13 10:16:37 CET 2000 - mfabian@suse.de + +- added "Provides: normal-groff". This enables the japanized + groff to use "Provides: groff" and "Conflicts: normal-groff". + +------------------------------------------------------------------- +Fri Dec 8 11:03:15 MET 2000 - fehr@suse.de + +- add conflicts to jgroff + +------------------------------------------------------------------- +Tue Sep 5 16:24:15 MEST 2000 - fehr@suse.de + +- check for writable fontdir in SuSEconfig.groff (#2787) + +------------------------------------------------------------------- +Tue Aug 15 10:26:06 CEST 2000 - mfabian@suse.de + +- update to version 1.16.1 +- added 'BuildRoot' + +------------------------------------------------------------------- +Fri Aug 4 10:11:08 MEST 2000 - fehr@suse.de + +- changes to new version 1.16.1 of groff + +------------------------------------------------------------------- +Fri Jul 21 16:47:13 MEST 2000 - fehr@suse.de + +- add patch to display japanese man pages again + +------------------------------------------------------------------- +Fri Jul 7 16:23:40 MEST 2000 - fehr@suse.de + +- change comment in rc.config part of package (bugzilla #3256) + +------------------------------------------------------------------- +Mon May 29 13:21:03 MEST 2000 - fehr@suse.de + +- changes to new version 1.16 of groff + +------------------------------------------------------------------- +Fri May 19 14:13:18 MEST 2000 - fehr@suse.de + +- move documentation to /usr/share/doc/packages + +------------------------------------------------------------------- +Thu Mar 16 21:32:54 MET 2000 - werner@suse.de + +- nroff script + * Allow other ISO latin character sets because they use the same + 8 bit table: use -Tlatin1 + * Allow wide ANSI character maps (e.g. Japanese) because they use + multiple 8 bit characters: use -Tlatin1 + * Map -Tnippon to -Tlatin1 + +------------------------------------------------------------------- +Mon Mar 6 15:50:30 CET 2000 - schwab@suse.de + +- Update tmac.m from CVS. +- Fix tmac.mse reference to tmac.m. + +------------------------------------------------------------------- +Fri Feb 25 16:37:03 CET 2000 - schwab@suse.de + +- /usr/man -> /usr/share/man + +------------------------------------------------------------------- +Mon Jan 3 10:39:24 CET 2000 - schwab@suse.de + +- Update to 1.15 (Y2K fix). +- Get rid of Makefile.Linux. + +------------------------------------------------------------------- +Mon Sep 27 16:31:01 CEST 1999 - bs@suse.de + +- fixed requirements for sub packages + +------------------------------------------------------------------- +Mon Sep 13 17:23:57 CEST 1999 - bs@suse.de + +- ran old prepare_spec on spec file to switch to new prepare_spec. + +------------------------------------------------------------------- +Fri Jul 2 19:14:18 CEST 1999 - werner@suse.de + +- Fix Makefle.Linux to make (g)xditview with the values + set in Imakefile +- Split up a new package gxdview to avoid dependencies + of groff on the X11 system. +- Correct version number of groff in pac + +------------------------------------------------------------------- +Tue Feb 23 08:15:50 MET 1999 - ro@suse.de + +- don't redclare strchr for glibc + +------------------------------------------------------------------- +Tue Dec 15 00:38:04 MET 1998 - bs@suse.de + +- fixed SuSEconfig + +------------------------------------------------------------------- +Sun Dec 13 22:48:48 MET 1998 - bs@suse.de + +- made SuSEconfig.groff a little bit more silent. + +------------------------------------------------------------------- +Wed Nov 18 14:34:32 MET 1998 - ro@suse.de + +- commented out "find" in specfile + +------------------------------------------------------------------- +Tue Nov 17 14:54:13 MET 1998 - werner@suse.de + +- Remove hint during SuSEconfig.groff + +------------------------------------------------------------------- +Thu Sep 3 17:50:05 MET DST 1998 - werner@suse.de + +- Add three missed files + +------------------------------------------------------------------- +Tue Aug 25 16:36:47 MEST 1998 - werner@suse.de + +- Skipt warn message if printer isn't configured + +------------------------------------------------------------------- +Thu Aug 6 16:24:02 MEST 1998 - werner@suse.de + +- New version 1.11a +- Make docs and install them +- Add a auto configure script for SuSEconfig +- Make tmac/tmac.safer more safer: do not open files via .so + +------------------------------------------------------------------- +Sun Jul 26 19:50:30 MEST 1998 - bs@suse.de + +- fixed name of GXDITVIEW + +---------------------------------------------------------------------------- +Tue Oct 7 11:00:38 CEST 1997 - florian@suse.de + +- prepared spec file +- "bash 2.0" Fix in Makefile + diff --git a/groff.keyring b/groff.keyring new file mode 100644 index 0000000..4378b62 --- /dev/null +++ b/groff.keyring @@ -0,0 +1,60 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +ZuOpTKvL3rZxpvTCPBzmJIFsK8LdnIbxUQ== +=KVbR +-----END PGP PUBLIC KEY BLOCK----- diff --git a/groff.spec b/groff.spec new file mode 100644 index 0000000..dae8e08 --- /dev/null +++ b/groff.spec @@ -0,0 +1,351 @@ +# +# spec file +# +# Copyright (c) 2023 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%global flavor @BUILD_FLAVOR@%{nil} +%if "%{flavor}" == "full" +%define name_ext -full +%bcond_without full_build +%else +%define name_ext %nil +%bcond_with full_build +%endif +Name: groff%{name_ext} +Version: 1.23.0 +Release: 0 +Summary: GNU troff Document Formatting System +License: GPL-3.0-or-later +Group: Productivity/Publishing/Troff +URL: http://www.gnu.org/software/groff/groff.html +Source0: ftp://ftp.gnu.org/gnu/groff/groff-%{version}.tar.gz +Source1: ftp://ftp.gnu.org/gnu/groff/groff-%{version}.tar.gz.sig +Source2: groff.keyring +Source3: zzz-groff.sh +Source4: zzz-groff.csh +Patch0: groff-1.20.1-nroff-empty-LANGUAGE.patch +Patch1: groff-1.20.1-deunicode.patch +Patch2: groff-1.21-CVE-2009-5044.patch +# http://cvsweb.openwall.com/cgi/cvsweb.cgi/Owl/packages/groff/groff-1.20.1-owl-tmp.diff?rev=1.2;content-type=text%2Fplain +Patch3: groff-1.21-CVE-2009-5081.patch +# PATCH-FIX-OPENSUSE: FATE#312586 +# sent upstream http://lists.gnu.org/archive/html/bug-groff/2011-09/msg00002.html +Patch4: 0001-locale-support-in-papersize-definition.patch +Patch5: 0002-documentation-for-the-locale-keyword.patch +# change the papersize definition to force the locale usage +# it can be supressed by /etc/papersize if needed +Patch6: groff-force-locale-usage.patch +Patch7: 0004-don-t-use-usr-bin-env-in-shebang.patch +# Patches from debian +Patch100: https://salsa.debian.org/debian/groff/raw/master/debian/patches/bash-scripts.patch +Patch101: https://salsa.debian.org/debian/groff/raw/master/debian/patches/nroff-map-CW-to-R.patch +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: bison +BuildRequires: fdupes +BuildRequires: gcc-c++ +BuildRequires: libtool +BuildRequires: makeinfo +BuildRequires: pkgconfig +%if %{with full_build} +BuildRequires: ghostscript-library +BuildRequires: groff +BuildRequires: netpbm +BuildRequires: psutils +BuildRequires: pkgconfig(uchardet) +# for gxditview and X fontx +BuildRequires: pkgconfig(x11) +BuildRequires: pkgconfig(xaw7) +BuildRequires: pkgconfig(xmu) +BuildRequires: pkgconfig(xt) +Requires: ghostscript-library +# ghostscript-library pulls in X and stuff anyways, so let's +# piggyback on that one +Supplements: packageand(groff:ghostscript-library) +# requires the -base package +Requires: groff = %{version} +Requires: netpbm +Requires: psutils +Requires(post): %{install_info_prereq} +Provides: jgroff = %{version}-%{release} +Provides: normal-groff = %{version}-%{release} +Obsoletes: jgroff < %{version} +# X fonts were moved back +Provides: groff-devx = %{version}-%{release} +Obsoletes: groff-devx <= 1.21 +# alternatives +BuildRequires: update-alternatives +Requires(post): update-alternatives +Requires(postun):update-alternatives +%endif + +%description +The groff package is a stripped-down package containing the necessary +components to read manual pages in ASCII, Latin-1, and UTF-8, plus the +PostScript device (groff's default). + +%package -n groff-doc +Summary: HTML documentation and examples for groff +Group: Productivity/Publishing/Troff +BuildArch: noarch + +%description -n groff-doc +The groff package provides compatible versions of troff, nroff, eqn, +tbl, and other Unix text formatting utilities. + +Groff is used to "compile" man pages stored in groff or nroff format +for different output devices, for example, displaying to a screen or in +PostScript format for printing on a PostScript printer. + +%package -n gxditview +Summary: Ditroff Output Displayer for Groff +Group: Productivity/Publishing/Troff +Requires: groff-full = %{version} +# bnc#668254 +Supplements: packageand(groff:xorg-x11-libX11) +Conflicts: jgxdview +Provides: gxdview = %{version}-%{release} +Obsoletes: gxdview < %{version} + +%description -n gxditview +This version of xditview is called gxditview and has some extensions +used by the groff command. gxditview is used by groff if called with +the -X option. + +%prep +%setup -q -n groff-%{version} +%autopatch -p1 + +# remove hardcoded docdir +sed -i \ + -e '/^docdir=/d' \ + Makefile.am + +%build +autoreconf -fvi +# libdir redefined as it is just bunch of perl scripts +%configure \ + --disable-silent-rules \ + --docdir=%{_defaultdocdir}/groff \ + --libdir=%{_libexecdir} \ + --with-appdefdir=%{_datadir}/X11/app-defaults \ + --with-grofferdir=%{_libexecdir}/groff/groffer +make %{?_smp_mflags} + +%install +%make_install + +%if %{with full_build} +# remove groff basic files from bellow +rm -f %{buildroot}%{_sysconfdir}/profile.d/zzz-groff.csh +rm -f %{buildroot}%{_sysconfdir}/profile.d/zzz-groff.sh +rm -f %{buildroot}%{_bindir}/eqn +rm -f %{buildroot}%{_bindir}/groff +rm -f %{buildroot}%{_bindir}/grog +rm -f %{buildroot}%{_bindir}/grops +rm -f %{buildroot}%{_bindir}/grotty +rm -f %{buildroot}%{_bindir}/mmroff +rm -f %{buildroot}%{_bindir}/neqn +rm -f %{buildroot}%{_bindir}/nroff +rm -f %{buildroot}%{_bindir}/pic +rm -f %{buildroot}%{_bindir}/preconv +rm -f %{buildroot}%{_bindir}/soelim +rm -f %{buildroot}%{_bindir}/tbl +rm -f %{buildroot}%{_bindir}/troff +rm -f %{buildroot}%{_libexecdir}/groff/grog/subs.pl +rm -f %{buildroot}%{_datadir}/groff/current +rm -f %{buildroot}%{_datadir}/groff/1.23.0/eign +rm -rf %{buildroot}%{_datadir}/groff/1.23.0/font/devascii +rm -rf %{buildroot}%{_datadir}/groff/1.23.0/font/devlatin1 +rm -rf %{buildroot}%{_datadir}/groff/1.23.0/font/devps +rm -rf %{buildroot}%{_datadir}/groff/1.23.0/font/devutf8 +rm -rf %{buildroot}%{_datadir}/groff/1.23.0/pic +rm -rf %{buildroot}%{_datadir}/groff/1.23.0/tmac +rm -rf %{buildroot}%{_datadir}/groff/site-tmac +rm -rf %{buildroot}%{_datadir}/groff/site-font +rm -f %{buildroot}%{_mandir}/man1/eqn.1* +rm -f %{buildroot}%{_mandir}/man1/groff.1* +rm -f %{buildroot}%{_mandir}/man1/grog.1* +rm -f %{buildroot}%{_mandir}/man1/grops.1* +rm -f %{buildroot}%{_mandir}/man1/grotty.1* +rm -f %{buildroot}%{_mandir}/man1/mmroff.1* +rm -f %{buildroot}%{_mandir}/man1/neqn.1* +rm -f %{buildroot}%{_mandir}/man1/nroff.1* +rm -f %{buildroot}%{_mandir}/man1/pic.1* +rm -f %{buildroot}%{_mandir}/man1/preconv.1* +rm -f %{buildroot}%{_mandir}/man1/soelim.1* +rm -f %{buildroot}%{_mandir}/man1/tbl.1* +rm -f %{buildroot}%{_mandir}/man1/troff.1* + +# Prepare alternatives +find %{buildroot}%{_mandir} +mkdir -p %{buildroot}%{_sysconfdir}/alternatives + +## This construct should help identify whether the manpage is compressed, +## and the mv/ln TARGET parameter should be adjusted accordingly. +ext_man="%{?ext_man}%{!?ext_man:.gz}" +manfile="$(find %{buildroot}%{_mandir}/man7/ -type f -name "roff.7${ext_man}")" +test -z "${manfile}" && unset ext_man + +mv -v "%{buildroot}%{_mandir}/man7/roff.7${ext_man:-}" \ + "%{buildroot}%{_mandir}/man7/roff-gf.7${ext_man:-}" +ln -s -f "%{_sysconfdir}/alternatives/roff.7${ext_man:-}" \ + "%{buildroot}%{_mandir}/man7/roff.7${ext_man:-}" +# full_build +%else +# fix permission for devps/generate/afmname +# used by ghostscript-fonts-grops +chmod +x %{buildroot}%{_datadir}/groff/%{version}/font/devps/generate/afmname +# install files needed by ghostscript-fonts-grops +install -m 0644 font/devps/generate/symbolsl.awk %{buildroot}%{_datadir}/groff/%{version}/font/devps/generate +install -m 0644 font/devps/generate/zapfdr.sed %{buildroot}%{_datadir}/groff/%{version}/font/devps/generate +install -m 0644 font/devps/generate/freeeuro.sfd %{buildroot}%{_datadir}/groff/%{version}/font/devps/generate +install -m 0644 font/devps/generate/sfdtopfa.pe %{buildroot}%{_datadir}/groff/%{version}/font/devps/generate +install -m 0644 font/devps/symbolsl.ps %{buildroot}%{_datadir}/groff/%{version}/font/devps/ +# remove all not really wanted files (they are present in -full variant) +rm -rf %{buildroot}%{_mandir}/man5/ +rm -rf %{buildroot}%{_mandir}/man7/ +rm -rf %{buildroot}%{_infodir}/ + +rm -rf %{buildroot}%{_libexecdir}/groff/groffer/ +rm -rf %{buildroot}%{_libexecdir}/groff/gpinyin/ +rm -rf %{buildroot}%{_libexecdir}/groff/glilypond/ +rm -f %{buildroot}%{_libexecdir}/groff/{groff_opts_no_arg.txt,groff_opts_with_arg.txt} + +rm -rf %{buildroot}%{_docdir}/groff + +rm -rf %{buildroot}%{_datadir}/%{name}/%{version}/font/devcp1047 +rm -rf %{buildroot}%{_datadir}/%{name}/%{version}/font/devdvi +rm -rf %{buildroot}%{_datadir}/%{name}/%{version}/font/devhtml +rm -rf %{buildroot}%{_datadir}/%{name}/%{version}/font/devlbp +rm -rf %{buildroot}%{_datadir}/%{name}/%{version}/font/devlj4 +rm -rf %{buildroot}%{_datadir}/%{name}/%{version}/font/devpdf +rm -rf %{buildroot}%{_datadir}/%{name}/%{version}/oldfont/ + +for i in addftinfo afmtodit chem eqn2graph gdiffmk glilypond gperl gpinyin grap2graph grn grodvi groffer grolbp grolj4 gropdf hpftodit indxbib lkbib lookbib pdfmom pdfroff pfbtops pic2graph post-grohtml pre-grohtml refer roff2dvi roff2html roff2pdf roff2ps roff2text roff2x tfmtodit; do + rm -f %{buildroot}%{_bindir}/$i + rm -f %{buildroot}%{_mandir}/man1/$i.1* +done +# this man does werdly not have reflecting binary +rm -f %{buildroot}%{_mandir}/man1/grohtml.1* + +# compat symlinks +ln -s -f eqn %{buildroot}%{_bindir}/geqn +ln -s -f tbl %{buildroot}%{_bindir}/gtbl + +# install profiles to disable the use of ANSI colour sequences by default: +install -d -m 0755 %{buildroot}/%{_sysconfdir}/profile.d +install -m 644 %{SOURCE3} %{SOURCE4} %{buildroot}/%{_sysconfdir}/profile.d/ + +# full_build +%endif + +%fdupes -s %{buildroot} + +%if %{with full_build} +%post -n groff-full +%install_info --info-dir=%{_infodir} %{_infodir}/groff.info.gz +if test -f %{_mandir}/man7/roff-gf.7%{?ext_man} ; then + update-alternatives --install \ + %{_mandir}/man7/roff.7%{?ext_man} roff.7%{?ext_man} \ + %{_mandir}/man7/roff-gf.7%{?ext_man} 500 +fi + +%preun -n groff-full +%install_info_delete --info-dir=%{_infodir} %{_infodir}/groff.info.gz +if [ $1 -eq 0 ] ; then + update-alternatives --remove man.7%{?ext_man} %{_mandir}/man7/man-gf.7%{?ext_man} +fi +%endif + +%if !%{with full_build} +%files +%license COPYING FDL LICENSES +%doc BUG-REPORT ChangeLog* MANIFEST MORE.STUFF NEWS PROBLEMS PROJECTS README +%{_bindir}/eqn +%{_bindir}/geqn +%{_bindir}/groff +%{_bindir}/grog +%{_bindir}/grops +%{_bindir}/grotty +%{_bindir}/gtbl +%{_bindir}/mmroff +%{_bindir}/neqn +%{_bindir}/nroff +%{_bindir}/pic +%{_bindir}/preconv +%{_bindir}/soelim +%{_bindir}/tbl +%{_bindir}/troff +%{_mandir}/man1/eqn.1%{?ext_man} +%{_mandir}/man1/groff.1%{?ext_man} +%{_mandir}/man1/grog.1%{?ext_man} +%{_mandir}/man1/grops.1%{?ext_man} +%{_mandir}/man1/grotty.1%{?ext_man} +%{_mandir}/man1/mmroff.1%{?ext_man} +%{_mandir}/man1/neqn.1%{?ext_man} +%{_mandir}/man1/nroff.1%{?ext_man} +%{_mandir}/man1/pic.1%{?ext_man} +%{_mandir}/man1/preconv.1%{?ext_man} +%{_mandir}/man1/soelim.1%{?ext_man} +%{_mandir}/man1/tbl.1%{?ext_man} +%{_mandir}/man1/troff.1%{?ext_man} +%config %{_sysconfdir}/profile.d/zzz-%{name}.*sh +%{_datadir}/%{name} +%dir %{_libexecdir}/groff +%{_datadir}/groff/current + +%else #groff_base_only + +%files -n groff-full +%dir %{_datadir}/groff/%{version} +%dir %{_libexecdir}/groff +%doc %{_docdir}/groff +%dir %{_libexecdir}/groff +%exclude %{_docdir}/groff/html +%exclude %{_docdir}/groff/examples +%exclude %{_docdir}/groff/pdf +%{_infodir}/groff* +%{_mandir}/man1/* +%{_mandir}/man5/* +%{_mandir}/man7/* +%exclude %{_mandir}/man1/gxditview.1* +%ghost %{_sysconfdir}/alternatives/roff.7%{?ext_man} +%{_bindir}/* +%exclude %{_bindir}/gxditview +%dir %{_datadir}/groff +%{_datadir}/groff/%{version}/font +%{_datadir}/groff/%{version}/oldfont + +%files -n groff-doc +%dir %{_docdir}/groff +%doc %{_docdir}/groff/html +%doc %{_docdir}/groff/examples +%doc %{_docdir}/groff/pdf + +%files -n gxditview +%dir %{_datadir}/X11/app-defaults +%doc src/devices/xditview/ChangeLog +%doc src/devices/xditview/README +%doc src/devices/xditview/TODO +%{_bindir}/gxditview +%{_mandir}/man1/gxditview.1%{?ext_man} +%{_datadir}/X11/app-defaults/GXditview +%{_datadir}/X11/app-defaults/GXditview-color + +%endif #groff_base_only + +%changelog diff --git a/nroff-map-CW-to-R.patch b/nroff-map-CW-to-R.patch new file mode 100644 index 0000000..73b689f --- /dev/null +++ b/nroff-map-CW-to-R.patch @@ -0,0 +1,40 @@ +From 742dfac36f1fd23e17d27dbf83e3793d3f3a063d Mon Sep 17 00:00:00 2001 +From: Colin Watson +Date: Fri, 14 Jul 2023 12:42:26 +0100 +Subject: Map CW to R for nroff + +Bug-Debian: https://bugs.debian.org/1040975 +Last-Update: 2023-07-14 + +Patch-Name: nroff-map-CW-to-R.patch +--- + tmac/man.local | 2 +- + tmac/mdoc.local | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tmac/man.local b/tmac/man.local +index 0bb667bd4..1aaaadd6a 100644 +--- a/tmac/man.local ++++ b/tmac/man.local +@@ -12,7 +12,7 @@ + .\" Uncomment this to suppress warnings produced by such pages. This + .\" test remaps the font to roman ("R") on nroff (terminal) devices. You + .\" might prefer to remap it to bold ("B") instead. +-.\" .if n .ftr CW R ++.if n .ftr CW R + .\" + .\" A de facto standard URL format for man pages is recognized + .\" everywhere except Apple, where different macOS applications expect +diff --git a/tmac/mdoc.local b/tmac/mdoc.local +index 94688aba0..66dcc423d 100644 +--- a/tmac/mdoc.local ++++ b/tmac/mdoc.local +@@ -6,7 +6,7 @@ + .\" Uncomment this to suppress warnings produced by such pages. This + .\" test remaps the font to roman ("R") on nroff (terminal) devices. You + .\" might prefer to remap it to bold ("B") instead. +-.\" .if n .ftr CW R ++.if n .ftr CW R + .\" + .\" Local Variables: + .\" mode: nroff diff --git a/zzz-groff.csh b/zzz-groff.csh new file mode 100644 index 0000000..b9d9e8c --- /dev/null +++ b/zzz-groff.csh @@ -0,0 +1,20 @@ +# +# /etc/profile.d/zzz-groff.csh +# +# This script must be executed after setting the LANG variable. + +if ( $?LANG ) then + +switch ( $LANG ) + case ja*: + setenv MAN_KEEP_FORMATTING yes + unsetenv GROFF_NO_SGR + case zh*: + setenv MAN_KEEP_FORMATTING yes + unsetenv GROFF_NO_SGR + case ko*: + setenv MAN_KEEP_FORMATTING yes + unsetenv GROFF_NO_SGR +endsw + +endif diff --git a/zzz-groff.sh b/zzz-groff.sh new file mode 100644 index 0000000..419e1c5 --- /dev/null +++ b/zzz-groff.sh @@ -0,0 +1,12 @@ +# +# /etc/profile.d/zzz-groff.sh +# +# This script must be executed after setting the LANG variable. + +case "${LANGUAGE-${LC_ALL-${LC_MESSAGES-${LANG}}}}" in + ja*|zh*|ko*) + unset GROFF_NO_SGR + export MAN_KEEP_FORMATTING=yes + ;; +esac +