Removal of the old build system, partial and preliminary review (part 2)
Bradford Wetmore
bradford.wetmore at oracle.com
Thu Nov 7 05:45:39 UTC 2013
I've looked at:
jdk/makefiles/CreateSecurityJars.gmk
jdk/make/data/cryptopolicy
My only comment is the non-CamelCase style names
(swingbeaninfo/cryptopolicy/characterdata/charsetmapping/etc), but I
guess I can live with it.
Brad
On 11/1/2013 6:43 AM, Magnus Ihse Bursie wrote:
> Here is part 2 of the old build system removal.
>
> This review is based against the previous part, i.e. where the lion's
> share of the old make files had been removed.
>
> What remained was a handful or two of different types of files,
> scattered all around. I have checked each file and/or directory
> individually, and if it was not used, I removed it. (This was the case
> usually because the prior attempt was too conservative.)
>
> If the files were only used by the closed parts of the source code, it
> was moved to a suitable place in the closed repos. (A separate review
> for the closed part is coming up shortly).
>
> If it was actually used by the new build system, and it was source code
> that should be compiled, I moved it to make/src/classes or
> make/src/native, correspondingly.
>
> If it was actually used by the new build system, and it was a data file
> that was used as input for a build tool, or some other part of the build
> process, I created a descriptive directory in make/data (e.g. classlist)
> and moved it there.
>
> Finally, a few files belonged to utilities that is not used during the
> build. The comments on the utilities indicate that they are run manually
> and sporadically, such as CommentChecker or the tool to create the
> reorder files for native libs. Such tools will typically bit rot between
> uses, and while no-one has explicitely mentioned that they still use
> them, I did not want to remove them. I tested some of them, like the
> reorder tool, and it was indeed broken. I moved these toos into
> make/non-build-utils. Going forward, I believe these tools should
> probably find a better location and be used automatically so that they
> are tested, or they should be removed.
>
> I did these changes one at a time, committing to a local sandbox after
> every individual step. Here is a (somewhat filtered) list of the commit
> comments. I hope they are self-descriptive enough to explain the changes
> I've made.
>
> * Remove make/common. (Move to closed sources.)
> * Remove PatchList.solaris (makefiles copy was unused) and move to
> closed sources.
> * Remove make/tools/GenerateCharacter, save what's needed in
> make/data/characterdata.
> * Move contents of make/tools/UnicodeData/ to make/data/unicodedata.
> * Move files actually used from make/tools/CharsetMapping to
> make/data/charsetmapping.
> * Move contents of make/tools/dtdbuilder/dtds to make/data/dtdbuilder,
> and remove rest of make/tools/dtdbuilder.
> * GendataTimeZone is not used anymore.
> * Delete make/sun/javazic, and move remaining useful data to
> make/data/tzdata.
> * Move SwingBeanInfo.template, beaninfo/images/*.gif and source code
> (which is only copied, not compiled) from make/tools/swing-beans to
> make/data/swingbeaninfo.
> * Move make/javax/swing/beaninfo/manifest to
> make/data/swingbeaninfo/manifest.mf.
> * Move make/tools/manifest.mf to make/data/mainmanifest/manifest.mf.
> * Move make/javax/crypto/policy/ to make/data/cryptopolicy.
> * Move make/tools/add_gnu_debuglink and
> make/tools/fix_empty_sec_hdr_flags to make/src/native.
> * Move java source code from make/tools/src to make/src/classes.
> * Move refs.allowed to data/checkdeps. (That was the last file in
> make/tools/src).
> * Moving DocBeanInfo.java, GenDocletBeanInfo.java and
> GenSwingBeanInfo.java into make/src/classes/build/tools/swingbeaninfo.
> (This also means moving them to package build.tools.swingbeaninfo.)
> * Move make/tools/sharing/classlist.* to make/data/classlist.
> * Move the remaining tools, which are not used in the build process, to
> non-build-utils.
> * Move java utilities that are not used in the build from make/src to
> make/non-build-utils/src.
> * Prepare merging between makefiles and make by moving files in
> makefiles into corresponding positions. This means jpda/jdwp/jdwp.spec
> moved to data/jdwp/jdwp.spec, and sun/*/ToBin.java moved to
> src/classes/build/tools/icondata/*.
>
> And here is the WebRev:
> http://cr.openjdk.java.net/~ihse/remove-old-build-part-2/webrev.01
>
> /Magnus
More information about the build-dev
mailing list