ForgePatch/forge/package.sh

93 lines
1.7 KiB
Bash
Executable file

read major minor revision build <version.txt
version=$major.$minor.$revision.$build
build_dir=`pwd`
dir=`pwd`/../forge-$version
function remove_svn () {
(
cd "$1"
if [ -d .svn ]; then
rm -rf .svn
fi
for j in `ls`
do
if [ -d $j ]; then
remove_svn $j
fi
done
)
}
function package_all () {
qual=$1
cp "$build_dir/minecraftforge_credits.txt" .
echo "Making minecraftforge$qual-$version.zip"
zip -r "$dir/minecraftforge$qual-$version.zip" \
minecraftforge_credits.txt \
*.class \
forge
}
cd ../reobf
remove_svn .
rm -rf "$dir"
mkdir "$dir"
cd minecraft
package_all "-client"
cd ../minecraft_server
package_all "-server"
cd ../..
rm -rf reobf
cd "$build_dir"
mkdir forge
cd forge
mkdir src
mkdir src/minecraft
mkdir src/minecraft_server
mkdir patches
mkdir conf
cp -r ../forge_client/src/* src/minecraft
cp -r ../forge_server/src/* src/minecraft_server
cp -r ../forge_common/* src/minecraft
cp -r ../forge_common/* src/minecraft_server
cp -r ../patches/* patches
cp -r ../conf/* conf
cp ../lfcr.py .
cp ../install/install.cmd .
cp ../install/install.sh .
cp ../modLoaderMP.patch .
cp ../MLProp.java .
cp ../install/README.txt .
cp ../minecraftforge_credits.txt .
cp -r ../doc .
cd ..
sh inject_version.sh forge/src/minecraft/net/minecraft/src/forge/ForgeHooks.java
sh inject_version.sh forge/src/minecraft_server/net/minecraft/src/forge/ForgeHooks.java
cd forge
cd src
remove_svn .
cd ../patches
remove_svn .
cd ../conf
remove_svn .
cd ..
cd ..
zip -r "$dir/minecraftforge-src-$version.zip" forge
rm -rf forge