Fix missing #include
[oweals/minetest.git] / README.txt
index 927fdad1110f73a1ff31ec14e0f4860e21cc76e6..0760faf67065a1c10e83a7bb1235339538b2249c 100644 (file)
@@ -1,4 +1,4 @@
-Minetest
+Minetest
 ========
 
 An InfiniMiner/Minecraft inspired game.
@@ -78,9 +78,9 @@ $share = /usr/share/minetest
 $user  = ~/.minetest
 
 OS X:
-$bin   = ?
-$share = ?
-$user  = ~/Library/Application Support/minetest
+$bin   = Contents/MacOS
+$share = Contents/Resources
+$user  = Contents/User OR ~/Library/Application Support/minetest
 
 World directory
 ----------------
@@ -103,34 +103,48 @@ Compiling on GNU/Linux:
 -----------------------
 
 Install dependencies. Here's an example for Debian/Ubuntu:
-$ apt-get install build-essential libirrlicht-dev cmake libbz2-dev libpng12-dev libjpeg8-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev
+$ sudo apt-get install build-essential libirrlicht-dev cmake libbz2-dev libpng12-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
+
+You can install git for easily keeping your copy up to date.
+If you dont want git, read below on how to get the source without git.
+This is an example for installing git on Debian/Ubuntu:
+$ sudo apt-get install git-core
+
+Download source (this is the URL to the latest of source repository, which might not work at all times) using git:
+$ git clone --depth 1 https://github.com/minetest/minetest.git
+$ cd minetest
 
-Download source, extract (this is the URL to the latest of source repository, which might not work at all times):
-$ wget https://github.com/minetest/minetest/tarball/master -O master.tar.gz
+Download minetest_game (otherwise only the "Minimal development test" game is available) using git:
+$ git clone --depth 1 https://github.com/minetest/minetest_game.git games/minetest_game
+
+Download source, without using git:
+$ wget https://github.com/minetest/minetest/archive/master.tar.gz
 $ tar xf master.tar.gz
-$ cd minetest-minetest-286edd4 (or similar)
+$ cd minetest-master
 
-Download minetest_game (otherwise only the "Minimal development test" game is available)
+Download minetest_game, without using git:
 $ cd games/
-$ wget https://github.com/minetest/minetest_game/tarball/master -O minetest_game.tar.gz
-$ tar xf minetest_game.tar.gz
-$ mv minetest-minetest_game-* minetest_game
+$ wget https://github.com/minetest/minetest_game/archive/master.tar.gz
+$ tar xf master.tar.gz
+$ mv minetest_game-master minetest_game
 $ cd ..
 
 Build a version that runs directly from the source directory:
-$ cmake . -DRUN_IN_PLACE=1
-$ make -j2
+$ cmake . -DRUN_IN_PLACE=TRUE
+$ make -j <number of processors>
 
 Run it:
-$ cd bin
-$ ./minetest
+$ ./bin/minetest
 
 - Use cmake . -LH to see all CMake options and their current state
-- If you want to install it system-wide (or are making a distribution package), you will want to use -DRUN_IN_PLACE=0
-- You can build a bare server or a bare client by specifying -DBUILD_CLIENT=0 or -DBUILD_SERVER=0
+- If you want to install it system-wide (or are making a distribution package),
+  you will want to use -DRUN_IN_PLACE=FALSE
+- You can build a bare server by specifying -DBUILD_SERVER=TRUE
+- You can disable the client build by specifying -DBUILD_CLIENT=FALSE
 - You can select between Release and Debug build by -DCMAKE_BUILD_TYPE=<Debug or Release>
   - 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
+- 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
 -------------
@@ -141,16 +155,19 @@ BUILD_SERVER        - Build Minetest server
 CMAKE_BUILD_TYPE    - Type of build (Release vs. Debug)
     Release         - Release build
     Debug           - Debug build
+    SemiDebug       - Partially optimized 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_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_REDIS        - Build with libhiredis; Enables use of redis map backend
+ENABLE_LEVELDB      - Build with LevelDB; Enables use of LevelDB map backend (faster than SQLite3)
+ENABLE_REDIS        - Build with libhiredis; Enables use of Redis map backend
+ENABLE_SPATIAL      - Build with LibSpatial; Speeds up AreaStores
 ENABLE_SOUND        - Build with OpenAL, libogg & libvorbis; in-game Sounds
-DISABLE_LUAJIT      - Do not search for LuaJIT headers & library
+ENABLE_LUAJIT       - Build with LuaJIT (much faster than non-JIT Lua)
+ENABLE_SYSTEM_GMP   - Use GMP from system (much faster than bundled mini-gmp)
 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)
@@ -163,22 +180,26 @@ CURL_DLL                        - Only if building with cURL on Windows; path to
 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
+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
+FREETYPE_DLL                    - Only if building with Freetype2 on Windows; path to libfreetype.dll
 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
+IRRLICHT_DLL                    - Only on Windows; path to Irrlicht.dll
+IRRLICHT_INCLUDE_DIR            - Directory that contains IrrCompileConfig.h
+IRRLICHT_LIBRARY                - Path to libIrrlicht.a/libIrrlicht.so/libIrrlicht.dll.a/Irrlicht.lib
 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
-REDIS_INCLUDE_DIR               - Only when building with redis support; directory that contains hiredis.h
-REDIS_LIBRARY                   - Only when building with redis support; path to libhiredis.a/libhiredis.so
+LEVELDB_LIBRARY                 - Only when building with LevelDB; path to libleveldb.a/libleveldb.so/libleveldb.dll.a
+LEVELDB_DLL                     - Only when building with LevelDB on Windows; path to libleveldb.dll
+REDIS_INCLUDE_DIR               - Only when building with Redis; directory that contains hiredis.h
+REDIS_LIBRARY                   - Only when building with Redis; path to libhiredis.a/libhiredis.so
+SPATIAL_INCLUDE_DIR             - Only when building with LibSpatial; directory that contains spatialindex/SpatialIndex.h
+SPATIAL_LIBRARY                 - Only when building with LibSpatial; path to libspatialindex_c.so/spatialindex-32.lib
 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
@@ -189,18 +210,19 @@ OPENAL_DLL                      - Only if building with sound on Windows; path t
 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
+OPENGLES2_LIBRARY               - Only if building with GLES; path to libGLESv2.a/libGLESv2.so
+SQLITE3_INCLUDE_DIR             - Directory that contains sqlite3.h
+SQLITE3_LIBRARY                 - Path to libsqlite3.a/libsqlite3.so/sqlite3.lib
 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
+ZLIB_DLL                        - Only on Windows; path to zlib1.dll
+ZLIBWAPI_DLL                    - Only on Windows; path to zlibwapi.dll
+ZLIB_INCLUDE_DIR                - Directory that contains zlib.h
+ZLIB_LIBRARY                    - Path to libz.a/libz.so/zlibwapi.lib
 
 Compiling on Windows:
 ---------------------
@@ -224,7 +246,7 @@ Compiling on Windows:
                http://gnuwin32.sourceforge.net/downlinks/gettext.php
                - This is used for other UI languages. Feel free to leave it out.
        * And, of course, Minetest:
-               http://minetest.net/download.php
+               http://minetest.net/download
 - Steps:
        - Select a directory called DIR hereafter in which you will operate.
        - Make sure you have CMake and a compiler installed.
@@ -322,7 +344,7 @@ set irrlichtpath="C:\tmp\irrlicht-1.7.2"
 set builddir=%sourcedir%\bvc10
 mkdir %builddir%
 pushd %builddir%
-cmake %sourcedir% -G "Visual Studio 10" -DIRRLICHT_SOURCE_DIR=%irrlichtpath% -DRUN_IN_PLACE=1 -DCMAKE_INSTALL_PREFIX=%installpath%
+cmake %sourcedir% -G "Visual Studio 10" -DIRRLICHT_SOURCE_DIR=%irrlichtpath% -DRUN_IN_PLACE=TRUE -DCMAKE_INSTALL_PREFIX=%installpath%
 if %errorlevel% neq 0 goto fail
 "C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" ALL_BUILD.vcxproj /p:Configuration=Release
 if %errorlevel% neq 0 goto fail
@@ -359,7 +381,7 @@ BlockMen:
 erlehmann:
   misc/minetest-icon-24x24.png
   misc/minetest-icon.ico
-  misc/minetest-icon.svg
+  misc/minetest.svg
   textures/base/pack/logo.png
 
 License of Minetest source code