Andrew Overholt wrote: > On Wed, 2005-06-07 at 18:10 +0100, Gary Benson wrote: > > Thomas Fitzsimmons wrote: > > > Does aot-compile-rpm provide a way to exclude certain jars from > > > native compilation? This is sometimes necessary to work around > > > gcj bugs. > > > > There's no generic way, but if you have already compiled a solib > > yourself then it won't recreate it. This allows you to compile it > > with -O0 instead of -O2, for example, which has worked for every > > gcj bug I've seen so far. > > The way we've been doing it with Eclipse is by moving the .jars that > we don't want to be compiled to .jar.bak. This won't work with > aot-compile-rpm, so we'll have to find a better way. -O2 -> -O0 > doesn't work in some cases. Yes, tracking down the remaining > mis-compilations is on my list of things to do :) . Ok, I added an --exclude option to handle this, and it's now built in beehive as java-1.4.2-gcj-compat-1.4.2.0-40jpp_32rh so if you could test it it would be very cool. You should be able to drop all solib compilation and database building stuff, sticking an aot-compile-rpm at the end of %install, and changing the %files sections to the new locations. Note that for --exclude the path you must is the final installed path of the jarfile, for example /usr/share/eclipse/plugins/org.eclipse.ui.workbench_3.1.0.jar (_not_ prefixed with $RPM_BUILD_ROOT). Note also that you shouldn't need to do this for the PPC limit (#158308) because aot-compile-rpm ought to be able to handle it. If you do have problems then let me know as it's a bug I should be fixing. Also note that for optimizer failures you can build the solib yourself into the location that aot-compile-rpm would have built it _before_ running aot-compile-rpm. aot-compile-rpm will generate the database for it. Finally, note that you can remove the %{_libdir} argument from all the rebuild-gcj-db commands, as it's not necessary any more. Cheers, Gary