]> git.lizzy.rs Git - dragonblocks_alpha.git/blobdiff - snapshot.sh
Fix memory bug at shutdown
[dragonblocks_alpha.git] / snapshot.sh
index 39751b12fd891583fb1165443fe1b059dd3bb57a..290617fbb22409ca9ff3968757d47f1a8770bd93 100755 (executable)
@@ -1,16 +1,49 @@
-#! /bin/bash
-mkdir .build
-cp -r * .build/
-cd .build/src
-make clobber && make all RELEASE=TRUE -j$(nproc) && make clean
-cp Dragonblocks DragonblocksServer ..
-cd ..
-rm -rf .git* deps src BUILDING.md snapshot.sh upload.sh DragonblocksAlpha-*.zip
-cd ..
-mv .build DragonblocksAlpha
-VERSION=`git tag --points-at HEAD`
-if [[ $VERSION = "" ]]; then
-       VERSION=`git rev-parse --short HEAD`
+#!/bin/bash
+set -e
+
+version="$(git describe --tags)"
+
+mkdir -p "snapshot"
+cd "snapshot"
+
+build="build"
+snapshot="dragonblocks_alpha-$version"
+toolchain=""
+dotexe=""
+dotsh=".sh"
+flags="-O2"
+
+if [[ "$1" != "" ]]; then
+       build="$build-$1"
+       snapshot="$snapshot-$1"
+       toolchain="$1.cmake"
+       dotexe=".exe"
+       dotsh=".bat"
+       flags="$flags -static"
 fi
-zip -r DragonblocksAlpha-$VERSION.zip DragonblocksAlpha/*
-rm -rf DragonblocksAlpha
+
+mkdir -p "$build"
+
+cmake -B "$build" -S ../src \
+       -DCMAKE_BUILD_TYPE="Release" \
+       -DASSET_PATH="assets/" \
+       -DCMAKE_C_FLAGS="$flags" \
+       -DCMAKE_CXX_FLAGS="$flags" \
+       -DCMAKE_TOOLCHAIN_FILE="$toolchain"
+
+make --no-print-directory -C "$build" -j"$(nproc)"
+
+rm -rf "$snapshot"
+mkdir "$snapshot"
+
+cp -r \
+       "../assets" \
+       "$build/dragonblocks_client$dotexe" \
+       "$build/dragonblocks_server$dotexe" \
+       "../singleplayer$dotsh" \
+       "../LICENSE" \
+       "../README.md" \
+       "$snapshot"
+
+rm -f "$snapshot.zip"
+zip -r "$snapshot.zip" "$snapshot"/*