diff options
Diffstat (limited to 'meta/recipes-extended/groff')
10 files changed, 224 insertions, 273 deletions
diff --git a/meta/recipes-extended/groff/files/0001-Make-manpages-mulitlib-identical.patch b/meta/recipes-extended/groff/files/0001-Make-manpages-mulitlib-identical.patch new file mode 100644 index 0000000000..6dc84c9062 --- /dev/null +++ b/meta/recipes-extended/groff/files/0001-Make-manpages-mulitlib-identical.patch @@ -0,0 +1,25 @@ +From aa1f37f1e0ff0dc0eeb199b52959e0deb275721e Mon Sep 17 00:00:00 2001 +From: Jeremy Puhlman <jpuhlman@mvista.com> +Date: Sat, 7 Mar 2020 00:59:13 +0000 +Subject: [PATCH] Make manpages mulitlib identical + +Upstream-Status: Submitted [by email to g.branden.robinson@gmail.com] +Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com> + +--- + Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index f7ab410..7e1f3fb 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -891,7 +891,7 @@ SUFFIXES += .man + -e "s|[@]PAGE[@]|\\\\%$(PAGE)|g" \ + -e "s|[@]PDFDOCDIR[@]|`echo $(pdfdocdir) | sed -f $(makevarescape)`|g" \ + -e "s|[@]PSPRINT[@]|`echo $(PSPRINT) | sed -f $(makevarescape)`|g" \ +- -e "s|[@]SYSTEMMACRODIR[@]|`echo $(systemtmacdir) | sed -f $(makevarescape)`|g" \ ++ -e "s|[@]SYSTEMMACRODIR[@]|`echo $(systemtmacdir) | sed -e 's,$(libdir),$(prefix)/lib*,' | sed -f $(makevarescape)`|g" \ + -e "s|[@]TMAC_AN_PREFIX[@]|\\\\%$(tmac_an_prefix)|g" \ + -e "s|[@]TMAC_M_PREFIX[@]|\\\\%$(tmac_m_prefix)|g" \ + -e "s|[@]TMAC_MDIR[@]|`echo $(tmacdir) | sed -f $(makevarescape)`/mm|g" \ diff --git a/meta/recipes-extended/groff/files/0001-build-Fix-Savannah-64681-webpage.ps-deps.patch b/meta/recipes-extended/groff/files/0001-build-Fix-Savannah-64681-webpage.ps-deps.patch new file mode 100644 index 0000000000..eae5dc9998 --- /dev/null +++ b/meta/recipes-extended/groff/files/0001-build-Fix-Savannah-64681-webpage.ps-deps.patch @@ -0,0 +1,51 @@ +From c75965053124149381ada3c394da74be078076cf Mon Sep 17 00:00:00 2001 +From: "G. Branden Robinson" <g.branden.robinson@gmail.com> +Date: Sat, 16 Sep 2023 16:28:00 -0500 +Subject: [PATCH] [build]: Fix Savannah #64681 (webpage.ps deps). + +* doc/doc.am (doc/webpage.ps, doc/webpage.html): Update and parallelize + target dependencies. Resolve race by requiring "grn" and "soelim" to + be built first. Also add dependency on `$(TMAC_PACKAGE_MS)`. + +Fixes <https://savannah.gnu.org/bugs/?64681>. Thanks to Alexander +Kanavin for the report. + +ANNOUNCE: Acknowledge Alexander. + +Upstream-Status: Backport +Signed-off-by: Alexander Kanavin <alex@linutronix.de> +--- + doc/doc.am | 12 ++++++++---- + 1 file changed, 8 insertions(+), 4 deletions(-) + +diff --git a/doc/doc.am b/doc/doc.am +index cddc51907..d3c9ab6b7 100644 +--- a/doc/doc.am ++++ b/doc/doc.am +@@ -346,6 +346,9 @@ doc/pic.ps: $(doc_srcdir)/pic.ms eqn pic tbl + $(GROFF_V)$(MKDIR_P) `dirname $@` \ + && $(DOC_GROFF) -pet -Tps -ms $(doc_srcdir)/pic.ms >$@ + ++# groff(1)'s `-I` implies `-g` and `-s`, so we must depend on grn and ++# soelim even though the document doesn't require them. ++doc/webpage.ps: grn soelim + doc/webpage.ps: $(DOC_GNU_EPS) tmac/www.tmac tbl + doc/webpage.ps: $(doc_srcdir)/webpage.ms + $(GROFF_V)$(MKDIR_P) `dirname $@` \ +@@ -365,11 +368,12 @@ doc/pic.html: $(doc_srcdir)/pic.ms + && $(DOC_GROFF) -pet -P-Ipic -P-Dimg -P-jpic -Thtml -ms \ + $(doc_srcdir)/pic.ms > pic.html + +-doc/webpage.html: tbl +-doc/webpage.html: tmac/www.tmac +-doc/webpage.html: $(DOC_GNU_EPS) ++# groff(1)'s `-I` implies `-g` and `-s`, so we must depend on grn and ++# soelim even though the document doesn't require them. ++doc/webpage.html: grn soelim ++doc/webpage.html: $(DOC_GNU_EPS) tmac/www.tmac tbl + doc/webpage.html: $(doc_srcdir)/groff.css +-doc/webpage.html: $(doc_srcdir)/webpage.ms ++doc/webpage.html: $(doc_srcdir)/webpage.ms $(TMAC_PACKAGE_MS) + $(GROFF_V)$(MKDIR_P) $(doc_builddir) \ + && cd $(doc_builddir) \ + && $(DOC_GROFF) -t -I $(doc_srcdir) -P-jwebpage -P-nrb \ diff --git a/meta/recipes-extended/groff/files/0001-build-meintro_fr.ps-depends-on-tbl.patch b/meta/recipes-extended/groff/files/0001-build-meintro_fr.ps-depends-on-tbl.patch new file mode 100644 index 0000000000..3e81b86ac8 --- /dev/null +++ b/meta/recipes-extended/groff/files/0001-build-meintro_fr.ps-depends-on-tbl.patch @@ -0,0 +1,31 @@ +From f21e9f13beb57a1e0666edf9693d7c83f2189897 Mon Sep 17 00:00:00 2001 +From: "G. Branden Robinson" <g.branden.robinson@gmail.com> +Date: Fri, 22 Sep 2023 01:27:57 -0500 +Subject: [PATCH] [build]: meintro_fr.ps depends on tbl. + +* doc/doc.am (doc/meintro_fr.ps): Depend on tbl, resolving race in + sufficiently parallelized builds. Overlooked in commit 92349ae223, + 2022-05-30. + +Fixes <https://savannah.gnu.org/bugs/?64695>. Thanks to Alexander +Kanavin for the report. + +Upstream-Status: Backport +Signed-off-by: Alexander Kanavin <alex@linutronix.de> +--- + doc/doc.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/doc/doc.am b/doc/doc.am +index d3c9ab6b7..0f95c7774 100644 +--- a/doc/doc.am ++++ b/doc/doc.am +@@ -334,7 +334,7 @@ SUFFIXES += .me.in .me + + # Use '-K utf8', not '-k', in case 'configure' didn't find uchardet. + # The French translation uses tbl; its English counterpart does not. +-doc/meintro_fr.ps: doc/meintro_fr.me preconv ++doc/meintro_fr.ps: doc/meintro_fr.me preconv tbl + $(GROFF_V)$(MKDIR_P) `dirname $@` \ + && $(DOC_GROFF) -K utf8 -t -Tps -me -mfr $< >$@ + diff --git a/meta/recipes-extended/groff/files/groff-not-search-fonts-on-build-host.patch b/meta/recipes-extended/groff/files/groff-not-search-fonts-on-build-host.patch new file mode 100644 index 0000000000..23992576f9 --- /dev/null +++ b/meta/recipes-extended/groff/files/groff-not-search-fonts-on-build-host.patch @@ -0,0 +1,39 @@ +From eb16276c3e2e34aa2e57f6a0e68554657b90cd28 Mon Sep 17 00:00:00 2001 +From: Hongxu Jia <hongxu.jia@windriver.com> +Date: Sat, 11 May 2019 17:06:29 +0800 +Subject: [PATCH] groff searchs fonts which are provided by ghostscript on + build host. It causes non-determinism issue. So not search font dirs on host. + +Upstream-Status: Inappropriate [cross build specific] + +Signed-off-by: Kai Kang <kai.kang@windriver.com> + +Rebase to 1.22.4 +Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> + +--- + font/devpdf/Foundry.in | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/font/devpdf/Foundry.in b/font/devpdf/Foundry.in +index e5aba65..5441734 100644 +--- a/font/devpdf/Foundry.in ++++ b/font/devpdf/Foundry.in +@@ -20,7 +20,7 @@ + + #======================================================================= + #Foundry|Name|Search path +-foundry||@urwfontsdir@:(gs):/usr/share/fonts/type1/gsfonts:/usr/share/fonts/default/Type1:/usr/share/fonts/default/Type1/adobestd35:/usr/share/fonts/type1/urw-base35:/opt/local/share/fonts/urw-fonts:/usr/local/share/fonts/ghostscript ++foundry||(gs) + + # Enable the font description files for grops (generated from Adobe + # foundry font files) to be used with gropdf. afmtodit must not be +@@ -72,7 +72,7 @@ EURO|N||||*../devps/freeeuro.pfa + # URW fonts are typically shipped with Ghostscript, but can be replaced. + + #Foundry|Name|Search path +-foundry|U|@urwfontsdir@:/usr/share/fonts/type1/gsfonts:/usr/share/fonts/default/Type1:/usr/share/fonts/default/Type1/adobestd35:/usr/share/fonts/type1/urw-base35:/opt/local/share/fonts/urw-fonts:/usr/local/share/fonts/ghostscript:(gs) ++foundry|U|(gs) + + # Define flags for afmtodit. + diff --git a/meta/recipes-extended/groff/groff-1.22.3/0001-Unset-need_charset_alias-when-building-for-musl.patch b/meta/recipes-extended/groff/groff-1.22.3/0001-Unset-need_charset_alias-when-building-for-musl.patch deleted file mode 100644 index b61b432818..0000000000 --- a/meta/recipes-extended/groff/groff-1.22.3/0001-Unset-need_charset_alias-when-building-for-musl.patch +++ /dev/null @@ -1,30 +0,0 @@ -From b9565dc2fe0c4f7daaec91b7e83bc7313dee2f4a Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Mon, 13 Apr 2015 17:02:13 -0700 -Subject: [PATCH] Unset need_charset_alias when building for musl - -localcharset uses ac_cv_gnu_library_2_1 from glibc21.m4 -which actually shoudl be fixed in gnulib and then all downstream -projects will get it eventually. For now we apply the fix to -coreutils - -Upstream-Status: Pending - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - lib/gnulib.mk | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: groff-1.22.3/src/libs/gnulib/lib/Makefile.am -=================================================================== ---- groff-1.22.3.orig/src/libs/gnulib/lib/Makefile.am -+++ groff-1.22.3/src/libs/gnulib/lib/Makefile.am -@@ -113,7 +113,7 @@ install-exec-localcharset: all-local - case '$(host_os)' in \ - darwin[56]*) \ - need_charset_alias=true ;; \ -- darwin* | cygwin* | mingw* | pw32* | cegcc*) \ -+ darwin* | cygwin* | mingw* | pw32* | cegcc* | linux-musl*) \ - need_charset_alias=false ;; \ - *) \ - need_charset_alias=true ;; \ diff --git a/meta/recipes-extended/groff/groff-1.22.3/0001-replace-perl-w-with-use-warnings.patch b/meta/recipes-extended/groff/groff-1.22.3/0001-replace-perl-w-with-use-warnings.patch deleted file mode 100644 index f1db5b0653..0000000000 --- a/meta/recipes-extended/groff/groff-1.22.3/0001-replace-perl-w-with-use-warnings.patch +++ /dev/null @@ -1,102 +0,0 @@ -From 5b574542070db286c89b3827e8f15ed4b3b39034 Mon Sep 17 00:00:00 2001 -From: Robert Yang <liezhi.yang@windriver.com> -Date: Thu, 6 Apr 2017 01:46:00 -0700 -Subject: [PATCH] replace "perl -w" with "use warnings" - -The shebang's max length is usually 128 as defined in -/usr/include/linux/binfmts.h: - #define BINPRM_BUF_SIZE 128 - -There would be errors when @PERL@ is longer than 128, use -'/usr/bin/env perl' can fix the problem, but '/usr/bin/env perl -w' -doesn't work: - -/usr/bin/env: perl -w: No such file or directory - -So replace "perl -w" with "use warnings" to make it work. - -Upstream-Status: Pending - -Signed-off-by: Robert Yang <liezhi.yang@windriver.com> ---- - font/devpdf/util/BuildFoundries.pl | 3 ++- - src/devices/gropdf/gropdf.pl | 3 ++- - src/devices/gropdf/pdfmom.pl | 3 ++- - src/utils/afmtodit/afmtodit.pl | 3 ++- - 4 files changed, 8 insertions(+), 4 deletions(-) - -diff --git a/font/devpdf/util/BuildFoundries.pl b/font/devpdf/util/BuildFoundries.pl -index 39f2f0d..a2bfd8e 100644 ---- a/font/devpdf/util/BuildFoundries.pl -+++ b/font/devpdf/util/BuildFoundries.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/perl -w -+#!/usr/bin/perl - # - # BuildFoundries : Given a Foundry file generate groff and download files - # Deri James : Monday 07 Feb 2011 -@@ -22,6 +22,7 @@ - # along with this program. If not, see <http://www.gnu.org/licenses/>. - - use strict; -+use warnings; - - my $where=shift||''; - my $devps=shift||'../devps'; -diff --git a/src/devices/gropdf/gropdf.pl b/src/devices/gropdf/gropdf.pl -index 035d123..b933b32 100644 ---- a/src/devices/gropdf/gropdf.pl -+++ b/src/devices/gropdf/gropdf.pl -@@ -1,4 +1,4 @@ --#!@PERL@ -w -+#!@PERL@ - # - # gropdf : PDF post processor for groff - # -@@ -21,6 +21,7 @@ - # along with this program. If not, see <http://www.gnu.org/licenses/>. - - use strict; -+use warnings; - use Getopt::Long qw(:config bundling); - use Compress::Zlib; - -diff --git a/src/devices/gropdf/pdfmom.pl b/src/devices/gropdf/pdfmom.pl -index beec820..4b46ea4 100644 ---- a/src/devices/gropdf/pdfmom.pl -+++ b/src/devices/gropdf/pdfmom.pl -@@ -1,4 +1,4 @@ --#!@PERL@ -w -+#!@PERL@ - # - # pdfmom : Frontend to run groff -mom to produce PDFs - # Deri James : Friday 16 Mar 2012 -@@ -24,6 +24,7 @@ - # along with this program. If not, see <http://www.gnu.org/licenses/>. - - use strict; -+use warnings; - use File::Temp qw/tempfile/; - my @cmd; - my $dev='pdf'; -diff --git a/src/utils/afmtodit/afmtodit.pl b/src/utils/afmtodit/afmtodit.pl -index 4f2ce83..5c078ff 100644 ---- a/src/utils/afmtodit/afmtodit.pl -+++ b/src/utils/afmtodit/afmtodit.pl -@@ -1,4 +1,4 @@ --#! /usr/bin/perl -w -+#! /usr/bin/perl - # -*- Perl -*- - # Copyright (C) 1989-2014 Free Software Foundation, Inc. - # Written by James Clark (jjc@jclark.com) -@@ -19,6 +19,7 @@ - # along with this program. If not, see <http://www.gnu.org/licenses/>. - - use strict; -+use warnings; - - @afmtodit.tables@ - --- -2.10.2 - diff --git a/meta/recipes-extended/groff/groff-1.22.3/groff-1.22.2-correct-man.local-install-path.patch b/meta/recipes-extended/groff/groff-1.22.3/groff-1.22.2-correct-man.local-install-path.patch deleted file mode 100644 index c73328a186..0000000000 --- a/meta/recipes-extended/groff/groff-1.22.3/groff-1.22.2-correct-man.local-install-path.patch +++ /dev/null @@ -1,34 +0,0 @@ -Correct the install path of man.local to fix following error: - /yocto/build/tmp/sysroots/x86_64-linux/usr/share/groff/1.22.2/tmac/an-old.tmac:690: warning: can't find macro file `man.local' - -Signed-off-by: Zhenhua Luo <zhenhua.luo@freescale.com> -Upstream-Status: Pending - -diff --git a/tmac/Makefile.sub b/tmac/Makefile.sub -index 1506232..f1468c5 100644 ---- a/tmac/Makefile.sub -+++ b/tmac/Makefile.sub -@@ -121,9 +121,9 @@ install_data: $(NORMALFILES) $(SPECIALFILES) man.local \ - $(RM) $(DESTDIR)$(mdocdir)/$$f; \ - $(INSTALL_DATA) $$f-s $(DESTDIR)$(mdocdir)/$$f; \ - done -- -test -f $(DESTDIR)$(localtmacdir)/man.local \ -+ -test -f $(DESTDIR)$(tmacdir)/man.local \ - || $(INSTALL_DATA) $(srcdir)/man.local \ -- $(DESTDIR)$(localtmacdir)/man.local -+ $(DESTDIR)$(tmacdir)/man.local - -test -f $(DESTDIR)$(localtmacdir)/mdoc.local \ - || $(INSTALL_DATA) mdoc.local-s $(DESTDIR)$(localtmacdir)/mdoc.local - -@@ -164,9 +164,9 @@ uninstall_sub: - $(RM) $(DESTDIR)$(tmacdir)/$(tmac_s_prefix)s.tmac - $(RM) $(DESTDIR)$(tmacdir)/$(tmac_an_prefix)an.tmac - $(RM) $(DESTDIR)$(tmacdir)/www.tmac -- -if cmp -s $(DESTDIR)$(localtmacdir)/man.local \ -+ -if cmp -s $(DESTDIR)$(tmacdir)/man.local \ - $(srcdir)/man.local; then \ -- $(RM) $(DESTDIR)$(localtmacdir)/man.local; \ -+ $(RM) $(DESTDIR)$(tmacdir)/man.local; \ - fi - -if cmp -s $(DESTDIR)$(localtmacdir)/mdoc.local \ - $(srcdir)/mdoc.local; then \ diff --git a/meta/recipes-extended/groff/groff-1.22.3/groff-not-search-fonts-on-build-host.patch b/meta/recipes-extended/groff/groff-1.22.3/groff-not-search-fonts-on-build-host.patch deleted file mode 100644 index ff8f320592..0000000000 --- a/meta/recipes-extended/groff/groff-1.22.3/groff-not-search-fonts-on-build-host.patch +++ /dev/null @@ -1,20 +0,0 @@ -groff searchs fonts which are provided by ghostscript on build host. -It causes non-determinism issue. So not search font dirs on host. - -Upstream-Status: Inappropriate [cross build specific] - -Signed-off-by: Kai Kang <kai.kang@windriver.com> - -diff --git a/font/devpdf/Foundry.in b/font/devpdf/Foundry.in -index a6e968f..8094642 100644 ---- a/font/devpdf/Foundry.in -+++ b/font/devpdf/Foundry.in -@@ -65,7 +65,7 @@ ZD|Y||||Dingbats!d050000l.pfb - #====================================================================== - - #Foundry|Name|Searchpath --foundry|U|(gs):/usr/share/fonts/type1/gsfonts :/opt/local/share/fonts/urw-fonts # the URW fonts delivered with ghostscript (may be different) -+foundry|U|(gs) # the URW fonts delivered with ghostscript (may be different) - #Define Flags for afmtodit - - r=-i 0 -m diff --git a/meta/recipes-extended/groff/groff_1.22.3.bb b/meta/recipes-extended/groff/groff_1.22.3.bb deleted file mode 100644 index ba90cadd88..0000000000 --- a/meta/recipes-extended/groff/groff_1.22.3.bb +++ /dev/null @@ -1,87 +0,0 @@ -SUMMARY = "GNU Troff software" -DESCRIPTION = "The groff (GNU troff) software is a typesetting package which reads plain text mixed with \ -formatting commands and produces formatted output." -SECTION = "base" -HOMEPAGE = "http://www.gnu.org/software/groff/" -LICENSE = "GPLv3" - -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -SRC_URI = "${GNU_MIRROR}/groff/groff-${PV}.tar.gz \ - file://groff-1.22.2-correct-man.local-install-path.patch \ - file://0001-Unset-need_charset_alias-when-building-for-musl.patch \ - file://0001-replace-perl-w-with-use-warnings.patch \ - file://groff-not-search-fonts-on-build-host.patch \ -" - -SRC_URI[md5sum] = "cc825fa64bc7306a885f2fb2268d3ec5" -SRC_URI[sha256sum] = "3a48a9d6c97750bfbd535feeb5be0111db6406ddb7bb79fc680809cda6d828a5" - -DEPENDS = "groff-native" -DEPENDS_class-native = "" -RDEPENDS_${PN} += "perl sed" - -inherit autotools texinfo multilib_script - -MULTILIB_SCRIPTS = "${PN}:${bindir}/gpinyin ${PN}:${bindir}/groffer ${PN}:${bindir}/grog" - -EXTRA_OECONF = "--without-x" -PARALLEL_MAKE = "" - -CACHED_CONFIGUREVARS += "ac_cv_path_PERL='/usr/bin/env perl'" - -do_configure_prepend() { - if [ "${BUILD_SYS}" != "${HOST_SYS}" ]; then - sed -i \ - -e '/^GROFFBIN=/s:=.*:=${STAGING_BINDIR_NATIVE}/groff:' \ - -e '/^TROFFBIN=/s:=.*:=${STAGING_BINDIR_NATIVE}/troff:' \ - -e '/^GROFF_BIN_PATH=/s:=.*:=${STAGING_BINDIR_NATIVE}:' \ - -e '/^GROFF_BIN_DIR=/s:=.*:=${STAGING_BINDIR_NATIVE}:' \ - ${S}/contrib/*/Makefile.sub \ - ${S}/doc/Makefile.in \ - ${S}/doc/Makefile.sub - fi -} - -do_configure_append() { - # generate gnulib configure script - olddir=`pwd` - cd ${S}/src/libs/gnulib/ - ACLOCAL="$ACLOCAL" autoreconf -Wcross --verbose --install --force ${EXTRA_AUTORECONF} $acpaths || die "autoreconf execution failed." - cd ${olddir} -} - -do_install_append() { - # Some distros have both /bin/perl and /usr/bin/perl, but we set perl location - # for target as /usr/bin/perl, so fix it to /usr/bin/perl. - for i in afmtodit mmroff gropdf pdfmom grog; do - if [ -f ${D}${bindir}/$i ]; then - sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' ${D}${bindir}/$i - fi - done - if [ -e ${D}${libdir}/charset.alias ]; then - rm -rf ${D}${libdir}/charset.alias - fi - - # awk is located at /usr/bin/, not /bin/ - SPECIAL_AWK=`find ${D} -name special.awk` - if [ -f ${SPECIAL_AWK} ]; then - sed -i -e 's:#!.*awk:#! ${USRBINPATH}/awk:' ${SPECIAL_AWK} - fi - - # not ship /usr/bin/glilypond and its releated files in embedded target system - rm -rf ${D}${bindir}/glilypond - rm -rf ${D}${libdir}/groff/glilypond - rm -rf ${D}${mandir}/man1/glilypond* -} - -do_install_append_class-native() { - create_cmdline_wrapper ${D}/${bindir}/groff \ - -F${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/font \ - -M${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/tmac -} - -FILES_${PN} += "${libdir}/${BPN}/site-tmac \ - ${libdir}/${BPN}/groffer/" - -BBCLASSEXTEND = "native" diff --git a/meta/recipes-extended/groff/groff_1.23.0.bb b/meta/recipes-extended/groff/groff_1.23.0.bb new file mode 100644 index 0000000000..0fc4f831d8 --- /dev/null +++ b/meta/recipes-extended/groff/groff_1.23.0.bb @@ -0,0 +1,78 @@ +SUMMARY = "GNU Troff software" +DESCRIPTION = "The groff (GNU troff) software is a typesetting package which reads plain text mixed with \ +formatting commands and produces formatted output." +SECTION = "base" +HOMEPAGE = "http://www.gnu.org/software/groff/" +LICENSE = "GPL-3.0-only" + +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +SRC_URI = "${GNU_MIRROR}/groff/groff-${PV}.tar.gz \ + file://groff-not-search-fonts-on-build-host.patch \ + file://0001-Make-manpages-mulitlib-identical.patch \ + file://0001-build-Fix-Savannah-64681-webpage.ps-deps.patch \ + file://0001-build-meintro_fr.ps-depends-on-tbl.patch \ + " + +SRC_URI[sha256sum] = "6b9757f592b7518b4902eb6af7e54570bdccba37a871fddb2d30ae3863511c13" + +DEPENDS = "bison-native groff-native" +RDEPENDS:${PN} += "perl sed" + +inherit autotools-brokensep texinfo multilib_script pkgconfig + +MULTILIB_SCRIPTS = "${PN}:${bindir}/gpinyin ${PN}:${bindir}/grog" + +EXTRA_OECONF = "--without-x --with-urw-fonts-dir=/completely/bogus/dir/" +EXTRA_OEMAKE:class-target = "GROFFBIN=groff GROFF_BIN_PATH=${STAGING_BINDIR_NATIVE}" + +CACHED_CONFIGUREVARS += "ac_cv_path_PERL='/usr/bin/env perl' ac_cv_path_BASH_PROG='no' PAGE=A4" + +# Delete these generated files since we depend on bison-native +# and regenerate them. Do it deterministically (always). +do_configure:prepend() { + rm -f ${S}/src/preproc/eqn/eqn.cpp + rm -f ${S}/src/preproc/eqn/eqn.hpp +} + +do_install:append() { + # Some distros have both /bin/perl and /usr/bin/perl, but we set perl location + # for target as /usr/bin/perl, so fix it to /usr/bin/perl. + for i in afmtodit mmroff gropdf pdfmom grog; do + if [ -f ${D}${bindir}/$i ]; then + sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' ${D}${bindir}/$i + fi + done + if [ -e ${D}${libdir}/charset.alias ]; then + rm -rf ${D}${libdir}/charset.alias + fi + + # awk is located at /usr/bin/, not /bin/ + SPECIAL_AWK=`find ${D} -name special.awk` + if [ -f ${SPECIAL_AWK} ]; then + sed -i -e 's:#!.*awk:#! ${USRBINPATH}/awk:' ${SPECIAL_AWK} + fi + + # not ship /usr/bin/glilypond and its releated files in embedded target system + rm -rf ${D}${bindir}/glilypond + rm -rf ${D}${libdir}/groff/glilypond + rm -rf ${D}${mandir}/man1/glilypond* + + # not ship /usr/bin/grap2graph and its releated man files + rm -rf ${D}${bindir}/grap2graph + rm -rf ${D}${mandir}/man1/grap2graph* + + # strip hosttool path out of generated files + sed -i -e 's:${HOSTTOOLS_DIR}/::g' ${D}${docdir}/${BP}/examples/hdtbl/*.roff +} + +do_install:append:class-native() { + create_cmdline_wrapper ${D}/${bindir}/groff \ + -F${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/font \ + -M${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/tmac +} + +FILES:${PN} += "${libdir}/${BPN}/site-tmac \ + ${libdir}/${BPN}/groffer/" + +BBCLASSEXTEND = "native" |