| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216 |
- <?xml version="1.0"?>
- <project name="PHPExcel" default="release-standard" basedir=".">
- <target name="gather">
- <if>
- <isset property="${packageVersion}"/>
- <then>
- <echo message="PHPExcel version number is ${packageVersion}" />
- </then>
- <else>
- <propertyprompt propertyName="packageVersion" defaultValue="1.0.0"
- promptText="Enter PHPExcel version number"/>
- </else>
- </if>
- <if>
- <isset property="${releaseDate}"/>
- <then>
- <echo message="Release date is ${releaseDate}" />
- </then>
- <else>
- <propertyprompt propertyName="releaseDate" defaultValue="2010-01-01"
- promptText="Enter PHPExcel release date"/>
- </else>
- </if>
- <if>
- <isset property="${documentFormat}"/>
- <then>
- <echo message="Document Format is ${documentFormat}" />
- </then>
- <else>
- <propertyprompt propertyName="documentFormat" defaultValue="doc"
- promptText="Enter Document Format"/>
- </else>
- </if>
- </target>
- <target name="prepare" depends="gather">
- <echo msg="Creating build directory: ./build"/>
- <mkdir dir="${phing.dir}/build"/>
- </target>
- <target name="build" depends="prepare">
- <echo msg="Copying source files to build directory..."/>
- <copy todir="${phing.dir}/build/Classes" overwrite="true">
- <fileset dir="${phing.dir}/../Classes">
- <include name="**/*"/>
- </fileset>
- </copy>
- <copy todir="${phing.dir}/build/Examples" overwrite="true">
- <fileset dir="${phing.dir}/../Examples">
- <include name="**/*"/>
- </fileset>
- </copy>
- <copy todir="${phing.dir}/build/Documentation" overwrite="true">
- <fileset dir="${phing.dir}/../Documentation">
- <include name="*.${documentFormat}"/>
- <include name="*.txt"/>
- </fileset>
- </copy>
- <mkdir dir="${phing.dir}/build/Documentation/API"/>
- <copy todir="${phing.dir}/build/Documentation/Examples" overwrite="true">
- <fileset dir="${phing.dir}/../Documentation/Examples">
- <include name="**/*"/>
- <exclude name="assets"/>
- </fileset>
- </copy>
- <copy file="${phing.dir}/../changelog.txt" tofile="${phing.dir}/build/changelog.txt" overwrite="true"/>
- <copy file="${phing.dir}/../license.md" tofile="${phing.dir}/build/license.txt" overwrite="true"/>
- <copy file="${phing.dir}/../install.txt" tofile="${phing.dir}/build/install.txt" overwrite="true"/>
- </target>
- <target name="versionNumber" depends="build">
- <reflexive>
- <fileset dir="${phing.dir}/build">
- <include pattern="**/*"/>
- </fileset>
- <filterchain>
- <replaceregexp>
- <regexp pattern="##VERSION##" replace="${packageVersion}"/>
- <regexp pattern="##DATE##" replace="${releaseDate}"/>
- </replaceregexp>
- </filterchain>
- </reflexive>
- <reflexive>
- <fileset dir="${phing.dir}/build">
- <include pattern="**/changelog.txt"/>
- </fileset>
- <filterchain>
- <replaceregexp>
- <regexp pattern="Fixed in develop branch for release v${packageVersion}" replace="${releaseDate} (v${packageVersion})"/>
- </replaceregexp>
- </filterchain>
- </reflexive>
- </target>
- <target name="apidocs" depends="versionNumber">
- <echo msg="Generating API documentation..."/>
- <phpdoc2 title="PHPExcel classes"
- destdir="${phing.dir}/build/Documentation/API"
- template="responsive">
- <fileset dir="${phing.dir}/build/Classes">
- <include name="**/*.php"/>
- </fileset>
- </phpdoc2>
- </target>
- <target name="release-standard" depends="apidocs">
- <mkdir dir="${phing.dir}/release"/>
- <echo msg="Creating release package (v${packageVersion} with ${documentFormat} documents)..."/>
- <zip destfile="${phing.dir}/release/PHPExcel_${packageVersion}_${documentFormat}.zip">
- <fileset dir="${phing.dir}/build">
- <include name="**/*"/>
- </fileset>
- </zip>
- <echo msg="Cleaning build directory: ./build"/>
- <delete dir="${phing.dir}/build"/>
- </target>
- <target name="release-phar" depends="versionNumber">
- <mkdir dir="${phing.dir}/release"/>
- <echo msg="Creating PHAR release package (v${packageVersion})..."/>
- <pharpackage destfile="${phing.dir}/release/PHPExcel_${packageVersion}.phar" basedir="${phing.dir}/build/Classes" compression="gzip" stub="${phing.dir}/PharStub.php">
- <fileset dir="${phing.dir}/build/Classes">
- <include name="**/**" />
- </fileset>
- <metadata>
- <element name="version" value="${packageVersion}" />
- <element name="date" value="${releaseDate}" />
- <element name="description" value="A pure PHP library for reading and writing spreadsheet files" />
- <element name="authors">
- <element name="Mark Baker">
- <element name="e-mail" value="mark@lange.demon.co.uk" />
- </element>
- </element>
- </metadata>
- </pharpackage>
- <echo msg="Cleaning build directory: ./build"/>
- <delete dir="${phing.dir}/build"/>
- </target>
- <target name="release-pear" depends="versionNumber">
- <taskdef classname="phing.tasks.ext.d51PearPkg2Task" name="d51pearpkg2"/>
- <mkdir dir="${phing.dir}/release"/>
- <echo msg="Creating PEAR release package (v${packageVersion})..."/>
- <d51pearpkg2 dir="${phing.dir}/build/Classes" baseinstalldir="PHPExcel">
- <name>PHPExcel</name>
- <summary>PHP Excel classes</summary>
- <channel>pear.pearplex.net</channel>
- <description>Project providing a set of classes for the PHP programming language, which allow you to write
- to Excel 2007 files and read from Excel 2007 files.
- </description>
- <notes>This package ONLY contains the class files, not the documentation and example code. Please refer to
- http://www.codeplex.com/PHPExcel for those files.
- </notes>
- <lead user="maartenba" name="Maarten Balliauw" email="maarten@phpexcel.net"/>
- <license uri="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL</license>
- <version release="${packageVersion}" api="${packageVersion}"/>
- <stability release="stable" api="stable"/>
- <dependencies>
- <php minimum_version="5.2.0"/>
- <pear minimum_version="1.4.0"/>
- <extension name="zip" minimum_version="1.8.0"/>
- </dependencies>
- <dirroles key="PHPExcel/Shared/PDF/fonts">data</dirroles>
- <dirroles key="PHPExcel/Shared/PDF/fonts/utils">data</dirroles>
- <dirroles key="/PHPExcel/Shared/PDF/fonts/utils">data</dirroles>
- </d51pearpkg2>
- <exec command="pear package ${phing.dir}/build/Classes/package.xml"/>
- <move file="PHPExcel-${packageVersion}.tgz" tofile="${phing.dir}/release/PHPExcel-${packageVersion}.tgz" overwrite="true"/>
- <echo msg="Cleaning build directory: ./build"/>
- <delete dir="${phing.dir}/build"/>
- </target>
- <target name="release-documentation" depends="gather">
- <mkdir dir="${phing.dir}/release"/>
- <echo msg="Creating documentation release (v${packageVersion} with ${documentFormat} documents)..."/>
- <copy todir="${phing.dir}/build" overwrite="true">
- <fileset dir="${phing.dir}/../Documentation">
- <include name="*.${documentFormat}"/>
- <include name="*.txt"/>
- </fileset>
- </copy>
- <copy todir="${phing.dir}/build/Examples" overwrite="true">
- <fileset dir="${phing.dir}/../Documentation/Examples">
- <include name="**/*"/>
- </fileset>
- </copy>
- <echo msg="Creating documentation release package (v${packageVersion} with ${documentFormat} documents)..."/>
- <zip destfile="${phing.dir}/release/PHPExcel_${packageVersion}-documentation_${documentFormat}.zip">
- <fileset dir="${phing.dir}/build">
- <include name="**/*"/>
- </fileset>
- </zip>
- <echo msg="Cleaning build directory: ./build"/>
- <delete dir="${phing.dir}/build"/>
- </target>
- </project>
|