aboutsummaryrefslogtreecommitdiff
path: root/src/CMakeLists.txt
AgeCommit message (Collapse)Author
2016-11-06MSVC: Generate debug information for release builds (#4674)SmallJoker
Replace parameters with the equivalent /Ox
2016-10-11Disable cmake message concerning WIN32 on non-windows systemsRogier
2016-10-08Move RemotePlayer code to its own cpp/headerLoic Blot
2016-09-29Only include keycode unittests in client build (fixes #4559)sfan5
2016-09-21Don't use ZLIB_WINAPI if the required DLL is not provided to CMakesfan5
This allows you to use an stdcall zlib (zlib1.dll instead of zlibwapi.dll) when building Minetest for win32.
2016-09-13Fix "unknown CMake command "check_library_exists" (#4517)Eric Mountain
Adds CMakeLists.txt include to fix this issue: $ cmake . -DBUILD_SERVER=TRUE -DBUILD_CLIENT=FALSE \ -DCMAKE_BUILD_TYPE=Release -DENABLE_CURL=TRUE -DENABLE_CURSES=FALSE \ -DENABLE_FREETYPE=TRUE -DENABLE_GETTEXT=FALSE \ -DENABLE_POSTGRESQL=FALSE -DENABLE_SOUND=FALSE -DENABLE_LUAJIT=TRUE \ -DIRRLICHT_SOURCE_DIR=$HOME/irrlicht-1.8.4 -LH ... CMake Error at src/CMakeLists.txt:339 (check_library_exists): Unknown CMake command "check_library_exists". ...
2016-07-03Add MapSettingsManager and new mapgen setting script API functionskwolekr
This commit refactors the majority of the Mapgen settings system. - MapgenParams is now owned by MapSettingsManager, itself a part of ServerMap, instead of the EmergeManager. - New Script API functions added: core.get_mapgen_setting core.get_mapgen_setting_noiseparams, core.set_mapgen_setting, and core.set_mapgen_setting_noiseparams. - minetest.get/set_mapgen_params are deprecated by the above new functions. - It is now possible to view and modify any arbitrary mapgen setting from a mod, rather than the base MapgenParams structure. - MapgenSpecificParams has been removed.
2016-07-03openbsd's port fix for non Linux systems w/o libRTDavid Carlier
X11 headers are not always in expected locations, add them to include list. Modifications by est31: indentation fixes, commit message improved
2016-05-31Add colored text (not only colored chat).Ekdohibs
Add documentation, move files to a proper place and avoid memory leaks. Make it work with most kind of texts, and allow backgrounds too.
2016-05-22Implement a PostgreSQL backendLoic Blot
2016-03-07Move AreaStore to utilShadowNinja
2016-01-14Add Valleys mapgen.Duane Robertson
2015-12-05Improve LuaJIT detectionFerdinand Thiessen
On openSUSE luajit is not detected correctly. This is because openSUSE is using a lua version suffix, like other Linux distributions do it also. So the include directory is: include/luajit-5_1-2.0
2015-11-11Mapgen: Add flat mapgen in hidden formparamat
2015-11-06Add server side ncurses terminalest31
This adds a chat console the server owner can use for administration or to talk with players. It runs in its own thread, which makes the user interface immune to the server's lag, behaving just like a client, except timeout. As it uses the same console code as the f10 console, things like nick completion or a scroll buffer basically come for free. The terminal itself is written in a general way so that adding a client version later on is just about implementing an interface. Fatal errors are printed after the console exists and the ncurses terminal buffer gets cleaned up with endwin(), so that the error still remains visible. The server owner can chose their username their entered text will have in chat and where players can send PMs to. Once the username is secured with a password to prevent anybody to take over the server, the owner can execute admin tasks over the console. This change includes a contribution by @kahrl who has improved ncurses library detection.
2015-10-06Mapgen: Add 4D fractal mapgenparamat
2015-09-01Warn when building without cURLShadowNinja
2015-09-01Enable server build when no builds are enabledShadowNinja
2015-08-23Clean up threadingShadowNinja
* Rename everything. * Strip J prefix. * Change UpperCamelCase functions to lowerCamelCase. * Remove global (!) semaphore count mutex on OSX. * Remove semaphore count getter (unused, unsafe, depended on internal API functions on Windows, and used a hack on OSX). * Add `Atomic<type>`. * Make `Thread` handle thread names. * Add support for C++11 multi-threading. * Combine pthread and win32 sources. * Remove `ThreadStarted` (unused, unneeded). * Move some includes from the headers to the sources. * Move all of `Event` into its header (allows inlining with no new includes). * Make `Event` use `Semaphore` (except on Windows). * Move some porting functions into `Thread`. * Integrate logging with `Thread`. * Add threading test.
2015-07-27Add AreaStore data structureest31
2015-06-29Fix *BSD build with GNU iconvkwolekr
2015-06-27Add minimap featureRealBadAngel
2015-06-13Add utf-8 conversion utilities and re-add intlGUIEditBoxest31
2015-05-18Split ObjDef/ObjDefManager out to objdef.cppkwolekr
2015-05-16Add -Wsign-compare for Clang builds and fix some signed/unsigned compiler ↵kwolekr
warnings
2015-05-11Add LibGMPest31
Uses system provided libgmp if found, if not it falls back to mini-gmp.
2015-05-05Make Git version detection use VERSION_STRING instead of tagsShadowNinja
This fixes the problem where 0.4.12-dev versions were erroneously shown as 0.4.11-dev because the tag was added on a separate branch. It also fixes a similar issue when builders didn't fetch new tags when updating. This also removes the number-of-commits-since-tag field, since it's incompatible with this. Said field doesn't seem to be useful anyway if you have the commit hash.
2015-04-27Revert the upper-case PROJECT_NAME nonsense that was part of #2402sfan5
2015-04-26Tests: Modularize unit testingkwolekr
Split unit tests into separate files under src/unittest/ Give better unittest diagnostics Clean up some code
2015-04-08Link against shlwapi.lib and unify linker input sources for Windowskwolekr
2015-04-08Fix freetype detectionDmitry Marakasov
Don't reinvent freetype detection, use working one from cmake.
2015-04-01Move globals from main.cpp to more sane locationsCraig Robbins
Move debug streams to log.cpp|h Move GUI-related globals to clientlauncher Move g_settings and g_settings_path to settings.cpp|h Move g_menuclouds to clouds.cpp|h Move g_profiler to profiler.cpp|h
2015-04-01Clean scaling pre-filter for formspec/HUD.Aaron Suen
2015-03-27Clean up and tweak build systemShadowNinja
* Combine client and server man pages. * Update unit test options and available databases in man page. * Add `--worldname` to man page. * Fix a bunch of places where `"Minetest"` was used directly instead of `PROJECT_NAME`. * Disable server build by default on all operating systems. * Make `ENABLE_FREETYPE` not fail if FreeType isn't found. * Enable LevelDB, Redis, and FreeType detection by default. * Remove the `VERSION_PATCH_ORIG` hack. * Add option to search for and use system JSONCPP. * Remove broken LuaJIT version detection. * Rename `DISABLE_LUAJIT` to `ENABLE_LUAJIT`. * Rename `minetest_*` variables in `version.{h,cpp}` to `g_*`. * Clean up style of CMake files.
2015-03-17Standalone bundle for OSX (w/ dependencies!)Pavel Puchkin
2015-03-05Replace std::list to std::vector into tile.cpp (m_texture_trash) and move ↵Loic Blot
tile.hpp to src/client/
2015-02-21Move sha1.hpp and base64.hpp to util/Loic Blot
2015-02-21Use proper CMakeLists.txt for network and client directoriesLoic Blot
2015-02-21Unit tests must be done at integration process.Loic Blot
* Remove --enable-unittests and --disable-unittests and add --do-unittests function * --do-unittests function will exit 0 on success. * minetest and minetestserver binaries are launched with --do-unittests in travis build.
2015-02-16[Patch 2/4] Network rework: packet writing, sending and cleanupsLoic Blot
NetworkPacket.cpp: * Remove some deprecated functions, we must use streaming interface * m_data converted from u8* to std::vector<u8> * Add an exporter to forge packet to Connection object * implement operator << std::wstring. n * implement operator << std::string * dynamic resize when write packet content. * fix string writing and performances. * create ServerCommandFactory, used by client to get useful informations about packet processing (sending). * Reliability * Transmit channel * Implement putRawString for some ugly char (_INIT packet), and use it. * Many packet read and write migrated * Implement oldForgePacket to interface writing with current connection * fix U8/char/bool writing * fix string writing and performances. * add some missing functions * Use v3s16 read instead of reading x,y,z separately * Add irr::video::SColor support into packets * Add some missing handlers * Add a template function to increase offset * Throw a serialization error on packet reading (must be improved) PacketFactories: * Create ServerCommandFactory, used by client to get useful informations about packet processing (sending). * Create ClientCommandFactory, used by server to get useful informations about packet processing (sending). Client.cpp: * implement NetworkPacket ::Send interface. * Move packet handlers to a dedicated file * Remove Client::Send(SharedBuffer) Server.cpp: * implement NetworkPacket ::Send interface. * Rewrite all packets using NetworkPacket * Move packet handlers to a dedicated file * Remove Server::Send(SharedBuffer) ClientIface.cpp: * Remove sendToAll(SharedBuffer<u8>) Connection.hpp rework: * Remove duplicate include * Remove duplicate negation * Remove a useless variable * Improve code performance by using a m_peers_list instead of scanning m_peers map * Remove Connection::Send(SharedBuffer) * Fix useafterfree into NetworkPacket Sending * Remove unused Connection::sendToAll Test.cpp: * Remove dead code * Update tests to use NetworkPackets Misc: * add new wrappers to Send packets in client, using NetworkPacket * Add NetworkPacket methods for Connection * coding style fix * dead code since changes cleanup * Use v3s16 read instead of reading x,y,z separately in some packets * Use different files to handle packets received by client and server * Cleanup: Remove useless includes ok @Zeno- Tested by @Zeno- @VanessaE and @nerzhul on running servers
2015-02-12main.cpp rework * Move ClientLauncher class to a dedicated file * ↵Loic Blot
ClientLauncher now owns print_video_modes and speed_tests functions (they are only called by him) * Move GameParams to shared/gameparams.h because it's shared between server and client and launcher need to know it * Move InputHandlers class to client/inputhandler.h * Cleanup includes
2015-02-10Network Layer 7 rework (Packet handling)Loic Blot
* Move networkcode to a dedicated directory * Rename clientserver.h to network/networkprotocol.h (Better name) and sanitize some includes * Create object NetworkPacket * It stores command (opcode) and data separated * It also stores peer_id * Data reading can be done by using a streaming interface * Change packet routing analysis * Remove old conditional analysis * Now uses function pointed analysis and add connection state ({Client,Server}::handlers) * Connection state permit to categorize condition to handle before analyze packets * Create a handler for depreciated messages, instead of duplicating code
2015-02-02Create minidump on fatal Win32 exceptionskwolekr
Remove software exception translator function, simplifying exception handler macros. FatalSystemExceptions are left unhandled.
2015-01-18Fix all warnings and remove -Wno-unused-but-set cflagkwolekr
2015-01-18Add SemiDebug (-O1 with debug symbols) build mode and do not optimize Debug ↵kwolekr
at all Add -Wall to Debug modes for all compilers and -Wabi for non-MSVC Use /Ox for MSVC Release mode (potentially higher optimization than /O2)
2015-01-18Revert "Fix bug in debug build"kwolekr
This reverts commit 839c4a99cddcacdc19dee42286b7029c4c1e7800.
2015-01-19Fix bug in debug buildCraig Robbins
-O1 results in executables that are completely useless for actuall debugging
2015-01-10Set default value for ENABLE_REDIS to 0sfan5
2015-01-08Remove included SQLite3ShadowNinja
2015-01-08Add SQLite3 libraries to buildbotsfan5