minetest/util/stress_mapgen.sh

31 lines
784 B
Bash
Executable File

#!/bin/bash
dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
gameid=${gameid:-devtest}
minetest=$dir/../bin/minetest
testspath=$dir/../tests
conf_server=$testspath/server.conf
worldpath=$testspath/world
run () {
if [ -n "$PERF" ]; then
perf record -z --call-graph dwarf -- "$@"
else
"$@"
fi
}
[ -e $minetest ] || { echo "executable $minetest missing"; exit 1; }
rm -rf $worldpath
mkdir -p $worldpath/worldmods
settings=(sqlite_synchronous=0 helper_mode=mapgen)
[ -n "$PROFILER" ] && settings+=(profiler_print_interval=15)
printf '%s\n' "${settings[@]}" >$testspath/server.conf \
ln -s $dir/helper_mod $worldpath/worldmods/
args=(--config $conf_server --world $worldpath --gameid $gameid)
[ -n "$PROFILER" ] && args+=(--verbose)
run $minetest --server "${args[@]}"