<?xml version="1.0" encoding="utf-8"?>
<project name="build" default="prod" basedir="../">

    <description>Redis JS Build File</description>

    <target name="-load.properties" description="Set properties for this build">
		<property name="built.dir" value="${basedir}/built"/>
        <property name="src.dir" value="${basedir}/src"/>
		<property name="tool.dir" value="${src.dir}/lib"/>
		<property name="r.build.dir" value="${basedir}/builds"/>
    </target>

	<target depends="-load.properties" name="-js.hint">
		<apply executable="jshint" failonerror="true">
			<fileset
                dir="${src.dir}"
                includes="${jshint.files}"/>
        </apply>
		<echo>Finished linting.</echo>
	</target>

    <target depends="-js.hint" name="-js.r" description="Combine and minify files.">
		<exec executable="node" failonerror="true">
			<arg value="${tool.dir}/r.js" />
			<arg value="-o"/>
			<arg value="${r.build.dir}/${r.build.file}" />
        </exec>
        <echo>Finished optimizing.</echo>
    </target>

    <target name="prod"
        description="Builds project files for production use"
        depends="
            -load.properties,
            -js.hint,
			-js.r">
		<echo>Build complete.</echo>
    </target>
</project>