On Wed, Nov 13, 2013 at 2:37 PM, Andrew Haley <a...@redhat.com> wrote: > On 11/13/2013 01:22 PM, Jakub Jelinek wrote: >> On Wed, Nov 13, 2013 at 02:01:52PM +0100, Richard Biener wrote: >>>>> Really? Wouldn't it make more sense for people to check out what they >>>>> need? Is this a mayor issue? >>>> >>>> It was one of the major complaints we received when dropping the >>>> split of the distributed tarballs, that is, no more gcc-core-4.8.2.tar.bz2. >>>> libjava is roughly half of the whole source tarball ... >>> >>> Err, miscounted ;) It's roughly half of the size of the gcc/ subdirectory. >> >> Well, for the size it might help stop including all the precompiled >> *.class/*.jar files in the repository, that is roughly half of >> libjava/, and only configuring java if everything is there to set up >> building the class files from source. We are doing that for years >> on redhat branches (with the main intent to avoid just relying on >> binary blobs, but size reduction is a nice side-effect). >> >> I think all the prebuilt binary blobs (and generated headers) were added >> because java was an --enable-languages=all language and the maintainers >> didn't want to add burden of other prerequisities. > > That's right. > >> But, if we make it that java will not be configured unless you have >> those prerequisities, I don't see why we would need to include >> those. For cross-compilers of course one will need the ecj jar file >> (target independent) and some java interpreter around, but it will >> be needed on the build box. > > Yes, that's always been the gnarly problem when bootstrapping. GCJ > has provided the only way that you can get Java on some targets, > because it's the only way to build a working Java that does not > require you already to have a working Java.
But only because you cheat and have a working Java already as Java bytecode ;) "cross-compiling" Java sounds a bit funny. As of java testing with --disable-libjava I realized there are no java tests in gcc/testsuite but all tests are in libjava (but also with bytecode). Not sure if there is a subset of tests that works with a "bare" java runtime (which we don't seem to split from libgcj which contains both the core language runtime and classpath). Whatever the "core language runtime" would be - I'm somewhat a Java ignorant. Richard. > Andrew.