#1122850 fribidi FTCBFS: running help2man fails

#1122850#5
Date:
2025-12-13 07:26:17 UTC
From:
To:
Source: fribidi
Version: 1.0.16-4
Severity: important
Justification: breaks architecture cross bootstrap
Tags: patch
User: debian-cross@lists.debian.org
Usertags: ftcbfs
User: helmutg@debian.org
Usertags: rebootstrap

Hi,

thank you for your efforts on improviing the fribidi manual page.
Unfortunately, using help2man tends to not play well with cross
compilation. The built fribidi cannot be run and help2man fails. There
are many solutions to this problem none of which are nice. For instance,
installing the manual page into an arch:all package would remove the
need for it to be cross built, but that would be a very small arch:all
package.

Since fribidi is a very small packages with few dependencies, I suggest
building it twice. A native pass is used to generate the manual page and
then everything but the manual page is cross built. Implementing this
for fribidi is a bit tricky. I've come up with the attached patch. I
recognize that it does add quite a bit of complexity to the packaging,
but please be aware that every known solution to the help2man problem
has significant downsides. Is that something you're willing to apply?

If not, please consider alternative solutions:
 * fribidi could Build-Depends: libfribidi-bin <cross> and use the built
   and installed version of the fribidi command to generate the manual
   page.
 * The help text could be extracted from the src/fribidi-main.c source
   code without running the built command (e.g. using Perl or Python)
   and be passed to help2man.
 * A cross build could skip generating a manual page. Doing so
   permanently renders cross builds unreproducible.
 * A real manual page that does not rely on help2man could be written.

Additionally, I think that the command used to generate the manual page
belongs into a verbose build log.

Helmut