1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-07-22 17:18:39 +00:00

Clean up and tweak build system

* Combine client and server man pages.
  * Update unit test options and available databases in man page.
  * Add `--worldname` to man page.
  * Fix a bunch of places where `"Minetest"` was used directly instead of `PROJECT_NAME`.
  * Disable server build by default on all operating systems.
  * Make `ENABLE_FREETYPE` not fail if FreeType isn't found.
  * Enable LevelDB, Redis, and FreeType detection by default.
  * Remove the `VERSION_PATCH_ORIG` hack.
  * Add option to search for and use system JSONCPP.
  * Remove broken LuaJIT version detection.
  * Rename `DISABLE_LUAJIT` to `ENABLE_LUAJIT`.
  * Rename `minetest_*` variables in `version.{h,cpp}` to `g_*`.
  * Clean up style of CMake files.
This commit is contained in:
ShadowNinja 2015-02-27 18:05:29 -05:00
parent 284fefb0c3
commit 93fcab952b
50 changed files with 749 additions and 1068 deletions

View file

@ -1,16 +1,21 @@
#!/bin/bash -e
if [ $WINDOWS = "no" ]; then
if [[ $PLATFORM == "Linux" ]]; then
mkdir -p travisbuild
cd travisbuild
cmake -DENABLE_GETTEXT=1 -DENABLE_LEVELDB=1 -DENABLE_REDIS=1 -DCMAKE_BUILD_TYPE=Debug ..
CMAKE_FLAGS='-DCMAKE_BUILD_TYPE=Debug \
-DRUN_IN_PLACE=TRUE \
-DENABLE_GETTEXT=TRUE'
# Clang builds with FreeType fail on Travis
if [[ $CC == "clang" ]]; then
CMAKE_FLAGS+=' -DENABLE_FREETYPE=FALSE'
fi
cmake $CMAKE_FLAGS ..
make -j2
echo "Running unit tests for minetest"
../bin/minetest --run-unittests
echo "Running unit tests for minetestserver"
../bin/minetestserver --run-unittests
else
[ $CC = "clang" ] && exit 1 # Not supposed to happen
echo "Running unit tests."
../bin/minetest --run-unittests && exit 0
elif [[ $PLATFORM == Win* ]]; then
[[ $CC == "clang" ]] && exit 1 # Not supposed to happen
# We need to have our build directory outside of the minetest directory because
# CMake will otherwise get very very confused with symlinks and complain that
# something is not a subdirectory of something even if it actually is.
@ -21,8 +26,17 @@ else
# \/ \/ \/
# /home/travis/minetest/minetest/travisbuild/minetest/travisbuild/minetest/travisbuild/minetest
# You get the idea.
OLDDIR=`pwd`
OLDDIR=$(pwd)
cd ..
[ $WINDOWS = "32" ] && EXISTING_MINETEST_DIR=$OLDDIR NO_MINETEST_GAME=1 $OLDDIR/util/buildbot/buildwin32.sh travisbuild && exit 0
[ $WINDOWS = "64" ] && EXISTING_MINETEST_DIR=$OLDDIR NO_MINETEST_GAME=1 $OLDDIR/util/buildbot/buildwin64.sh travisbuild && exit 0
export EXISTING_MINETEST_DIR=$OLDDIR
export NO_MINETEST_GAME=1
if [[ $PLATFORM == "Win32" ]]; then
$OLDDIR/util/buildbot/buildwin32.sh travisbuild && exit 0
elif [[ $PLATFORM == "Win64" ]]; then
$OLDDIR/util/buildbot/buildwin64.sh travisbuild && exit 0
fi
else
echo "Unknown platform \"${PLATFORM}\"."
exit 1
fi