You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by ah...@apache.org on 2020/04/11 16:41:39 UTC

svn commit: r38903 - in /dev/royale/compiler-build-tools/1.2.0/rc2: ./ binaries/

Author: aharui
Date: Sat Apr 11 16:41:39 2020
New Revision: 38903

Log:
Compiler Build Tools 1.2.0 rc 2

Added:
    dev/royale/compiler-build-tools/1.2.0/rc2/
    dev/royale/compiler-build-tools/1.2.0/rc2/ApproveBuildTools.xml
    dev/royale/compiler-build-tools/1.2.0/rc2/binaries/
    dev/royale/compiler-build-tools/1.2.0/rc2/binaries/compiler-build-tools-1.2.0.jar   (with props)
    dev/royale/compiler-build-tools/1.2.0/rc2/binaries/compiler-build-tools-1.2.0.jar.asc
    dev/royale/compiler-build-tools/1.2.0/rc2/binaries/compiler-build-tools-1.2.0.jar.sha512
    dev/royale/compiler-build-tools/1.2.0/rc2/compiler-build-tools-1.2.0-source-release.zip   (with props)
    dev/royale/compiler-build-tools/1.2.0/rc2/compiler-build-tools-1.2.0-source-release.zip.asc
    dev/royale/compiler-build-tools/1.2.0/rc2/compiler-build-tools-1.2.0-source-release.zip.sha512

Added: dev/royale/compiler-build-tools/1.2.0/rc2/ApproveBuildTools.xml
==============================================================================
--- dev/royale/compiler-build-tools/1.2.0/rc2/ApproveBuildTools.xml (added)
+++ dev/royale/compiler-build-tools/1.2.0/rc2/ApproveBuildTools.xml Sat Apr 11 16:41:39 2020
@@ -0,0 +1,632 @@
+<?xml version="1.0"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+
+<project name="ApproveApacheRoyaleBuildTools" default="main" basedir=".">
+
+
+    <!-- Required for OSX 10.6 / Snow Leopard Performance. -->
+    <!-- Java 7 on Mac requires OSX 10.7.3 or higher and is 64-bit only -->
+    <!-- local.d32 is set/used in build.properties so this needs to be done first. -->
+    <condition property="local.d32" value="-d32">
+        <and>
+            <os family="windows"/>
+            <equals arg1="${sun.arch.data.model}" arg2="64"/>
+            <equals arg1="${os.arch}" arg2="x86_64"/>
+            <equals arg1="${ant.java.version}" arg2="1.6"/>
+        </and>
+    </condition>
+
+    <condition property="isMac" value="mac">
+        <os family="mac" />
+    </condition>
+    <condition property="isWindows" value="windows">
+        <os family="windows" />
+    </condition>
+    <condition property="isLinux" value="linux">
+		<and>
+			<os family="unix" />
+			<not>
+				<isset property="isMac" />
+			</not>
+		</and>
+    </condition>
+    <condition property="package.suffix" value="zip">
+        <os family="windows" />
+    </condition>
+	<property name="package.suffix" value="tar.gz" />
+	
+	<property name="src.rat.report" value="${basedir}/rat-report-src.txt"/>
+    <property name="bin.rat.report" value="${basedir}/rat-report-bin.txt"/>
+    <property name="apache.rat.jar" value="apache-rat-0.11.jar" />
+    <property name="apache.rat.tasks.jar" value="apache-rat-tasks-0.11.jar" />
+    <property name="apache.rat.url" value="https://search.maven.org/remotecontent?filepath=org/apache/rat/apache-rat/0.11" />
+    <property name="apache.rat.tasks.url" value="https://search.maven.org/remotecontent?filepath=org/apache/rat/apache-rat-tasks/0.11" />
+	   
+    <property file="${basedir}/approveroyale.properties"/>
+    
+	<property name="mac.text.display" value="cat" />
+	<property name="win.text.display" value="type" />
+	<property name="linux.text.display" value="cat" />
+    <property environment="env"/>
+
+    <property name="build.target" value="main" />
+    
+	<condition property="do.copy.downloads" >
+		<isset property="download.cache.dir" /> 
+	</condition>
+	        
+    <available file="${env.ANT_HOME}/lib/${apache.rat.jar}"
+        type="file"
+        property="apache.rat.found"/>
+    <available file="${env.ANT_HOME}/lib/${apache.rat.tasks.jar}"
+        type="file"
+        property="apache.rat.tasks.found"/>
+		
+    <fail message="The release version is not set.  Specify -Drelease.version=&lt;release version (e.g. 3.1, 3.2, etc)&gt;"
+    unless="release.version"/>
+
+	<property name="package.url.path" value="https://dist.apache.org/repos/dist/dev/royale/compiler-build-tools/${release.version}/rc${rc}" />
+	<property name="src.package.url.path" value="${package.url.path}" />
+    <property name="bin.package.url.path" value="${package.url.path}/binaries" />
+    <property name="src.package.url.name" value="apache-royale-compiler-build-tools-${release.version}-src" />
+    <property name="bin.package.url.name" value="compiler-build-tools-${release.version}" />
+	
+    <condition property="zip.package">
+        <equals arg1="zip" arg2="${package.suffix}" />
+    </condition>
+    
+	<target name="display-text-mac" if="isMac">
+		<echo>========================= Begin ${file} ==============================</echo>
+		<exec executable="${mac.text.display}" >
+			<arg value="${file}" /> 
+		</exec>
+		<echo>========================= End ${file} ==============================</echo>
+	</target>
+	<target name="display-text-win" if="isWindows">
+		<pathconvert targetos="windows" property="winfile">
+			<path path="${file}" />
+		</pathconvert>
+		<echo>========================= Begin ${winfile} ==============================</echo>
+		<exec executable="cmd.exe" >
+			<arg value="/c" />
+			<arg value="${win.text.display}" />
+			<arg value="${winfile}" /> 
+		</exec>		
+		<echo>========================= End ${winfile} ==============================</echo>
+	</target>
+	<target name="display-text-linux" if="isLinux">
+		<echo>========================= Begin ${file} ==============================</echo>
+		<exec executable="${linux.text.display}" >
+			<arg value="${file}" /> 
+		</exec>
+		<echo>========================= End ${file} ==============================</echo>
+	</target>
+	
+	<target name="install-rat" depends="install-rat.jar,install-rat.tasks.jar" />
+	<target name="install-rat.jar" unless="apache.rat.found">
+		<get src="${apache.rat.url}/${apache.rat.jar}" dest="${env.ANT_HOME}/lib/${apache.rat.jar}" />
+	</target>
+	<target name="install-rat.tasks.jar" unless="apache.rat.tasks.found">
+		<get src="${apache.rat.tasks.url}/${apache.rat.tasks.jar}" dest="${env.ANT_HOME}/lib/${apache.rat.tasks.jar}" />
+	</target>
+	
+    <target name="rat-taskdef" description="Rat taskdef">
+        <typedef resource="org/apache/rat/anttasks/antlib.xml"
+        uri="antlib:org.apache.rat.anttasks"
+        classpathref="anttask.classpath"/>
+    </target>
+
+    <target name="main" depends="write-out-jars-list,install-rat,download,check-sigs,uncompress,rat-check,examine-jars,check-notices,build,approve" description="Perform required release approval steps">
+    </target>
+    
+    <target name="main-no-download" depends="write-out-jars-list,install-rat,check-sigs,uncompress,rat-check,examine-jars,check-notices,build,approve" description="Perform required release approval steps">
+    </target>
+	
+    <target name="test" >
+		<echo>${rat.report}.bin.txt</echo>
+		<replaceregexp file="${rat.report}.bin.txt" match="..AL.*" replace="" byline="true"/>
+    </target>
+    
+    <target name="write-out-jars-list" >
+        <delete file="jars.txt" />
+        <!-- this is a comma-delimited, no spaces, no-line-breaks list used to decide which jars
+         to skip in the rat-check of the binaries and which jars to examine before approval -->
+        <property name="jars-list" value="compiler-build-tools-${release.version}.jar"/>
+        <echo file="${basedir}/jars.txt" message="${jars-list}"/>
+        <echo file="${basedir}/jarexcludes.txt" message="${jars-list}"/>
+        <replaceregexp file="${basedir}/jarexcludes.txt" match="," flags="g" replace="${line.separator}" />
+    </target>
+
+	<target name="display-text" >
+		<antcall target="display-text-mac" />
+		<antcall target="display-text-win" />
+		<antcall target="display-text-linux" />
+	</target>
+
+	<target name="display-text-test" >
+		<antcall target="display-text" >
+			<param name="file" value="${basedir}/rat-report.txt" />
+		</antcall>
+	</target>
+	
+    <target name="download" description="download the release package">
+        <get src="${src.package.url.path}/${src.package.url.name}.${package.suffix}"
+            dest="${basedir}/${src.package.url.name}.${package.suffix}" />
+        <get src="${src.package.url.path}/${src.package.url.name}.${package.suffix}.sha512"
+            dest="${basedir}/${src.package.url.name}.${package.suffix}.sha512" />
+        <get src="${bin.package.url.path}/${bin.package.url.name}.jar"
+            dest="${basedir}/${bin.package.url.name}.jar" />
+        <get src="${bin.package.url.path}/${bin.package.url.name}.jar.sha512"
+            dest="${basedir}/${bin.package.url.name}.jar.sha512" />
+        <antcall target="asc_get" />
+    </target>
+    
+    <target name="asc_get" if="rc" >
+        <get src="${src.package.url.path}/${src.package.url.name}.${package.suffix}.asc"
+            dest="${basedir}/${src.package.url.name}.${package.suffix}.asc" />
+        <get src="${bin.package.url.path}/${bin.package.url.name}.${package.suffix}.asc"
+            dest="${basedir}/${bin.package.url.name}.${package.suffix}.asc" />
+    </target>
+    
+    <target name="check-sigs" description="check md5 and gpg sigs">
+		<replace file="${basedir}/${src.package.url.name}.${package.suffix}.md5"
+			token=" " />
+		<checksum file="${basedir}/${src.package.url.name}.${package.suffix}" algorithm="SHA-512" verifyproperty="src.md5.ok" fileext=".sha512"/>
+        <condition property="SourceMD5Invalid">
+			<not>
+				<equals arg1="${src.md5.ok}" arg2="true" />
+			</not>
+        </condition>
+        <fail message="Source Package SHA-512 checksum did not match" if="SourceMD5Invalid" />
+        <replace file="${basedir}/${bin.package.url.name}.jar.md5"
+            token=" " />
+        <checksum file="${basedir}/${bin.package.url.name}.jar" algorithm="SHA-512" verifyproperty="bin.md5.ok" fileext=".sha512" />
+        <condition property="BinaryMD5Invalid">
+            <not>
+                <equals arg1="${bin.md5.ok}" arg2="true" />
+            </not>
+        </condition>
+        <fail message="Binary Package SHA-512 checksum did not match" if="BinaryMD5Invalid" />
+        <echo>rc is ${rc}</echo>
+        <antcall target="gpg_check" />
+    </target>
+
+    <target name="gpg_check" if="rc">
+        <exec executable="gpg" failonerror="true">
+            <arg value="--verify" />
+            <arg value="${basedir}/${src.package.url.name}.${package.suffix}.asc" />
+            <arg value="${basedir}/${src.package.url.name}.${package.suffix}" />
+        </exec>
+        <exec executable="gpg" failonerror="true">
+            <arg value="--verify" />
+            <arg value="${basedir}/${bin.package.url.name}.jar.asc" />
+            <arg value="${basedir}/${bin.package.url.name}.jar" />
+        </exec>
+    </target>
+    
+    <target name="uncompress" depends="pre-clean, untar-file, unzip-file" />
+
+    <target name="pre-clean" description="remove old uncompressed package" >
+		<delete dir="${basedir}/${src.package.url.name}" failonerror="false" />
+        <delete dir="${basedir}/${bin.package.url.name}" failonerror="false" />
+	</target>
+	
+    <target name="untar-file" unless="zip.package" description="Untars zipFile">
+        <untar src="${basedir}/${src.package.url.name}.${package.suffix}"
+                dest="${basedir}" compression="gzip"/>
+        <untar src="${basedir}/${bin.package.url.name}.${package.suffix}"
+                dest="${basedir}" compression="gzip"/>
+    </target>
+
+    <target name="unzip-file" if="zip.package" description="Unzips zipFile">
+        <unzip src="${basedir}/${src.package.url.name}.${package.suffix}"
+                dest="${basedir}/${src.package.url.name}"/>
+        <unzip src="${basedir}/${bin.package.url.name}.${package.suffix}"
+                dest="${basedir}/${bin.package.url.name}"/>
+    </target>
+
+    <target name="rat-check" >
+
+        <echo message="Checking files at ${basedir}/${src.package.url.name}, report is ${src.rat.report}"/>
+
+        <rat:report xmlns:rat="antlib:org.apache.rat.anttasks"
+            reportFile="${src.rat.report}">
+            <fileset dir="${basedir}/${src.package.url.name}">
+                <!-- exclude media (png, gif, jpg, mp3, flv) -->
+                <exclude name="**/*.png"/>
+                <exclude name="**/*.gif"/>
+                <exclude name="**/*.jpg"/>
+                <exclude name="**/*.mp3"/>
+                <exclude name="**/*.flv"/>
+                <exclude name="**/org.apache.royale.tools.FlexToolGroup"/>
+                <exclude name="debugger/META-INF/MANIFEST.MF"/>
+                <exclude name="flex-typedefs/target/maven-shared-archive-resources/META-INF/DEPENDENCIES"/>
+                <exclude name="**/*.patch"/>
+                <exclude name="README_MAVEN.txt"/>
+                <exclude name="RELEASE_NOTES_JX"/>
+                <exclude name="LICENSE.jx.bin"/>
+                <exclude name="NOTICE.jx"/>
+                <exclude name="README_JX"/>
+                <exclude name="NOTICE.base"/>
+                <exclude name="NOTICE.fdb"/>
+                <exclude name="NOTICE.oem"/>
+                <exclude name="NOTICE.swfutils"/>
+            </fileset>
+        </rat:report>
+		<antcall target="display-text" >
+            <param name="file" value="${src.rat.report}" />
+        </antcall>
+        <input
+			message="Check that there are no unknown or unapproved licenses or archives. Is it ok?"
+            validargs="y,n"
+        defaultvalue="y"
+        addproperty="rat.src.license.ok"/>
+		<echo>filtering out AL files to make it easier to see binary files</echo>
+		<copy file="${src.rat.report}" tofile="${src.rat.report}.bin.txt" />
+		<replaceregexp file="${src.rat.report}.bin.txt" match="..AL.*" replace="__AL" byline="true"/>
+        <replaceregexp file="${src.rat.report}.bin.txt" flags="gs" match="__AL." replace="" byline="false"/>
+		<antcall target="display-text" >
+            <param name="file" value="${src.rat.report}.bin.txt" />
+        </antcall>
+        <input
+			message="Check that there are no unexpected binaries.  Is it ok?"
+            validargs="y,n"
+        defaultvalue="n"
+        addproperty="rat.src.binaries.ok"/>
+        
+        <echo message="Checking files at ${basedir}/${bin.package.url.name}, report is ${bin.rat.report}"/>
+        
+        <antcall target="binary-rat" />
+        <antcall target="display-text" >
+            <param name="file" value="${bin.rat.report}" />
+        </antcall>
+        <input
+        message="Check that there are no unknown or unapproved licenses or archives. Is it ok?"
+        validargs="y,n"
+        defaultvalue="y"
+        addproperty="rat.bin.license.ok"/>
+        <echo>filtering out AL files to make it easier to see binary files</echo>
+        <copy file="${bin.rat.report}" tofile="${bin.rat.report}.bin.txt" />
+        <replaceregexp file="${bin.rat.report}.bin.txt" match="..AL.*" replace="__AL" byline="true"/>
+        <replaceregexp file="${bin.rat.report}.bin.txt" flags="gs" match="__AL." replace="" byline="false"/>
+        <antcall target="display-text" >
+            <param name="file" value="${bin.rat.report}.bin.txt" />
+        </antcall>
+        <input
+        message="Check that there are no unexpected binaries.  Is it ok?"
+        validargs="y,n"
+        defaultvalue="n"
+        addproperty="rat.bin.binaries.ok"/>
+    </target>
+
+    <target name="binary-rat" >
+        <echo>${jars-list}</echo>
+        <rat:report xmlns:rat="antlib:org.apache.rat.anttasks"
+            reportFile="${bin.rat.report}">
+            <fileset dir="${basedir}/${bin.package.url.name}">
+                <!-- exclude media (png, gif, jpg, mp3, flv) -->
+                <exclude name="**/*.png"/>
+                <exclude name="**/*.gif"/>
+                <exclude name="**/*.jpg"/>
+                <exclude name="**/*.mp3"/>
+                <exclude name="**/*.flv"/>
+                <exclude name="**/org.apache.royale.tools.FlexToolGroup"/>
+                <exclude name="debugger/META-INF/MANIFEST.MF"/>
+                <exclude name="flex-typedefs/target/maven-shared-archive-resources/META-INF/DEPENDENCIES"/>
+                <exclude name="**/*.patch"/>
+                <exclude name="LICENSE.jx.bin"/>
+                <exclude name="README_MAVEN.txt"/>
+                <exclude name="RELEASE_NOTES_JX"/>
+                <exclude name="NOTICE.jx"/>
+                <exclude name="README_JX"/>
+                <exclude name="NOTICE.base"/>
+                <exclude name="NOTICE.fdb"/>
+                <exclude name="NOTICE.oem"/>
+                <exclude name="NOTICE.swfutils"/>
+                <exclude name="compiler/target/generated-sources/**" />
+                <exclude name="flex-typedefs/js/target/downloads/svg.js" />
+                <exclude name="flex-typedefs/createjs/target/downloads/**" />
+                <exclude name="flex-typedefs//**/*.swc" />
+                <exclude name="js/libs/cordova.swc"/>
+                <exclude name="js/libs/createjs.swc"/>
+                <exclude name="js/libs/GCL.swc"/>
+                <exclude name="js/libs/google_maps.swc"/>
+                <exclude name="js/libs/jasmine.swc"/>
+                <exclude name="js/libs/jquery.swc"/>
+                <exclude name="js/libs/js.swc"/>
+                <exclude name="js/libs/node.swc"/>
+                <excludesfile name="${basedir}/jarexcludes.txt" />
+            </fileset>
+        </rat:report>
+    </target>
+    
+    <!-- someday figure out how to use 
+        find . -name "*.jar" -exec tar ft {} \; | sort -u > paths.txt -->
+    
+    <!-- how to do tar and sort on Windows? -->
+    <target name="examine-jars" if="isMac">
+        <!-- comma delimited list, no spaces, not one file per line -->
+        <copy file="jars.txt" tofile="loop.txt" />
+        <ant antfile="ApproveBuildTools.xml" target="loopOnce" inheritAll="false" />
+    </target>
+    <target name="loopOnce" >
+        <!-- make a copy of the list so we can munge it to
+             get the first item in the list -->
+        <delete file="loop1.txt" />
+        <copy file="loop.txt" tofile="loop1.txt" />
+        <loadfile srcFile="loop.txt" property="checkiflast" />
+        <condition property="islast" value="true">
+            <not>
+                <contains string="${checkiflast}" substring="," />
+            </not>
+        </condition>
+        <antcall target="notlast" />
+        <antcall target="lastone" />
+    </target>
+    <target name="notlast" unless="islast">
+        <loadfile srcFile="loop1.txt" property="echoFile" />
+        <replaceregexp file="loop1.txt" match="^(.*),(.*)" replace="\2" />
+        <loadfile srcFile="loop1.txt" property="thisFile" />
+        <antcall target="jar-check" />
+        <replaceregexp file="loop.txt" match="^(.*),(.*)" replace="\1" />
+        <ant antfile="ApproveBuildTools.xml" target="loopOnce" inheritAll="false"/>
+    </target>
+    <target name="lastone" if="islast">
+        <loadfile srcFile="loop1.txt" property="thisFile" />
+        <antcall target="jar-check" />
+        <delete file="loop.txt" />
+        <delete file="loop1.txt" />
+    </target>
+
+    <target name="jar-check" >
+        <delete dir="${basedir}/jar" failonerror="false" />
+        <mkdir dir="${basedir}/jar" />
+        <unjar src="${basedir}/${bin.package.url.name}/${thisFile}" dest="${basedir}/jar" />
+        <exec executable="tar" output="${basedir}/jarclasses.txt">
+            <arg value="tf" />
+            <arg value="${basedir}/${bin.package.url.name}/${thisFile}" />
+        </exec>
+        <replaceregexp file="${basedir}/jarclasses.txt" match="(.*)/(.*)" replace="\1" flags="m" byline="true"/>
+        <exec executable="sort" output="${basedir}/jarpaths.txt">
+            <arg value="-u" />
+            <arg value="${basedir}/jarclasses.txt" />
+        </exec>
+        <antcall target="display-text" >
+            <param name="file" value="${basedir}/jarpaths.txt" />
+        </antcall>
+        <input
+            message="Above is the list of folders in this ${thisFile}.&#xA;Folder names can sometimes indicate presence of third-party content that needs to be in LICENSE and/or NOTICE files.&#xA;Press the Enter key to see the LICENSE for this jar."/>
+        
+        <fail message="LICENSE not in ${basedir}/${bin.package.url.name}/${thisFile}">
+            <condition>
+                <not>
+                    <available file="${basedir}/jar/META-INF/LICENSE" />
+                </not>
+            </condition>
+        </fail>
+        <fail message="NOTICE not in ${basedir}/${bin.package.url.name}/${thisFile}">
+            <condition>
+                <not>
+                    <available file="${basedir}/jar/META-INF/NOTICE" />
+                </not>
+            </condition>
+        </fail>
+        <antcall target="display-text" >
+            <param name="file" value="${basedir}/jar/META-INF/LICENSE" />
+        </antcall>
+        <input
+            message="Check the LICENSE for the Apache License and third-party licenses. Is it ok?"
+            validargs="y,n"
+            defaultvalue="y"
+            addproperty="jar.license.ok"/>
+        <fail message="LICENSE for ${basedir}/${bin.package.url.name}/${thisFile} not correct">
+            <condition>
+                <not>
+                    <equals arg1="${jar.license.ok}" arg2="y" />
+                </not>
+            </condition>
+        </fail>
+        <antcall target="display-text" >
+            <param name="file" value="${basedir}/jar/META-INF/NOTICE" />
+        </antcall>
+        <input
+            message="Check the NOTICE for required notices from third-parties. Is it ok?"
+            validargs="y,n"
+            defaultvalue="y"
+            addproperty="jar.notice.ok"/>
+        <fail message="NOTICE for ${basedir}/${bin.package.url.name}/${thisFile} not correct">
+            <condition>
+                <not>
+                    <equals arg1="${jar.notice.ok}" arg2="y" />
+                </not>
+            </condition>
+        </fail>
+        
+    </target>
+    
+    <target name="check-notices" description="open each notice file for review, grep for a few things" >
+        <!--
+        <fail message="README not in source package">
+			<condition>
+	            <not>
+    	            <available file="${basedir}/${src.package.url.name}/README" />
+        	    </not>
+			</condition>
+        </fail>
+        <fail message="RELEASE_NOTES not in source package">
+			<condition>
+				<not>
+					<available file="${basedir}/${src.package.url.name}/RELEASE_NOTES" />
+				</not>
+			</condition>
+        </fail>
+        -->
+        <fail message="NOTICE not in source package">
+			<condition>
+				<not>
+					<available file="${basedir}/${src.package.url.name}/NOTICE" />
+				</not>
+			</condition>
+        </fail>
+        <fail message="LICENSE not in source package">
+			<condition>
+				<not>
+					<available file="${basedir}/${src.package.url.name}/LICENSE" />
+				</not>
+			</condition>
+        </fail>
+        <!--
+        <fail message="README not in binary package">
+            <condition>
+                <not>
+                    <available file="${basedir}/${bin.package.url.name}/README" />
+                </not>
+            </condition>
+        </fail>
+        <fail message="RELEASE_NOTES not in binary package">
+            <condition>
+                <not>
+                    <available file="${basedir}/${bin.package.url.name}/RELEASE_NOTES" />
+                </not>
+            </condition>
+        </fail>
+        <fail message="NOTICE not in binary package">
+            <condition>
+                <not>
+                    <available file="${basedir}/${bin.package.url.name}/NOTICE" />
+                </not>
+            </condition>
+        </fail>
+        <fail message="LICENSE not in binary package">
+            <condition>
+                <not>
+                    <available file="${basedir}/${bin.package.url.name}/LICENSE" />
+                </not>
+            </condition>
+        </fail>
+        -->
+        <!--
+		<antcall target="display-text" >
+            <param name="file" value="${basedir}/${src.package.url.name}/README" />
+        </antcall>
+		<input
+			message="Check the README for version numbers, spelling, grammar, accuracy.  Is it ok?"
+            validargs="y,n"
+        defaultvalue="y"
+        addproperty="readme.ok"/>
+		<antcall target="display-text" >
+            <param name="file" value="${basedir}/${src.package.url.name}/RELEASE_NOTES" />
+        </antcall>
+		<input
+			message="Check the RELEASE_NOTES for copyright years, spelling, grammar, accuracy. Is it ok?"
+            validargs="y,n"
+        defaultvalue="y"
+        addproperty="releasenotes.ok"/>
+		-->
+        
+		<antcall target="display-text" >
+            <param name="file" value="${basedir}/${src.package.url.name}/NOTICE" />
+        </antcall>
+		<input
+			message="Check the source package NOTICE for required notices from third-parties. Is it ok?"
+            validargs="y,n"
+        defaultvalue="y"
+        addproperty="src.notice.ok"/>
+
+		<antcall target="display-text" >
+            <param name="file" value="${basedir}/${src.package.url.name}/LICENSE" />
+        </antcall>
+		<input
+			message="Check the source package LICENSE for the Apache License and third-party licenses. Is it ok?"
+            validargs="y,n"
+        defaultvalue="y"
+        addproperty="src.license.ok"/>
+        
+        <antcall target="display-text" >
+            <param name="file" value="${basedir}/${bin.package.url.name}/NOTICE" />
+        </antcall>
+        <input
+        message="Check the binary package NOTICE for required notices from third-parties. Is it ok?"
+        validargs="y,n"
+        defaultvalue="y"
+        addproperty="bin.notice.ok"/>
+        
+        <antcall target="display-text" >
+            <param name="file" value="${basedir}/${bin.package.url.name}/LICENSE" />
+        </antcall>
+        <input
+        message="Check the binary package LICENSE for the Apache License and third-party licenses. Is it ok?"
+        validargs="y,n"
+        defaultvalue="y"
+        addproperty="bin.license.ok"/>
+    </target>
+
+    <target name="build" depends="copy.downloads">
+		<input
+			message="The final step is to run the build and any tests the build script runs.  This can take several minutes.  Press y to start the build."
+            validargs="y"
+        defaultvalue="y" />
+        <exec dir="${basedir}/${src.package.url.name}" target="all" />
+    </target>
+    	
+	<target name="approve" >
+		<condition property="vote" value="+1">
+			<and>
+				<equals arg1="${rat.src.license.ok}" arg2="y" />
+				<equals arg1="${rat.src.binaries.ok}" arg2="y" />
+                <!--
+                <equals arg1="${rat.bin.license.ok}" arg2="y" />
+                <equals arg1="${rat.bin.binaries.ok}" arg2="y" />
+				<equals arg1="${readme.ok}" arg2="y" />
+				<equals arg1="${releasenotes.ok}" arg2="y" />
+                -->
+				<equals arg1="${src.notice.ok}" arg2="y" />
+                <equals arg1="${bin.notice.ok}" arg2="y" />
+				<equals arg1="${src.license.ok}" arg2="y" />
+                <equals arg1="${bin.license.ok}" arg2="y" />
+			</and>
+		</condition>
+		<property name="vote" value="-1" />
+		<echo>
+${vote}
+Package ${src.package.url.path}/${src.package.url.name}.${package.suffix}
+Java ${ant.java.version}
+OS: ${os.name} ${os.arch} ${os.version}
+Source kit signatures match: y
+Source kit builds: y
+README is ok: ${readme.ok}
+RELEASE_NOTES is ok: ${releasenotes.ok}
+NOTICE is ok: ${src.notice.ok}
+LICENSE is ok: ${src.license.ok}
+No unapproved licenses or archives in source package: ${rat.src.license.ok}
+No unapproved binaries in source package: ${rat.src.binaries.ok}
+
+Package ${bin.package.url.path}/${bin.package.url.name}.jar
+Binary signatures match: y
+NOTICE is ok: ${bin.notice.ok}
+LICENSE is ok: ${bin.license.ok}
+		</echo>
+		<fail>
+			<condition>
+	            <equals arg1="-1" arg2="${vote}"/>
+			</condition>
+		</fail>
+	</target>
+</project>

Added: dev/royale/compiler-build-tools/1.2.0/rc2/binaries/compiler-build-tools-1.2.0.jar
==============================================================================
Binary file - no diff available.

Propchange: dev/royale/compiler-build-tools/1.2.0/rc2/binaries/compiler-build-tools-1.2.0.jar
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: dev/royale/compiler-build-tools/1.2.0/rc2/binaries/compiler-build-tools-1.2.0.jar.asc
==============================================================================
--- dev/royale/compiler-build-tools/1.2.0/rc2/binaries/compiler-build-tools-1.2.0.jar.asc (added)
+++ dev/royale/compiler-build-tools/1.2.0/rc2/binaries/compiler-build-tools-1.2.0.jar.asc Sat Apr 11 16:41:39 2020
@@ -0,0 +1,17 @@
+-----BEGIN PGP SIGNATURE-----
+Comment: GPGTools - http://gpgtools.org
+
+iQIzBAABCAAdFiEE5/e31JRMrEV6FMDpg+BDHNqcz/IFAl6QGnwACgkQg+BDHNqc
+z/IRLhAAyzml45DzgdveFp5rAsp9Qtu4ZUSnI1mgKbMSmz2GDkTkNYL7iBhMGMaY
+1odnjlto2q0A4Mk0BbiPI8Mx+r935w8waiLzW6/qgolUdXXfA9EiA89deIscY3B7
+UqbCtecn6kdED6SOfwN1gLu0EBACAgIgYj+jqNwIEt+hixF0NDsvGLdvwobuIGcI
+c86R8M9Yd3Do2S3HWdkfFLP4Ag3C2Iiss9yeWbYDW1zMuz7yx/4lZDW3M1SsCj8r
+nU2KdFNuayAAY65HCsxYByXs/E/t8c5ZE/fMmt76qRlouR2/ZTbue3W/C8+k6U+n
+UMX/ljbfYj5eov1Lir98WIvMHrr0oevQcilYHKrw9pPpZ2JOx4R3yDR/zjj39t+n
+zuq2Xllng5VWOMobguHNBsFbqACWKzXwiBoDnzbTEt/iFkkPYUtXIzMD47tb0d4n
+gxub0MEkIyOKuTX1965bl7hSnh2Sl3uIlLSKNh6Gze6lg+vttyV+2Xvz9EM89CSo
+ZpXjN+Q9vw0uQGIWtIzQLO0zQmehNrO6E4eR24gAwb4sW/u2H62xjDWmA94Di8/9
+JWUuRs6RvyzffGGy637RTuSfU8mFXJbDiwodvoEtRkfbgCpuwPRjmSf5w8hw3n1r
+/zoWl5qCciGJkrVJJO2DelyK6UJpmGMJ6eqf70DKZmmaMJ6W+d0=
+=B/zJ
+-----END PGP SIGNATURE-----

Added: dev/royale/compiler-build-tools/1.2.0/rc2/binaries/compiler-build-tools-1.2.0.jar.sha512
==============================================================================
--- dev/royale/compiler-build-tools/1.2.0/rc2/binaries/compiler-build-tools-1.2.0.jar.sha512 (added)
+++ dev/royale/compiler-build-tools/1.2.0/rc2/binaries/compiler-build-tools-1.2.0.jar.sha512 Sat Apr 11 16:41:39 2020
@@ -0,0 +1 @@
+a22d084fc50a3175c86e067f71ba47af0cd6aad1db1c5ccfecd8baff02e0bf085228e1dc3527287c0840d631c55fb4cfd5af8e89ead3b212efd8828d3b14df17

Added: dev/royale/compiler-build-tools/1.2.0/rc2/compiler-build-tools-1.2.0-source-release.zip
==============================================================================
Binary file - no diff available.

Propchange: dev/royale/compiler-build-tools/1.2.0/rc2/compiler-build-tools-1.2.0-source-release.zip
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: dev/royale/compiler-build-tools/1.2.0/rc2/compiler-build-tools-1.2.0-source-release.zip.asc
==============================================================================
--- dev/royale/compiler-build-tools/1.2.0/rc2/compiler-build-tools-1.2.0-source-release.zip.asc (added)
+++ dev/royale/compiler-build-tools/1.2.0/rc2/compiler-build-tools-1.2.0-source-release.zip.asc Sat Apr 11 16:41:39 2020
@@ -0,0 +1,17 @@
+-----BEGIN PGP SIGNATURE-----
+Comment: GPGTools - http://gpgtools.org
+
+iQIzBAABCAAdFiEE5/e31JRMrEV6FMDpg+BDHNqcz/IFAl6QGnsACgkQg+BDHNqc
+z/JK1RAAiriMmt1H9/ZjsapWIpHr9nU6A77Jusk6ozVQESU+wZKzpc752swPHS3c
+BSIdY1khLEGH7vJjONn0eTOTXk8I1aDu9RuJF8G37xwAVi1AMYwR8V8ZJuUwB6U6
+LTZPrdIQvpxJ0ad57A/pdUHNofVs7cqYCsfZakrF1bpdzw5Ub4DyQm5P5udeWRHW
+R307fyBiLcKmq4Mds1uoGULe2HAjfFCUmVBrwsFzGswD+6nfKgV+cWKzYzsNzdyh
+uZkKEjMDy5cZjZ3DWudRylvjmugaoWTW2lj4EJLXyEWE7rb66Mgqr6P+SsF8XJ4+
+f3TpdTCld0abnmXsrcA2NhynafQp/xfELC1fRxjN2Es7uqn/qoegpbr7izuxIvL5
+UQndHXxoPfdWpPAGWBOqbhc1VPcioU6+m/8+InBr/cHMffATy/kVvDEkDp1TKa5V
+rxMShawpZEzX/x4RbRZwdCjLh+oxr99Kd7PSR8XmIgNtb83/RzpAbBJV8/rtLPVG
+iFEoRSbkYqN1Fr/vfG0AOeY8P9F2xIpF58wnhcYRUPvkwKqQ3D24tTvVOhmyOsUz
+hL/9sRwl/vJFfFHEnSkFdbhpt+mxbD9Nuuzc8Uw52yUYi3ZzCt5zVxOQMTU4ytH6
+BXe8wSNCT2pKnVp7DUbCwQRbh/Eoh8FK3lwh49419A99obj8/sw=
+=vSa6
+-----END PGP SIGNATURE-----

Added: dev/royale/compiler-build-tools/1.2.0/rc2/compiler-build-tools-1.2.0-source-release.zip.sha512
==============================================================================
--- dev/royale/compiler-build-tools/1.2.0/rc2/compiler-build-tools-1.2.0-source-release.zip.sha512 (added)
+++ dev/royale/compiler-build-tools/1.2.0/rc2/compiler-build-tools-1.2.0-source-release.zip.sha512 Sat Apr 11 16:41:39 2020
@@ -0,0 +1 @@
+bbb5bdbcd9ad0d50fa9bfcb245b5bf6bed6acbbcd47723d083a6f03de3bd2f8ec4ef1a4e5cfe7505d32a34c3aa3ea8b9e8a1d53ff631b01caac81a2e2e81b056