Commit Graph

41 Commits (73b356ec9a74c5cc7777a888534b92297a8dfc69)

Author SHA1 Message Date
Kelly Kinkade ed87075cb8 cmake minimum version 3.21
forced by this being the lowest version that supports vs 2022
2023-04-18 05:41:08 -05:00
Myk Taylor b3a20e771b
remove lua's ability to load binary chunks
to protect against malware attacks
2023-03-25 15:53:42 -07:00
myk002 ac8ac96080 fix warning on windows about possible loss of data 2022-05-13 14:37:13 -07:00
lethosor 1f8392fa0b
Upgrade to Lua 5.3.6 2021-10-08 17:55:55 -04:00
lethosor 1db4a6d1d8
Replace lua/README with version from 5.3.3
Also replaced doc/readme.html reference with external link
2021-06-18 18:07:30 -04:00
lethosor a7232499ac
Silence some warnings from GCC 10
Specifically `gcc (Ubuntu 10.2.0-13ubuntu1) 10.2.0`
2020-12-30 00:04:49 -05:00
lethosor 815821eb93 Merge branch 'develop' into cmake-cleanup
Conflicts:
	depends/lua/CMakeLists.txt
	plugins/CMakeLists.txt
	plugins/devel/CMakeLists.txt
2020-01-18 22:28:43 -05:00
lethosor 8675ff660c Windows+Ninja: Fix build error due to trying to include " dfhack_llimits.h"
Ref #1455
2019-10-04 13:15:58 -04:00
lethosor dcce9ae599 Add quotes around dfhack_llimits.h include for MSVC
Fixes #1455
2019-10-04 13:07:26 -04:00
lethosor 8a07426643 Merge branch 'develop' into cmake-cleanup 2019-07-20 15:15:39 -04:00
lethosor b6678d72ae Move custom lualimit.h to lua dir and rename to dfhack_llimits.h 2019-07-20 14:26:30 -04:00
Pauli a90a6b2a7b Make lua data race free
Fixes tsan trace report between lua viewscreen and other threads running
lua without CoreSuspender lock. But I would assume similar races exists
when using lua from console thread, remote thread and vmethods same time.
2019-07-18 23:04:40 -04:00
lethosor 76da2c2aaf Clean up CMakeLists.txt style 2019-07-16 22:19:11 -04:00
Ben Lubar afc2c476bb
Fix remaining warnings on Windows. 2018-04-06 21:22:48 -05:00
lethosor 38702febf7 Use LUA_(C)PATH_VAR instead of LUA_(C)PATH in luaconf.h
This was apparently changed at some point around Lua 5.3, so a custom LUA_PATH
environment variable could prevent DFHack from initializing.
2017-03-14 00:24:05 -04:00
lethosor 18a8512242 Fix LLONG_MAX/LLONG_MIN in luaconf.h with old glibc versions 2016-08-13 11:40:30 -04:00
lethosor aa47484b2a Enable bit32 library
Deprecated in Lua 5.3, but still contains some useful things, like extract()

Also helps maintain backward-compatibility with scripts that target older DF
versions (e.g. Mifki's dfremote project)
2016-08-09 18:57:24 -04:00
lethosor adff13f4ab Lua: re-enable C++ exceptions (re 42c620b) 2016-07-27 21:44:25 -04:00
Vitaly Pronkin 8916aba3bf win64 fixes (partial)
cherry-picked from 2f734ae2317060edb83021f17cffc966c435ad7b
2016-07-27 19:46:49 -04:00
Vitaly Pronkin 4dd411e862 Update Lua config and patch checkdp 2016-07-26 23:29:26 -04:00
lethosor e2c6350978 Update Lua to 5.3.3 2016-07-26 23:23:26 -04:00
lethosor 2455e36510 Initial 64-bit support 2016-07-03 23:32:43 -04:00
Alexander Gavrilov 7ea8e25cd3 Rename the LUA_PATH/LUA_CPATH environment variables to avoid conflicts.
If a user has a standalone lua installation with these variables
configured, it should not confuse dfhack into looking for things
in wrong places.
2014-03-31 14:15:57 +04:00
Alexander Gavrilov a70fbf41d4 Reapply dfhack-specific lua build configuration. 2014-03-31 14:15:50 +04:00
Alexander Gavrilov 1132bea917 Update to Lua 5.2.3 2014-03-31 14:15:09 +04:00
Alexander Gavrilov 16ae6cb1fb Fix lua bug: 'peaceful' unwind of yielded pcall doesn't restore errfunc.
I.e. if the pcall results in no error, but a yield happens inside it,
the active errfunc is not restored to its previous value.
2012-06-17 16:14:14 +04:00
Alexander Gavrilov eeaae916ed Reapply dfhack-specific lua build configuration. 2012-06-17 16:01:46 +04:00
Alexander Gavrilov 534367546d Update to Lua 5.2.1 2012-06-17 16:01:46 +04:00
Alexander Gavrilov ee7100216e Fix lua interpreter bug: the C call counter is already unwound by yield.
Decrementing it causes underflow and subsequent spurious stack overflow.
2012-04-16 18:32:12 +04:00
Alexander Gavrilov d109b6570b Add dfhack.with_suspend(f[, args...]) that calls f with core suspended.
The lock is properly removed in case of error, which is then propagated.
Just for fun, it also can be yielded from within in a coroutine.
2012-04-01 19:38:42 +04:00
Alexander Gavrilov afe4eba957 Improve performance of the persistent data api, and wrap it for lua.
Use an stl table for string keys to avoid linear cost of lookup.

This uncovered a bug in the new luaL_getsubtable function.
2012-04-01 16:43:40 +04:00
Alexander Gavrilov 0f41608ed4 Pull console output support and REPL out of dfusion into core lib. 2012-03-31 15:40:54 +04:00
Alexander Gavrilov 9384f0c842 Update lua to 5.2 and fix obvious breakage due to obsolete api. 2012-03-31 12:11:43 +04:00
Alexander Gavrilov f6c6218909 Temporary tweak: patch in __pairs and __ipairs from 5.2 into lua 5.1. 2012-03-29 11:32:22 +04:00
Warmist 3761426ef5 Extern "C" mess fixed, bitlib mess fixed, bitlib added to autoload. 2012-03-26 18:48:24 +03:00
Alexander Gavrilov 5d471a2a74 Since lua is now compiled as c++, don't declare api functions extern "C". 2012-03-25 11:11:45 +04:00
Quietust e779a076fc Fix Lua compilation on win32 - extern must come BEFORE __declspec 2012-03-24 09:11:25 -05:00
Petr Mrázek 8a847dbaba Tweaks and cleanups
Removed t_virtual.
Made lua use C++ compiler
Removed many silly exception types from Error.h and renamed the rest.
Removed Brush classes from tiletypes plugin.
2012-03-24 12:13:51 +01:00
Alexander Gavrilov ccc8fac166 Get rid of the write mode field table in metamethods.
Two separate tables can be confusing, e.g. if a builtin field
overrides a writable custom one only in the read table.
2012-03-23 10:56:29 +04:00
Alexander Gavrilov dbbd9acfad Export the type tree with enum keys to lua. 2012-03-19 20:12:27 +04:00
Petr Mrázek eb4757043b Move depends out of main library, make them (static) libraries. 2012-03-13 14:46:48 +01:00