Hi Adrian, and thanks for raising this good point!

Indeed doxygen builds fine, and it even apparently runs fine without jQuery.
The problem is that when directed to generate docs in HTML format, the output uses jQuery. If jQuery is not bundled at package build time, the resulting HTML docs are broken.

To see a sample HTML output from doxygen, have a look at its own online docs (these files were produced with doxygen itself):
https://www.doxygen.nl/manual/index.html
.... here JQuery for example makes the left panel list items collapse / expand.

The JQuery JavaScript library and its ecosystem are obsolete so phasing it out is a good idea and one that I strongly support. But it is not something that as a maintainer I can do; the refactor would take upstream a lot of effort, and that is tracked in the forwarded issue.

If you just want to address the buildability of doxygen and its reverse build-dependencies on archs such as sparc64 where nodejs is not available, in the short term I see the following two options:

1. Since the idea is not really to port Debian on sparc64 to build documentation, and doxygen is used in Debian to build docs, we could on make doxygen less blocking, by making as many as possible (or at least the most direly required) of its reverse build-dependencies be able to build without it in the nodoc build profile. Not sure if this is enough though.

2. Along the lines of what Helmut Grohne proposed yesterday in the related thread here: https://bugs.debian.org/736432 "adding a pkg.doxygen.prebuiltjs build profile that would drop the uglifyjs dependency in favor of using the minified JQuery in the source tarball without rebuilding it", I can propose a slightly modified workaround, "adding a pkg.doxygen.nonuglifiedjs build profile that would drop the uglifyjs dependency in favor of using the non-uglified version of JQuery". I did a quick proof-of-concept here:
https://salsa.debian.org/debian/doxygen/-/tree/wip/paolog/nonuglifiedjs
I tested the so modified doxygen package and it seems to produce functioning HTML output. Of course we don't want to do this for all archs so we still need to create the build profile and enable it on sparc64, which I am clueless about. Feel free to push commits to that git branch if you know how to do that!

Hope this helps.

Paolo

Reply via email to