You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by jm...@apache.org on 2014/10/11 03:46:01 UTC

[4/5] git commit: [flex-utilities] [refs/heads/develop] - add installer script

add installer script


Project: http://git-wip-us.apache.org/repos/asf/flex-utilities/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-utilities/commit/711e4544
Tree: http://git-wip-us.apache.org/repos/asf/flex-utilities/tree/711e4544
Diff: http://git-wip-us.apache.org/repos/asf/flex-utilities/diff/711e4544

Branch: refs/heads/develop
Commit: 711e4544f65562023fc5a4bc83f8f7edcb012435
Parents: cbe8bfa
Author: Justin Mclean <jm...@apache.org>
Authored: Sat Oct 11 12:44:40 2014 +1100
Committer: Justin Mclean <jm...@apache.org>
Committed: Sat Oct 11 12:44:40 2014 +1100

----------------------------------------------------------------------
 Squiggly/installer.xml | 127 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 127 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/711e4544/Squiggly/installer.xml
----------------------------------------------------------------------
diff --git a/Squiggly/installer.xml b/Squiggly/installer.xml
new file mode 100644
index 0000000..c936408
--- /dev/null
+++ b/Squiggly/installer.xml
@@ -0,0 +1,127 @@
+<?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="squiggly_install" default="install" 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="isMacOrLinux" value="mac">
+    	<or>
+    		<os family="mac" />
+    		<os family="unix" />
+    	</or>
+    </condition>
+    <condition property="isWindows" value="windows">
+        <os family="windows" />
+    </condition>
+        	
+	<property environment="env"/>
+    <condition property="FLEX_HOME" value="${env.FLEX_HOME}">
+        <isset property="env.FLEX_HOME" />
+    </condition>
+
+    <property file="${FLEX_HOME}/local.properties"/>
+    <property file="${FLEX_HOME}/build.properties"/>
+    <property file="${basedir}/${bundle}.properties"/>
+
+	<property name="download.dir" value="${FLEX_HOME}/in"/>
+	<property name="unpack.dir" value="${FLEX_HOME}/squiggly"/>
+	<property name="mirror.url" value="http://flex.apache.org/single-mirror-url.cgi" />
+	
+    <property name="squiggly.url.folder" value="flex/squiggly/1.1" />
+   
+    <target name="file-setup-win" if="isWindows">
+    	<property name="squiggly.url.file" value="apache-flex-squiggly-1.1-bin.zip" />
+    	<property name="squiggly.url.md5" value="34a0d8d445f8f1307cad35e25d1377bd" />
+    </target>
+	
+    <target name="file-setup-unix" if="isMacOrLinux">
+    	<property name="squiggly.url.file" value="apache-flex-squiggly-1.1-bin.tar.gz" />
+    	<property name="squiggly.url.md5" value="ea03691ec15f625c5281e0d01dcc9570" />
+    </target>
+
+    <target name="install" depends="file-setup-win,file-setup-unix,squiggly-download-unpack" description="Adds squiggly to an Apache Flex SDK">
+        <delete dir="${download.dir}" />
+        <echo>Squiggly installed</echo>
+    </target>
+    
+    <target name="squiggly-download-unpack" description="Downloads squiggly and copies into the Apache Flex SDK">
+        <mkdir dir="${download.dir}"/>
+    	
+    	<get src="${mirror.url}" dest="${download.dir}/mirror.txt" />
+    	<replace file="${download.dir}/mirror.txt" token="&lt;p&gt;" />
+    	<replace file="${download.dir}/mirror.txt" token="&lt;/p&gt;" />
+    	<loadfile property="squiggly.url.server" srcFile="${download.dir}/mirror.txt" />
+    	
+    	<echo>Downloading ${squiggly.url.server}/${squiggly.url.folder}/${squiggly.url.file}</echo>
+        
+    	<antcall target="download-check-md5">
+            <param name="domain" value="${squiggly.url.server}" />
+            <param name="folder" value="${squiggly.url.folder}" />
+            <param name="file" value="${squiggly.url.file}" />
+            <param name="dest" value="${download.dir}/${squiggly.url.file}"/>
+			<param name="failmessage" value="Squiggly download failed" />
+			<param name="md5" value="${squiggly.url.md5}" />
+        </antcall>
+    	
+    	<mkdir dir="${unpack.dir}"/>
+    	<antcall target="files-unzip" />
+    	<antcall target="files-untar" />
+    </target>
+			
+    <target name="files-unzip" if="isWindows">
+    	<unzip dest="${unpack.dir}">
+    		<fileset file="${download.dir}/${squiggly.url.file}" />
+    	</unzip>
+    </target>
+	
+    <target name="files-untar" if="isMacOrLinux">
+    	<untar dest="${unpack.dir}" compression="gzip">
+    		<fileset file="${download.dir}/${squiggly.url.file}" />
+    	</untar>
+    </target>
+
+    <target name="download-check-md5" description="Downloads file, and verifies checksum.">     
+    	<tstamp />
+    	<property name="ts" value="${DSTAMP}${TSTAMP}" />
+        <get src="${domain}/${folder}/${file}?ts=${ts}" dest="${dest}" verbose="true" />
+        <antcall target="check-md5" />
+    </target>
+
+    <target name="check-md5" description="Verifies MD5 checksum, and fails if checksum doesn't match">
+        <echo>Checking ${dest} matches ${md5}</echo>
+        <checksum file="${dest}" algorithm="MD5" verifyproperty="md5.failed" property="${md5}" />
+        <fail message="${failmessage}">
+            <condition>
+                <equals arg1="${md5.failed}" arg2="false" />
+            </condition>
+        </fail>
+    </target>
+</project>