<?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="ApproveApacheSDK" 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="rat.report" value="${basedir}/rat-report.txt"/>
	<property name="apache.rat.jar" value="apache-rat-0.8.jar" />
	<property name="apache.rat.tasks.jar" value="apache-rat-tasks-0.8.jar" />
	<property name="apache.rat.url" value="http://people.apache.org/~aharui/rat" />
	   
    <property file="${basedir}/approvefalcon.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>
	
    <fail message="The ANT_HOME environment variable is not set."
        unless="env.ANT_HOME"/>
		
	<available file="${env.AIR_HOME}"
		type="dir" 
		property="AIR_HOME" value="${env.AIR_HOME}" />

    <fail message="The AIR_HOME property is not set in environment or command-line."
        unless="AIR_HOME"/>
		
    <available file="${env.PLAYERGLOBAL_HOME}"
        type="dir"
        property="PLAYERGLOBAL_HOME" value="${env.PLAYERGLOBAL_HOME}" />
    
    <fail message="The PLAYERGLOBAL_HOME property is not set in environment or command-line."
        unless="PLAYERGLOBAL_HOME"/>
    
    <available file="${env.FLASHPLAYER_DEBUGGER}"
        type="dir"
        property="FLASHPLAYER_DEBUGGER" value="${env.FLASHPLAYER_DEBUGGER}" />
    
    <available file="${env.FLASHPLAYER_DEBUGGER}"
        type="file"
        property="FLASHPLAYER_DEBUGGER" value="${env.FLASHPLAYER_DEBUGGER}" />
    
    <fail message="The FLASHPLAYER_DEBUGGER property is not set in environment or command-line."
        unless="FLASHPLAYER_DEBUGGER"/>
        
    <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"/>

    <fail message="The release candidate number is not set.  Specify -Drc=&lt;rc number (e.g. 1, 2, 3, etc)&gt;"
    unless="rc"/>
        
	<property name="package.url.path" value="https://dist.apache.org/repos/dist/dev/flex/sdk/${release.version}/rc${rc}" />
	<property name="package.url.name" value="apache-flex-sdk-${release.version}-src" />
	
    <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.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="install-rat,download,check-sigs,uncompress,rat-check,check-notices,build,approve" description="Perform required release approval steps">
    </target>
    
    <target name="main-no-download" depends="install-rat,check-sigs,uncompress,rat-check,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="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="${package.url.path}/${package.url.name}.${package.suffix}"
            dest="${basedir}/${package.url.name}.${package.suffix}" />
        <get src="${package.url.path}/${package.url.name}.${package.suffix}.md5"
            dest="${basedir}/${package.url.name}.${package.suffix}.md5" />
        <get src="${package.url.path}/${package.url.name}.${package.suffix}.asc"
            dest="${basedir}/${package.url.name}.${package.suffix}.asc" />
    </target>
    
    <target name="check-sigs" description="check md5 and gpg sigs">
		<replace file="${basedir}/${package.url.name}.${package.suffix}.md5"
			token=" " />
		<checksum file="${basedir}/${package.url.name}.${package.suffix}" algorithm="md5" verifyproperty="md5.ok" />
        <condition property="MD5Invalid">
			<not>
				<equals arg1="${md5.ok}" arg2="true" />
			</not>
        </condition>
        <fail message="MD5 checksum did not match" if="MD5Invalid" />
		<exec executable="gpg" failonerror="true">
			<arg value="--verify" />
			<arg value="${basedir}/${package.url.name}.${package.suffix}.asc" />
			<arg value="${basedir}/${package.url.name}.${package.suffix}" />
		</exec>
    </target>

    <target name="uncompress" depends="pre-clean, untar-file, unzip-file" />

    <target name="pre-clean" description="remove old uncompressed package" >
		<delete dir="${basedir}/${package.url.name}" failonerror="false" />
	</target>
	
    <target name="untar-file" unless="zip.package" description="Untars zipFile">
        <untar src="${basedir}/${package.url.name}.${package.suffix}"
                dest="${basedir}" compression="gzip"/>
    </target>

    <target name="unzip-file" if="zip.package" description="Unzips zipFile">
        <unzip src="${basedir}/${package.url.name}.${package.suffix}"
                dest="${basedir}/${package.url.name}"/>
    </target>

    <target name="rat-check" >

        <echo message="Checking files at ${basedir}/${package.url.name}, report is ${rat.report}"/>

        <rat:report xmlns:rat="antlib:org.apache.rat.anttasks"
            reportFile="${rat.report}">
            <fileset dir="${basedir}/${package.url.name}">
                <!--          Start of binary files           -->
                <!-- exclude Flash Professional file used for integration with Flash Professional -->
                <exclude name="frameworks/projects/flash-integration/FLA/ContentHolder.fla"/>
                <!-- exclude font embedded in asdoc example -->
                <exclude name="frameworks/projects/framework/asdoc/en_US/mx/effects/examples/assets/OpenSans-Regular.ttf"/>
                <!-- exclude media (png, gif, jpg, mp3, flv) -->
                <exclude name="**/*.png"/>
                <exclude name="**/*.gif"/>
                <exclude name="**/*.jpg"/>
                <exclude name="**/*.mp3"/>
                <exclude name="**/*.flv"/>
                <!-- exclude batik icon -->
                <exclude name="modules/thirdparty/batik/sources/*.icns"/>
                <!--          End of binary files           -->
                <!-- exclude batik manifests -->
                <exclude name="modules/thirdparty/batik/sources/*.mf"/>
                <!-- exclude text files -->
                <exclude name="CONTRIBUTING"/>
                <exclude name="modules/thirdparty/batik/lib/**/LICENSE*.txt"/>
                <exclude name="modules/thirdparty/batik/lib/**/README*.txt"/>
                <!-- exclude w3c sources -->
                <exclude name="modules/thirdparty/batik/resources/org/apache/flex/forks/batik/dom/svg/resources/*.mod"/>
                <exclude name="modules/thirdparty/batik/resources/org/apache/flex/forks/batik/dom/svg/resources/*.dtd"/>
                <exclude name="modules/thirdparty/batik/sources/org/w3c/css/sac/LexicalUnit.java"/>
                <exclude name="modules/thirdparty/batik/sources/org/w3c/flex/forks/css/sac/*.java"/>
                <exclude name="modules/thirdparty/batik/sources/org/w3c/flex/forks/css/sac/helpers/ParserFactory.java"/>
                <!-- exclude config files -->
                <exclude name="modules/thirdparty/batik/svn-revision"/>
                <exclude name="modules/thirdparty/xerces-patch/src/java/META-INF/services/javax.xml.parsers.SAXParserFactory"/>
                <exclude name="modules/thirdparty/xerces-patch/src/java/META-INF/services/org.apache.xerces.xni.parser.XMLParserConfiguration"/>
                <exclude name="modules/thirdparty/xerces-patch/src/java/org/apache/xerces/jaxp/javax.xml.parsers.SAXParserFactory"/>
            </fileset>
        </rat:report>
		<antcall target="display-text" >
            <param name="file" value="${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.license.ok"/>
		<echo>filtering out AL files to make it easier to see binary files</echo>
		<copy file="${rat.report}" tofile="${rat.report}.bin.txt" />
		<replaceregexp file="${rat.report}.bin.txt" match="..AL.*" replace="" byline="true"/>
		<antcall target="display-text" >
            <param name="file" value="${rat.report}.bin.txt" />
        </antcall>
        <input
			message="Check that there are no unexpected binaries.  Is it ok?"
            validargs="y,n"
        defaultvalue="n"
        addproperty="rat.binaries.ok"/>
    </target>

    <target name="check-notices" description="open each notice file for review, grep for a few things" >
        <fail message="README not in package">
			<condition>
	            <not>
    	            <available file="${basedir}/${package.url.name}/README" />
        	    </not>
			</condition>
        </fail>
        <fail message="RELEASE_NOTES not in package">
			<condition>
				<not>
					<available file="${basedir}/${package.url.name}/RELEASE_NOTES" />
				</not>
			</condition>
        </fail>
        <fail message="NOTICE not in package">
			<condition>
				<not>
					<available file="${basedir}/${package.url.name}/NOTICE" />
				</not>
			</condition>
        </fail>
        <fail message="LICENSE not in package">
			<condition>
				<not>
					<available file="${basedir}/${package.url.name}/LICENSE" />
				</not>
			</condition>
        </fail>
		<antcall target="display-text" >
            <param name="file" value="${basedir}/${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}/${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}/${package.url.name}/NOTICE" />
        </antcall>
		<input
			message="Check the NOTICE for required notices from third-parties. Is it ok?"
            validargs="y,n"
        defaultvalue="y"
        addproperty="notice.ok"/>

		<antcall target="display-text" >
            <param name="file" value="${basedir}/${package.url.name}/LICENSE" />
        </antcall>
		<input
			message="Check the LICENSE for the Apache License and third-party licenses. Is it ok?"
            validargs="y,n"
        defaultvalue="y"
        addproperty="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" />
        <chmod file="${basedir}/${package.url.name}/bin/compc" perm="ugo+rx"/>
        <chmod file="${basedir}/${package.url.name}/bin/mxmlc" perm="ugo+rx"/>
        <property name="build.noprompt" value="true" />
        <ant dir="${basedir}/${package.url.name}" target="main" />
        <ant dir="${basedir}/${package.url.name}" target="checkintests" />
    </target>

    <target name="copy.downloads" if="${do.copy.downloads}" description="instead of actually downloading all of the dependencies, you can save lots of time by just copying from some other folder in some other SDK.">
		<echo>Copying downloads</echo>
        <copy todir="${basedir}/${package.url.name}/in" >
			<fileset dir="${download.cache.dir}" />
		</copy>
    </target>
    	
	<target name="approve" >
		<condition property="vote" value="+1">
			<and>
				<equals arg1="${rat.license.ok}" arg2="y" />
				<equals arg1="${rat.binaries.ok}" arg2="y" />
				<equals arg1="${readme.ok}" arg2="y" />
				<equals arg1="${releasenotes.ok}" arg2="y" />
				<equals arg1="${notice.ok}" arg2="y" />
				<equals arg1="${license.ok}" arg2="y" />
			</and>
		</condition>
		<property name="vote" value="-1" />
		<echo>
${vote}
Package ${package.url.path}/${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: ${notice.ok}
LICENSE is ok: ${license.ok}
No unapproved licenses or archives: ${rat.license.ok}
No unapproved binaries: ${rat.binaries.ok}
		</echo>
		<fail>
			<condition>
	            <equals arg1="-1" arg2="${vote}"/>
			</condition>
		</fail>
	</target>
</project>
