Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 552882

Summary: sys-devel/gcc has automagic dependency on dev-java/antlr
Product: Gentoo Linux Reporter: James Le Cuirot <chewi>
Component: [OLD] Core systemAssignee: Gentoo Toolchain Maintainers <toolchain>
Status: RESOLVED FIXED    
Severity: normal CC: dschridde+gentoobugs
Priority: Normal Keywords: PATCH
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://bugs.gentoo.org/show_bug.cgi?id=465572
https://bugs.gentoo.org/show_bug.cgi?id=429294
Whiteboard: masked in 17.0 profiles
Package list:
Runtime testing required: ---
Attachments: Patch against toolchain.eclass

Description James Le Cuirot gentoo-dev 2015-06-22 22:20:13 UTC
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?
Comment 1 Andrew John Hughes 2015-06-22 23:10:57 UTC
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.
Comment 2 Sergei Trofimovich (RETIRED) gentoo-dev 2019-08-20 22:43:38 UTC
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.
Comment 3 Larry the Git Cow gentoo-dev 2019-08-21 22:34:52 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=578b05904e4db05655b7f7cf033847c68cf8ace3

commit 578b05904e4db05655b7f7cf033847c68cf8ace3
Author:     James Le Cuirot <chewi@gentoo.org>
AuthorDate: 2019-08-21 22:33:21 +0000
Commit:     James Le Cuirot <chewi@gentoo.org>
CommitDate: 2019-08-21 22:33:21 +0000

    toolchain.eclass: Fix gcj's automagic dependency on dev-java/antlr
    
    Closes: https://bugs.gentoo.org/552882
    Signed-off-by: James Le Cuirot <chewi@gentoo.org>

 eclass/toolchain.eclass | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)
Comment 4 James Le Cuirot gentoo-dev 2019-08-21 22:35:55 UTC
I reckon the old GCCs will still be around a while so I figured I may as well apply it.