RFD: Precompile ecj [Was Re: GCCMain not found & test suite errors fatal?]
Andrew Haley
aph@redhat.com
Wed Jan 6 16:39:00 GMT 2010
This makes ecj1 (and therefore gcj with Java source) much faster but
takes 1m30s of CPU on a very fast computer. It doesn't really seem to
make the build longer on a multi-CPU box, since it runs in parallel with
the rest of the build AFAICS. Do you think we can get away with this?
Andrew.
2010-01-06 Andrew Haley <aph@redhat.com>
* Makefile.am (ecjx_LDFLAGS): Always precompile AWT.
Index: Makefile.am
===================================================================
--- Makefile.am (revision 155475)
+++ Makefile.am (working copy)
@@ -1075,30 +1075,20 @@
## Build an ecjx from a .jar.
ecjx_SOURCES = ecjx.cc
-## We use the BC ABI here so that we don't need to compile ecj.jar.
-## Hopefully the user has compiled it into his system .db.
-## However, even if not it will run reasonably quickly.
-
ECJX_BASE_FLAGS = -findirect-dispatch \
--main=org.eclipse.jdt.internal.compiler.batch.GCCMain
if NATIVE
ecjx_LINK = $(GCJLINK) $(ecjx_LDFLAGS)
-
-if ENABLE_SHARED
-## Use ecj.jar at runtime.
-ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) -Djava.class.path=$(ECJ_JAR)
-else !ENABLE_SHARED
-## Use ecj.jar at compile time.
ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_BUILD_JAR) -fbootclasspath=$(BOOTCLASSPATH)
-endif !ENABLE_SHARED
-
ecjx_LDADD = -L$(here)/.libs $(extra_ldflags)
ecjx_DEPENDENCIES = libgcj.la libgcj.spec
if BUILD_SUBLIBS
ecjx_DEPENDENCIES += libgcj-noncore.la
+
endif
+
if USE_LIBGCJ_BC
ecjx_DEPENDENCIES += libgcj_bc.la
else
More information about the Java
mailing list