Commit Graph

125 Commits (d72c3956608aa00afcc1a3115df3b6f664333545)

Author SHA1 Message Date
Ben Lubar 90e0c29a5c
implement posix_memalign on Windows for sizecheck 2020-03-26 17:46:00 -05:00
Ben Lubar 76dba44679
update clsocket 2020-02-24 10:40:28 -06:00
lethosor 0ec12657f4 sizecheck: add MALLOC_PERTURB_ support on non-Linux 2020-02-18 00:44:07 -05:00
Ben Lubar 360e6e9afb
fix possible crash due to something modifying the 4 bytes between the sizecheck header and the actual allocated data on 64-bit 2020-02-14 17:38:18 -06:00
Ben Lubar 3c9f6f79ab
fix some warnings 2020-02-10 19:35:17 -06:00
lethosor f54c361718 Add an implementation of mifki's sizecheck library (tested on Linux) 2020-02-08 21:18:29 -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 a5018c9b81
Exclude jsoncpp default CMake targets.
Removes the lib and include directories from the DFHack package.

Removes the status message that lists the jsoncpp version number.
2018-07-08 23:16:08 -05:00
Pauli 2b79b4cce7 Use jsoncpp 1.8.4 as a submodule
This makes jsoncpp a submodule that can be build directly from git
sources. This changes depends/jsoncpp to depends/jsoncpp-sub to avoid
filename conflict if someone tries to use git bisect.

jsoncpp library name changes to jsoncpp_lib_static.

jsoncpp version is the latest tagged release.
2018-06-14 21:20:46 +03:00
Pauli 424028a0ae jsoncpp: Fix (U)Int64 to long int on 64bit linux
Passing a 64bit integer to Json::Value fails to find matching. Even
tough long long int is also 64bits gcc considres long long int different
to long int. But fix can't be as simple as removing an long from type
because that would reduce 32bit builds to have only 32bit maximum int
size. But standard offers fixed width integer types that can be used to
get correct underlying type depending on platform.
2018-06-14 17:24:50 +03:00
Pauli 01abcb756e Request c++14 support from compilers
All platforms seems to either have compiler supporting c++14. Windows
already requires msvc2015 that supports c++14 which should make it
minimal issue to require c++14 support from all compilers because gcc
is pretty easy to upgrade.
2018-06-10 23:15:33 +03:00
Ben Lubar 9cf4cdbc1f
Simplify CMakeLists.txt for protobuf.
All of the compilers we support have std::unordered_map and std::unordered_set in their standard locations.
2018-05-13 16:55:38 -05:00
lethosor e2cd1fca58 Reorder dfhack-md5 GCC flags, fix another embark-assistant warning 2018-05-13 13:09:51 -04:00
lethosor 016dab3990 Fix more warnings, including stonesense 2018-05-12 22:10:07 -04:00
lethosor fcd8c9606e Fix some warnings on OS X 2018-05-12 18:46:58 -04:00
Ben Lubar afc2c476bb
Fix remaining warnings on Windows. 2018-04-06 21:22:48 -05:00
Ben Lubar 8a53ad543f
Fix clsocket warnings. 2018-04-05 14:46:02 -05:00
Ben Lubar 5d24aa8b62
Fix memset call in md5.cpp 2018-04-05 14:28:00 -05:00
Ben Lubar 1ec96aa992
Disable pointless warnings in protobuf-generated code. 2018-04-05 13:58:10 -05:00
Ben Lubar 7bbfd456d3
Fix compile errors on Ubuntu 18.04 Bionic Beaver 2018-03-08 11:42:58 -06:00
Ben Lubar ac1d6f947f
Update clsocket submodule. See DFHack/clsocket#10. 2017-07-21 10:24:00 -05:00
lethosor 01c6416824 Update submodules 2017-05-13 21:56:08 -04:00
lethosor 03f56f7315 gunzip.pl: use binary output mode
Fixes an issue with LF being turned into CRLF on Windows
2017-04-30 17:06:57 -04: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
Ben Rosser 144675c74b Update bundled tinyxml version from 2.5.3 to 2.6.2
Upstream has moved onto tinyxml2, so this is likely to be the last
release of the original tinyxml (2.6.2 came out in 2011). dfhack
should therefore probably ship 2.6.2, since it's unlikely there will
ever be future fixes to this code. The upstream changelog (taken
from "changes.txt" in upstream tarball) contains many bugfixes and
is included in the commit message below.

2.5.4
- A TiXMLDocument can't be a sub-node. Block this from happening in
  the 'replace'. Thanks Noam.
- [ 1714831 ] TiXmlBase::location is not copied by copy-ctors, fix
  reported and suggested by Nicola Civran.
- Fixed possible memory overrun in the comment reading code - thanks
  gcarlton77

2.5.5
- Alex van der Wal spotted incorrect types (lf) being used in print
  and scan. robertnestor pointed out some problems with the simple
  solution. Types updated.
- Johannes Hillert pointed out some bug typos.
- Christian Mueller identified inconsistent error handling with
  Attributes.
- olivier barthelemy also reported a problem with double truncation,
  also related to the %lf issue.
- zaelsius came up with a great (and simple) suggestion to fix
  QueryValueAttribute truncating strings.
- added some null pointer checks suggested by hansenk
- Sami V�is�nen found a (rare) buffer overrun that could occur in
  parsing.
- vi tri filed a bug that led to a refactoring of the attribute
  setting mess (as well as adding a missing SetDoubleAttribute() )
- removed TIXML_ERROR_OUT_OF_MEMORY. TinyXML does not systematically
  address OOO, and the notion it does is misleading.
- vanneto, keithmarshall, others all reported the warning from
  IsWhiteSpace() usage. Cleaned this up - many thanks to everyone
  who reported this one.
- tibur found a bug in end tag parsing

2.6.2
- Switched over to VC 2010
- Fixed up all the build issues arising from that. (Lots of latent
  build problems.)
- Removed the old, now unmaintained and likely not working, build
  files.
- Fixed some static analysis issues reported by orbitcowboy from
  cppcheck.
- Bayard 95 sent in analysis from a different analyzer - fixes
  applied from that as well.
- Tim Kosse sent a patch fixing an infinite loop.
- Ma Anguo identified a doc issue.
- Eddie Cohen identified a missing qualifier resulting in a compilation
  error on some systems.
- Fixed a line ending bug. (What year is this? Can we all agree on a
  format for text files? Please? ...oh well.)
2016-12-06 21:40:30 -05:00
lethosor 04ad7a0a42 Replace some instances of "cmake -E copy_if_different" with a standalone script
@JapaMala reported that CMake < 3.5 doesn't support copy_if_different with
multiple source files.

https://cmake.org/cmake/help/v3.5/release/3.5.html#command-line
2016-11-02 16:23:32 -04:00
lethosor 7f7102f90c Distribute a gunzip.pl script
gunzip isn't reliably available on Windows, but IO::Uncompress::Gunzip should
be.

Suggested by Quietust.
2016-10-15 12:09:04 -04:00
lethosor ada96b3162 Remove GCC version check in protobuf/CMakeLists.txt
The only thing this check was used for was disabled, and the root CMakeLists.txt
will enforce the minimum GCC version before protobuf is included.
2016-10-10 09:33:52 -04:00
lethosor 1029e0f02a Fix a few whitespace issues
From #992
2016-09-15 01:37:07 -04:00
David Seguin 01a97f6487
Made pthread required for building protobuf 2016-09-08 17:12:42 -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 6e741b1a80 Merge pull request #969 from Qartar/win64
Minor fixes/updates for Visual Studio 2015 Win64
2016-08-10 15:15:44 -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
Carter Bray 3b9d37abe5 Suppress integer conversion warnings inside protobuf source 2016-07-31 17:01:52 -07:00
lethosor 158f18106f Merge remote-tracking branch 'NCommander/vs2015' into develop 2016-07-29 15:30:32 -04:00
lethosor adff13f4ab Lua: re-enable C++ exceptions (re 42c620b) 2016-07-27 21:44:25 -04:00
lethosor 828fee532a Switch to downloading zlib.lib and SDLreal.dll on Windows 2016-07-27 21:08:24 -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 a684e1dd0f Merge remote-tracking branch 'lethosor/64-bit' into develop 2016-07-26 22:54:36 -04:00
Michael Casadevall e10397370b Merge branch 'develop' of github.com:DFHack/dfhack into vs2015 2016-07-11 18:59:22 -05:00
lethosor 2455e36510 Initial 64-bit support 2016-07-03 23:32:43 -04:00
Ben Rosser ae55d2d526 Support linking against an external tinyxml if EXTERNAL_TINYXML is set
As best as I can tell, the copy of tinyxml dfhack uses is unmodified
from whenever it was first bundled. This commit adds an option to CMake,
EXTERNAL_TINYXML, that if set to ON, will attempt to link against a system
tinyxml instead of using the dfhack-bundled one.  It defaults to OFF,
so there is no change in default behavior.

The DFHACK_TINYXML variable is then set to either "tinyxml" or "dfhack-tinyxml"
so the library (and any plugins that need updating) can link against one
or the other.

The FindTinyXML.cmake script was taken from https://github.com/ros/cmake_modules
(licensed under the 3-clause BSD license).

Add license text to new CMake file.
2016-06-29 17:53:16 -04:00