Commit e4b8825d9440a2018c3d487fa7866e381e63970a
1 parent
d3ec7c49
adding LiteLoaderToSrg ant scripts and jenkins configurations
Showing
4 changed files
with
186 additions
and
8 deletions
ant/build_liteloader.xml
| @@ -39,17 +39,27 @@ | @@ -39,17 +39,27 @@ | ||
| 39 | <target name="setup_development"> | 39 | <target name="setup_development"> |
| 40 | <property name="skipremoval" value="DEV" /> | 40 | <property name="skipremoval" value="DEV" /> |
| 41 | <property name="md5.outfile" value="${md5.dir}/client_${outmd5set}.md5" /> | 41 | <property name="md5.outfile" value="${md5.dir}/client_${outmd5set}.md5" /> |
| 42 | + <property name="artefact.name" value="${ant.project.name}-${mcversion}" /> | ||
| 42 | </target> | 43 | </target> |
| 43 | 44 | ||
| 44 | <target name="setup_production"> | 45 | <target name="setup_production"> |
| 45 | <property name="skipremoval" value="" /> | 46 | <property name="skipremoval" value="" /> |
| 46 | <property name="md5.outfile" value="${md5.dir}/client_${outmd5set}_production.md5" /> | 47 | <property name="md5.outfile" value="${md5.dir}/client_${outmd5set}_production.md5" /> |
| 48 | + <property name="artefact.name" value="${ant.project.name}-${mcversion}" /> | ||
| 49 | + </target> | ||
| 50 | + | ||
| 51 | + <target name="setup_jenkins"> | ||
| 52 | + <property name="skipremoval" value="" /> | ||
| 53 | + <property name="md5.outfile" value="${md5.dir}/client_${outmd5set}_production.md5" /> | ||
| 54 | + <property name="artefact.name" value="${ant.project.name}-${mcversion}-SNAPSHOT" /> | ||
| 47 | </target> | 55 | </target> |
| 48 | 56 | ||
| 49 | <!-- Main target --> | 57 | <!-- Main target --> |
| 50 | <target name="development" depends="setup_development, findmcp, setdirsold, setdirsnew, build" description="Entry point for MCP and upstream builds" /> | 58 | <target name="development" depends="setup_development, findmcp, setdirsold, setdirsnew, build" description="Entry point for MCP and upstream builds" /> |
| 51 | 59 | ||
| 52 | - <target name="production" depends="setup_production, findmcp, setdirsold, setdirsnew, build" description="Entry point for production builds" /> | 60 | + <target name="production" depends="setup_production, findmcp, setdirsold, setdirsnew, build, mcpjar" description="Entry point for production builds" /> |
| 61 | + | ||
| 62 | + <target name="jenkins" depends="setup_jenkins, findmcp, setdirsold, setdirsnew, build, mcpjar" description="Entry point for CI builds" /> | ||
| 53 | 63 | ||
| 54 | <target name="setdirsnew" description="Set the MCP source directories for the new layout" unless="mcpsrc.exists"> | 64 | <target name="setdirsnew" description="Set the MCP source directories for the new layout" unless="mcpsrc.exists"> |
| 55 | <echo level="info" message="Setting MCP source directories for NEW configuration" /> | 65 | <echo level="info" message="Setting MCP source directories for NEW configuration" /> |
| @@ -239,7 +249,7 @@ | @@ -239,7 +249,7 @@ | ||
| 239 | 249 | ||
| 240 | <mkdir dir="${dist.dir}" /> | 250 | <mkdir dir="${dist.dir}" /> |
| 241 | 251 | ||
| 242 | - <jar destfile="${dist.dir}/${ant.project.name}-${mcversion}.${filetype}" duplicate="preserve" index="true" manifestencoding="UTF-8"> | 252 | + <jar destfile="${dist.dir}/${artefact.name}.${filetype}" duplicate="preserve" index="true" manifestencoding="UTF-8"> |
| 243 | <manifest> | 253 | <manifest> |
| 244 | <attribute name="Built-By" value="MCP (http://mcp.ocean-labs.de)" /> | 254 | <attribute name="Built-By" value="MCP (http://mcp.ocean-labs.de)" /> |
| 245 | <attribute name="Implementation-Vendor" value="${author}" /> | 255 | <attribute name="Implementation-Vendor" value="${author}" /> |
| @@ -259,10 +269,10 @@ | @@ -259,10 +269,10 @@ | ||
| 259 | 269 | ||
| 260 | <mkdir dir="${dist.dir}" /> | 270 | <mkdir dir="${dist.dir}" /> |
| 261 | 271 | ||
| 262 | - <delete file="${dist.dir}/${ant.project.name}-${version}-mcpnames.${filetype}" /> | ||
| 263 | - <delete file="${dist.dir}/${ant.project.name}-${version}-mcpnames-sources.${filetype}" /> | 272 | + <delete file="${dist.dir}/${artefact.name}-mcpnames.${filetype}" /> |
| 273 | + <delete file="${dist.dir}/${artefact.name}-mcpnames-sources.${filetype}" /> | ||
| 264 | 274 | ||
| 265 | - <jar destfile="${dist.dir}/${ant.project.name}-${version}-mcpnames.${filetype}" duplicate="preserve" index="true" manifestencoding="UTF-8"> | 275 | + <jar destfile="${dist.dir}/${artefact.name}-mcpnames.${filetype}" duplicate="preserve" index="true" manifestencoding="UTF-8"> |
| 266 | <manifest> | 276 | <manifest> |
| 267 | <attribute name="Built-By" value="MCP (http://mcp.ocean-labs.de)" /> | 277 | <attribute name="Built-By" value="MCP (http://mcp.ocean-labs.de)" /> |
| 268 | <attribute name="Implementation-Vendor" value="${author}" /> | 278 | <attribute name="Implementation-Vendor" value="${author}" /> |
| @@ -275,7 +285,7 @@ | @@ -275,7 +285,7 @@ | ||
| 275 | </manifest> | 285 | </manifest> |
| 276 | <fileset dir="${eclipse}/LiteLoader/bin" /> | 286 | <fileset dir="${eclipse}/LiteLoader/bin" /> |
| 277 | </jar> | 287 | </jar> |
| 278 | - <jar destfile="${dist.dir}/${ant.project.name}-${version}-mcpnames-sources.${filetype}" duplicate="preserve" index="false" filesetmanifest="skip"> | 288 | + <jar destfile="${dist.dir}/${artefact.name}-mcpnames-sources.${filetype}" duplicate="preserve" index="false" filesetmanifest="skip"> |
| 279 | <fileset dir="${eclipse}/LiteLoader/java/common" /> | 289 | <fileset dir="${eclipse}/LiteLoader/java/common" /> |
| 280 | <fileset dir="${eclipse}/LiteLoader/java/client" /> | 290 | <fileset dir="${eclipse}/LiteLoader/java/client" /> |
| 281 | <fileset dir="${eclipse}/LiteLoader/debug" /> | 291 | <fileset dir="${eclipse}/LiteLoader/debug" /> |
| @@ -287,7 +297,7 @@ | @@ -287,7 +297,7 @@ | ||
| 287 | 297 | ||
| 288 | <target name="deploy" depends="production" description="Deploy artifact to local minecraft installation in APPDATA"> | 298 | <target name="deploy" depends="production" description="Deploy artifact to local minecraft installation in APPDATA"> |
| 289 | <mkdir dir="${env.APPDATA}/.minecraft/libraries/com/mumfrey/liteloader/${mcversion}"/> | 299 | <mkdir dir="${env.APPDATA}/.minecraft/libraries/com/mumfrey/liteloader/${mcversion}"/> |
| 290 | - <copy todir="${env.APPDATA}/.minecraft/libraries/com/mumfrey/liteloader/${mcversion}" file="${dist.dir}/${ant.project.name}-${mcversion}.${filetype}" failonerror="false" overwrite="true" /> | ||
| 291 | - <copy todir="${eclipse}/LiteLoaderInstaller/src/main/resources" file="${dist.dir}/${ant.project.name}-${mcversion}.${filetype}" failonerror="false" overwrite="true" /> | 300 | + <copy todir="${env.APPDATA}/.minecraft/libraries/com/mumfrey/liteloader/${mcversion}" file="${dist.dir}/${artefact.name}.${filetype}" failonerror="false" overwrite="true" /> |
| 301 | + <copy todir="${eclipse}/LiteLoaderInstaller/src/main/resources" file="${dist.dir}/${artefact.name}.${filetype}" failonerror="false" overwrite="true" /> | ||
| 292 | </target> | 302 | </target> |
| 293 | </project> | 303 | </project> |
| 294 | \ No newline at end of file | 304 | \ No newline at end of file |
ant/build_srgjar.xml
0 → 100644
| 1 | +<?xml version="1.0" encoding="ISO-8859-1"?> | ||
| 2 | +<project name="liteloadertosrg" basedir="." default="build" xmlns:ivy="antlib:org.apache.ivy.ant"> | ||
| 3 | + | ||
| 4 | + <property name="project.name" value="liteloader" /> | ||
| 5 | + <property name="version" value="1.8" /> | ||
| 6 | + <property name="author" value="Mumfrey" /> | ||
| 7 | + | ||
| 8 | + <property name="mcp.dir" location="../../.." /> | ||
| 9 | + <property name="mcp.temp.dir" location="${mcp.dir}/temp" /> | ||
| 10 | + <property name="minecraft.src.dir" location="${mcp.dir}/src/minecraft" /> | ||
| 11 | + <property name="lib.dir" location="./lib" /> | ||
| 12 | + <property name="temp.dir" location="./temp" /> | ||
| 13 | + <property name="out.dir" location="${temp.dir}/out" /> | ||
| 14 | + <property name="dist.dir" location="${mcp.dir}/build/dist" /> | ||
| 15 | + <property name="src.dir" location="${temp.dir}/src" /> | ||
| 16 | + <property name="map.file" location="${temp.dir}/range.map" /> | ||
| 17 | + <property name="insrg.file" location="${mcp.temp.dir}/client_ro_srg.srg" /> | ||
| 18 | + <property name="outsrg.file" location="${temp.dir}/remap.srg" /> | ||
| 19 | + <property name="liteloader.src.base" location="../java" /> | ||
| 20 | + | ||
| 21 | + <property name="python_windows" location="${mcp.dir}/runtime/bin/python/python_mcp.exe" /> | ||
| 22 | + <property name="python_linux" location="/usr/bin/python" /> | ||
| 23 | + | ||
| 24 | + <path id="class.path"> | ||
| 25 | + <fileset dir="${lib.dir}"> | ||
| 26 | + <include name="**/*.jar" /> | ||
| 27 | + </fileset> | ||
| 28 | + </path> | ||
| 29 | + | ||
| 30 | + <target name="build"> | ||
| 31 | + <property name="artefact" location="${dist.dir}/${project.name}-${version}-srgnames-sources.jar" /> | ||
| 32 | + <ivy:configure file="ivysettings.xml" /> | ||
| 33 | + <antcall target="jar" /> | ||
| 34 | + </target> | ||
| 35 | + | ||
| 36 | + <target name="jenkins"> | ||
| 37 | + <property name="artefact" location="${dist.dir}/${project.name}-${version}-SNAPSHOT-srgnames-sources.jar" /> | ||
| 38 | + <ivy:configure file="ivysettings.xml" /> | ||
| 39 | + <antcall target="jar" /> | ||
| 40 | + </target> | ||
| 41 | + | ||
| 42 | + <path id="classpath"> | ||
| 43 | + <fileset dir="${ivy.lib.dir}"> | ||
| 44 | + <include name="**/*.jar"/> | ||
| 45 | + </fileset> | ||
| 46 | + </path> | ||
| 47 | + | ||
| 48 | + <target name="clean"> | ||
| 49 | + <echo message="Cleaning working directories..." /> | ||
| 50 | + | ||
| 51 | + <delete dir="${temp.dir}" failonerror="false" /> | ||
| 52 | + | ||
| 53 | + <mkdir dir="${src.dir}"/> | ||
| 54 | + <mkdir dir="${out.dir}"/> | ||
| 55 | + <mkdir dir="${temp.dir}"/> | ||
| 56 | + </target> | ||
| 57 | + | ||
| 58 | + <target name="init" depends="clean"> | ||
| 59 | + <echo message="Aggregating sources..." /> | ||
| 60 | + | ||
| 61 | + <copy todir="${src.dir}" overwrite="true"> | ||
| 62 | + <fileset dir="${minecraft.src.dir}"> | ||
| 63 | + <exclude name="*.java" /> | ||
| 64 | + </fileset> | ||
| 65 | + <fileset dir="${liteloader.src.base}/common"> | ||
| 66 | + <exclude name="**/Jump.java" /> | ||
| 67 | + </fileset> | ||
| 68 | + <fileset dir="${liteloader.src.base}/client" /> | ||
| 69 | + </copy> | ||
| 70 | + | ||
| 71 | + <echo message="Fetching dependencies..." /> | ||
| 72 | + </target> | ||
| 73 | + | ||
| 74 | + <target name="reobfSrg" depends="init"> | ||
| 75 | + <echo message="Running reobf to generate srgs..." /> | ||
| 76 | + | ||
| 77 | + <exec executable="${python_windows}" dir="${mcp.dir}" osfamily="windows"> | ||
| 78 | + <arg value="runtime/reobfuscate.py" /> | ||
| 79 | + <arg value="--srgnames" /> | ||
| 80 | + <arg value="--client" /> | ||
| 81 | + </exec> | ||
| 82 | + | ||
| 83 | + <exec executable="${python_linux}" dir="${mcp.dir}" osfamily="unix"> | ||
| 84 | + <arg value="runtime/reobfuscate.py" /> | ||
| 85 | + <arg value="--srgnames" /> | ||
| 86 | + <arg value="--client" /> | ||
| 87 | + </exec> | ||
| 88 | + </target> | ||
| 89 | + | ||
| 90 | + <target name="extractRanges" depends="reobfSrg"> | ||
| 91 | + <echo message="Extracting ranges from source..." /> | ||
| 92 | + | ||
| 93 | + <java classname="net.minecraftforge.srg2source.ast.RangeExtractor" output="${temp.dir}/extractRanges.log"> | ||
| 94 | + <classpath refid="class.path" /> | ||
| 95 | + <arg value="${src.dir}" /> | ||
| 96 | + <arg value="${lib.dir}" /> | ||
| 97 | + <arg value="${map.file}" /> | ||
| 98 | + </java> | ||
| 99 | + </target> | ||
| 100 | + | ||
| 101 | + <target name="flipsrg" depends="extractRanges"> | ||
| 102 | + <echo message="Remapping SRG file..." /> | ||
| 103 | + | ||
| 104 | + <copy file="${insrg.file}" tofile="${outsrg.file}" overwrite="true" /> | ||
| 105 | + <replaceregexp file="${outsrg.file}" byline="true" match="(FD|CL): ([^\s]+) ([^\s]+)" replace="\1: \3 \2" /> | ||
| 106 | + <replaceregexp file="${outsrg.file}" byline="true" match="MD: ([^\s]+) ([^\s]+) ([^\s]+) ([^\s]+)" replace="MD: \3 \4 \1 \2" /> | ||
| 107 | + </target> | ||
| 108 | + | ||
| 109 | + <target name="applyRanges" depends="flipsrg"> | ||
| 110 | + <echo message="Remapping ranges in source..." /> | ||
| 111 | + | ||
| 112 | + <java classname="net.minecraftforge.srg2source.rangeapplier.RangeApplier" output="${temp.dir}/applyRanges.log"> | ||
| 113 | + <classpath refid="class.path" /> | ||
| 114 | + <arg value="--srcRoot=${src.dir}" /> | ||
| 115 | + <arg value="--srcRangeMap=${map.file}" /> | ||
| 116 | + <arg value="--srgFiles=${outsrg.file}" /> | ||
| 117 | + <arg value="--outDir=${out.dir}" /> | ||
| 118 | + </java> | ||
| 119 | + </target> | ||
| 120 | + | ||
| 121 | + <target name="jar" depends="applyRanges"> | ||
| 122 | + <echo message="Building src jar..." /> | ||
| 123 | + | ||
| 124 | + <jar destfile="${artefact}" duplicate="preserve" index="true" manifestencoding="UTF-8"> | ||
| 125 | + <manifest> | ||
| 126 | + <attribute name="Implementation-Vendor" value="${author}" /> | ||
| 127 | + <attribute name="Implementation-Title" value="${ant.project.name}" /> | ||
| 128 | + <attribute name="Implementation-Version" value="${version}" /> | ||
| 129 | + </manifest> | ||
| 130 | + <fileset dir="${out.dir}"> | ||
| 131 | + <exclude name="net/minecraft/**" /> | ||
| 132 | + </fileset> | ||
| 133 | + </jar> | ||
| 134 | + </target> | ||
| 135 | +</project> | ||
| 0 | \ No newline at end of file | 136 | \ No newline at end of file |
ant/ivy.xml
0 → 100644
| 1 | +<?xml version="1.0" encoding="ISO-8859-1"?> | ||
| 2 | +<ivy-module version="2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd"> | ||
| 3 | + <info organisation="com.mumfrey" module="liteloader" status="integration"> | ||
| 4 | + <ivyauthor name="Adam Mummery-Smith" /> | ||
| 5 | + </info> | ||
| 6 | + <dependencies> | ||
| 7 | + <dependency org="org.ow2.asm" name="asm-debug-all" rev="4.1" /> | ||
| 8 | + <dependency org="com.google.guava" name="guava" rev="15.0" /> | ||
| 9 | + <dependency org="net.sf.opencsv" name="opencsv" rev="2.3" /> | ||
| 10 | + <dependency org="net.sf.jopt-simple" name="jopt-simple" rev="4.6" /> | ||
| 11 | + <dependency org="org.eclipse.jgit" name="org.eclipse.jgit" rev="3.2.0.201312181205-r" /> | ||
| 12 | + <dependency org="org.eclipse.core" name="contenttype" rev="3.4.200-v20130326-1255" /> | ||
| 13 | + <dependency org="org.eclipse.core" name="jobs" rev="3.5.300-v20130429-1813" /> | ||
| 14 | + <dependency org="org.eclipse.core" name="runtime" rev="3.9.0-v20130326-1255" /> | ||
| 15 | + <dependency org="org.eclipse" name="osgi" rev="3.9.1-v20130814-1242" /> | ||
| 16 | + <dependency org="org.eclipse.text" name="org.eclipse.text" rev="3.5.101" /> | ||
| 17 | + <dependency org="org.eclipse.equinox" name="common" rev="3.6.200-v20130402-1505" /> | ||
| 18 | + <dependency org="org.eclipse.equinox" name="preferences" rev="3.5.100-v20130422-1538" /> | ||
| 19 | + <dependency org="org.eclipse.jdt" name="org.eclipse.jdt.core" rev="3.10.0.v20131029-1755" /> | ||
| 20 | + <dependency org="net.minecraftforge.srg2source" name="Srg2Source" rev="3.2-SNAPSHOT" /> | ||
| 21 | + </dependencies> | ||
| 22 | +</ivy-module> |
ant/ivysettings.xml
0 → 100644
| 1 | +<?xml version="1.0" encoding="ISO-8859-1"?> | ||
| 2 | +<ivysettings> | ||
| 3 | + <settings defaultResolver="srg2source" /> | ||
| 4 | + <resolvers> | ||
| 5 | + <chain name="srg2source"> | ||
| 6 | + <ibiblio name="m2" m2compatible="true" /> | ||
| 7 | + <ibiblio name="forge" m2compatible="true" root="http://files.minecraftforge.net/maven/"/> | ||
| 8 | + <ibiblio name="eclipse" m2compatible="true" root="https://repo.eclipse.org/content/groups/eclipse/"/> | ||
| 9 | + </chain> | ||
| 10 | + </resolvers> | ||
| 11 | +</ivysettings> | ||
| 0 | \ No newline at end of file | 12 | \ No newline at end of file |