This is the mail archive of the java-patches@gcc.gnu.org mailing list for the Java project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Thu, 2006-05-18 at 10:34 -0600, Tom Tromey wrote: > >>>>> "Mark" == Mark Wielaard <mark@klomp.org> writes: > > Mark> I made some notes on how I do these merges so others can > Mark> improve the process > > Please update libjava/HACKING with this info. OK, done with this patch: 2006-05-22 Mark Wielaard <mark@klomp.org> * HACKING: Update GNU Classpath import instructions. I updated it with some of your comments and the tip for svn merge from Haren Visavadia. Cheers, Mark
Index: HACKING =================================================================== --- HACKING (revision 113987) +++ HACKING (working copy) @@ -14,11 +14,36 @@ To import a new release: -- Check out a classpath snapshot +- Check out a classpath snapshot or take a release tar.gz file. I use 'cvs export' for this. Make a tag to ensure future hackers know exactly what revision was checked out; tags are of the form 'libgcj-import-DATE'. +- Get a svn checkout of + svn+ssh://gcc.gnu.org/svn/gcc/branches/CLASSPATH/libjava/classpath + this contains "pure" GNU Classpath inside the GCC tree. +- Clean it up and get the files from a new version: + - find classpath -type f | grep -v /\.svn | grep -v /\.cvs + - tar zxf classpath-x.tar.gz + - cp -r classpath-x/* classpath +- Add/Remove files: + - svn status classpath | grep ^\! | cut -c8- | xargs svn remove + - svn status classpath | grep ^\? | cut -c8- | xargs svn add +- If there are any empty directories now they can be removed. +- Update vendor branch + - svn commit classpath +- Note the new revision number (Xrev) +- Get a fresh svn trunk checkout and cd gcc/libjava +- Merge the changes between classpath versions into the trunk. + svn merge -rXrev-1:Xrev \ + svn+ssh://gcc.gnu.org/svn/gcc/branches/CLASSPATH/libjava/classpath \ + classpath +- Resolve any conflicts pointed out by svn status classpath | grep ^C + - Makefile.in files will be regenerated in the next step. + - Other files should have a "GCJ LOCAL" comment, and/or are mentioned + in the classpath/ChangeLog.gcj file. + (Don't forget to svn resolved files.) - Use auto* to create configure, Makefile.in, etc + Make sure you have Automake 1.9.3 installed. Exactly that version! You have to make sure to use the gcc libtool.m4 and gcc lt* scripts cd .../classpath cp ../../lt* . @@ -28,16 +53,13 @@ autoheader automake rm -rf autom4te.cache -- Test everything first. The simplest way to do this is by overlaying - the checked out classpath on your gcc tree and then doing a build. -- Use 'cvs import' to import. The vendor tag is 'CLASSPATH'. For the - release tag, if this is a released classpath version, use something - like 'classpath-import-VERSION'; otherwise something like - 'classpath-import-DATE'. - Be sure to use -ko and -I\! -- Remove any files that were deleted in Classpath -- Run 'scripts/makemake.tcl > sources.am' in the source tree -- Run automake for libgcj + cd .. + scripts/makemake.tcl > sources.am + automake +- Build, fix, till everything works. + Possibly update the gcj/javaprims.h file with scripts/classes.pl + (See below, it can only be done after the first source->bytecode + pass has finished.) Over time we plan to remove as many of the remaining divergences as possible.
Attachment:
signature.asc
Description: This is a digitally signed message part
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |