CMake Options

From Minetest Developer Wiki
Jump to navigation Jump to search

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

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 - Whether to build with cURL; Enables use of online mod repo, public serverlist, and remote media fetching via http.

ENABLE_FREETYPE - Whether to build with Freetype2; Allows using TTF fonts

ENABLE_GETTEXT - Whether to build with Gettext; Allows using translations

ENABLE_GLES - Whether to search for Open GLES headers & libraries and use them

ENABLE_LEVELDB - Whether to build with LevelDB; Enables use of LevelDB, which is much faster than SQLite, as map backend

ENABLE_SOUND - Whether to build with OpenAL, libogg & libvorbis; in-game Sounds

RUN_IN_PLACE - Whether to create a portable install (worlds, settings etc. in current directory)

USE_GPROF - Enable profiling using GProf

VERSION_EXTRA - Text too append to version (e.g. VERSION_EXTRA=foobar -> Minetest 0.4.9-foobar)

Library specific

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_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

to be completed by sfan5