I've done some tweaking to the build scripts around compiler usage and wanted to run it by the list for comments, etc.
* I've removed the "-showversion" JVM argument from the module build scripts that were using it when executing the tests. The launcher behavior changed a bit here, so this isn't working with the IBM VME yet. This can be added back later. Note: this wasn't consistently being used in all scripts prior to this change. * Following the lead of other 'javac' properties configured in the /make/properties.xml file, I've added a 'hy.javac.compiler' property that is used by the scripts to set the 'compiler' property on 'javac' tasks. Currently, this is just set to 'modern' to maintain the previous behavior. * I've updated all of the build scripts that were calling 'javac' to consistently use all of the 'hy.javac.*' properties, including the compiler property. Additionally, I've removed all script elements that were setting the 'build.compiler' property. The rationale behind all of the compiler tweaks was to centralize and standardize the compiler setting a bit more. The custom property can always be dumped and we can just use the standard Ant 'build.compiler', but this time use it in the 'properties.xml' file, so it's centralized still. The other big reason to do this is to attempt to use the Eclipse (ECJ) compiler for the build. I've tested using the ECJ by setting the new property and the build and tests work as normal, but I haven't found a way to use the ECJ without manually placing the ECJ JAR in the ANT_HOME\lib folder. As such, I've left the compiler property at 'modern' for now. I'd like to permanently set the compiler property to use the ECJ v3.2, but this will seemingly "break the build" if Ant isn't setup properly. Does anyone have any objections to using ECJ as the standard compiler? Since Harmony will use this as it's 'javac', I believe it would be proper for Harmony to be built with the same compiler. Does anyone know of any means of "dynamically" setting up Ant with ECJ? One thought I had was an extension to 'fetch-depends' that copies ECJ to ANT_HOME\lib for builders. I'm not sure if that would be considered desirable behavior. -Nathan