buildcraft/build.xml

117 lines
No EOL
3.9 KiB
XML

<project name="Buildcraft" basedir="../" default="main">
<!-- Properties -->
<property name="build.dir" value="build"/>
<property name="classes.dir" value="${build.dir}/classes"/>
<property name="jar.dir" value="${build.dir}/jar"/>
<property name="src.dir" value="src"/>
<property name="mcp.dir" value="${build.dir}/mcp"/>
<property name="forge.dir" value="${mcp.dir}/forge"/>
<property name="clientsrc.dir" value="${mcp.dir}/src/minecraft"/>
<property name="serversrc.dir" value="${mcp.dir}/src/minecraft_server"/>
<property name="version" value="3.2"/>
<!-- Targets -->
<target name="clean">
<delete dir="${build.dir}"/>
</target>
<target name="setup">
<unzip src="mcp.zip" dest="${mcp.dir}"/>
<unzip src="minecraftforge.zip" dest="${mcp.dir}"/>
<chmod file="${mcp.dir}/updatemd5.sh" perm="+x"/>
<chmod file="${mcp.dir}/recompile.sh" perm="+x"/>
<chmod file="${mcp.dir}/reobfuscate.sh" perm="+x"/>
<chmod file="${forge.dir}/install.sh" perm="+x"/>
<!-- Install forge -->
<exec dir="${forge.dir}" executable="cmd" osfamily="windows">
<arg line="/c install.cmd"/>
</exec>
<exec dir="${forge.dir}" executable="sh" osfamily="unix">
<arg value="install.sh" />
</exec>
<!-- Copy BC source -->
<copy todir="${clientsrc.dir}">
<fileset dir="${src.dir}/buildcraft_client">
<exclude name="**/mod_BuildCraftDevel.*"/>
</fileset>
</copy>
<copy todir="${clientsrc.dir}">
<fileset dir="${src.dir}/common">
<exclude name="**/buildcraft/devel/*"/>
</fileset>
</copy>
<copy todir="${serversrc.dir}">
<fileset dir="${src.dir}/buildcraft_server">
<exclude name="**/mod_BuildCraftDevel.*"/>
</fileset>
</copy>
<copy todir="${serversrc.dir}">
<fileset dir="${src.dir}/common">
<exclude name="**/buildcraft/devel/*"/>
</fileset>
</copy>
</target>
<target name="compile" depends="setup">
<!-- Recompile -->
<exec dir="${mcp.dir}" executable="cmd" osfamily="windows">
<arg line="/c recompile.bat"/>
</exec>
<exec dir="${mcp.dir}" executable="sh" osfamily="unix">
<arg value="recompile.sh" />
</exec>
<!-- Reobf -->
<exec dir="${mcp.dir}" executable="cmd" osfamily="windows">
<arg line="/c reobfuscate.bat"/>
</exec>
<exec dir="${mcp.dir}" executable="sh" osfamily="unix">
<arg value="reobfuscate.sh" />
</exec>
<!-- Copy BC classes -->
<copy todir="${classes.dir}/client">
<fileset dir="${mcp.dir}/reobf/minecraft"/>
</copy>
<copy todir="${classes.dir}/server">
<fileset dir="${mcp.dir}/reobf/minecraft_server"/>
</copy>
<!-- Copy resoucres -->
<copy todir="${classes.dir}/client">
<fileset dir="${src.dir}/buildcraft_resources"/>
</copy>
<copy todir="${classes.dir}/server">
<fileset dir="${src.dir}/buildcraft_resources">
<exclude name="gfx/*"/>
</fileset>
</copy>
</target>
<target name="package" depends="compile">
<jar destfile="${jar.dir}/buildcraft-client-${version}.jar" basedir="${classes.dir}/client"/>
<jar destfile="${jar.dir}/buildcraft-server-${version}.jar" basedir="${classes.dir}/server"/>
</target>
<target name="main" depends="clean,package"/>
</project>