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