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
Marijn van der Werf
24a0405345
Update testpaint
2017-01-04 18:28:40 +00:00
Michał Janiszewski
fa51d15c34
Remove fontconfig from TTF-less configuration
2017-01-04 16:09:53 +01:00
Michał Janiszewski
34b8c2034e
Allow building without SDL2_ttf
2017-01-04 13:51:49 +01:00
Michał Janiszewski
da8964efab
Fix CMake warnings about mismatched conditions
2016-12-28 15:44:38 +01:00
David CARLIER
1d17725592
Add FreeBSD support
...
At the moment the platform specific code supports only
FreeBSD as OpenBSD and NetBSD does not support the
full path retrieval for an executable, we intentionally
stop the compilation for those platforms.
2016-12-28 14:18:04 +01:00
Michał Janiszewski
c44c93a627
Fix typo in CMakeLists.txt
2016-12-23 00:26:14 +01:00
Graham Edgecombe
f4f2bb97f8
Obey DESTDIR during title sequence installation ( #4899 )
...
The $ is escaped to delay evaluation of DESTDIR until runtime. It's
typically only specified when `make install` runs - not during the cmake
invocation itself.
2016-12-20 23:00:28 +01:00
Ted John
d1a97cc021
Merge pull request #4887 from IntelOrca/use-external-title-sequences
...
Use external title sequences repository
2016-12-20 12:38:52 +00:00
Michał Janiszewski
d197383dcf
Download and extract title sequence in make install
2016-12-19 23:31:53 +00:00
Michał Janiszewski
02ac8fdcee
Add version check for libzip in CMakeLists.txt
2016-12-17 00:04:40 +01:00
Michał Janiszewski
ed7dbb2dbf
Make CMake require and link libzip
2016-12-16 01:25:02 +00:00
Michał Janiszewski
cae3f776f3
Run tests on travis
2016-12-01 16:03:27 +01:00
Michał Janiszewski
33749ccfbe
Lower jansson version requirement to 2.3 for CMake/Debian builds ( #4778 )
...
We still need at least 2.3 for `json_object_foreach`
2016-11-09 12:57:06 +01:00
Max Sandholm
a29bf9912b
Install desktop entry and icons
2016-10-28 12:33:37 +02:00
Michał Janiszewski
03bd98f395
Remove special cases for Launchpad builds
2016-10-22 22:25:30 +02:00
Michał Janiszewski
b1ec40f531
Use -Wno-error=date-time only when compiler supports it
2016-10-22 22:24:19 +02:00
Michał Janiszewski
c70639302c
Add convenience functions to CMakeLists.txt
...
The helper functions allow setting compiler flags only if compiler
supports them.
2016-10-22 22:20:37 +02:00
Michał Janiszewski
f76c7d794c
Make DISABLE_RCT2 imply FORCE32
2016-10-16 00:24:12 +02:00
Michał Janiszewski
53ee6c2e28
Update CMake configuration to produce native, NO_RCT2 builds by default
2016-10-16 00:24:11 +02:00
Marijn van der Werf
d270b2dcb0
Allow unused variables during testing
2016-10-15 13:55:22 +02:00
Michał Janiszewski
599a1cfbcb
Make sure MinGW knows about "%zu" format specifier
2016-10-09 22:43:07 +02:00
Michał Janiszewski
b2e21a0e02
Enable -Wall for CMake targets (with few exceptions)
...
Warnings excluded from -Wall:
* -Wno-unknown-pragmas
* -Wno-unused-function
* -Wno-missing-braces
* -Wno-comment
2016-10-09 22:41:17 +02:00
Marijn van der Werf
a27cebd973
Convert more occurences of osx to macos
2016-10-03 16:12:04 +02:00
Marijn van der Werf
065e23cc56
Update CMake target
2016-10-01 00:15:21 +02:00
Michał Janiszewski
c4a97af854
Rework CMakeLists.txt for newly standalone target ( #4451 )
2016-09-19 21:23:10 +02:00
Marijn van der Werf
4e4a07d1b0
Update testpaint to match develop
2016-09-16 19:45:07 +02:00
Marijn van der Werf
eb39f3fa1c
Only add testpaint on unix for standard builds
2016-09-16 19:44:47 +02:00
Michał Janiszewski
f354c0ec3f
Fix testpaint target for Linux
2016-09-16 19:44:45 +02:00
Marijn van der Werf
df202d86a6
Change folder structure
2016-09-16 19:44:40 +02:00
Marijn van der Werf
51d8d3ace3
Don’t build test target by default
2016-09-16 19:44:24 +02:00
Marijn van der Werf
5a44deac1b
Add dependency to segfiles
2016-09-16 19:44:18 +02:00
Marijn van der Werf
b0a43861e4
Always use GTest output
2016-09-16 19:44:14 +02:00
Marijn van der Werf
efc306b2af
Don’t use google-test
2016-09-16 19:44:11 +02:00
Marijn van der Werf
6b525f5d6f
Update to googletest 1.8
2016-09-16 19:44:10 +02:00
Marijn van der Werf
576e314f61
Fix Cmake project
2016-09-16 19:44:08 +02:00
Marijn van der Werf
0cb3a05f5d
Include google test for cmake
2016-09-16 19:43:28 +02:00
Marijn van der Werf
1b1b26aeb8
Hack cmakelists to compile test project
2016-09-16 19:43:00 +02:00
Michał Janiszewski
b0a8fb0a7c
Enable more warnings for CMake
2016-09-11 11:20:39 +01:00
Michał Janiszewski
3c2569dbea
Add -Wnon-virtual-dtor to CMakeLists.txt
2016-09-10 22:00:35 +02:00
Marijn van der Werf
d1801f860b
Fix CMake builds on macOS ( #4398 )
2016-09-10 17:30:07 +02:00
Michał Janiszewski
27799bc187
Remove unnecessary compiler options
2016-09-04 17:29:43 +02:00
Michał Janiszewski
47e343a88d
Fix PIC options for mingw
2016-09-04 17:27:53 +02:00
Michał Janiszewski
cdc447e92a
Refactor compiler flags in CMakeLists.txt
2016-09-04 17:27:53 +02:00
Michał Janiszewski
f6e9216b7d
Use PIC/pie flags to satisfy Launchpad
2016-09-04 17:27:53 +02:00
Michał Janiszewski
4481859898
Fix Launchpad builds
2016-09-04 17:27:53 +02:00
Michał Janiszewski
d9274ffd82
Enable all warnings as errors for 64 bit builds (cmake)
2016-09-04 12:16:09 +00:00
Michael Steenbeek
fe8f14be58
Fix cmake in directories with apostrophes ( #4366 )
2016-09-02 18:18:59 +00:00
Michał Janiszewski
645bb44eb4
Minor fixes to 64 bit builds
2016-08-08 23:06:10 +01:00
Aaron van Geffen
95ef81b4c8
CMake: split OpenGL check for macOS and Linux.
...
The GL check doesn't work nicely with macOS, while find_package doesn't work well with multiarch on Ubuntu.
2016-08-08 07:25:22 +02:00
Michał Janiszewski
7e5102dd6f
mmap data segment to arbitrary location
2016-08-08 07:25:22 +02:00
LRFLEW
69404bd394
Fix OpenSSL CMake Dependency on macOS
2016-08-08 07:25:22 +02:00
Michał Janiszewski
2e319c4dd6
Fix CMake flags setup
2016-08-01 23:14:42 +02:00
Aaron van Geffen
24fde98837
Define Git variables for CMake.
2016-07-31 17:32:33 +02:00
Michał Janiszewski
550ac03ab7
Enforce proper declarations for every function
...
Enables -Wmissing-declarations for CMake projects
2016-07-14 14:11:50 +02:00
Michał Janiszewski
f82b4b4425
Add -Wundef to CMake-based builds
...
Verifies all the defines are checked properly
2016-07-09 10:06:09 +02:00
Michał Janiszewski
9240280005
Only disable optimisations when using RCT2 segments ( #4007 )
2016-07-09 09:57:29 +02:00
Michał Janiszewski
cdab4bc0fd
Add CMake target not using RCT2, use it for linux64 job
2016-06-16 11:37:52 +02:00
Michał Janiszewski
0ac5c3698b
Fix CMake projects, restore testing with OpenGL disabled
2016-06-12 18:49:26 +02:00
Michał Janiszewski
39472ce3f3
Update CMake targets with OpenGL linking ( #17 )
2016-06-08 13:28:33 +01:00
Michał Janiszewski
f8fa637b68
Require OpenSSL in all but network-less builds ( #3829 )
2016-06-05 21:57:28 +01:00
Michał Janiszewski
a79e793e67
Disable whole-project alignment for MSVC & MinGW ( #3807 )
...
As OpenRCT2/OpenRCT2#3783 has now been merged, this should be
unnecessary.
2016-06-03 19:07:52 +01:00
LRFLEW
859d861f14
Fix CMake OS X Build ( #12 )
2016-06-01 22:35:58 +02:00
Michał Janiszewski
778de4e285
Explicitly require OpenSSL>=1.0.0
...
This is to make sure CMake won't try using OS X's stale version of SSL
2016-06-01 22:23:20 +02:00
Michał Janiszewski
1c459c8186
Add NetworkKey class
2016-05-27 20:28:33 +02:00
Michał Janiszewski
0ddf5ea4c5
Turn on -Werror for all warnings ( #3716 )
...
Exclude int-to-pointer-cast and pointer-to-int-cast for 64 bit builds
for now.
2016-05-23 21:28:59 +01:00
janisozaur
e28d6634fd
Allow builds without -fno-omit-frame-pointer ( #3554 )
...
Disables optimizations done to addresses.c, so frame pointer doesn't
have to be kept, allowing for more aggressive optimizations to be done.
2016-05-09 20:24:37 +01:00
Michał Janiszewski
b30bab65d8
Add experimental build job for x86-64
...
This is **build job only**. It does not work yet.
2016-04-26 22:35:47 +02:00
janisozaur
e7eae9aff2
Fix clang optimized builds ( #3336 )
...
This apparently applies to non-Apple clang only.
When passed any optimization level other than 0, clang took liberty and
re-organised arguments passed to `RCT2_CALL*`, even in presence of
attributes put in place to prevent that: optnone,noinline.
This change allows easier project setup. It was previously possible to
produce a clang optimized build by manually recompiling and relinking
addresses.c.o.
2016-04-18 14:31:38 +01:00
Michał Janiszewski
da80a691bc
Start 0.0.5
...
changelog.txt not updated yet
2016-04-13 14:20:40 +02:00
Michał Janiszewski
e28de49a34
Breakpad integration
...
Provide your own breakpad and point cmake at it.
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
mkdir breakpad && cd breakpad
../depot_tools/fetch breakpad # edit the script to use python2
cd src
LDFLAGS="-m32" CXXFLAGS="-m32" CFLAGS="-m32" CPPFLAGS="-m32" ./configure
LDFLAGS="-m32" CXXFLAGS="-m32" CFLAGS="-m32" CPPFLAGS="-m32" make -j 8
Run cmake on openrct2:
cd openrct2
vim CMakeLists.txt # provide your path to breakpad
mkdir build && cd build
cmake ../ -DWITH_BREAKPAD=ON
make -j 8
./openrct2 # open a game, select "about openrct2", crash
2016-04-09 18:57:14 +02:00
Michał Janiszewski
5fe2623613
Prefer libpng1.6 over libpng1.2 if available
2016-04-02 00:52:53 +02:00
Michał Janiszewski
f372666d30
Lower libpng requirement to 1.2
2016-04-02 00:52:53 +02:00
Ted John
d2cc88099e
Merge pull request #3188 from janisozaur/headers-cmake
...
Add headers to CmakeLists.txt
2016-03-27 22:44:37 +01:00
Michał Janiszewski
2b790e1b5a
Add guard to prevent from building in-source
2016-03-27 23:29:45 +02:00
Michał Janiszewski
8de2310d63
Add headers to CmakeLists.txt
...
This doesn't really affect compilation in any way, but allows
CMake-based project generators to include the header files as well.
Previously headers without accompanying source files (like version.h)
were skipped when generating project files.
2016-03-27 22:22:58 +02:00
Michał Janiszewski
d274abdcce
Fixes for GCC
...
Makes jansson library required as well
2016-02-03 18:23:47 +00:00
Michał Janiszewski
b7820c09cd
Add docs to CPack-generated packages
...
Includes licence, contributors, readme, etc.
2016-01-25 11:17:25 +01:00
Michał Janiszewski
8599468760
Cleanup unused lodepng stuff
2016-01-23 17:13:15 +01:00
Michał Janiszewski
abe6841e0b
Update libraries
2016-01-21 00:01:03 +01:00
Michał Janiszewski
753d430eaa
Add zlib-based compression and decompression
2016-01-20 15:30:59 +01:00
Michał Janiszewski
b8b50684ba
Bump CMakeLists' version to match other places
2016-01-17 16:19:54 +01:00
Michał Janiszewski
e7ea6381cc
Drop support for lodepng
...
All platforms can now use libpng 1.6
2016-01-09 21:50:08 +00:00
Michał Janiszewski
ed8ac6f1cd
Update CMakeLists.txt with new argparse location
...
Argparse library got merged into main repository, there's no need to
call out to it now.
2016-01-09 21:50:07 +00:00
Michał Janiszewski
d29faf25c4
Remove tests
...
Tests were quite old, used very simple framework which did not allow
much fidelity and were probably never executed.
2016-01-09 21:50:06 +00:00
Michał Janiszewski
db95b3ada3
Enable strict aliasing and make sure it gets spotted
2015-12-31 09:15:16 +01:00
Michał Janiszewski
94a3ccdab5
Detect libpng>=1.6 and fall back to lodepng
2015-12-30 13:36:15 +00:00
Michał Janiszewski
9321c53b87
Enable libpng on Linux builds
...
Lodepng is still available.
2015-12-30 13:34:51 +00:00
Michał Janiszewski
c293572d3f
Add SSL dependency from curl
2015-12-28 10:54:06 +01:00
Michał Janiszewski
8ebc3e7f85
Modify CMakeLists to enable STATIC support on Linux
...
This enables compilation with `-DSTATIC=ON` for native Linux builds.
Do note that Linux systems rarely come with static libraries, so it may
not be a popular option.
2015-12-28 10:10:13 +01:00
Michał Janiszewski
f502b5ec1b
Provide explicit option for static linkage
...
This solves woes of missing libraries on some systems by providing
user-accessible option to control static linkage.
2015-12-28 02:27:49 +01:00
Michał Janiszewski
6a5fc90cd4
Fix CMakeLists for MinGW cross-compilation
...
This makes sure that shared library built with MinGW toolchain is linked
statically to *all* its dependencies, including libc, libstdc++, libsdl2
and all the others. This allows producing of working `openrct2.dll` by
cross-compiling.
I hit a bug with libcrypto, a dependency of libssl, which in turn is a
dependency of curl, which creates a `DllMain` entrypoint for static lib
too, but since we don't do anything in ours, this should be safe.
I have only had chance to try it out when cross-compiling, ideally it
should be tested under Cygwin/MSYS too, but it is too bothersome to
setup for me.
2015-12-28 01:17:28 +01:00
Aaron van Geffen
43e193ba10
Remove FontConfig as a required module on OS X.
2015-12-25 14:32:49 +09:00
Michał Janiszewski
9b838aa0ee
Add missing fontconfig lib for Travis and Docker
2015-12-25 01:53:53 +09:00
Aaron van Geffen
dd604afc89
Use FontConfig to find suitable TrueType fonts on Linux and OS X. Fixes #2537 .
2015-12-25 01:53:52 +09:00
Michał Janiszewski
3ba9ec8c81
CMake updates for packaging on Linux
...
This enables install and package targets for make.
You can specify installation prefix with -DCMAKE_INSTALL_PREFIX=path,
when doing `make install`, OpenRCT shall be found there.
You can also use `make package` for creating packaged release files.
2015-12-22 22:47:44 +01:00
Kyle Kirbatski
20df0a0be7
Add .m
files
2015-12-17 11:52:57 -06:00
Gymnasiast
3db574b8bb
Fix building in paths with spaces not working properly on Linux
2015-12-16 20:31:33 +01:00
Michał Janiszewski
7d132d8fe1
Extract and embed sections into binary itself
...
Fixed some CMakeLists.txt problems, made another target for converting
section images into something palatable by ld, modified the linker
script to place these ssection at predefined VMAs and updated openrct2.c
with new checks.
2015-12-16 19:16:27 +01:00
Michał Janiszewski
40059ced39
Add g2 target for easy generation
2015-12-12 23:28:56 +01:00
LRFLEW
c9be2e1bc9
Resolved struct packing error and crash on OS X
2015-12-10 17:29:58 -06:00
Kyle Kirbatski
af382b1884
Switched to -sectcreate instead of mmap on OS X
2015-12-10 16:32:46 -06:00
Michał Janiszewski
1bafbde113
Shift segments in Mach-O to outside of required AS
...
Mach-O defaults to having .text segment starting at 0x1000 RVA, which
clashes with the address space required for mmap to work properly.
This change tells linker to move the segment outside of required AS, and
then some, so that mmap can properly allocate required addresses without
evicting anything else.
2015-12-10 16:32:45 -06:00
Linus Unnebäck
c4356c1ecc
cmake: add iconv libraries
2015-12-10 09:35:38 +01:00
Michał Janiszewski
c4ad2346e3
Fixes for building optimized binary on Linux
...
Use `-DCMAKE_BUILD_TYPE=X`, where X:
- `RELEASE`
- `RELWITHDEBINFO`
- `MINSIZEREL`
Only works for GCC, clang binaries crash for now.
2015-11-18 21:29:08 +01:00
Michał Janiszewski
c0e2a5c7be
Add get_current_rotation function and DEBUG_LEVEL macros
2015-11-02 22:58:15 +01:00
Michał Janiszewski
31f412d0e4
Fixes: scope & types, control flow, cmake, platform support
2015-10-29 20:26:47 +01:00
Michał Janiszewski
f8407176d1
drop no longer needed debug switch for gcc
2015-10-22 23:39:09 +02:00
Michał Janiszewski
10587cb5ab
Port non-VS inline asm to AT&T syntax
...
This is much more liked by other compilers
2015-10-22 23:32:27 +02:00
Alexander Overvoorde
8321b14a33
Link with libdl
2015-10-04 00:10:55 +02:00
Michał Janiszewski
33857d287b
Require speex, use zipped version only when targetting mingw
2015-10-03 15:04:21 +02:00
Michał Janiszewski
9e62198546
Partially revert c93c1c7
, for mingw builds only
...
Conditionally restore old functionality which got broken for mingw
builds with commit c93c1c7
. Allow building with old version of code, but
generate a warning when doing so.
2015-09-29 00:13:27 +02:00
Michał Janiszewski
a16de307d7
Refactor project build scripts
...
This is mostly refactoring of cmake scripts, but also touches build.sh
and install.sh. The cmake should be much more palatable now for major
Linux distributions.
At the same time, new configuration is introduced to Linux version, one
with Twitch enabled.
Please note, however, this change requires update of orctlibs.zip for
mingw builds.
2015-09-28 21:10:21 +02:00
zsilencer
9ac89c2b5e
remove directsound and get sound working for linux native
2015-09-23 09:42:55 -06:00
Michał Janiszewski
b64d4225be
Declare link directories prior to using them
...
As it turns out, you have to declare your link directories before you
use them in cmake, otherwise your executables/binaries will have no
knowledge of them.
This should fix travis builds for mingw.
2015-09-20 23:19:38 +02:00
Michał Janiszewski
4ce0e3a8b2
Linux platform file
...
Add bulk of the platform file for linux, change the compilation target
from shared library to executable for linux, provide necessary changes
to make it compile & load the stub of a process.
Make sure functions are marked as stubs where needed, and implementation
is expected.
2015-09-20 23:19:08 +02:00
Michał Janiszewski
4df8761831
remove windows-only code
...
Step 1 on road towards Linux.
Remove windows-specific code, stub it out where needed and make sure we
can still compile it the way it is.
Take care of Travis' build matrix to include new build configuration.
Install new packages.
2015-09-18 16:01:38 +02:00
Michał Janiszewski
fc533c92c4
Add switch to disable network at compile-time
2015-08-19 01:47:33 +02:00
Michał Janiszewski
189c6bb0ee
travis fixes
2015-08-05 23:25:49 +02:00
Miso Zmiric (Mike Squinter)
ca4f2d0fa3
remove libs from orct repo, add dependencies pull to prebuilds, update unix scripts
2015-07-03 08:45:56 +01:00
Miso Zmiric (Mike Squinter)
c2c9bbf4ef
add twitch integration, part 2
2015-05-25 20:38:33 +01:00
IntelOrca
daf231a2e9
organisation: move peep and staff to sub directory of its own
2014-10-06 19:41:43 +01:00
zsilencer
02cacd45c1
cmake build
2014-09-05 20:35:16 -06:00
zsilencer
6250331bd0
compile test
2014-08-26 21:48:47 -06:00
anyc
7da7e483a3
added .travis.yml and modified CMake scripts
2014-05-24 16:18:28 +02:00
anyc
5e4f313471
added cmake build scripts
2014-05-22 23:47:23 +02:00