Commit Graph

351 Commits (2c978345c947563865dbd86809a303e9aa22d4a6)

Author SHA1 Message Date
Unknown 2c978345c9 Redo CMake structure to be usable with VisualStudio+vcpkg 2018-03-23 12:34:52 +01:00
adrido 8d24dc454f Merge branch 'abstract-paintengine' 2017-10-16 12:21:02 +02:00
adrido 6b941202b8 Abstracting PaintEngine 2017-10-16 12:05:17 +02:00
adrido 020eafd7c6 Support for >=27 Mapblocks 2017-02-27 06:53:22 +01:00
Rogier a270c6077b Add an option to prevent keeping sqlite3 database locked for too long
While prescanning a large database, minetestmapper may keep the database
locked for too long, causing minetest to complain, and even bail out
sometimes. Minetest will print warnings like:

	SQLite3 database has been locked for <duration>

The new option --sqlite3-limit-prescan-query-size limits the number
of records queried from the database in a single query, thus limiting
the duration of the lock.

If minetest kept the database locked for 1 second or more, *and* if
the database was modified in that time, minetestmapper will issue a warning,
and suggest using --sqlite3-limit-prescan-query-size.
2016-08-03 12:14:42 +02:00
Rogier aa4d16ec96 Fix name of a variable in db-sqlite3.*
m_BlockPosList -> m_blockPosList
2016-08-03 11:31:38 +02:00
Rogier 2f4a917bb1 Add a function to obtain relative millisecond-timestamps
'Relative' in the sense that they can only sensibly compared to
another time value obtained using the same function during the
same program invocation.
2016-08-03 11:31:38 +02:00
Rogier cbfb7e6979 Make cpack fail if the current git commit id does not match the one at cmake time.
cpack would happily build a package with an incorrect version.
2016-08-03 11:05:12 +02:00
Rogier 1ea50597a9 Fix compilation failure on FreeBSD using gcc4.x
(clang & gcc5 worked fine...)
2016-07-18 10:17:54 +02:00
Rogier 5629ac22df Remove some old debug code
Which also happened to cause compilation failure on FreeBSD + gcc
2016-07-18 10:17:47 +02:00
Rogier 9a9b83e638 Detect libstdc++ ABI incompatibility to allow compiling using clang again.
Currently, this is only relevant when using LevelDB, and a newer version
of libstdc++, which uses a different C++ ABI which clang does not yet support.

A symptom of the problem are unexpected linking failures, caused by undefined
symbols, while other symbols from the same library do not cause errors.

The solution is a workaround, that avoids using the offending symbols, at the
cost of reduced functionality. As this currently only affects the text of an
error message, the impact is minor.
2016-06-28 11:44:09 +02:00
Rogier ee0903ea78 Move empty.cpp to the cmake directory
It is only needed for a compilation test by cmake.
2016-06-28 11:43:46 +02:00
Rogier 8436a92c57 Include targeted installation location in .tar.gz archive file name 2016-06-28 11:43:39 +02:00
Rogier 8e70740c7e Fix building on non-rpm systems when rpm is not installed 2016-06-25 09:41:04 +02:00
Rogier a08af6d0c6 Fix misleading indentation & improve code clarity
Primarily to prevent gcc6 complaining about it, as in practise,
there was no impact on behavior or correctness at all.

At the same time, the code in question was adapted slightly to
clarify the intentions and effects.
2016-06-25 09:41:04 +02:00
Rogier ecc93602fc gcc6 fix: main must be a function now...
The error was not in minetestmapper itself, but in the build infrastructure.
2016-06-25 09:41:04 +02:00
Rogier 7cfc0f9740 Small update to README.rst 2016-06-18 18:25:52 +02:00
Rogier 66483b2c45 Update Changelog 2016-06-18 18:25:52 +02:00
addi 2c2536acd8 Define WIN32 for x64 too to work around the snappy bug 2016-06-18 11:49:50 +02:00
addi 050c2ce6a3 Define _CRT_SECURE_NO_WARNINGS on release build mode
This disables complaints about fopen, getenv, strerror (etc.) being
considered deprecated (by Microsoft).
2016-06-18 11:46:36 +02:00
addi 445071cad5 Fix various compiler warnings on MSVC
I tried to avoid casts whereever it was possible, but for some cases it wasn't.
2016-06-18 11:45:02 +02:00
Rogier fade10aa1b Improve rpm detection and rpm package naming
Also don't build rpm packages on debian, even if rpm is installed.
2016-06-18 11:27:33 +02:00
Rogier a35ebed4ab Allow setting packaging version
I.e. the extra version number that gets appended to the software
version number, and that should be incremented if a newer package
is built from the same software version, and installed or distributed.
2016-06-18 10:06:54 +02:00
Rogier fac2d38589 Make minetestmapper compile on fedora 2016-06-18 00:31:02 +02:00
Rogier 4d07f06362 Remove a bit of unneeded & unused code. 2016-06-17 10:05:11 +02:00
Rogier 6a4c2aeb02 Fix compiler warning (introduced by gcc5) 2016-06-14 18:17:44 +02:00
Rogier 12d0276da7 Fix building without python-docutils installed 2016-06-14 17:24:53 +02:00
addi 67b79f5851 Fix --prescan-world=disabled-force does not work 2016-06-14 04:32:36 +02:00
Rogier 9d7e6b6f58 Create new release (20160531) 2016-05-31 22:02:43 +02:00
Rogier 5eb44bad4b Merge branch 'windows-msvc-compilation' 2016-05-31 22:02:15 +02:00
adrido 8c911257ac Update documentation for MSVC build support 2016-05-31 21:44:34 +02:00
adrido db3879aeaa Add Batch script to update versioninfo.h file 2016-05-31 21:37:58 +02:00
adrido a5a6f6353c Assume that libgd.lib is called "libgd.lib" 2016-05-31 21:37:58 +02:00
adrido 95323cde3a Add wingetopt and configure include folder
wingetopt was taken from https://github.com/alex85k/wingetopt
2016-05-31 21:37:58 +02:00
adrido d61cbdde4f Add dirent.h and configure include folder
dirent.h was taken from https://github.com/tronkko/dirent
2016-05-31 21:37:58 +02:00
adrido 90dccf571c Add required packages via NuGet 2016-05-31 21:37:58 +02:00
adrido 506d7bbcc2 Setup VisualStudio project files 2016-05-31 21:37:58 +02:00
Rogier 38c0ee9962 Add date of generation and generator to build_config.h
In preparation for MSVC compilation support
2016-05-31 21:37:58 +02:00
Rogier db11689b36 Improve comment in build_config.h / build_config.h.in
In preparation for MSVC compilation support
2016-05-31 21:37:58 +02:00
Rogier 82ba727a2d Rename cmake_config.h to build_config.h, and don't make it optional
In preparation for MSVC compilation support
2016-05-31 21:37:58 +02:00
Rogier 984a4e3a97 Rename the file 'version' to 'base-version'
This better reflects its purpose

Also removed a redundant check for existence of the file in CMakeLists.txt

In preparation for MSVC compilation support
2016-05-31 21:37:58 +02:00
addi 797d671980 Fix cpp '#warning', which is not recognised on windows
In preparation for MSVC compilation support
2016-05-31 21:37:58 +02:00
adrido 925e355715 Standard C++ fopen instead of POSIX open
This is required to be able to build on Windows.
open() is not a standard ANSI C/C++ function and only available on POSIX systems.
Using fopen() provides better portability.
2016-05-31 21:37:58 +02:00
adrido c897c75463 Correct include of BlockPos.h 2016-05-31 21:37:57 +02:00
adrido 5761f103e1 Add porting.h
In preparation for MSVC compilation support
2016-05-31 21:37:57 +02:00
Rogier e2b5dce3e3 Update Changelog 2016-05-31 21:37:57 +02:00
Rogier 80a4e4b665 Fix blocks not found while minetest is running, using SQLite3 backend
If mapping while minetest is running and modifying blocks, modified
blocks queried by RowID, would not be found by SQLite3. Querying
by I64 exclusively did not cause such behavior.
2016-05-30 13:09:29 +02:00
Rogier dbec678f6b Close database when done
This prevents messages 'Connection reset by peer' in the postgresql log file.

It might have benefits for other databases as well ?
2016-05-23 12:46:25 +02:00
Rogier ba9166fd79 Add support for the official postgresql backend implementation
The connection strings and database structure of the previous unofficial
versions (by Shadowninja and johhnyjoy) are also still supported, but
support will be removed in a future version of minetestmapper.
2016-05-22 23:43:36 +02:00
proller 3ffda4ab57 Final std::ws skipping not needed when parsing block coordinates, and it makes is.fail() == true 2016-05-17 16:17:41 +02:00