Commit Graph

375 Commits

Author SHA1 Message Date
Gymnasiast 9a9ab47856
Remove Twitch from the rest of the code 2020-05-28 09:28:32 +02:00
tylerleamon 51872f9741
Fix #10634: Guests are unable to use uphill paths out of toilets
Co-authored-by: duncanspumpkin <duncans_pumpkin@hotmail.co.uk>
2020-05-22 19:58:38 +02:00
Duncan 53b627432d
Merge pull request #11596 from AaronVanGeffen/cmake/duktape
Fix #11576: Add duktapeConfig.cmake
2020-05-12 16:45:59 +01:00
Aaron van Geffen 6edf9b03e0 Add duktapeConfig.cmake to ease configuration.
Used for reference:
https://github.com/microsoft/vcpkg/blob/master/ports/duktape/duktapeConfig.cmake.in
2020-05-12 15:13:14 +02:00
duncanspumpkin 9b2dba62d8
Update Replays 2020-05-01 22:05:52 +02:00
Michael Steenbeek 948c393bc1
Fix #8110: Use a single name for the title sequences directory (#11545) 2020-04-30 18:50:26 +02:00
Ted John c67962577a Rename __ENABLE_SCRIPTING__ to ENABLE_SCRIPTING 2020-04-26 14:35:08 +01:00
Ted John ae0c2638e3 Distribute openrct2.d.ts and scripting.md 2020-04-26 14:35:03 +01:00
Ted John e6341f0a42 Get scripting compiling on clang 2020-04-26 14:35:03 +01:00
duncanspumpkin 5e1b58df0c Use updated replay 2020-04-25 18:27:39 -03:00
Michał Janiszewski 777541afeb Disable null-dereference warning for MinGW
Error messages produced by MinGW look like:
```
In file included from ../src/openrct2/world/Banner.cpp:10:0:
../src/openrct2/world/Banner.h:29:8: error: potential null pointer dereference [-Werror=null-dereference]
 struct Banner
        ^~~~~~
```
2020-04-21 13:31:01 +02:00
Michał Janiszewski 5f97637d5e Only suggest final when using non-LTO builds
In LTO builds GCC issues the suggestion-warning from linking stage,
when pragmas are already gone and do nothing.
2020-04-21 13:31:01 +02:00
Michał Janiszewski 4f85810c14 Fix setting extended warning options 2020-04-21 13:31:01 +02:00
duncanspumpkin cdcb76228d Update replay version 2020-04-18 08:14:42 +01:00
Michael Steenbeek 03785b4b24
Update objects to v1.0.14 (#11314) 2020-04-17 14:29:45 +02:00
duncanspumpkin 064f6f7b30 Bump replays version 2020-04-12 10:54:17 +01:00
Michael Steenbeek 82e5ceb30d
Update objects to v1.0.13 (#11011) 2020-03-24 15:37:54 +01:00
Ted John 091eaf8ba2
Try setting rpath on binary during compile (#10957) 2020-03-18 10:39:42 +01:00
Gymnasiast 35a2534adf
Bump replays version 2020-02-15 10:37:35 +01:00
Ted John 5925d5fc10
Improve cmake config for Windows and Visual Studio (#10361)
- Ensure static CRT is used when compiling.
- Allow Ninja generator to work (remove use of CMAKE_VS_PLATFORM_NAME).
- Move CMakeSettings.json to new standard location for VS.
2020-01-25 22:42:27 +00:00
Conrad Kostecki 9df66b1f1f CMakeLists.txt: don't install desktop and icon files without GUI (#10206)
If OpenRCT2 is compiled without GUI (for example as a dedicated server),
it does not make sense to install the desktop and icon files.

Signed-off-by: Conrad Kostecki <conrad@kostecki.com>
2019-11-10 20:05:51 +01:00
Conrad Kostecki fef1906d0d CMakeLists.txt: make discord-rpc and google benchmark optional (#10208)
For a package maintainer, it should be possible to disable the support
for discord-rpc and google benchmark, as it currently always includes them,
when the library if found.
2019-11-09 21:20:16 +01:00
Michał Janiszewski bf18bb8161
Fixup MSVC CMake targets (#10100) 2019-10-15 23:14:00 +02:00
Gymnasiast 7919e91716
Update objects to v1.0.12 2019-08-18 11:59:56 +02:00
Michał Janiszewski 209c6d0513
Make replays only downloadable when configured with tests (#9868) 2019-08-13 21:04:08 +02:00
ζeh Matt 0a5777f11a
Merge pull request #9791 from ZehMatt/replays-v0.0.3
Update replays to v0.0.4
2019-08-12 19:24:49 +02:00
Matt 51eb86aed9
Update replays to v0.0.4 2019-08-12 01:40:12 +02:00
Ted John 056ebc23d6
Update title sequences to v0.1.2c (#9854) 2019-08-11 19:03:29 +01:00
duncanspumpkin 5b1aedede4 Update replay url 2019-07-29 19:14:15 +01:00
duncanspumpkin 39b1a9568f Adjust makefile 2019-07-17 20:19:43 +01:00
duncanspumpkin c9ac156973 Actually use the correct hash and url 2019-07-15 18:59:00 +01:00
duncanspumpkin 38d97a6ee3 Add cmake download replays. fix win download 2019-07-15 18:50:52 +01:00
Michael Steenbeek 8ff0cf9546
Update objects to 1.0.11 (#9529) 2019-07-06 16:50:58 +02:00
Michael Steenbeek c00c8056ce Update title sequences to v0.1.2b (#9480) 2019-06-25 22:41:10 +02:00
Michael Steenbeek 9ed3c39aef
Fix #7913: RCT1/RCT2 title sequence timing is off (#8980) 2019-03-27 21:56:12 +01:00
Gymnasiast 80c57f3804 Bump objects version to 1.0.10 2019-03-20 13:02:32 +01:00
Michael Steenbeek 1b39c97412
Update objects to version 1.0.9 (#8844) 2019-03-10 21:19:08 +01:00
Tom Lankhorst af25da940b
include platform.cmake 2019-02-05 20:16:51 +01:00
Michał Janiszewski 4192ffe57e
Improve cmake for MSVC (#8581)
* Improve cmake for MSVC

* Fix mingw builds
2019-02-05 16:12:58 +01:00
Tom Lankhorst ce6e08c633
Introduce SET_CHECK_CXX_FLAGS 2019-02-03 23:32:51 +01:00
Tom Lankhorst b1bc3d9322
Make build type check case insensitive 2019-01-27 13:44:16 +01:00
Tom Lankhorst 87d9932792
Conditionally enable IPO
Put corresponding functionality in `cmake/ipo.cmake`. This directory
allows for future further separation of build concerns.
2019-01-27 12:58:19 +01:00
Tom Lankhorst 06600440fe
Enable LTO/IPO on Clang and GCC 2019-01-27 12:58:19 +01:00
dchokola d4a3feca29 Introduce DISABLE_GUI for headless build (Fixes OpenRCT2#8542) (#8566) 2019-01-07 06:08:31 +01:00
Michał Janiszewski 322be796e3
Add -Wextra (#8556)
Oops, no idea how it was missing all this time.

Additionally adds:
* `-Wno-clobbered` (conditionally)
* `-Wno-unused-parameter`
2019-01-05 00:15:06 +01:00
Michael Steenbeek 16b9c533d4
Update used objects version to v1.0.8 2018-12-23 13:12:28 +01:00
Ted John 74793a3931 Update objects version 2018-12-09 23:30:40 +00:00
Michał Janiszewski 92b556352b
Allow compilation of testpaint on non-x86 targets (#7989)
This will enable compilation of testpaint on targets different than x86.
It won't function the way it does on x86, but it should provide a way of
tackling various compilation errors that can only be seen in the very
specific environment required by testpaint proper.
2018-09-15 23:37:45 +02:00
Michael Steenbeek 8e276b9820 Require objects version 1.0.6 2018-08-26 21:37:41 +02:00
Michael Steenbeek 674b2a628a Require new version of objects 2018-07-30 21:22:33 +02:00
TheAssassin 3ffc3fa6d8
Remove redundant VS C++ flag 2018-06-30 21:31:05 +02:00
TheAssassin c01a669ca4
Replace more custom flags with CMake options 2018-06-30 21:25:23 +02:00
TheAssassin 73c158fc63
Remove redundant and unnecessary CMake CXX flag 2018-06-30 21:24:48 +02:00
TheAssassin 843f3a61ae
Make CMake require C++17
Requires CMake 3.8+ which is the first version to support C++17 (see https://cmake.org/cmake/help/v3.8/prop_tgt/CXX_STANDARD.html).

Fixes #7749.
2018-06-30 15:13:25 +02:00
Gymnasiast 2172902b47 Update required objects version 2018-06-23 17:39:38 +02:00
Michał Janiszewski 65d1c7f490
Fix and enable -Wtautological-unsigned-zero-compare (#7706) 2018-06-17 22:48:45 +02:00
Aaron van Geffen d5eb1c504d Fix #7685: Disable warning due to problems compiling OpenSSL on macOS. (#7704) 2018-06-17 09:29:05 +02:00
Aaron van Geffen 56250b43ab Use `git describe` to express version in terms of closest tag. 2018-06-12 00:25:04 +02:00
Michał Janiszewski 1d28826b79 Fix -Wdocumentation and add it to default warnings 2018-06-11 09:52:54 +02:00
Aaron van Geffen 3ac32fc433 Add -Wrange-loop-analysis flag to CMakeLists as well. (#7646) 2018-06-10 10:08:35 +02:00
Michał Janiszewski e0dd51cc5d Add -Wlogical-op compiler warning 2018-06-06 22:31:23 +02:00
Michał Janiszewski 320eee0d59
Fix -Wunreachable-code-break and add it to deafult warnings (#7634) 2018-06-06 22:30:21 +02:00
Hielke Morsink 88e9a37d78 Add warning to cmakelist 2018-06-05 15:03:20 +02:00
Michał Janiszewski 7adc3d41a0 Restore the unused-function warning 2018-06-03 19:56:11 +02:00
Michał Janiszewski 545e3c1f85 Reduce verbosity of unpacking (pre)cached downloads 2018-05-30 00:03:53 +02:00
Michael Steenbeek b371087e47
Update objects version to v1.0.2 2018-05-16 14:54:15 +02:00
Gymnasiast d82414dbe9 Update objects to version 1.0.1 2018-04-30 20:34:52 +02:00
Ted John deaa60f8f1 Refactor string conversion between RCT2 and UTF8
Use Win32 API for conversion on Windows for non-1252 code pages instead of built-in tables.
2018-04-18 13:16:20 +02:00
Ted John 0ea81d7df4 Enable warnings as errors 2018-04-14 17:50:32 +01:00
Ted John b8d8d24d21 Get cmake working with msvc for basic game 2018-04-12 23:07:18 +01:00
Michael Steenbeek f98aae12f1 Fix building g2.dat if the path contains spaces/apostrophes (#7388) 2018-04-08 12:25:54 +01:00
Duncan 0ab3d0955c
Merge pull request #7310 from OpenRCT2/json-objects
Add support for new JSON object format
2018-04-08 10:45:55 +01:00
Michał Janiszewski 66d1fa2bc8 Fix MinGW header checks 2018-03-31 23:48:15 +02:00
Ted John bc5f253ce2 Update objects to latest v1.0 2018-03-29 17:56:03 +01:00
Ted John b163064f6c Update objects to v1.0 2018-03-28 23:15:32 +01:00
Ted John 0779859d2b Do not download objects if they already exist 2018-03-28 22:26:13 +01:00
Ted John 0c03fe4dc5 Update objects to v1.0-beta.4 2018-03-27 22:06:16 +01:00
Ted John 046199c660 Update objects download version to v1.0-beta.3 2018-03-26 21:38:10 +02:00
Ted John c465b35037 Download and distribute objects 2018-03-26 21:38:09 +02:00
Aaron van Geffen 9e95488d63 Update title sequence to v0.1.2 release. 2018-03-18 21:04:31 +01:00
Michał Janiszewski ec79334e0c Allow caching title sequences in data/ 2018-02-16 15:34:28 +01:00
Michał Janiszewski 72b54fa2b1 Allow (pre)caching title sequences 2018-02-16 10:04:38 +01:00
Michał Janiszewski da9502ae46 Disable discord's examples to fix 32 bit builds 2018-02-15 23:51:49 +01:00
Michał Janiszewski 6eeda1ec77 Perform more cleanup of CMakeLists.txt files
This moves setting of compilation flags to common file to be used by all
subprojects and explicitly enables only C++ support, skipping whole C
support in CMake.
2018-02-15 23:51:49 +01:00
Michał Janiszewski 8e3a271fb4 Remove support for C code from CMake 2018-02-15 23:51:49 +01:00
Michał Janiszewski 54394d3a21 Enable SSE4.1 for file implementing it 2018-01-01 23:49:09 +01:00
Michał Janiszewski ad687a7ecf Remove use of problematic __DATE__ and __TIME__
Replace with a placeholder to be filled by external tools
2017-12-27 14:50:42 +01:00
Ted John ebf43c2529 Fix testpaint 2017-12-04 19:04:07 +00:00
Ted John 99d7aaa2d6 Remove RCT2 interop 2017-12-04 19:04:06 +00:00
Stefan Winkler 516c5737be Set branch/sha1 defines only for specific files 2017-12-01 21:05:44 +01:00
Michał Janiszewski 3df5dd8391
More compiler warnings 2017-11-27 23:52:17 +01:00
Michał Janiszewski 63e246938f Make sure PORTABLE option is honoured globally 2017-11-16 23:08:03 +01:00
Michał Janiszewski 0f3b6b1590 Explicitly mention the expected root directory for discord-rpc
[ci skip]
2017-11-15 22:39:47 +01:00
Michał Janiszewski 8ec5f3ae82 Move FORCE32 option to top-level CMakeLists.txt 2017-11-15 22:32:51 +01:00
Michał Janiszewski 8f50660ad6 Use proper paths for discord-rpc in cmake 2017-11-15 22:32:51 +01:00
Michał Janiszewski 7612c2881d Add some discord-rpc logging to cmake 2017-11-15 22:32:51 +01:00
Michał Janiszewski 8f3434d084 Add discord-rpc support to Linux 2017-11-15 22:32:51 +01:00
Philip Goto 27e3703fec Add openrct2 URI handling to Linux 2017-11-08 16:14:01 +01:00
Robert Jordan 167662f651 Improvement: more icon resolutions 2017-10-13 22:39:08 +02:00
Michał Janiszewski a4c8d402ad Add missing variable declarations warning for C++ 2017-10-10 22:26:35 +02:00
Michał Janiszewski c4538496c5 Make sure variables are either static or declared externally 2017-10-09 22:59:40 +02:00
Matthias Mailänder c4abbc1167 Associate .sc4 and .sc6 scenarios with OpenRCT2 on Linux. 2017-08-14 09:33:37 +02:00
Matthias Mailänder c86dc803bb Associate .sv4 and .sv6 savegames with OpenRCT2 on Linux. 2017-08-14 09:33:37 +02:00
Matthias Mailänder cb2b764f07 Add an appdata.xml metadata file
for Linux software galleries.
2017-08-13 23:31:10 +02:00
Michał Janiszewski 1df22c889d Update minimum required CMake version to 3.1 2017-08-09 23:30:18 +02:00
Michał Janiszewski d2ec1f0057 Fix CMakeLists.txt to allow static libopenrct2
This allows using CMake-standard `BUILD_SHARED_LIBS` flag to dynamically
set how libopenrct2 should be built.

`cmake -DBUILD_SHARED_LIBS=OFF` will result in `openrct2` statically
linked with `libopenrct2`

Fixes #5918.
2017-08-09 23:30:18 +02:00
Hendrik v. Raven ddd50214bb drop man page compression
It is easier to add the compression manually when desired as to remove
it in all other cases.
2017-07-28 11:20:31 +02:00
Hendrik v. Raven 8438647705 add a project definition
the project definition is used by cmake to fill the subfolder for
${CMAKE_INSTALL_DOCDIR}.
2017-07-28 11:20:31 +02:00
Hendrik v. Raven c81f41c843 convert install destinations to GNUInstallDirs
at least on Linux this makes the build system easily adaptable to the
different distributions. GNUInstallDirs was added in cmake 2.8 so the
version is increades as well.
Testing on all other platforms is necessary, I have only a Linux system
at hand right now.
2017-07-28 11:20:31 +02:00
Matthias Mailänder 3ac5a6897c Add $LIB_SUFFIX to install into right directory (#5915) 2017-07-20 15:41:13 +02:00
Michał Janiszewski 1aed331928 Install openrct2-cli, if exists 2017-07-13 23:22:20 +02:00
Ted John 3545d2d635 Update to 0.1.0 title sequence 2017-07-07 17:35:33 +01:00
Ted John acf3b0cf83 Only include FindPkgConfig once 2017-06-25 14:28:25 +01:00
Michał Janiszewski 61cca38bee Add -Wnon-virtual-dtor warning 2017-06-15 00:26:31 +02:00
Michał Janiszewski 4851a45a83 Detect warnings for all parts of compilation (#5618) 2017-06-15 00:08:41 +02:00
Matthias Mailänder 889b81e070 Make title sequence download optional 2017-06-06 14:29:34 +02:00
Graham Edgecombe 9bd4284733 Fix icon install destination
RENAME was included in the quotes in a previous commit, so cmake treated
it as part of the destination path.
2017-06-03 12:54:00 +02:00
Ted John 85652c3834 Update cmake script to install man pages 2017-06-01 18:45:40 +01:00
Ted John 1e550e9059 Create portable builds
Which set rpath to $ORIGIN so it can be run out the box.
2017-05-31 08:51:51 +01:00
Michał Janiszewski de9adf5445 Allow building headless version as a separate target 2017-05-29 22:39:19 +02:00
Richard Jenkins 7a59eef47e Fix cmake for OpenRCT2-UI on macOS 2017-05-29 22:38:46 +02:00
Ted John 3ebf5be3ea Fix mingw cmake 2017-05-29 22:38:46 +02:00
Ted John c394a997c8 Update install target and export library so 2017-05-29 22:38:45 +02:00
Ted John 82288f92e6 Add cmake for testpaint 2017-05-29 22:38:44 +02:00
Ted John a4c06020f1 Add install target to cmake 2017-05-29 22:38:44 +02:00
Ted John 1f8f354e49 Update root cmake and enable tests 2017-05-29 22:38:44 +02:00
X123M3-256 dbd0067091 Remove logging 2017-05-07 01:01:07 +01:00
X123M3-256 edd830293c Correct path to sprite file 2017-05-07 01:01:07 +01:00
Michał Janiszewski c9eb2bdf77 Update version information in CMakeLists.txt 2017-05-06 20:43:54 +02:00
Ted John b8931bd503 Use C++ mutex instead of SDL for server_list.cpp 2017-05-04 17:29:05 +01:00
Michał Janiszewski da0cadf270 Disable redundant-decls error for mingw 2017-04-16 08:44:37 +02:00
Marijn van der Werf c7115273da Allow some warnings on macOS builds 2017-04-07 22:10:14 +02:00
Michał Janiszewski 2dcf33bd42 Ensure set_format_body macro only accepts properly sized arguments 2017-02-16 16:50:35 +01:00
Michał Janiszewski e09fb6533f Update C++ standard version to C++14 2017-02-06 23:24:55 +01:00
Michał Janiszewski 39f881e1d7 Update CMakeLists.txt for CPack with 0.0.7 version 2017-01-30 13:54:13 +01:00
Michał Janiszewski d9f9fcd41a Fix build names for Travis builds 2017-01-29 23:29:28 +00:00
Ted John a7edba27aa Enable light FX in builds 2017-01-21 12:02:41 +00:00
Michał Janiszewski 77a0c141a7 Merge pull request #5044 from janisozaur/ninja
Add BUILD_BYPRODUCTS entries to CMakeLists for googletest
2017-01-16 09:38:58 +01:00
Michał Janiszewski f4eb156c7a Only enable some of compiler warnings when they are supported
ICC does not support all of the new flags
2017-01-13 12:56:33 +01:00
Michał Janiszewski 68b484464a Make GCC warn about duplicated condition 2017-01-13 11:44:14 +01:00
Michał Janiszewski 411d1fff18 Make GCC suggest final, override keywords 2017-01-13 11:44:14 +01:00
Michał Janiszewski 7d7285cdaa Add more Warnings to CMakeLists 2017-01-13 11:44:14 +01:00
Michał Janiszewski d45337464f Include libzip as system library to fix issues in MinGW build 2017-01-13 10:02:18 +01:00
Michał Janiszewski dc8aff6274 Extend warning list for CMake 2017-01-13 10:02:17 +01:00
Michał Janiszewski cf670deb10 Add -Wshadow to CMakeLists and fix offenders 2017-01-13 10:02:17 +01:00
Marijn van der Werf 2d55c3e940 Only link segments with targets that require them 2017-01-12 13:24:09 +01:00
Michał Janiszewski 9aadf6ce42 Fix #5050 Increase required jansson version to 2.5 2017-01-11 22:02:25 +01:00
Ted John 7ca5857307 Isolate cmake sources to openrct2 2017-01-10 17:29:56 +00:00
Ted John 9387891ad3 Convert tabs to spaces 2017-01-10 17:29:56 +00:00
Michał Janiszewski bd140e78fb Compile fixes for MinGW (#4998)
* Fix mismatched condition in CMakeLists.txt

* Fix MinGW release builds
2017-01-06 07:04:25 +01:00