Commit Graph

51 Commits

Author SHA1 Message Date
Sergii Pylypenko
fd42ae95f4 Emscripten: added fontconfig library 2021-11-28 02:04:25 +02:00
Sergii Pylypenko
81796d8c8f Emscripten: build with timidity 2021-11-28 02:04:25 +02:00
Sergii Pylypenko
b38461174b Emscripten: fixed data file path 2021-11-28 02:04:25 +02:00
Sergii Pylypenko
ffe5031dbe Emscripten: add SFX and music to the data file 2021-11-28 02:04:25 +02:00
Sergii Pylypenko
8be06db7fa Emscripten: Include GFX baseset into data file 2021-11-28 02:04:25 +02:00
Sergii Pylypenko
6ff256a3d1 Merge tag '1.11.0-RC1' into master 2021-03-15 21:01:22 +02:00
glx22
35a228f78f Add: [CMake] Install menu and media files 2021-03-09 22:42:25 +01:00
glx22
1d79f55a46 Fix: [CMake] Skip detection for unused libs for dedicated builds 2021-03-04 16:22:58 +01:00
Sergii Pylypenko
53458e55d7 Fixed NDK armeabi-v7a compilation speed 2021-03-03 01:24:43 +02:00
Sergii Pylypenko
870c254ee2 Merge tag '1.11.0-beta2' into master 2021-03-03 00:51:28 +02:00
glx22
54fb4c04e3 Fix: [CMake] libpng header/library mismatch for macos 2021-02-27 02:23:33 +01:00
Patric Stout
dc7ba33b51 Fix: don't link to OpenGL with SDL2 as backend; SDL2 dynamically loads it (#8745)
Although for developers this doesn't change anything, for our
linux-generic binary it changes everything. Without this, the
OpenGL dynamic library is dragged in as dependency, and as it
depends on X11, that will be dragged in too. This is not
something we prefer to have, as that won't run on as many
machines as it could.

SDL2 doesn't depend on OpenGL directly, as it tries to load it
in on runtime. If found, it would work in exactly the same way
as if we would link to OpenGL ourselves. As such, this is
the best of both worlds: our linux-generics have less linked
dependencies, and developers won't notice any difference.

As a side-effect, if someone uses linux-generic on a machine
that does not have any OpenGL package installed, it will
gracefully fall back to the default backend of SDL instead.
2021-02-27 00:34:41 +01:00
Michael Lutz
ef478ade64 Add: [Win32] Video driver that uses OpenGL to transfer the video buffer to the screen. 2021-02-22 22:16:07 +01:00
milek7
b749d6f1cb Fix: Allow building with Allegro and without SDL on Linux 2021-02-21 23:05:50 +00:00
Michael Lutz
6755ff63e1 Add: [OSX] Native font rendering without using FreeType. 2021-02-14 11:48:58 +01:00
pelya
da2947e5e3 Fixed slow compilation on Android, -O1 does not help 2021-02-14 00:31:12 +02:00
Michael Lutz
43326d11d8 Change: [OSX] Use a layer-backed view to speed up drawing. 2021-02-13 22:21:17 +01:00
Owen Rudge
395e015282 Change: Convert .md to .rtf for Windows/Mac packages 2021-02-08 23:23:24 +00:00
glx22
2cbfcd2327 Change: [CMake] Bump minimum version to 3.9 2021-02-07 16:21:13 +01:00
Loïc Guilloux
f7ac2969ef Fix: [CMake] Restore 'games' as default install bindir (#8629) 2021-02-07 16:19:30 +01:00
glx22
99448eedca Fix: [CMake] os/windows/openttd.manifest is not a generated file 2021-02-05 23:41:55 +01:00
pelya
40f573cb91 Fixed Fontconfig not linking on Android 2021-02-05 23:18:42 +02:00
Patric Stout
05df7996a4 Feature: [Actions / CMake] support for generic linux builds (#8641)
These bundles can be opened on any "modern" Linux machine with
a driver that SDL2 supports.

Machines needs at least glibc 2.15, which was released 10 years ago.
It is build with CentOS 7 as base, and only assumes the following
libraries are available on the system:
- libc
- libdl
- libgcc_s
- libpthread
- librt
- libstdc++

All other libraries the game depends on are bundled together with
the game, so users don't need any library installed to use this
bundle. The downside of course is that this increases the binary
size a bit: 30 MiB of libraries are in this bundle.

RPATH is used to make ld-linux find the folder libraries are
stored in; however, system libraries are always used before these,
in the assumption libraries on the user system are more up-to-date.

Using -DOPTION_PACKAGE_DEPENDENCIES=ON switches on packaging
of libraries in the "lib" folder. This requires CMake 3.16 to
be installed; otherwise it will fail.
2021-02-05 12:31:27 +01:00
pelya
3e6f1924bb Fixed SONAME in Android shared library 2021-01-28 00:59:32 +02:00
pelya
8c363ccc9d Fixed slow compilation on Android 2021-01-25 01:10:13 +02:00
pelya
25d6b94c0f Do not use Git revision for Android 2021-01-25 01:07:27 +02:00
pelya
88923bb314 Added timidity support on Android 2021-01-25 01:05:26 +02:00
pelya
3f828e860a Fixed Android compilation with CMake 2021-01-25 01:04:03 +02:00
Michael Lutz
a61a741683 Change: [OSX] Compiling the Cocoa/Quartz video driver cannot be disabled anymore. 2021-01-03 13:25:32 +01:00
Charles Pigott
3dfee979a7 Codechange: Drop libxdg-basedir dependency in favour of finding the directories ourselves 2021-01-02 19:46:08 +00:00
Patric Stout
e0b953b804 Fix: [Emscripten] compile with exceptions enabled, as our AIs depend on it
Also parts of the saveload code does, and some other places. This
does slow down builds, but for most computers this will not be
measurable. At least, the ones I had access to I could not find
a difference in FPS, mainly as that is heavily limited by the Hz
of the screens of the computer.

Either way, it is better to have a full functional game than a
fast one in my opinion
2020-12-25 20:56:25 +01:00
Patric Stout
d15dc9f40f Add: support for emscripten (play-OpenTTD-in-the-browser)
Emscripten compiles to WASM, which can be loaded via
HTML / JavaScript. This allows you to play OpenTTD inside a
browser.

Co-authored-by: milek7 <me@milek7.pl>
2020-12-15 15:46:39 +01:00
frosch
5d278b62cc Codechange: switch to C++17 on all platforms. 2020-12-14 23:50:50 +01:00
glx22
d1fa6b129c Add: [CMake] Option to only build tools/docs 2020-12-13 22:46:46 +01:00
glx22
6fae0b83d9 Add: [CMake] targets to generate documentation 2020-12-12 15:48:04 +01:00
Owen Rudge
6e689e2038 Fix: FreeType is still required on macOS 2020-12-08 09:24:15 +00:00
Patric Stout
ad47ebc1a8 Change: don't encourage the use of LZO
LZO was used before the first version we track in our version
control system, which dates back to Aug 2004. Somewhere before
that time a few savegames / scenarios exist which use LZO. No
other savegame / scenario does since then. Let's not encourage
people to install something that ancient.

There are no scenarios on BaNaNaS that require LZO.
2020-12-06 19:25:46 +00:00
glx22
a06fe8e8a7 Fix: [CMake] cross-compiling requires native tools 2020-12-04 09:49:31 +00:00
Charles Pigott
85ca1c535e Codechange: Set CMAKE_BUILD_TYPE to default to debug if not otherwise set 2020-09-25 21:50:06 +01:00
Charles Pigott
348c231e12 Codechange: Make codestyle for CMake files consistent for 'control' statements 2020-09-25 14:43:13 +01:00
glx
8794c61f25 Change: rewrote generate_widget in CMake 2020-07-16 00:53:26 +02:00
Michael Lutz
00eccbe298 Add: [CMake] Source group definitions to create file filters in generated project files (like the old MSVC projects). 2020-07-10 19:33:00 +02:00
glx22
97592c4093 Add: [CMake] Allow renaming of openttd binary 2020-07-02 21:18:14 +02:00
Dan Villiom Podlaski Christiansen
7fd7b51593 Fix: don't search for SDL, etc., on macOS 2020-06-30 09:43:00 +01:00
Dan Villiom Podlaski Christiansen
c593893b56 Fix: set Mac deployment target
This silences an awful lot of warnings.
2020-06-30 09:43:00 +01:00
Dan Villiom Podlaski Christiansen
04c050f93e Fix: don't use ICU on macOS 2020-06-30 09:43:00 +01:00
Dan Church
506598a80a Fix: [CMake] Fix install paths using GNUInstallDirs 2020-06-18 21:18:53 +01:00
Frédéric Simonis
fb7723a9d7 Add: [CMake] Always export compile commands (#8199) 2020-06-12 16:33:04 +02:00
Frédéric Simonis
90e849198f Fix: [CMake] Error when SDL2 provides SDL2Config 2020-06-07 13:36:57 +02:00
Patric Stout
b7643b1d36 Add: create bundles via CPack
CPack works closely together with CMake to do the right thing in
terms of bundling (called 'package'). This generates all the
packaging we need, and some more.
2020-06-05 19:36:05 +02:00