Skip to content

Instantly share code, notes, and snippets.

@Flow86
Created September 8, 2012 11:25
Show Gist options
  • Save Flow86/3673789 to your computer and use it in GitHub Desktop.
Save Flow86/3673789 to your computer and use it in GitHub Desktop.
Fix problem with build
diff --git a/antlib.xml b/antlib.xml
new file mode 100644
index 0000000..72aacb8
--- /dev/null
+++ b/antlib.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<antlib>
+ <!-- typedef the tasks that work for ant less than 1.6 -->
+ <taskdef resource="net/sf/antcontrib/antcontrib.properties">
+ <classpath>
+ <pathelement location="/usr/share/java/ant-contrib.jar"/>
+ </classpath>
+ </taskdef>
+
+ <taskdef
+ name="for"
+ classname="net.sf.antcontrib.logic.ForTask"
+ onerror="ignore"/>
+
+ <typedef
+ name="httpState"
+ classname="net.sf.antcontrib.net.httpclient.HttpStateType"
+ onerror="ignore" />
+ <typedef
+ name="httpClient"
+ classname="net.sf.antcontrib.net.httpclient.HttpClientType"
+ onerror="ignore" />
+ <taskdef name="getCookie"
+ classname="net.sf.antcontrib.net.httpclient.GetCookieTask"
+ onerror="ignore" />
+ <taskdef name="addCookie"
+ classname="net.sf.antcontrib.net.httpclient.AddCookieTask"
+ onerror="ignore" />
+ <taskdef name="clearCookies"
+ classname="net.sf.antcontrib.net.httpclient.ClearCookiesTask"
+ onerror="ignore" />
+ <taskdef name="addCredentials"
+ classname="net.sf.antcontrib.net.httpclient.AddCredentialsTask"
+ onerror="ignore" />
+ <taskdef name="clearCredentials"
+ classname="net.sf.antcontrib.net.httpclient.ClearCredentialsTask"
+ onerror="ignore" />
+ <taskdef name="purgeExpiredCookies"
+ classname="net.sf.antcontrib.net.httpclient.PurgeExpiredCookiesTask"
+ onerror="ignore" />
+ <taskdef name="postMethod"
+ classname="net.sf.antcontrib.net.httpclient.PostMethodTask"
+ onerror="ignore" />
+ <taskdef name="getMethod"
+ classname="net.sf.antcontrib.net.httpclient.GetMethodTask"
+ onerror="ignore">
+ <classpath>
+ <pathelement location="/usr/share/java/ant-contrib.jar"/>
+ <pathelement location="/usr/share/java/commons-httpclient.jar"/>
+ </classpath>
+ </taskdef>
+ <taskdef name="headMethod"
+ classname="net.sf.antcontrib.net.httpclient.HeadMethodTask"
+ onerror="ignore" />
+ <taskdef name="importurl"
+ classname="net.sf.antcontrib.net.URLImportTask"
+ onerror="ignore"/>
+</antlib>
+
diff --git a/build.xml b/build.xml
index 3096d5c..2500cec 100644
--- a/build.xml
+++ b/build.xml
@@ -1,60 +1,60 @@
<project name="Buildcraft" basedir="../" default="main">
-
+ <typedef file="src/antlib.xml"/>
<!-- Properties -->
-
+
<property name="build.dir" value="build"/>
<property name="src.dir" value="src"/>
-
+
<property name="download.dir" value="download"/>
<property name="files.minecraft.dir" value="jars"/>
-
+
<property name="classes.dir" value="${build.dir}/classes"/>
<property name="jar.dir" value="${build.dir}/dist"/>
-
+
<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="mcp.version" value="72"/>
<property name="forge.version" value="4.0.0.232"/>
<property name="bc.version" value="3.1.8"/>
<property name="bc.version.full" value="${bc.version}.${BUILD_NUMBER}"/>
-
+
<echo message="Starting build for ${bc.version.full}"/>
-
+
<!-- Targets -->
-
+
<target name="clean">
<delete dir="${build.dir}"/>
</target>
-
+
<target name="setup">
-
+
<mkdir dir="${download.dir}"/>
-
+
<get src="http://mcp.ocean-labs.de/files/mcp${mcp.version}.zip" dest="${download.dir}" usetimestamp="True"/>
- <getMethod url="http://files.minecraftforge.net/minecraftforge-src-${forge.version}.zip"
- dest="${download.dir}" usetimestamp="True">
+ <getMethod url="http://files.minecraftforge.net/minecraftforge-src-${forge.version}.zip"
+ responseDataFile="${download.dir}/minecraftforge-src-${forge.version}.zip">
<header name="User-Agent" value="Ant-${ant.version}/${ant.java.version}" />
</getMethod>
-
+
<unzip dest="${mcp.dir}">
<fileset dir="${download.dir}">
<include name="mcp*.zip"/>
</fileset>
</unzip>
-
+
<unzip dest="${mcp.dir}">
<fileset dir="${download.dir}">
<include name="minecraftforge-src-*.zip"/>
</fileset>
</unzip>
-
+
<copy todir="${mcp.dir}/jars">
<fileset dir="${files.minecraft.dir}"/>
</copy>
-
+
<chmod file="${mcp.dir}/updatemd5.sh" perm="+x"/>
<chmod file="${mcp.dir}/recompile.sh" perm="+x"/>
<chmod file="${mcp.dir}/reobfuscate.sh" perm="+x"/>
@@ -63,16 +63,16 @@
<!-- if your building on OSX these 2 should be executable -->
<chmod file="${mcp.dir}/runtime/bin/astyle-osx" perm="+x" />
<chmod file="${mcp.dir}/runtime/bin/jad-osx" 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}/common">
@@ -82,47 +82,47 @@
<filter token="VERSION" value="${bc.version}" />
</filterset>
</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 resoucres -->
<copy todir="${classes.dir}/client">
<fileset dir="${src.dir}/buildcraft_resources"/>
</copy>
-
+
</target>
-
+
<target name="package" depends="compile">
-
+
<jar destfile="${jar.dir}/buildcraft-A-${bc.version.full}.jar" basedir="${classes.dir}/client"/>
-
+
</target>
-
+
<target name="main" depends="clean,package"/>
</project>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment