Commit Graph

248 Commits (ae55d2d526908636edd75e14a24e7e271c602bd8)

Author SHA1 Message Date
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
lethosor 27a84a8246 Move scripts to library/scripts
git can't cope with replacing scripts/3rdparty/* submodules with a single
scripts submodule.
2016-06-15 18:45:08 -04:00
lethosor 450fcdba31 Bump version to alpha1 2016-06-14 14:07:01 -04:00
lethosor c1ba435058 Update version and xml 2016-05-27 17:41:23 -04:00
lethosor 8fd25f7320 Set prerelease flag again 2016-05-14 16:07:35 -04:00
lethosor 97f7cd6081 Bump version and update xml 2016-05-12 16:03:33 -04:00
lethosor b53f829737 Update to 0.43.01-alpha0 and update xml 2016-05-10 17:48:50 -04:00
lethosor 24fd47c030 Bump to r1 in CMakeLists.txt 2016-04-23 22:02:39 -04:00
lethosor 3ab963499a Bump to beta1 2016-04-12 21:30:25 -04:00
expwnent 6fd904fd9e Bump version, tweak whitespace. 2016-03-10 09:16:03 -05:00
lethosor b8ca4b5acc Bump version to alpha1 2016-03-04 20:38:25 -05:00
lethosor 5334bd8a6a Bump version to 0.42.06-alpha0 and update xml 2016-02-28 11:18:27 -05:00
lethosor fbe076c5ef Bump version to 0.42.05-alpha1 2016-02-01 10:32:45 -05:00
James Gilles 61d4c9da9c Enable ycmd for project 2016-01-26 20:37:27 -05:00
lethosor c78a1391e1 Update version to 0.42.05 2016-01-18 10:55:21 -05:00
lethosor 63e5b5bc0f Fix ZLIB_ROOT on Windows 2016-01-17 23:04:08 -05:00
lethosor b62a8673bc Bump version to 0.42.04-alpha2 2016-01-09 10:51:55 -05:00
lethosor 8cec8af3b1 CMake: Support cross-compiling
This relies on a working cross-compiler, of course, as well as a separate build
directory for cross-compiled builds, with DFHACK_NATIVE_BUILD_DIR pointing
to an already-successful native build directory (this is needed for protoc).
2016-01-08 21:08:26 -05:00
lethosor 45ba3c0c68 Try specifying ZLIB_ROOT 2016-01-01 20:01:24 -05:00
lethosor 26f66ce8e2 Bump version to 0.42.04 2015-12-30 11:27:19 -05:00
lethosor a75a8cb496 Update version in CMakeLists.txt 2015-12-22 19:35:40 -05:00
lethosor 83603fcf45 Add prerelease build flag and warning script 2015-12-11 20:27:46 -05:00
lethosor e720c498c9 Bump to 0.42.02 2015-12-05 17:57:52 -05:00
lethosor f9af5a71d6 Bump to 0.42.01-r0 2015-12-01 17:36:44 -05:00
TheBloke d84f5f1e52 Re-enable GCC 5 compilation for OSX and Linux, passing -D_GLIBCXX_USE_CXX11_ABI=0 to disable new C++11 name mangling and remain compatible with DF. 2015-11-29 14:26:11 +00:00
lethosor 33302251c3 Update version to r5 2015-11-27 16:45:39 -05:00
lethosor 036c30fa68 Set BUILD_DOCS to OFF by default
See #738
2015-11-26 17:09:53 -05:00
lethosor 9c62ff1d7f Blacklist GCC 5 on Linux again
GCC 5 mangles some symbols, such as "plugin_globals" ->
"plugin_globals[abi:c++11]" (or "_Z14plugin_globalsB5cxx11"), even
when declared with 'extern "C"'. This breaks plugins, in particular.
2015-11-10 18:51:29 -05:00
lethosor 07839c511a Update CMakeLists.txt
* Require Git
* Only complain about Sphinx if BUILD_DOCS is enabled
* Just issue a warning for GCC >= 5.x on Linux
2015-11-10 17:00:49 -05:00
lethosor 7b483a4461 Update version to r4
Ref #737
2015-11-07 20:28:37 -05:00
lethosor 1e42f97e76 Add GCC version to OS X package names and remove trailing newlines 2015-11-07 20:27:48 -05:00
lethosor 178811af43 Add GCC version to package filename on Linux 2015-11-07 18:07:48 -05:00
lethosor 91d5b74c3b sphinx: Depend on CMakeLists.txt 2015-11-07 18:07:12 -05:00
lethosor e176c3ea05 Merge remote-tracking branch 'PeridexisErrant/docs-again' into develop 2015-11-07 15:50:11 -05:00
PeridexisErrant 5826b49d09 Move index.rst to docs directory
Having the docs index in the repo root was a holdover from when it was
the README file.  Now that it's not much use without being built, it's
better to leave the root to README, NEWS, and LICENSE - especially when
one is a html shortcut to the docs index.
2015-11-06 17:09:56 +11:00
lethosor 29533f1f08 Minor sphinx fixes
* Exclude build directories (rst files are copied into them by CPack)
* Fix CMake dependency path to conf.py
* Build in parallel
2015-11-05 22:57:09 -05:00
lethosor 8a0f54aef3 Only install HTML docs 2015-11-05 19:37:37 -05:00
lethosor 481d00433d Only search scripts directory with GLOB_RECURSE 2015-11-04 19:54:41 -05:00
PeridexisErrant 9b1d277ef5 Finish updating sphinx-build changes
Completes 5643119.
2015-10-31 15:39:00 +11:00
PeridexisErrant 5efea525e0 Split GitHub README from Sphinx index
The root of the documentation tree has a different function to the short
readme we want to display on GitHub, which now links to the main docs
(or Bay12 thread, or IRC).  It also renders properly on GitHub, and can
use live-updating status badges because we don't expect it to work
offline.
2015-10-28 10:06:28 +11:00
PeridexisErrant 413a61423a Tweak docs building
Trying to save the warnings to a file only works if the directory
exists.  Also fix digfort docs error.
2015-10-25 10:14:09 +11:00
PeridexisErrant a3803d340e Build docs in place; copy inputs so users can build
Building the docs now works the same way, no matter when it happens - in
a cloned repo or distributed version.

This means all the relative links keep working; and that users or
downstream distributors can rebuild the docs with extra scripts or .rst
files in place.

Finally, it eliminates a large number of potential bugs which only occur
in one build environment and are difficult to reproduce.

Also add headings and this work to future news.
2015-10-24 22:19:52 +11:00
PeridexisErrant a4708d07a1 Allow Sphinx-doc to work with or without cmake
This mainly involved tweaking a few filenames and configuration paths to
allow consistency in all scenarios.  It cleared up a few errors in the
process too!

I also clarified the placement of the LICENSE file, and finished
configuring the Alabaster style.  This required moving some stuff out of
the CMake system to conf.py to avoid later breakage.
2015-10-23 12:34:54 +11:00
lethosor 8a3e0a47dc Require MSVC 2010 on Windows 2015-10-13 16:25:38 -04:00
lethosor f874fac500 Consolidate licenses of other dependencies 2015-10-03 13:42:03 -04:00
expwnent 466c26f093 BUILD_DOCS should be an option. 2015-09-27 04:53:18 -04:00
expwnent e95aea90e0 Fix CMake warning over INTERFACE_LINK_LIBRARIES / policy CMP0022. 2015-09-27 04:30:46 -04:00
expwnent 1bc9b74530 An attempt to make Sphinx recognize all lua dependencies that still doesn't work. 2015-09-27 02:56:37 -04:00
lethosor 6cc399561b CMake: Only run Sphinx when necessary 2015-09-26 17:52:06 -04:00
lethosor 441afcced5 Fix issues with detecting Sphinx 2015-09-26 13:28:06 -04:00