Created attachment 405552 [details, diff]
Patch against toolchain.eclass
I've been fixing up dev-java/gcj-jdk and trying to work out what to do with bug #465572. I noticed that gjdoc is present on some systems but not others. It turns out that gcc has an automagic dependency on dev-java/antlr.
I know that you are keen to avoid adding further complexity to the toolchain builds. As things stand, it will only pick up antlr 2.7.7, released in 2006, rather than the much more recent antlr 4 and there are no configure flags to force it to use the latter, even though it should work. I don't want to depend on such an old version and you don't want to depend on any version.
Do we need gjdoc at all? There's a couple of small reverse dependencies and gnu_andrew would like to keep it. The good news is that it also already provided by gnu-classpath as well as a standalone package.
So please see the attached patch to explicitly disable the building of gjdoc. This configure flag first appeared around 4.4. I don't think you need to explicitly avoid passing it in earlier versions?
gjdoc is used to provide 'javadoc' for the gcj-based JDK. However, there's no reason that gcc has to provide this, and given that it creates a dependency on antlr (and consequent Java dependencies), I'd rather we avoided it from gcc.
The version in GNU Classpath has the potential to be more up-to-date, as it can be upgraded outside the GCC release cycle and it then means we only need to handle antlr in one place.
So I concur with James in applying this patch.
As to the standalone package of gjdoc, it can be dropped. 0.7.9 in the tree is superseded by gjdoc 0.98, which is part of GNU Classpath 0.98.
Modern gcc does not have gcj anymore. We can either close the bug if there is no interest in old gccs or apply it.
For what it's worth change looks fine.
The bug has been closed via the following commit(s):
Author: James Le Cuirot <firstname.lastname@example.org>
AuthorDate: 2019-08-21 22:33:21 +0000
Commit: James Le Cuirot <email@example.com>
CommitDate: 2019-08-21 22:33:21 +0000
toolchain.eclass: Fix gcj's automagic dependency on dev-java/antlr
Signed-off-by: James Le Cuirot <firstname.lastname@example.org>
eclass/toolchain.eclass | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
I reckon the old GCCs will still be around a while so I figured I may as well apply it.