ping: Re: [patch] update ecj to ecj-3.8.2/4.2.2

Jon VanAlten jon.vanalten@redhat.com
Wed Jun 26 19:23:00 GMT 2013



----- Original Message -----
> From: "Matthias Klose" <doko@ubuntu.com>
> To: "GCJ-patches" <java-patches@gcc.gnu.org>
> Cc: "Jon VanAlten" <jon.vanalten@redhat.com>, "Tom Tromey" <tromey@redhat.com>, "Andrew Haley" <aph@redhat.com>
> Sent: Thursday, June 20, 2013 6:39:22 AM
> Subject: ping: Re: [patch] update ecj to ecj-3.8.2/4.2.2
> 
> ping
> 
> Am 15.04.2013 12:21, schrieb Matthias Klose:
> > The ecj.jar provided on ftp://gcc.gnu.org/pub/java wasn't updated anymore
> > since
> > 2008, having no support for java7.  It looks like this ecj is already used
> > within the Fedora disto, however only locally patched (at least I couldn't
> > find
> > any mail sent to java-patches).
> > 
> > Find attached the changes required to build a new ecj.jar from the R3_8_2
> > git
> > tag.  The built files can be found at
> > http://people.debian.org/~doko/tmp/eclipse-gcj/. The resulting gcj -C looks
> > fine, building libjava with the new ecj.jar doesn't show any regressions,
> > and
> > the testsuite doesn't show any regressions.  However the filenames for some
> > generated class and header files have changed for inner classes:
> > 
> > $ svn status|grep UIDefaults|sort -k1
> > !       classpath/lib/javax/swing/UIDefaults$1.class
> > !       classpath/lib/javax/swing/UIDefaults$2.class
> > !       classpath/lib/javax/swing/UIDefaults$3.class
> > !       classpath/lib/javax/swing/UIDefaults$4.class
> > ?       classpath/lib/javax/swing/UIDefaults$ProxyLazyValue$1.class
> > ?       classpath/lib/javax/swing/UIDefaults$ProxyLazyValue$2.class
> > ?       classpath/lib/javax/swing/UIDefaults$ProxyLazyValue$3.class
> > ?       classpath/lib/javax/swing/UIDefaults$ProxyLazyValue$4.class
> > !       javax/swing/UIDefaults$1.h
> > !       javax/swing/UIDefaults$2.h
> > !       javax/swing/UIDefaults$3.h
> > !       javax/swing/UIDefaults$4.h
> > ?       javax/swing/UIDefaults$ProxyLazyValue$1.h
> > ?       javax/swing/UIDefaults$ProxyLazyValue$2.h
> > ?       javax/swing/UIDefaults$ProxyLazyValue$3.h
> > ?       javax/swing/UIDefaults$ProxyLazyValue$4.h
> > M       classpath/lib/javax/swing/plaf/basic/SharedUIDefaults.class
> > M       classpath/lib/javax/swing/UIDefaults.class
> > M       classpath/lib/javax/swing/UIDefaults$ProxyLazyValue.class
> > M
> > classpath/lib/javax/swing/UIManager$MultiplexUIDefaults$MultiplexEnumeration.class
> > 
> > See the attached svn-status.gz file for a complete diff (replace ! with D,
> > ?
> > with A).
> > 
> >  - I'd like to ask Tom (or somebody else) to look at the patches
> >    for the rhug/java repository.
> > 
> >  - Ask to rebuild the .class and .h files using this new ecj.jar on the
> >  trunk,
> >    after the ecj.jar is uploaded.
> > 
> > There are issues building OpenJDK and IcedTea with this new compiler.
> > Please
> > see the IcedTea ML for a follow-up posting.
> > 
> >   Matthias
> > 

Hi Matthias,

I didn't realize this was still waiting for input.
/me puts on Fedora packager hat...
We don't even use the Makefile here (we copy GCCMain and properties
into ecj source tree and use their ant build), but I have a couple
comments about that change anyways.

 checkout:
-	cvs -d $(cvsroot) co -r$(TAG) org.eclipse.jdt.core
+#	git clone -b R3_8_maintenance git://git.eclipse.org/gitroot/jdt/eclipse.jdt.core.git
+#	wget http://git.eclipse.org/c/jdt/eclipse.jdt.core.git/snapshot/$(TAG).tar.gz
+	tar xf $(TAG).tar.gz

So "checkout" target no longer does a checkout... seems a bit off. Is
the commented git clone line left over from doing some of this before
the official tag existed? Might want to drop that, and consider
renaming the target to reflect its new behaviour.

+	tar -c -f - -C $(TAG)/org.eclipse.jdt.core/compiler org \
+	  | tar -x -f - -C org.eclipse.jdt.core/

Am I missing something or is this equivalent and simpler:

+	mv $(TAG)/org.eclipse.jdt.core/compiler/org org.eclipse.jdt.core/

+	tar -c -f - -C $(TAG)/org.eclipse.jdt.core/batch org \
+	  | tar -x -f - -C org.eclipse.jdt.core/

Ditto.

-	cp org.eclipse.jdt.core/META-INF/MANIFEST.MF $(OUTPUT)/META-INF
+#	cp org.eclipse.jdt.core/META-INF/MANIFEST.MF $(OUTPUT)/META-INF

Any reason not to just delete this line if it's no longer needed?

As for the GCCMain portion of the change, yes it looks both necessary
and correct. We do same in Fedora package (once again sorry it didn't
get posted upstream due to my ignorance), and it would be nice to drop
the patch once this is in a release.

cheers,
jon



More information about the Java-patches mailing list