- Debug build is slower, but gives much more useful output in a debugger
- If you build a bare server, you don't need to have Irrlicht installed. In that case use -DIRRLICHT_SOURCE_DIR=/the/irrlicht/source
+CMake options
+-------------
+General options:
+
+BUILD_CLIENT - Build Minetest client
+BUILD_SERVER - Build Minetest server
+CMAKE_BUILD_TYPE - Type of build (Release vs. Debug)
+ Release - Release build
+ Debug - Debug build
+ RelWithDebInfo - Release build with Debug information
+ MinSizeRel - Release build with -Os passed to compiler to make executable as small as possible
+ENABLE_CURL - Build with cURL; Enables use of online mod repo, public serverlist and remote media fetching via http
+ENABLE_FREETYPE - Build with Freetype2; Allows using TTF fonts
+ENABLE_GETTEXT - Build with Gettext; Allows using translations
+ENABLE_GLES - Search for Open GLES headers & libraries and use them
+ENABLE_LEVELDB - Build with LevelDB; Enables use of LevelDB, which is much faster than SQLite, as map backend
+ENABLE_SOUND - Build with OpenAL, libogg & libvorbis; in-game Sounds
+DISABLE_LUAJIT - Do not search for LuaJIT headers & library
+RUN_IN_PLACE - Create a portable install (worlds, settings etc. in current directory)
+USE_GPROF - Enable profiling using GProf
+VERSION_EXTRA - Text to append to version (e.g. VERSION_EXTRA=foobar -> Minetest 0.4.9-foobar)
+
+Library specific options:
+
+BZIP2_INCLUDE_DIR - Linux only; directory where bzlib.h is located
+BZIP2_LIBRARY - Linux only; path to libbz2.a/libbz2.so
+CURL_DLL - Only if building with cURL on Windows; path to libcurl.dll
+CURL_INCLUDE_DIR - Only if building with cURL; directory where curl.h is located
+CURL_LIBRARY - Only if building with cURL; path to libcurl.a/libcurl.so/libcurl.lib
+EGL_INCLUDE_DIR - Only if building with GLES; directory that contains egl.h
+EGL_egl_LIBRARY - Only if building with GLES; path to libEGL.a/libEGL.so
+FREETYPE_INCLUDE_DIR_freetype2 - Only if building with Freetype2; directory that contains an freetype directory with files such as ftimage.h in it
+FREETYPE_INCLUDE_DIR_ft2build - Only if building with Freetype2; directory that contains ft2build.h
+FREETYPE_LIBRARY - Only if building with Freetype2; path to libfreetype.a/libfreetype.so/freetype.lib
+GETTEXT_DLL - Only when building with Gettext on Windows; path to libintl3.dll
+GETTEXT_ICONV_DLL - Only when building with Gettext on Windows; path to libiconv2.dll
+GETTEXT_INCLUDE_DIR - Only when building with Gettext; directory that contains iconv.h
+GETTEXT_LIBRARY - Only when building with Gettext on Windows; path to libintl.dll.a
+GETTEXT_MSGFMT - Only when building with Gettext; path to msgfmt/msgfmt.exe
+IRRLICHT_DLL - path to Irrlicht.dll
+IRRLICHT_INCLUDE_DIR - directory that contains IrrCompileConfig.h
+IRRLICHT_LIBRARY - path to libIrrlicht.a/libIrrlicht.so/libIrrlicht.dll.a
+LEVELDB_INCLUDE_DIR - Only when building with LevelDB; directory that contains db.h
+LEVELDB_LIBRARY - Only when building with LevelDB; path to libleveldb.a/libleveldb.so/libleveldb.dll
+LUA_INCLUDE_DIR - Only if you want to use LuaJIT; directory where luajit.h is located
+LUA_LIBRARY - Only if you want to use LuaJIT; path to libluajit.a/libluajit.so
+MINGWM10_DLL - Only if compiling with MinGW; path to mingwm10.dll
+OGG_DLL - Only if building with sound on Windows; path to libogg.dll
+OGG_INCLUDE_DIR - Only if building with sound; directory that contains an ogg directory which contains ogg.h
+OGG_LIBRARY - Only if building with sound; path to libogg.a/libogg.so/libogg.dll.a
+OPENAL_DLL - Only if building with sound on Windows; path to OpenAL32.dll
+OPENAL_INCLUDE_DIR - Only if building with sound; directory where al.h is located
+OPENAL_LIBRARY - Only if building with sound; path to libopenal.a/libopenal.so/OpenAL32.lib
+OPENGLES2_INCLUDE_DIR - Only if building with GLES; directory that contains gl2.h
+OPENGLES2_gl_LIBRARY - Only if building with GLES; path to libGLESv2.a/libGLESv2.so
+SQLITE3_INCLUDE_DIR - Only if you want to use SQLite from your OS; directory that contains sqlite3.h
+SQLITE3_LIBRARY - Only if you want to use the SQLite from your OS; path to libsqlite3.a/libsqlite3.so
+VORBISFILE_DLL - Only if building with sound on Windows; path to libvorbisfile-3.dll
+VORBISFILE_LIBRARY - Only if building with sound; path to libvorbisfile.a/libvorbisfile.so/libvorbisfile.dll.a
+VORBIS_DLL - Only if building with sound on Windows; path to libvorbis-0.dll
+VORBIS_INCLUDE_DIR - Only if building with sound; directory that contains a directory vorbis with vorbisenc.h inside
+VORBIS_LIBRARY - Only if building with sound; path to libvorbis.a/libvorbis.so/libvorbis.dll.a
+XXF86VM_LIBRARY - Only on Linux; path to libXXf86vm.a/libXXf86vm.so
+ZLIB_DLL - Only on Windows; path to zlibwapi.dll
+ZLIB_INCLUDE_DIR - directory where zlib.h is located
+ZLIB_LIBRARY - path to libz.a/libz.so/zlibwapi.lib
+
Compiling on Windows:
---------------------
- This section is outdated. In addition to what is described here: