| <?xml version="1.0" encoding="utf-8" ?> |
| <!-- |
| |
| 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="installers" basedir="." default="help"> |
| <description>Installers, .zip and .tar.gz packages</description> |
| <property name="Etch.basedir" location="${basedir}/.." /> |
| <import file="${Etch.basedir}/build-support/etch.includes.xml" /> |
| |
| <!-- Static properties of the sub-project --> |
| <property name="proj" location="${Etch.basedir}/installers" /> |
| <property name="target" location="${proj}/target" /> |
| <property name="packageName" value="${Etch.longname}" /> |
| |
| <!-- INIT TARGET --> |
| <!-- Modify this target to define project specific properties that can only be set at runtime --> |
| <target name="do-init"> |
| <delete dir="${target}" failonerror="false" quiet="true" /> |
| <mkdir dir="${Etch.dist}" /> |
| <mkdir dir="${target}" /> |
| </target> |
| |
| <!-- CLEAN TARGET --> |
| <target name="do-clean"> |
| <delete dir="${target}" /> |
| </target> |
| |
| <!-- BUILD TARGET --> |
| |
| <target name="do-txts"> |
| <copy file="${Etch.basedir}/LICENSE.txt" todir="${Etch.dist}" /> |
| <copy file="${Etch.basedir}/ChangeLog.txt" todir="${Etch.dist}" /> |
| <copy file="${Etch.basedir}/dist-README.txt" tofile="${Etch.dist}/README.txt" /> |
| <copy file="${Etch.basedir}/DISCLAIMER.txt" tofile="${Etch.dist}/DISCLAIMER.txt" /> |
| <copy file="${Etch.basedir}/RELEASE_NOTES.txt" tofile="${Etch.dist}/RELEASE_NOTES.txt" /> |
| <copy file="${Etch.basedir}/NOTICE.txt" tofile="${Etch.dist}/NOTICE.txt" /> |
| <copy file="${Etch.basedir}/NOTICE_THIRD_PARTY.txt" tofile="${Etch.dist}/NOTICE_THIRD_PARTY.txt" /> |
| <copy file="${Etch.basedir}/LICENSE_THIRD_PARTY.txt" tofile="${Etch.dist}/LICENSE_THIRD_PARTY.txt" /> |
| <copy file="${proj}/etch-maven-install.bat" todir="${Etch.dist}/bin" > |
| <filterset refid="Etch.buildTokens" /> |
| </copy> |
| </target> |
| |
| <target name="do-zips" > |
| <!-- create zipped binary distribution --> |
| <zip destfile="${target}/${packageName}-${Etch.property.osVersion}-${Etch.property.platformVersion}-bin.zip" > |
| <zipfileset dir="${Etch.dist}" prefix="${packageName}/" > |
| <exclude name="bin/etch" /> |
| </zipfileset> |
| <zipfileset dir="${Etch.dist}" prefix="${packageName}/" filemode="755" > |
| <include name="bin/etch" /> |
| </zipfileset> |
| </zip> |
| |
| <!-- create tar-gzip binary distribution --> |
| <tar destfile="${target}/${packageName}-${Etch.property.osVersion}-${Etch.property.platformVersion}-bin.tar.gz" compression="gzip" > |
| <tarfileset dir="${Etch.dist}" prefix="${packageName}/"> |
| <exclude name="bin/etch" /> |
| </tarfileset> |
| <tarfileset dir="${Etch.dist}" prefix="${packageName}/" filemode="755" > |
| <include name="bin/etch" /> |
| </tarfileset> |
| </tar> |
| </target> |
| |
| <target name="do-nsis" if="NSIS.enabled" > |
| <makensis destfile="${target}/${packageName}-${Etch.property.osVersion}-${Etch.property.platformVersion}-setup.exe" root="${Etch.basedir}" dir="installers" script="etch-full-installer" /> |
| </target> |
| |
| <target name="do-build" depends="do-txts,do-nsis,do-zips" /> |
| |
| <!-- TEST TARGET --> |
| <target name="do-test"> |
| <available property="build.tests.fail" file="${Etch.runtime.tests.fail}"/> |
| </target> |
| |
| <!-- POSTBUILD TARGET --> |
| <target name="do-postbuild"> |
| <mkdir dir="${Etch.basedir}/target/Installers" /> |
| <copy todir="${Etch.basedir}/target/Installers/packages" > |
| <fileset dir="${target}"> |
| <include name="**/*.zip" /> |
| <include name="**/*.exe" /> |
| <include name="**/*.tar.gz" /> |
| </fileset> |
| </copy> |
| </target> |
| |
| <target name="do-publish" if="build.tests.fail"> |
| <!-- Set flag file if any tests failed --> |
| <touch file="${Etch.runtime.tests.fail}"/> |
| </target> |
| |
| </project> |