CMake Options

From Minetest Developer Wiki
Revision as of 07:03, 23 April 2014 by Sfan5 (talk | contribs) (Add CMake flags for redis)
Jump to navigation Jump to search

This page is supposed to document the cmake switches you can use when building Minetest.

General options

Name Functionality Default Value
BUILD_CLIENT Build Minetest client YES
BUILD_SERVER Build Minetest server YES on Linux; NO on Windows
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
Release
ENABLE_CURL Build with cURL; Enables use of online mod repo, public serverlist and remote media fetching via http YES
ENABLE_FREETYPE Build with Freetype2; Allows using TTF fonts NO
ENABLE_GETTEXT Build with Gettext; Allows using translations NO
ENABLE_GLES Search for Open GLES headers & libraries and use them NO
ENABLE_LEVELDB Build with LevelDB; Enables use of LevelDB map backend NO
ENABLE_REDIS Build with HiRedis; Enables use of redis map backend YES
ENABLE_SOUND Build with OpenAL, libogg & libvorbis; in-game Sounds YES
DISABLE_LUAJIT Do not search for LuaJIT headers & library NO
RUN_IN_PLACE Create a portable install (worlds, settings etc. in current directory) NO on Linux; YES on Windows
USE_GPROF Enable profiling using GProf NO
VERSION_EXTRA Text to append to version (e.g. VERSION_EXTRA=foobar -> Minetest 0.4.9-foobar)

Library specific

General

BZIP2_INCLUDE_DIR - Linux only; directory where bzlib.h is located

BZIP2_LIBRARY - Linux only; path to libbz2.a/libbz2.so

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

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

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

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

cURL

CURL_DLL - Only on Windows; path to libcurl.dll

CURL_INCLUDE_DIR - directory where curl.h is located

CURL_LIBRARY - path to libcurl.a/libcurl.so/libcurl.lib

GLES

EGL_INCLUDE_DIR - directory that contains egl.h

EGL_egl_LIBRARY - path to libEGL.a/libEGL.so

OPENGLES2_INCLUDE_DIR - directory that contains gl2.h

OPENGLES2_gl_LIBRARY - path to libGLESv2.a/libGLESv2.so

Freetype2

FREETYPE_INCLUDE_DIR_freetype2 - directory that contains an freetype directory with files such as ftimage.h in it

FREETYPE_INCLUDE_DIR_ft2build - directory that contains ft2build.h

FREETYPE_LIBRARY - path to libfreetype.a/libfreetype.so/freetype.lib

Gettext

GETTEXT_DLL - Only om Windows; path to libintl3.dll

GETTEXT_ICONV_DLL - Only on Windows; path to libiconv2.dll

GETTEXT_INCLUDE_DIR - directory that contains iconv.h

GETTEXT_LIBRARY - Only on Windows; path to libintl.dll.a

GETTEXT_MSGFMT - path to msgfmt/msgfmt.exe

LevelDB

LEVELDB_INCLUDE_DIR - directory that contains db.h

LEVELDB_LIBRARY - path to libleveldb.a/libleveldb.so/libleveldb.dll

LevelDB

REDIS_INCLUDE_DIR - directory that contains hiredis.h

REDIS_LIBRARY - path to libhiredis.a/libhiredis.so

Sound

OGG_DLL - Only on Windows; path to libogg.dll

OGG_INCLUDE_DIR - directory that contains an ogg directory which contains ogg.h

OGG_LIBRARY - path to libogg.a/libogg.so/libogg.dll.a

OPENAL_DLL - Only on Windows; path to OpenAL32.dll

OPENAL_INCLUDE_DIR - directory where al.h is located

OPENAL_LIBRARY - path to libopenal.a/libopenal.so/OpenAL32.lib

VORBISFILE_DLL - Only on Windows; path to libvorbisfile-3.dll

VORBISFILE_LIBRARY - path to libvorbisfile.a/libvorbisfile.so/libvorbisfile.dll.a

VORBIS_DLL - Only on Windows; path to libvorbis-0.dll

VORBIS_INCLUDE_DIR - directory that contains a directory vorbis with vorbisenc.h inside

VORBIS_LIBRARY - path to libvorbis.a/libvorbis.so/libvorbis.dll.a