CMake Options

From Minetest Developer Wiki
Revision as of 20:07, 9 August 2015 by Sfan5 (talk | contribs)
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 smaller executable
Release
ENABLE_CURL Build with cURL; Public serverlist and remote media fetching via HTTP YES
ENABLE_FREETYPE Build with Freetype2; TTF fonts NO
ENABLE_GETTEXT Build with Gettext; Translations NO
ENABLE_GLES Search for Open GLES headers & libraries and use them NO
ENABLE_LEVELDB Build with LevelDB; LevelDB map backend NO
ENABLE_REDIS Build with libhiredis; redis map backend YES
ENABLE_SOUND Build with OpenAL, libogg & libvorbis; in-game sounds YES
ENABLE_LUAJIT Build with LuaJIT; faster Lua execution YES
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

OpenGL ES

EGL_INCLUDE_DIR - directory that contains egl.h

EGL_LIBRARY - path to libEGL.a/libEGL.so

OPENGLES2_INCLUDE_DIR - directory that contains gl2.h

OPENGLES2_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 on 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

Redis

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 that contains an AL directory which contains al.h

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