Josh Cooper
268719ed1f
Integrates googletest
2022-11-25 09:43:04 -08:00
Tim Siegel
8e18d610f5
cmake: Add SDL dep for Linux dfhack; deprecate BUILD_TESTS
...
On Linux, libdfhack.so depends on libSDL.so, but that was not marked
inside CMake. As it's only used via LD_PRELOAD, there was no problem.
But when linking unit tests against it, this becomes necessary. It may
be wise to add a find_package(SDL) to provide the user with more
control, but just a hard-coded "SDL" should work for most installs.
The CTest module creates a BUILD_TESTING option, which clashes
(thematically, not in code) with the existing BUILD_TESTS option.
Resolve it thus:
- Deprecate BUILD_TESTS; it still works, but is marked as an advanced
option so it doesn't show in the CMake UI by default.
- Add a new BUILD_TEST_SCRIPTS that does what BUILD_TESTS used to do,
but is a "dependent" option so it goes away if BUILD_TESTING=OFF.
The up-shot is that, by default, the C++ unit tests will be built
(BUILD_TESTING=ON) and the Lua integration tests are not installed
(BUILD_TEST_SCRIPTS=OFF).
2022-11-25 09:43:04 -08:00
Tim Siegel
c5be87e381
unit tests: Add CTest support, and a trivial first unit test
...
If BUILD_TESTS=ON:
- Adds a 'test' target for ninja
- Adds a library/MiscUtils.test unit test executable
2022-11-25 09:43:04 -08:00
Kelly Kinkade
b6ffaebeda
refine comments
2022-11-18 15:29:02 -06:00
Kelly Kinkade
a16aca0f03
up MSVC warning level to /W3 /WX
...
This makes MSVC warn at a level comparable to what we use on gcc for Linux builds
2022-11-18 15:09:50 -06:00
myk002
3f6e92eda4
finalize 0.47.05-r7 release
2022-09-30 11:58:22 -07:00
myk002
a080872a0a
include other doc build types in ninja clean
2022-08-26 13:37:58 -07:00
lethosor
340b524348
Invoke build.py with cmake-found python
...
In the Buildmaster GCC 4.8 image, `/usr/bin/env python3` appears to find the
system Python (3.4) as opposed to the newer Python (3.6) we install separately.
2022-08-15 17:49:44 -04:00
myk002
488fd67742
output version of found sphinx and python
2022-08-14 23:01:20 -07:00
myk002
f1f207b45b
don't include rst sources in html output
2022-08-13 21:51:36 -07:00
pre-commit-ci[bot]
8f332c5925
[pre-commit.ci] auto fixes from pre-commit.com hooks
...
for more information, see https://pre-commit.ci
2022-08-08 06:39:12 +00:00
myk002
7274a8cd2a
use docs/build.py to do the docs build
...
and add sphinx extension python files to the build deps
2022-08-07 23:35:00 -07:00
pre-commit-ci[bot]
02a8f63ffc
[pre-commit.ci] auto fixes from pre-commit.com hooks
...
for more information, see https://pre-commit.ci
2022-08-06 05:38:20 +00:00
myk002
d04beb0e4a
remove -E for sphinx-build. ninja clean can do it.
2022-08-05 22:21:14 -07:00
myk002
3e30b435fd
clean up docs build deps
2022-08-05 22:20:58 -07:00
myk002
b3a2a10caa
clean up generate doc dirs with ninja clean
2022-08-05 22:05:52 -07:00
myk002
8173f6dd02
Merge remote-tracking branch 'upstream/develop' into docs
2022-07-18 10:59:00 -07:00
myk002
fdd406b722
ensure all files are reread on every docs build
...
this fixes the issue where the Stonesense docs were getting ignored
2022-07-10 20:19:12 -07:00
myk002
8d99b7e6e1
prepare for plugin doc split
2022-07-10 20:19:09 -07:00
Myk
f1cb9b9a83
Build and install text help alongside html ( #2236 )
...
* build text docs alongside html
also:
- capture more doc dependencies that should cause rebuilds
- move intermediate build output (doctree data) into build dir
- allow sphinx build to multitask more for faster completion times
* install text help alongside html help
* update settings in docs build action
2022-07-10 20:14:20 -07:00
lethosor
739871bc0f
Remove Hooks-egg.cpp and related code and configuration options
2022-06-29 23:35:14 -04:00
myk002
88ae50b9ae
update version and changelog to 0.47.05-r6
2022-06-17 15:42:23 -07:00
myk002
585888c2d3
update version, changelog, modules for 0.47.05-r5
2022-05-04 17:21:31 -07:00
Josh Cooper
69ca0d8a28
Improves support for dfhack as a sub-project ( #2058 )
...
Replaces CMAKE_SOURCE_DIR with dfhack_SOURCE_DIR so it can be included in other cmake projects that have a different top-level CMAKE_SOURCE_DIR
2022-03-29 10:28:52 -07:00
myk002
cf54b84fd6
Bump to 0.47.05-r4
2022-03-09 14:27:20 -08:00
lethosor
e7754ea890
Enable -Wunused-variable and fix most errors
2021-09-07 01:16:21 -04:00
lethosor
8d551c7a7c
GCC: enable -Wall and -Werror for all build types
...
Also make protobuf flags consistent across build types so that release builds
pass
2021-09-06 22:56:55 -04:00
lethosor
1295633722
Bump to 0.47.05-r3
2021-09-04 14:00:31 -04:00
lethosor
dde589967a
Bump to 0.47.05-r2, update changelog
2021-07-09 21:21:36 -04:00
myk002
5f00183177
move test harness out of test dir
...
and install to test.lua in top-level scripts directory instead of test/main.lua
2021-03-22 10:15:32 -07:00
lethosor
89e11b56f2
Merge remote-tracking branch 'myk002/myk_no_test_scripts' into develop
2021-03-14 14:42:51 -04:00
lethosor
795bd27d92
Add checks for scripts and luacov submodules
2021-03-10 00:21:46 -05:00
myk002
f7ce441a3f
ensure test/scripts does not exist in dfhack repo
2021-03-07 08:21:14 -08:00
lethosor
032cd64c10
Bump to r1, update submodules and changelog
2021-03-06 13:30:16 -05:00
lethosor
2bb4dbccc6
Replace installed hack/changelog.txt with stub
...
This was incomplete, but people were still referencing it.
Closes #1775
2021-03-06 12:43:31 -05:00
Ben Lubar
95e2582219
add include directory for lodepng
2021-02-24 18:23:15 -06:00
lethosor
49b6e814db
Bump to beta1, update submodules
2021-02-10 21:08:45 -05:00
lethosor
233925ec75
Bump to 0.47.05-alpha0, update xml
2021-01-31 12:10:00 -05:00
lethosor
d2f3ec6076
Bump to 0.47.04-r5, adjust changelog
2021-01-30 21:23:44 -05:00
lethosor
eb6957a167
Bump to 0.47.04-r4 and update submodules
2020-12-24 13:32:44 -05:00
lethosor
b343d00800
Update to 0.47.04-r3 (authors, changelog, and submodules)
2020-10-10 17:31:30 -04:00
Myk Taylor
3e2dd2a396
quickfort docs: dreamfort case study
2020-10-07 14:01:22 -07:00
lethosor
64b1202119
Fix some CMake warnings and extraneous output
2020-09-19 01:17:25 -04:00
lethosor
b85759620f
Switch libzip and xlsxio to be included with add_subdirectory(), disable xlsxio installation
2020-09-18 00:33:41 -04:00
Myk Taylor
1e068ef247
output useful error if new deps are not found
2020-08-15 22:34:43 -07:00
Myk Taylor
a41f7c0998
convert XlsxReader module to xlsxreader plugin
2020-08-09 08:54:42 -07:00
Myk Taylor
8913d43d6f
ensure xlsxio_project gets built before dfhack
2020-08-09 02:59:22 -07:00
Myk Taylor
79415cf097
clean up dep lib vars
2020-08-09 02:24:05 -07:00
Myk Taylor
8753f9feaf
use correct lib dir on 32-bit
2020-08-08 20:42:03 -07:00
Myk Taylor
8a05f09cd6
add libexpat to the build
2020-08-08 20:18:43 -07:00
Myk Taylor
28eaf0ae8b
add libzip to the build
2020-08-08 20:04:46 -07:00
Myk Taylor
18f4786458
Merge remote-tracking branch 'upstream/develop' into quickfort_xlsxio
2020-08-08 17:17:45 -07:00
Myk Taylor
89a6309788
build xlsxio and link it into dfhack, add lua api
2020-08-08 15:24:12 -07:00
lethosor
f2b0f012c9
Bump to 0.47.04-r2
2020-08-08 14:53:24 -04:00
Myk Taylor
88dffd6474
quickfort files and docs
2020-07-18 08:54:24 -07:00
Ben Lubar
1058e40cb0
Enable /bigobj globally on MSVC.
...
This changes the intermediate format used for compiled files from one
that can hold up to 65279 (slightly less than 2^16) addressable sections
to one that can hold 4294967296 (2^32).
Code that uses templates, such as... C++ code... can easily run up
against the smaller limit. This does not affect the finished executable,
only the intermediate object files.
2020-05-09 18:23:18 -05:00
lethosor
6bdbf5b0dd
Update to 0.47.04-r1, update xml, scripts, changelog version
2020-04-25 21:33:02 -04:00
lethosor
d3a007489c
Fix ZLIB_ROOT in newer CMake versions
2020-04-19 12:16:48 -04:00
lethosor
c8a0ac146c
Update submodules, changelog, CMakeLists, Authors
2020-04-04 01:36:52 -04:00
lethosor
91fad90167
Make test base folder customizable, clean up, stop always installing test folder
2020-04-01 00:26:51 -04:00
lethosor
666b35f1f6
Add "bit" suffix to package architecture (hopefully reduces confusion)
2020-03-21 02:42:12 -04:00
lethosor
7d6594bfe8
Add BUILD_TESTS CMake option
2020-03-21 02:39:00 -04:00
Ben Lubar
fe2ea17880
change DF version
...
add -maxerrors and -failfast to check-structures-sanity
2020-03-01 12:15:26 -06:00
lethosor
fb6dd691d7
Update changelog + CMakeLists for 0.47.03-beta1
2020-02-27 19:56:37 -05:00
Ben Lubar
b033a215bd
update for Dwarf Fortress 0.47.03
2020-02-16 18:48:27 -06:00
lethosor
f54c361718
Add an implementation of mifki's sizecheck library (tested on Linux)
2020-02-08 21:18:29 -05:00
Ben Lubar
b375586b67
Update to DF 0.47.02
2020-02-07 16:00:53 -06:00
Ben Lubar
62e3802d26
Update to DF 0.47.01
2020-01-29 14:51:48 -06:00
lethosor
163971ec56
Bump version to 0.44.12-r3
2020-01-19 00:05:43 -05:00
lethosor
8a07426643
Merge branch 'develop' into cmake-cleanup
2019-07-20 15:15:39 -04:00
lethosor
ea0105fa66
Add CMake option to provide custom libstdc++ on macOS ( #1344 )
2019-07-20 11:21:44 -04:00
lethosor
76da2c2aaf
Clean up CMakeLists.txt style
2019-07-16 22:19:11 -04:00
lethosor
ea37eecfb1
Document and warn about old CMake versions with Ninja
...
Resolves #1369
2019-07-16 19:33:33 -04:00
lethosor
9fe24e1b3f
Update changelog and bump version to r2
2018-12-27 19:39:43 -05:00
Ben Lubar
40669d7a63
Change CMakeSettings.json to use Ninja.
...
Add DFHACK_INCLUDE_CORE option for easier development.
2018-07-20 13:29:18 -05:00
lethosor
063602349c
Add a basic test library and a couple GUI module tests (squashed)
...
Also modified Core/Console a bit to get this to actually produce output on
Travis (DFHACK_DISABLE_CONSOLE now allows console output, just not input)
Squashed merge from lethosor/tests
2018-07-18 14:29:13 -04:00
lethosor
1d6c3dc871
Merge remote-tracking branch 'suokko/fix_cmake_dependencies_to_generated_headers' into develop
2018-07-17 00:24:18 -04:00
lethosor
c2a64b3573
Update changelog, xml, bump to r1
2018-07-13 21:16:35 -04:00
lethosor
14725bce59
Make DFHACK_BUILD_ARCH default to 64
2018-07-13 11:04:33 -04:00
Pauli
1226919b16
Fix the CMAKE_BUILD_TYPE help string and make it list of strings in gui
...
While testing the build dependency issues I noticed that cmake C module
overwrites our CMAKE_BUILD_TYPE help. I decided to fix the help and make
the build type a gui string which makes it easier to select build
configuration.
2018-07-13 15:23:59 +03:00
Ben Lubar
7486423e6d
Add CMakeSettings.json for MSVC 2017.
...
MSVC 2017 is binary-compatible with MSVC 2015, so it's safe to allow CMake to be used from within Visual Studio 2017.
2018-07-11 16:57:52 -05:00
lethosor
7afa3690bf
Add support for DFHACK_BUILD_ID
...
Used for BuildMaster builds, for example
2018-07-11 11:47:55 -04:00
lethosor
5d16e5a74c
Bump to 0.44.12-alpha1
2018-07-08 14:26:57 -04:00
lethosor
d68354dc93
Bump to 0.44.12
2018-07-08 00:15:59 -04:00
lethosor
00fa70dae9
Bump to beta2.1 (stonesense fix)
2018-07-07 21:42:01 -04:00
lethosor
9bc8f4abdf
Bump to beta2
2018-07-07 19:45:21 -04:00
lethosor
5a0d00d5d2
Bump to beta1, update scripts, update/fix changelog
2018-07-06 17:56:22 -04:00
lethosor
f0ff96f614
Merge remote-tracking branch 'suokko/multibyte_console' into develop
2018-07-02 10:55:03 -04:00
lethosor
105ddd86d8
Merge remote-tracking branch 'suokko/jsoncpp_upgrade_to_submodule' into develop
2018-06-29 22:33:00 -04:00
lethosor
3c2bfb6f47
Bump to 0.44.11-alpha1, update changelog, xml
2018-06-28 13:31:56 -04:00
lethosor
19627b9221
Bump to 0.44.11
2018-06-24 17:42:31 -04:00
Pauli
84b1361387
Make cuchar check test if c32rtomb is present in system
...
Fix for mac build where cuchar is present but uchar.h is not.
2018-06-22 17:57:37 +03:00
Pauli
84f8a75a2e
Add cuchar fallback implementation for gcc 4 and 5
2018-06-22 17:57:37 +03:00
lethosor
8a1979b8a7
Update version in CMakeLists.txt to 0.44.10-r2
2018-06-21 22:34:11 -04:00
Pauli
87e7c0f7aa
Add cmake configuration to select if stubs include symbols
...
G++ generates structure debug symbols for a few df namespace classes to
generated stub source files. I decided to test how much symbols from
those files would increase binary size. When the result was about double
size I decided to add cmake configuration option to let user easily
select if they prefer complete symbols or reduced size.
2018-06-19 16:16:38 +03: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
lethosor
d35b6d468c
Remove /std:c++11 flag
...
MSVC doesn't actually support this
Also actually indent the "if" block
Ref #1301 , dfhack/df-structures#247
2018-06-14 13:46:39 -04:00
lethosor
284a842cef
Fix typo ( #1301 )
2018-06-13 16:09:38 -04:00
Pauli
750b0d766d
Ask for c++11 because gcc 4.8 is still supported
2018-06-11 00:15:57 +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
lethosor
8cb5e7fa88
Bump version to 0.44.10-r1
2018-05-18 15:08:05 -04:00
Ben Lubar
c6f12e4fef
Remove /O2 flag for MSVC in RelWithDebInfo mode. (causes a warning when building MSVC in Makefile mode)
2018-05-13 17:16:22 -05:00
lethosor
5742e1868a
Update many things for 0.44.10-beta1
...
Including authors update for #1265
2018-05-12 00:07:45 -04:00
lethosor
4fe55639be
Update version/submodules to 0.44.10-alpha1
2018-05-07 00:25:21 -04:00
lethosor
5cd8aa0458
Update downloads to 0.44.09
2018-04-19 12:35:00 -04:00
Ben Lubar
afc2c476bb
Fix remaining warnings on Windows.
2018-04-06 21:22:48 -05:00
lethosor
b6311ec6b8
Bump to 0.44.09-r1
2018-04-04 22:45:34 -04:00
lethosor
c8089db5df
Install the correct libstdc++
2018-04-04 20:01:27 -04:00
lethosor
ceb4cc7577
Add downloads for OS X GCC 7 stdlib
2018-04-04 19:45:44 -04:00
lethosor
26fb047aef
Adjust which changelog files get installed
2018-04-02 22:21:03 -04:00
lethosor
d9d4b3deba
Fix NEWS installation
2018-04-02 14:49:02 -04:00
lethosor
b3c3480c95
Fix doc build dependencies
2018-04-02 14:26:47 -04:00
lethosor
573fcb4bd0
Bump to 0.44.09-alpha1, update news/submodules
2018-04-02 01:00:20 -04:00
lethosor
2c9c935c0e
Update submodules/news, bump to 0.44.08-alpha1
2018-03-29 11:38:55 -04:00
lethosor
93bef3351e
Update submodules/news, bump to beta1
2018-03-28 22:01:27 -04:00
Ben Lubar
40654954a1
Partial preparation for 0.44.07-alpha1.
...
Still need to write release notes and add tags.
2018-03-13 15:49:42 -05:00
lethosor
ad57037711
Merge remote-tracking branch 'BenLubar/cmp0022-warning' into develop
2018-03-10 17:02:34 -05:00
lethosor
d55048dfa1
Merge remote-tracking branch 'BenLubar/ubuntu-bionic' into develop
2018-03-10 16:57:07 -05:00
lethosor
f2ff609e1c
Initial 0.44.06 support, update xml
2018-03-10 16:18:15 -05:00
Ben Lubar
c260996d61
Update required CMake version
2018-03-08 12:26:10 -06:00
Ben Lubar
7bbfd456d3
Fix compile errors on Ubuntu 18.04 Bionic Beaver
2018-03-08 11:42:58 -06:00
Ben Lubar
4ca12621a2
Remove remaining CMP0022 usage
2018-03-08 11:38:46 -06:00
lethosor
0e7ab27850
Bump to r2, update changelog, update submdules
2018-02-21 23:07:53 -05:00
lethosor
d71e252b50
Bump to r1
2018-02-03 22:17:28 -05:00
lethosor
ce1644d655
Bump to 0.44.05-alpha1 and update submodules
2018-01-14 18:21:46 -05:00
lethosor
16c4cde214
Change version to 0.44.04 and update xml
2018-01-11 12:10:21 -05:00
lethosor
677833eeaa
Bump to 0.44.03-beta1
2017-12-29 23:41:47 -05:00
lethosor
0eff9fa084
Bump version to 0.44.03-alpha1 and update submodules
2017-12-25 22:48:54 -05:00
lethosor
6175d7c151
Bump to 0.44.02-beta1
2017-12-23 22:09:35 -05:00
lethosor
43b19c893a
Bump version to alpha1
2017-12-07 14:43:50 -05:00
lethosor
5c9318654d
Change release to alpha0 to avoid error from prerelease-warning
2017-12-04 13:31:42 -05:00
lethosor
7508126bef
Change version to 0.44.02-r0
2017-11-25 00:50:22 -05:00
lethosor
e2f705c76d
Update version in CMakeLists.txt
2017-11-23 16:38:05 -05:00
lethosor
4f38260e8c
Pass the correct architecture to setarch on Linux
...
Fixes #1129
2017-08-21 19:34:46 -04:00
lethosor
48a61420b7
Bump version
2017-07-12 19:06:37 -04:00
Ben Lubar
10078841fb
Remove NDEBUG definition from RelWithDebInfo to enable asserts.
2017-06-27 12:58:29 -05:00
lethosor
2396392b79
Bump to r1
2017-05-13 21:58:07 -04:00
lethosor
cd5944689c
Use find_package() to find Perl, and run it earlier
...
Previously, PERL_EXECUTABLE was set manually in library/CMakeLists.txt, which
caused gunzip.pl to fail if was run before that happened.
2017-04-30 17:36:42 -04:00
lethosor
22db0e4a1e
Bump to 0.43.05-beta2
2017-04-23 17:23:38 -04:00
lethosor
33060c7d0e
Bump to beta1
2017-02-11 20:48:37 -05:00
lethosor
6b3a5ac784
Bump to alpha4
2016-12-29 00:40:43 -05:00
lethosor
7b2e6f299f
Bump version to 0.43.05-alpha3
2016-12-14 13:18:37 -05:00
lethosor
4c0cb6854f
Change minimum GCC version to 4.8
2016-12-11 00:23:16 -05:00
lethosor
13eb5e702b
bump to alpha2
2016-11-22 20:50:19 -05:00
lethosor
5fb986bde1
Warn for GCC versions before 4.8
2016-11-07 15:07:27 -05:00
lethosor
4941c06654
Only use TBZ2 generator on OS X
2016-10-31 02:06:06 -04:00
lethosor
45ff1a0353
Add architecture to package names
2016-10-31 02:05:46 -04:00
lethosor
4d74090b34
Bump version in CMakeLists.txt
2016-10-15 17:27:08 -04:00
lethosor
869e705549
Re-run zlib and pthread scans on Linux/OS X when the build architecture changes
...
Fixes #982 , ref #992
2016-09-15 10:24:57 -04:00
lethosor
38cd830abf
Revert "Added check to rescan zlib and pthread on linux"
...
This reverts commit 36b9ee5cf4
.
Ref #992 , #982
2016-09-15 01:52:54 -04:00