aboutsummaryrefslogtreecommitdiff
path: root/src/CMakeLists.txt
Commit message (Collapse)AuthorAge
* Enable high-res timers on Windowssfan52022-01-27
| | | | | This should fix issues like #11891, caused by the fps limiting code being unable to operate correctly.
* Fully remove bitmap font support (#11863)sfan52022-01-08
| | | Freetype is now a build requirement.
* Automatically use SSE registers for FP operations on i386 (#11853)William L. DeRieux IV2021-12-28
| | | | | | | | use SSE for floating-point operations to avoid issues with improper fp-rounding and loss of precision when moving fp-data to incompatible or less-precise registers/storage locations https://gcc.gnu.org/wiki/FloatingPointMath https://gcc.gnu.org/wiki/x87note
* Add Lua bitop library (#9847)Lejo2021-11-26
|
* Automatically package MinGW runtime in buildbotsfan52021-10-31
|
* Touch UI support for desktop builds (#10729)TheBrokenRail2021-09-26
|
* Don't look for zlib and zstd manually on Windowssfan52021-09-01
|
* Switch MapBlock compression to zstd (#10788)lhofhansl2021-08-31
| | | | | | | * Add zstd support. * Rearrange serialization order * Compress entire mapblock Co-authored-by: sfan5 <sfan5@live.de>
* Take advantage of IrrlichtMt CMake target (#11287)JosiahWI2021-07-27
| | | | With the CMake changes to IrrlichtMt, it's now possible to use a target for IrrlichtMt. Besides greatly improving the ease of setting up IrrlichtMt for users building the client, it removes the need for Minetest's CMake to include transitive dependencies such as image libraries, cleaning it up a tiny bit. The PR works by finding the IrrlichtMt package and linking to the target it provides. If the package isn't found and it isn't building the client, it will still fall back to using just the headers of old Irrlicht or IrrlichtMt.
* Fix no locales being generated when APPLY_LOCALE_BLACKLIST=0sfan52021-07-20
| | | | Also enable `ky` which appears to work fine.
* Use --image-base instead of -Ttext-segment for lld linker on FreeBSD (#9367) ↵Dmitry Marakasov2021-05-15
| | | | (#11263)
* Use Irrlicht functions to query npot texture supportsfan52021-05-05
|
* Fix two CMake build issuessfan52021-04-21
| | | | | * PostgreSQL fallback code missed the includes (closes #11219) * build failed when Freetype enabled but not found
* Look for PostgreSQL library properly and fix CIsfan52021-04-20
|
* Fix ignored OpenGLES2 include path and cmake warningsfan52021-04-16
|
* Buildbot changes to allow out-of-tree builds (#11180)sfan52021-04-11
| | | | | | | * Do proper out-of-tree builds with buildbot * Don't write to bin/ for cross builds * This allows safely building multiple builds from the same source dir, e.g. with the buildbot. * Disable Gettext (by default) and Freetype (entirely) for server builds
* Replace fallback font nonsense with automatic per-glyph fallback (#11084)sfan52021-03-29
|
* Clean up cmake DLL installation and other minor thingssfan52021-03-12
|
* Switch Irrlicht dependency to our own forksfan52021-03-09
| | | | -> https://github.com/minetest/irrlicht
* Handle changes caused by CMake minimum version bump (#10859)sfan52021-01-29
| | | fixes #10806
* Fix some minor code issues all over the placesfan52020-12-24
|
* Mark additional locales as brokensfan52020-11-10
|
* Update fallback font to newer versionsfan52020-11-10
|
* Improve MSVC cmake and update vcpkg instruction (#10407)k.h.lai2020-09-29
| | | | Remove unnecessary compiler flag for clang-cl Update vcpkg instruction in README.md
* Complete Haiku platform support. (#10311)David CARLIER2020-08-23
| | | | | Fixing linkage/libraries missing issue. Implements missing platform specifics.
* Cleanup of particle & particlespawner structures and code (#9893)sfan52020-05-22
|
* Fix gettext detection and locale building (#9772)Juozas2020-04-29
| | | broken since a368e7e
* Add MetricsBackend with prometheus counter supportLoic Blot2020-04-29
|
* Remove /LTCG from when compiling with clang-cl (#9765)k.h.lai2020-04-27
| | | | Remove /LTCG from CMAKE_EXE_LINKER_FLAGS_RELEASE when compiling with clang on Windows
* Add an option to disable unittest build, & disable them on Docker build (#9677)Loïc Blot2020-04-16
|
* Drop -Wabi useless flag (#9676)Loïc Blot2020-04-16
|
* Swap out -ffast-math for a safe subset of optimization flags (#9682)sfan52020-04-16
| | | | It caused more trouble than its worth. fixes #3943, fixes #5330
* Refactor texture overrides and add new features (#9600)Hugues Ross2020-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Refactor texture overrides, and add new features: - Texture overrides can support multiple targets in one line - Texture override files can have comment lines - Item images/wield images can be overridden * Formatting changes * Address soime feedback - Pass vectors by const reference - Log syntax errors as warnings - Remove 'C' prefix from TextureOverrideSource * Simplify override target checks with an inline helper function * make linter happy * Apply feedback suggestions Co-Authored-By: rubenwardy <rw@rubenwardy.com> * Remove remaining != 0 checks * Update copyright notice Co-authored-by: sfan5 <sfan5@live.de> Co-authored-by: rubenwardy <rw@rubenwardy.com>
* Implement DPI scaling for Windows (#9586)sfan52020-04-11
|
* Drop content_sao.{cpp,h}Loic Blot2020-04-11
| | | | | | | Move LuaEntitySAO to a new dedicated file Drop TestSAO (useless object) Drop the old static startup initialized SAO factory, which was pretty useless. This factory was using a std::map for 2 elements, now just use a simple condition owned by ServerEnvironment, which will be lightweight, that will also drop a one time useful test on each LuaEntitySAO creation. This should reduce server load on massive SAO creation
* Move serveractiveobject & unitsaoLoic Blot2020-04-11
| | | | | Move serverobject.{cpp,h} to server/serveractiveobject.{cpp,h} Move UnitSAO class to dedicated files
* Drop genericobject.{cpp,h} (#9629)Loïc Blot2020-04-10
| | | | | | | | | | * Drop genericobject.{cpp,h} This file is not for generic object but for ActiveObject message passing. Put ownership of the various commands to the right objects and cleanup the related code. * Protect ServerActiveObject::m_messages_out * typo fix
* Work around LuaJIT issues on aarch64 (#9614)sfan52020-04-08
| | | | - Move the text segment below the 47-bit limit, needed for script_exception_wrapper which must be lightuserdata - Replace CUSTOM_RIDX_SCRIPTAPI with full userdata
* Fix linking failures when compiled with Clang 9sfan52020-03-05
|
* CMakeLists: Remove some redundant declarations and flagssfan52020-01-23
|
* Organize and sort out some library dependency issuessfan52020-01-23
|
* Remove zh_* from GETTEXT_BLACKLISTED_LOCALES (#9229)Zaoqi2020-01-22
|
* Move Quicktune code to util/ (#8871)ANAND2019-09-29
|
* Fix breakage of non-GLES2 setups (#8774)Jozef Behran2019-08-10
| | | | | | | | | | | The commit 526a9e4b66abaf83eb6b1aaa3e93375acd87b830 breaks the non-GLES2 setups because the code that is intended to handle that is behind "elseif()" which is interpreted as "elseif(false)" and thus the code never gets executed. Fix that by changing the offending line to else(). Additionally, to avoid breaking the server only build (which shall not have a dependency on GL/GLU/GLES at all), enclose the entire block code in if(BUILD_CLIENT).
* Let ENABLE_GLES appear in cmake_config.h and change its functionalitysfan52019-08-04
|
* Add compatibility to vcpkg buildsystem (#8317)adrido2019-06-10
|
* Find PostgreSQL correctly (#8435)adrido2019-04-07
|
* Don't include and link to gettext if gettext is not found (#8305)adrido2019-03-02
|
* DragonFly BSD is somewhat identical to FreeBSD (#8159)Leonid Bobrov2019-02-03
|
* Revert "Fix another GCC warning"Loïc Blot2018-12-04
| | | | This reverts commit e6811184d5824bf7d8febc157495dbecd3e4e0f7.
"hl opt">.command, arrowconn=conn1} if advtrains.detector.on_node[pts] then atc.send_command(pos) end end end) end, advtrains = { on_train_enter = function(pos, train_id) atc.send_command(pos) end, }, } end function atc.get_atc_controller_formspec(pos, meta) local mode=tonumber(meta:get_string("mode")) or 1 local command=meta:get_string("command") local command_on=meta:get_string("command_on") local channel=meta:get_string("channel") local formspec="size[8,6]".. "dropdown[0,0;3;mode;static,mesecon,digiline;"..mode.."]" if mode<3 then formspec=formspec.."field[0.5,1.5;7,1;command;"..attrans("Command")..";"..minetest.formspec_escape(command).."]" if tonumber(mode)==2 then formspec=formspec.."field[0.5,3;7,1;command_on;"..attrans("Command (on)")..";"..minetest.formspec_escape(command_on).."]" end else formspec=formspec.."field[0.5,1.5;7,1;channel;"..attrans("Digiline channel")..";"..minetest.formspec_escape(channel).."]" end return formspec.."button_exit[0.5,4.5;7,1;save;"..attrans("Save").."]" end --from trainlogic.lua train step local matchptn={ ["SM"]=function(id, train) train.tarvelocity=train.max_speed return 2 end, ["S([0-9]+)"]=function(id, train, match) train.tarvelocity=tonumber(match) return #match+1 end, ["B([0-9]+)"]=function(id, train, match) if train.velocity>tonumber(match) then train.atc_brake_target=tonumber(match) if train.tarvelocity>train.atc_brake_target then train.tarvelocity=train.atc_brake_target end end return #match+1 end, ["W"]=function(id, train) train.atc_wait_finish=true return 1 end, ["D([0-9]+)"]=function(id, train, match) train.atc_delay=tonumber(match) return #match+1 end, ["R"]=function(id, train) if train.velocity<=0 then train.movedir=train.movedir*-1 train.atc_arrow = not train.atc_arrow else atwarn(sid(id), attrans("ATC Reverse command warning: didn't reverse train, train moving!")) end return 1 end, ["O([LRC])"]=function(id, train, match) local tt={L=-1, R=1, C=0} local arr=train.atc_arrow and 1 or -1 train.door_open = tt[match]*arr*train.movedir return 2 end, } function atc.execute_atc_command(id, train) --strip whitespaces local command=string.match(train.atc_command, "^%s*(.*)$") if string.match(command, "^%s*$") then train.atc_command=nil return end --conditional statement? local is_cond, cond_applies, compare local cond, rest=string.match(command, "^I([%+%-])(.+)$") if cond then is_cond=true if cond=="+" then cond_applies=train.atc_arrow end if cond=="-" then cond_applies=not train.atc_arrow end else cond, compare, rest=string.match(command, "^I([<>]=?)([0-9]+)(.+)$") if cond and compare then is_cond=true if cond=="<" then cond_applies=train.velocity<tonumber(compare) end if cond==">" then cond_applies=train.velocity>tonumber(compare) end if cond=="<=" then cond_applies=train.velocity<=tonumber(compare) end if cond==">=" then cond_applies=train.velocity>=tonumber(compare) end end end if is_cond then atprint("Evaluating if statement: "..command) atprint("Cond: "..(cond or "nil")) atprint("Applies: "..(cond_applies and "true" or "false")) atprint("Rest: "..rest) --find end of conditional statement local nest, pos, elsepos=0, 1 while nest>=0 do if pos>#rest then atwarn(sid(id), attrans("ATC command syntax error: I statement not closed: @1",command)) atc.train_reset_command(id) return end local char=string.sub(rest, pos, pos) if char=="I" then nest=nest+1 end if char==";" then nest=nest-1 end if nest==0 and char=="E" then elsepos=pos+0 end pos=pos+1 end if not elsepos then elsepos=pos-1 end if cond_applies then command=string.sub(rest, 1, elsepos-1)..string.sub(rest, pos) else command=string.sub(rest, elsepos+1, pos-2)..string.sub(rest, pos) end atprint("Result: "..command) train.atc_command=command atc.execute_atc_command(id, train) return else for pattern, func in pairs(matchptn) do local match=string.match(command, "^"..pattern) if match then local patlen=func(id, train, match) atprint("Executing: "..string.sub(command, 1, patlen)) train.atc_command=string.sub(command, patlen+1) if train.atc_delay<=0 and not train.atc_wait_finish then --continue (recursive, cmds shouldn't get too long, and it's a end-recursion.) atc.execute_atc_command(id, train) end return end end end atwarn(sid(id), attrans("ATC command parse error: Unknown command: @1", command)) atc.train_reset_command(id) end --move table to desired place advtrains.atc=atc