Bug#1123978: on why doxygen needs jQuery and ways to work around it blocking the sparc64 port

Paolo Greppi <[email protected]> Fri, 26 Dec 2025 10:51:18 +0100
Newsgroups gmane.linux.debian.devel.bugs.general,gmane.linux.debian.ports.sparc
Message-ID <[email protected]>
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