Bug 151732 - Dependencies on jre-32 (needed by OpenOffice) are quite large
Summary: Dependencies on jre-32 (needed by OpenOffice) are quite large
Status: RESOLVED FIXED
Alias: None
Product: SUSE Linux 10.1
Classification: openSUSE
Component: Java (show other bugs)
Version: Beta 4
Hardware: Other Other
: P5 - None : Major (vote)
Target Milestone: ---
Assignee: Johannes Meixner
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-02-17 08:53 UTC by Andreas Jaeger
Modified: 2006-03-27 13:14 UTC (History)
6 users (show)

See Also:
Found By: Other
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andreas Jaeger 2006-02-17 08:53:06 UTC
Currently OpenOffice_org requires:
jre-32

This is provided by: java-1_4_2-gcj-compat which requires gcc-java.

gcc-java requires:
libgcj
libgcj-devel
gcc

which bring in glitz-devel libart_lgpl-devel libpng-devel cairo-devel atk-devel - and more...

Do we really need all of this or can we get this list smaller?  I prefer to not install gcc and -devel packages in a default installation!
Comment 1 Richard Biener 2006-02-17 09:16:59 UTC
Well, the question is why java-1_4_2-gcj-compat requires gcc-java.  It should suffice to require libgcj here, until java-1_4_2-gcj-compat is supposed to provide more than a jre.  Of course libgcj is what drags in all the gnome stuff (though not the -devel parts).

Can you try if requiring libgcj is enough for java-1_4_2-gcj-compat?
Comment 3 Richard Biener 2006-02-17 09:27:00 UTC
I told you about the requirements of gcc-java.  gcc-java is the java _compiler_, libgcj provides the runtime and jre.  As you are the maintainer for java-1_4_2-gcj-compat you should fix that package.  There is no way we can trim down the requirements list of libgcj-devel without crippling functionality.
Comment 4 Johannes Meixner 2006-02-17 09:31:36 UTC
About which architecture are we talking here?
"Hardware" is "Other" is not very helpful.
For example on x86_64 jre-32 is not provided by java-1_4_2-gcj-compat
but by java-1_4_2-gcj-compat-32bit.
Comment 6 Andreas Jaeger 2006-02-17 09:35:33 UTC
This is i386 10.1 Beta4.
Comment 7 Petr Mladek 2006-02-17 09:41:25 UTC
The same problem will be also on x86_64 and ppc. It is on all platforms where we have OpenOffice.org.

It would be even worse on x86_64 because there are installed both 32-bit and 64-bit versions of gcj/gij.
Comment 8 Johannes Meixner 2006-02-17 09:44:10 UTC
Submitted fixed java-1_4_2-gcj-compat to STABLE.
Now there is no longer a RPM requiremenf for gcc-java.
Comment 10 Johannes Meixner 2006-02-17 10:42:06 UTC
Only for your information:
I wonder whether it would be even better to move the RPM requirement
for gcc-java from the java-1_4_2-gcj-compat base package to the 
java-1_4_2-gcj-compat-devel sub-package so that it is still there
but only triggered if really "devel" stuff is to be done?
Comment 11 Michael Matz 2006-02-17 14:02:03 UTC
Yes, it seems the java-1_4_2-gcj-compat-devel is supposed to provide a real
java compiler, which can only come from gcc-java.  Hence the java-1_4_2-gcj-compat-devel package should probably have a requirement on
gcc-java.
Comment 12 Petr Mladek 2006-02-17 14:28:31 UTC
It looks like a good idea (comment #10).

When I looked at it two weeks ago, I found that the wrapper java called gcj to resolve the options: -version and -showversion

I think that it was the reason why java-1_4_2-gcj-compat required gcc-java.

It is right that gij --version gives another output than gcj --verison. I am not sure what is the right output. I think that it could be solved by a grep/sed thing, though.
Comment 13 Johannes Meixner 2006-02-17 14:49:46 UTC
One problem with a move is that some other packages
have a RPM requirement for java-1_4_2-gcj-compat-devel:

$ whatdependson -R java-1_4_2-gcj-compat-devel
java-1_4_2-gcj-compat-devel:
 - jboss [java-devel=1.4.2]
 - jonas [java-devel=1.4.2]
 - tomcat5 [java-devel=1.4.2]

Would it be o.k (or even really neccesary) to get gcc-java installed
when jboss, jonas, or tomcat5 is installed?


Another problem is:
Shouldn't libgcj and/or gcc-java require java-1_4_2-gcj-compat
and/or java-1_4_2-gcj-compat-devel to get the necesssary shell scripts
and symlinks to simulate a JPackage Java runtime environment
and/or a JPackage Java development environment with GCJ?
Or is "JPackage" compliance only optional for GCJ usage?
Comment 14 Michael Matz 2006-02-17 15:14:36 UTC
I don't have an opinion if jboss,jonas or tomcat5 should or should not
require -devel, and hence the whole java SDK environment, at runtime.  That
would have to be answered by the respective maintainers.  AFAIK all of them
are sort of development packages itself, so that requirement seems okay.
They were also indirectly requiring gcc-java before (then through java-1_4_2-gcj-compat), so there would be no change.

But I can answer the second question: No, libgcj/gcc-java should not require
java-1_4_2-gcj-compat.  First that would create a cycle.  Second libgcj
or gcc-java is not supposed to provide something like a JPackage SDK.  That
is exactly the purpose of the java-1_4_2-gcj-compat, and users wanting that
have to install it.  Other than this gcc-java and libgcj can be used just fine
without the "normal Java SDK" simulation.
Comment 15 Johannes Meixner 2006-02-20 08:47:24 UTC
Many thanks for the explanation!

The first question was meant for Daniel.
In particular because of the subsequent RPM requirements of tomcat5:
$ whatdependson -R tomcat5
tomcat5:
 - open-xchange [tomcat5=5.0.30-10]
 - struts-webapps-tomcat5 [tomcat5=5.0.30-10]
 - swamp [tomcat5=5.0.30-10]
 - tomcat5-admin-webapps [tomcat5=5.0.30-10]
 - tomcat5-webapps [tomcat5=5.0.30-10]
 - trackplus [tomcat5=5.0.30-10]
I don't think that all those packages really require gcc-java at runtime.
Therefore I think it is better to have no gcc-java requiremant at all
in any java-1_4_2-gcj-compat* package because developers who like to
use gcc-java should know what they must install.
Comment 16 Johannes Meixner 2006-03-07 12:38:05 UTC
To get the various issues seperated, I filed bug #155729
Comment 17 Johannes Meixner 2006-03-27 13:09:06 UTC
Regading comment #10
"move the RPM requirement for gcc-java from the java-1_4_2-gcj-compat
 base package to the java-1_4_2-gcj-compat-devel sub-package":
and comment #13
"java-1_4_2-gcj-compat-devel is required by jboss, jonas, tomcat5":

Daniel explained that jboss, jonas, and tomcat5 really need a Java SDK
i.e. in case of Gnu Java they really need gcc-java.
Therefore java-1_4_2-gcj-compat-devel should require gcc-java.

On the other hand because of the initial comment in this bug
we should not get gcc-java installed by default.

Daniel explained that none of jboss, jonas, and tomcat5 is
installed in the Suse default system so that I can add
a RPM requirement for gcc-java to ava-1_4_2-gcj-compat-devel.
Comment 18 Johannes Meixner 2006-03-27 13:09:56 UTC
Opps - wrong assignee - it's my bug.
Comment 19 Johannes Meixner 2006-03-27 13:14:16 UTC
Submitted to STABLE.