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="<p>" />
+ <replace file="${download.dir}/mirror.txt" token="</p>" />
+ <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>