forked from RepoMirrors/baritone
45 lines
2.1 KiB
Bash
45 lines
2.1 KiB
Bash
#!/bin/sh
|
|
set -e # this makes the whole script fail immediately if any one of these commands fails
|
|
./gradlew build
|
|
export VERSION=$(cat build.gradle | grep "version '" | cut -d "'" -f 2-2)
|
|
|
|
unzip -p build/libs/baritone-$VERSION.jar "mixins.baritone.refmap.json" | jq --sort-keys -c -M '.' > mixins.baritone.refmap.json
|
|
zip -u build/libs/baritone-$VERSION.jar mixins.baritone.refmap.json
|
|
rm mixins.baritone.refmap.json
|
|
|
|
cd scripts
|
|
javac Determinizer.java
|
|
java Determinizer ../build/libs/baritone-$VERSION.jar temp.jar
|
|
mv temp.jar ../build/libs/baritone-$VERSION.jar
|
|
cd ..
|
|
|
|
|
|
wget -nv https://downloads.sourceforge.net/project/proguard/proguard/6.0/proguard6.0.3.zip
|
|
unzip proguard6.0.3.zip 2>&1 > /dev/null
|
|
cd build/libs
|
|
rm -rf api.pro
|
|
echo "-injars 'baritone-$VERSION.jar'" >> api.pro # insert current version
|
|
cat ../../scripts/proguard.pro | grep -v "this is the rt jar" | grep -v "\-injars" >> api.pro # remove default rt jar and injar lines
|
|
echo "-libraryjars '$(java -verbose 2>/dev/null | sed -ne '1 s/\[Opened \(.*\)\]/\1/p')'" >> api.pro # insert correct rt.jar location
|
|
tail api.pro # debug, print out what the previous two commands generated
|
|
cat api.pro | grep -v "this is the keep api" > standalone.pro # standalone doesn't keep baritone api
|
|
|
|
#instead of downloading these jars from my dropbox in a zip, just assume gradle's already got them for us
|
|
mkdir -p tempLibraries
|
|
cat ../../scripts/proguard.pro | grep tempLibraries | grep .jar | cut -d "/" -f 2- | cut -d "'" -f -1 | xargs -n1 -I{} bash -c "find ~/.gradle -name {}" | tee /dev/stderr | xargs -n1 -I{} cp {} tempLibraries
|
|
|
|
rm -rf ../../dist
|
|
mkdir ../../dist
|
|
java -jar ../../proguard6.0.3/lib/proguard.jar @api.pro
|
|
cd ../../scripts
|
|
java Determinizer ../build/libs/Obfuscated/baritone-$VERSION.jar ../dist/baritone-api-$VERSION.jar
|
|
cd ../build/libs
|
|
rm -rf Obfuscated/*
|
|
java -jar ../../proguard6.0.3/lib/proguard.jar @standalone.pro
|
|
cd ../../scripts
|
|
java Determinizer ../build/libs/Obfuscated/baritone-$VERSION.jar ../dist/baritone-standalone-$VERSION.jar
|
|
cd ../build/libs
|
|
mv baritone-$VERSION.jar ../../dist/baritone-unoptimized-$VERSION.jar
|
|
cd ../../dist
|
|
shasum * | tee checksums.txt
|
|
cd .. |