blob: a86d7476b618649a281b24c9fe01151d63bd0538 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<project name="predictionio" default="package">
<property name="dir.output" value="${project.basedir}/build/artifacts" />
<target name="clean">
<delete dir="${dir.output}" />
</target>
<target name="prepare" depends="clean">
<mkdir dir="${dir.output}" />
</target>
<target name="install-dependencies" depends="prepare">
<if>
<available file="composer.phar" />
<then>
<echo>Composer is installed</echo>
</then>
<else>
<echo message="Installing composer" />
<exec command="curl -s http://getcomposer.org/installer | php" passthru="true" />
<exec command="php composer.phar install --dev" passthru="true" />
</else>
</if>
</target>
<target name="clean-dependencies">
<delete dir="${project.basedir}/vendor"/>
<delete file="composer.lock" />
</target>
<target name="update-dependencies">
<exec command="php composer.phar update --dev" passthru="true" />
</target>
<target name="package" depends="install-dependencies" description="Create a PHAR with an autoloader">
<pharpackage
destfile="${dir.output}/predictionio.phar"
basedir="."
stub="phar-stub.php">
<fileset dir=".">
<include name="src/**/*.php" />
<include name="src/**/*.json" />
<include name="vendor/symfony/class-loader/Symfony/Component/ClassLoader/UniversalClassLoader.php" />
<include name="vendor/symfony/event-dispatcher/**/*.php" />
<include name="vendor/guzzle/guzzle/src/Guzzle/**/*.php" />
</fileset>
<metadata>
<element name="author" value="PredictionIO" />
</metadata>
</pharpackage>
<exec command="apigen -s src -d docs --title 'PredictionIO API PHP Client'" passthru="true" />
</target>
</project>