source code re-organization

Erik Joelsson erik.joelsson at oracle.com
Fri Jun 8 05:46:37 PDT 2012


Great to see this getting ready! I'm trying it out in preparation for 
working on the build-infra-jigsaw build. Noticed a couple of things:

* Why the need to set MAKESHUFFLE_SRCDIR? I put the following in 
makeshufflescripts and it seems to work:
MS=$(cd "$(dirname "$0")" && pwd)

* In non-standard.includes, the line for jdwpTransport.h has an extra 
jdk/newsrc in the target path.

* zipfs.shuffle, zipfs.unshuffle and non-standard.includes contains 
target paths that look like "jdk/newsrc/$platform/module/...". I assume 
these should to be changed to mclasses and etc.

/Erik

On 2012-06-07 17:07, Michael McMahon wrote:
> Hi,
>
> The webrev below contains a utility which re-organizes the jdk8 source 
> code into one possible
> modularized layout suitable for jigsaw. The way it works is that first 
> a meta script called 'makeshufflescripts'
> is run which looks at the current layout and generates two further 
> sets of scripts (so-called 'shuffle' and
> 'unshuffle' scripts). These scripts contain a set of 'rsync' commands 
> that copy changed files between the old
> and the new layouts. 'shuffle' copies from the old to the new, and 
> 'unshuffle' copies any modified files
> from the new layout back to the old/present jdk source layout. The 
> script operates on the jdk, langtools
> corba, jaxws and jaxp repositories copying from the 'src' sub-tree in 
> each to/from a 'newsrc' sub-tree
> containing the new layout.
>
> The purpose of the utility is for people to experiment with the new 
> layout, editing source files etc.
> Changed files can be 'unshuffled' back to the old layout, for 
> building. There is a README which explains
> how exactly to use it. Currently, it has only been tested on Linux.
>
> http://cr.openjdk.java.net/~michaelm/shuffle/1/webrev/
>
> As mentioned above, the main script in the utility is 
> 'makeshufflescripts'. Most of the other files
> in the webrev contain other information needed by the script. 
> 'makeshufflescripts' generates the shuffle/unshuffle
> scripts into a directory called shufflescripts off the root of the 
> jigsaw forest.
> To do a shuffle, execute "sh shufflescripts/shuffle.sh" and to do an 
> unshuffle "sh shufflescripts/unshuffle.sh"
>
> All comments/questions welcome.
>
> - Michael.



More information about the jigsaw-dev mailing list