1+ <?xml version =" 1.0" encoding =" UTF-8" ?>
2+ <project name =" TurtleMod" basedir =" ." default =" all" >
3+ <property environment =" env" />
4+ <!-- Properties -->
5+ <property name =" build.dir" value =" build" />
6+ <property name =" release.dir" value =" release" />
7+ <property name =" src.dir" value =" common" />
8+ <property name =" resource.dir" value =" TurtleMod_resources" />
9+
10+ <property name =" mcp.dir" value =" ../../forge/1.6.2/mcp/" />
11+ <property name =" mcpsrc.dir" value =" ${ mcp.dir } /src" />
12+
13+ <property name =" mc.version" value =" 1.6.2" />
14+ <property name =" forge.version" value =" 7.8.0.703" />
15+ <property name =" project.version" value =" Alpha 4.0" />
16+
17+ <property name =" python" location =" ${ mcp.dir } /runtime/bin/python/python_mcp.exe" />
18+ <!-- Targets -->
19+
20+ <target name =" Setup" >
21+ <echo message =" Copying sources to required locations" />
22+ <delete dir =" ${ mcpsrc.dir } /minecraft" />
23+ <copy todir =" ${ mcpsrc.dir } /minecraft" verbose =" true" >
24+ <fileset dir =" ${ mcpsrc.dir } /clean/minecraft" />
25+ <fileset dir =" ${ src.dir } " />
26+ </copy >
27+ </target >
28+
29+ <target name =" init" description =" Initialize build environment" >
30+ <echo message =" Cleaning old build and dist, MCP reobf directories" />
31+ <delete dir =" ${ build.dir } " />
32+ <delete dir =" ${ release.dir } " />
33+ <delete dir =" ${ mcp.dir } /reobf" />
34+
35+ <echo message =" Creating build and dist dirs" />
36+ <mkdir dir =" ${ build.dir } " />
37+ <mkdir dir =" ${ release.dir } " />
38+ </target >
39+
40+ <target name =" recompile" description =" MCP recompile" >
41+ <exec executable =" ${ python } " dir =" ${ mcp.dir } " >
42+ <arg value =" runtime/recompile.py" />
43+ <arg value =" %*" />
44+ </exec >
45+ </target >
46+
47+ <target name =" reobfuscate" description =" MCP reobfuscate" >
48+ <exec executable =" ${ python } " dir =" ${ mcp.dir } " >
49+ <arg value =" runtime/reobfuscate.py" />
50+ <arg value =" %*" />
51+ </exec >
52+ </target >
53+
54+ <target name =" stage" description =" Stage resources into build directory" >
55+ <copy todir =" ${ build.dir } " >
56+ <fileset dir =" ${ mcp.dir } /reobf/minecraft" excludes =" .svn/**, *.txt" />
57+ <fileset dir =" ${ resource.dir } " excludes =" .svn/**" />
58+ <fileset file =" ${ src.dir } /mcmod.info" />
59+ <fileset file =" ${ src.dir } /pack.mcmeta" />
60+ </copy >
61+ </target >
62+
63+ <target name =" all" description =" Perform all tasks for a build" depends =" Setup, init, recompile, reobfuscate, stage, jar" >
64+ <echo message =" MCP Ant Build Completed!" />
65+ </target >
66+
67+ <target name =" jar" description =" .jar the project's dist output" >
68+ <mkdir dir =" ${ release.dir } " />
69+ <jar destfile =" ${ release.dir } /TurtleMod.jar" duplicate =" preserve" index =" true" manifestencoding =" UTF-8" >
70+ <manifest >
71+ <attribute name =" Implementation-Vendor" value =" Ry_dog101/TheGeekyGuy101 and DeathJusty" />
72+ <attribute name =" Implementation-Title" value =" ${ ant.project.name } " />
73+ <attribute name =" Implementation-Version" value =" ${ project.version } " />
74+ </manifest >
75+ <fileset dir =" ${ build.dir } " />
76+ </jar >
77+ <mkdir dir =" ${ build.dir } /src" />
78+ <copy todir =" ${ build.dir } /src" >
79+ <fileset dir =" ${ src.dir } " />
80+ <fileset dir =" ${ resource.dir } " />
81+ </copy >
82+ <jar destfile =" ${ release.dir } /TurtleMod-src.jar" duplicate =" preserve" index =" true" manifestencoding =" UTF-8" >
83+ <manifest >
84+ <attribute name =" Implementation-Vendor" value =" Ry_dog101/TheGeekyGuy101 and DeathJusty" />
85+ <attribute name =" Implementation-Title" value =" ${ ant.project.name } " />
86+ <attribute name =" Implementation-Version" value =" ${ project.version } " />
87+ </manifest >
88+ <fileset dir =" ${ build.dir } /src" />
89+ </jar >
90+ </target >
91+
92+ </project >
0 commit comments