diff mbox series

[4/4] groff: build less in groff-native

Message ID 20260518103249.592747-4-ross.burton@arm.com
State New
Headers show
Series [1/4] nasm: remove groff-native dependency | expand

Commit Message

Ross Burton May 18, 2026, 10:32 a.m. UTC
When building groff-native we only really need enough of groff to build
manpages, and don't need documentation or extra tools.

Patch the Makefile to stop building the doc and contrib directories,
which both take time and have incomplete build dependencies that cause
intermittent failures[1][2].

This makes groff-native faster to build:

  groff-native    do_compile   -30.6s   -33.7%     90.9s -> 60.3s

And some tools are removed, which I don't believe are needed by anything
we build:

  /usr/bin/chem was removed
  /usr/bin/eqn2graph was removed
  /usr/bin/gdiffmk was removed
  /usr/bin/gperl was removed
  /usr/bin/gpinyin was removed
  /usr/bin/mmroff was removed
  /usr/bin/pic2graph was removed
  /usr/share/groff/1.24.1/tmac/chem.pic was removed
  /usr/share/groff/1.24.1/tmac/hdmisc.tmac was removed
  /usr/share/groff/1.24.1/tmac/hdtbl.tmac was removed
  /usr/share/groff/1.24.1/tmac/mm was removed
  /usr/share/groff/1.24.1/tmac/mm/0.MT was removed
  /usr/share/groff/1.24.1/tmac/mm/4.MT was removed
  /usr/share/groff/1.24.1/tmac/mm/5.MT was removed
  /usr/share/groff/1.24.1/tmac/mm/ms.cov was removed
  /usr/share/groff/1.24.1/tmac/mm/se_ms.cov was removed
  /usr/share/groff/1.24.1/tmac/mmse.tmac was removed
  /usr/share/groff/1.24.1/tmac/mm.tmac was removed
  /usr/share/groff/1.24.1/tmac/mom.tmac was removed
  /usr/share/groff/1.24.1/tmac/mse.tmac was removed
  /usr/share/groff/1.24.1/tmac/m.tmac was removed
  /usr/share/groff/1.24.1/tmac/om.tmac was removed
  /usr/share/groff/1.24.1/tmac/refer-mm.tmac was removed
  /usr/share/groff/1.24.1/tmac/rfc1345.tmac was removed
  /usr/share/groff/1.24.1/tmac/sboxes.tmac was removed

[1] oe-core d1a02bdd242 ("groff: Fix occasional build race failure")
[2] https://bugzilla.yoctoproject.org/show_bug.cgi?id=16279

Signed-off-by: Ross Burton <ross.burton@arm.com>
---
 .../groff/files/build-less.patch              | 24 +++++++++++++++++++
 meta/recipes-extended/groff/groff_1.24.1.bb   |  2 ++
 2 files changed, 26 insertions(+)
 create mode 100644 meta/recipes-extended/groff/files/build-less.patch

Comments

patchtest@automation.yoctoproject.org May 18, 2026, 12:46 p.m. UTC | #1
Thank you for your submission. Patchtest identified one
or more issues with the patch. Please see the log below for
more information:

---
Testing patch /home/patchtest/share/mboxes/4-4-groff-build-less-in-groff-native.patch

FAIL: test Upstream-Status presence: Upstream-Status is Inappropriate, but no reason was provided (test_patch.TestPatch.test_upstream_status_presence_format)

PASS: test CVE tag format (test_patch.TestPatch.test_cve_tag_format)
PASS: test Signed-off-by presence (test_mbox.TestMbox.test_signed_off_by_presence)
PASS: test Signed-off-by presence (test_patch.TestPatch.test_signed_off_by_presence)
PASS: test author valid (test_mbox.TestMbox.test_author_valid)
PASS: test commit message presence (test_mbox.TestMbox.test_commit_message_presence)
PASS: test commit message user tags (test_mbox.TestMbox.test_commit_message_user_tags)
PASS: test mbox format (test_mbox.TestMbox.test_mbox_format)
PASS: test non-AUH upgrade (test_mbox.TestMbox.test_non_auh_upgrade)
PASS: test shortlog format (test_mbox.TestMbox.test_shortlog_format)
PASS: test shortlog length (test_mbox.TestMbox.test_shortlog_length)
PASS: test target mailing list (test_mbox.TestMbox.test_target_mailing_list)

SKIP: pretest pylint: No python related patches, skipping test (test_python_pylint.PyLint.pretest_pylint)
SKIP: test bugzilla entry format: No bug ID found (test_mbox.TestMbox.test_bugzilla_entry_format)
SKIP: test pylint: No python related patches, skipping test (test_python_pylint.PyLint.test_pylint)
SKIP: test series merge on head: Merge test is disabled for now (test_mbox.TestMbox.test_series_merge_on_head)

---

Please address the issues identified and
submit a new revision of the patch, or alternatively, reply to this
email with an explanation of why the patch should be accepted. If you
believe these results are due to an error in patchtest, please submit a
bug at https://bugzilla.yoctoproject.org/ (use the 'Patchtest' category
under 'Yocto Project Subprojects'). For more information on specific
failures, see: https://wiki.yoctoproject.org/wiki/Patchtest. Thank
you!
diff mbox series

Patch

diff --git a/meta/recipes-extended/groff/files/build-less.patch b/meta/recipes-extended/groff/files/build-less.patch
new file mode 100644
index 00000000000..dc560fbb309
--- /dev/null
+++ b/meta/recipes-extended/groff/files/build-less.patch
@@ -0,0 +1,24 @@ 
+Build less bits of groff to save time and reduce random build
+failures from missing dependencies in this logic.
+
+Upstream-Status: Inappropriate
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+--- a/Makefile.am~	2026-05-15 13:23:08.000000000 +0100
++++ b/Makefile.am	2026-05-15 13:29:17.053867035 +0100
+@@ -556,15 +556,0 @@
+-include $(top_srcdir)/contrib/chem/chem.am
+-include $(top_srcdir)/contrib/eqn2graph/eqn2graph.am
+-include $(top_srcdir)/contrib/gdiffmk/gdiffmk.am
+-include $(top_srcdir)/contrib/glilypond/glilypond.am
+-include $(top_srcdir)/contrib/gperl/gperl.am
+-include $(top_srcdir)/contrib/gpinyin/gpinyin.am
+-include $(top_srcdir)/contrib/grap2graph/grap2graph.am
+-include $(top_srcdir)/contrib/hdtbl/hdtbl.am
+-include $(top_srcdir)/contrib/install-font/install-font.am
+-include $(top_srcdir)/contrib/mm/mm.am
+-include $(top_srcdir)/contrib/mom/mom.am
+-include $(top_srcdir)/contrib/pic2graph/pic2graph.am
+-include $(top_srcdir)/contrib/rfc1345/rfc1345.am
+-include $(top_srcdir)/contrib/sboxes/sboxes.am
+-include $(top_srcdir)/doc/doc.am
diff --git a/meta/recipes-extended/groff/groff_1.24.1.bb b/meta/recipes-extended/groff/groff_1.24.1.bb
index 74e422c6af4..166998c6c66 100644
--- a/meta/recipes-extended/groff/groff_1.24.1.bb
+++ b/meta/recipes-extended/groff/groff_1.24.1.bb
@@ -15,6 +15,8 @@  SRC_URI = "${GNU_MIRROR}/groff/groff-${PV}.tar.gz \
            file://builddep.patch \
            "
 
+SRC_URI:append:class-native = "file://build-less.patch"
+
 SRC_URI[sha256sum] = "74e2819795b6aff431aeac983d63a9c8968eeaba2a2eba7df8ba4c7b41e7cfd8"
 
 DEPENDS = "bison-native groff-native"