158 lines
4.8 KiB
XML
158 lines
4.8 KiB
XML
<?xml version="1.0"?>
|
|
<!--
|
|
Builds API documentation and PEAR compliant packages.
|
|
|
|
Phing 2.2.0 (http://phing.info) or newer recommended.
|
|
|
|
@version $Id$
|
|
@author Jukka Hassinen <jukka.hassinen@brainalliance.com>
|
|
-->
|
|
<project name="Doctrine" basedir="." default="main">
|
|
|
|
<property name="base.name" value="Doctrine"/>
|
|
<property name="project.base.dir" value="../.."/>
|
|
<property name="build.base.dir" value="${project.base.dir}/build"/>
|
|
<property name="build.dest.dir" value="${build.base.dir}/tobuild"/>
|
|
|
|
<fileset dir="${project.base.dir}/lib" id="classes">
|
|
<include name="**/**"/>
|
|
<exclude name="**/.svn**"/>
|
|
</fileset>
|
|
|
|
<fileset dir="${project.base.dir}/manual" id="docs">
|
|
<include name="**/**"/>
|
|
<exclude name="**/.svn**"/>
|
|
</fileset>
|
|
|
|
<fileset dir="${project.base.dir}/tests" id="test">
|
|
<include name="**/**"/>
|
|
<exclude name="**/.svn**"/>
|
|
<exclude name="**/.svn*/*.txt"/>
|
|
<exclude name=".svn/**"/>
|
|
<exclude name=".svn**"/>
|
|
</fileset>
|
|
|
|
<target name="main">
|
|
<phingcall target="build"/>
|
|
<phingcall target="generate-docs"/>
|
|
<!-- <phingcall target="pear-package"/> -->
|
|
<!-- <phingcall target="compress"/> -->
|
|
</target>
|
|
|
|
<target name="build">
|
|
<echo>-----------------------------</echo>
|
|
<echo>| Creating directory layout |</echo>
|
|
<echo>-----------------------------</echo>
|
|
|
|
<delete dir="${build.base.dir}"/>
|
|
|
|
<copy todir="${build.dest.dir}/lib">
|
|
<fileset refid="classes"/>
|
|
</copy>
|
|
|
|
<copy todir="${build.dest.dir}/docs">
|
|
<fileset refid="docs"/>
|
|
</copy>
|
|
|
|
<copy todir="${build.dest.dir}/test">
|
|
<fileset refid="test"/>
|
|
</copy>
|
|
|
|
|
|
<svnlastrevision svnpath="svn" workingcopy="${project.base.dir}" propertyname="svn.lastrevision"/>
|
|
<property name="version" value="0.0.${svn.lastrevision}"/>
|
|
|
|
<fileset dir="${build.dest.dir}" id="php-files">
|
|
<include name="**/**.php"/>
|
|
<exclude name="**/.svn**"/>
|
|
</fileset>
|
|
|
|
<reflexive>
|
|
<fileset refid="php-files" />
|
|
<filterchain>
|
|
<replaceregexp>
|
|
<regexp pattern="@version \$(.*)\$" replace="@version \$$1\$ Package ver: ${version}"/>
|
|
</replaceregexp>
|
|
</filterchain>
|
|
<filterchain>
|
|
<tabtospaces tablength="4" />
|
|
</filterchain>
|
|
</reflexive>
|
|
|
|
</target>
|
|
|
|
<target name="generate-docs">
|
|
<!--
|
|
Generates the API documentation using Doxygen and PHPDoc
|
|
Doxygen is required in the path.
|
|
-->
|
|
|
|
<exec command="doxygen" dir="."/>
|
|
<!-- <exec command="make pdf" dir="${build.src.dir}/docs/latex"/> -->
|
|
<phpdoc title="Doctrine Documentation" destdir="${build.dest.dir}/docs/API/phpdoc/html"
|
|
sourcepath="${project.base.dir}/lib" output="HTML:Smarty:PHP"/>
|
|
</target>
|
|
|
|
<target name="pear-package">
|
|
|
|
<echo>-----------------------------</echo>
|
|
<echo>| Creating PEAR package.xml |</echo>
|
|
<echo>-----------------------------</echo>
|
|
<echo></echo>
|
|
|
|
<svnlastrevision svnpath="svn" workingcopy="${project.base.dir}" propertyname="svn.lastrevision"/>
|
|
<property name="version" value="0.0.${svn.lastrevision}"/>
|
|
|
|
<pearpkg name="${base.name}" dir="${build.dest.dir}" destFile="${build.dest.dir}/package.xml">
|
|
|
|
<fileset refid="classes"/>
|
|
<fileset refid="docs"/>
|
|
<fileset refid="test"/>
|
|
|
|
<option name="notes">*</option>
|
|
<option name="description">ORM</option>
|
|
<option name="summary">ORM</option>
|
|
<option name="version" value="${version}"/>
|
|
<option name="state" value="stable"/>
|
|
<option name="license" value="LGPL"/>
|
|
|
|
<mapping name="maintainers">
|
|
<element>
|
|
<element key="handle" value="jhassine"/>
|
|
<element key="name" value="Jukka Hassinen"/>
|
|
<element key="email" value="Jukka.Hassinen@BrainAlliance.com"/>
|
|
<element key="role" value="lead"/>
|
|
</element>
|
|
</mapping>
|
|
|
|
<mapping name="deps">
|
|
<element>
|
|
<element key="type" value="php"/>
|
|
<element key="version" value="5.1.0"/>
|
|
<element key="rel" value="ge"/>
|
|
</element>
|
|
</mapping>
|
|
</pearpkg>
|
|
</target>
|
|
|
|
<target name="compress">
|
|
<echo>-----------------------------</echo>
|
|
<echo>| Creating tar.gz package |</echo>
|
|
<echo>-----------------------------</echo>
|
|
|
|
<svnlastrevision svnpath="svn" workingcopy="." propertyname="svn.lastrevision"/>
|
|
<property name="version" value="0.0.${svn.lastrevision}"/>
|
|
|
|
<property name="gztarfile" value="${build.base.dir}/${base.name}-${version}-pear.tar.gz"/>
|
|
<property name="bz2tarfile" value="${build.base.dir}/${base.name}-${version}-pear.tar.bz2"/>
|
|
<property name="zipfile" value="${build.base.dir}/${base.name}-${version}-pear.zip"/>
|
|
|
|
<delete file="${gztarfile}"/>
|
|
<delete file="${bz2tarfile}"/>
|
|
<delete file="${zipfile}"/>
|
|
<tar destFile="${gztarfile}" basedir="${build.dest.dir}" compression="gzip"/>
|
|
<tar destFile="${bz2tarfile}" basedir="${build.dest.dir}" compression="bzip2"/>
|
|
<zip destfile="${zipfile}" basedir="${build.dest.dir}"/>
|
|
</target>
|
|
|
|
</project> |