Commit Graph

75 Commits (eca73a810c19ed5cfb3f24cb5560d0735e19ea00)

Author SHA1 Message Date
Patric Stout eca73a810c Change: rebrand 1.12.0 to 12.0
One question that keeps popping up: "when do we release 2.0?".
NewGRF will force that at least 1.16 will be 2.0, but to not wait
for this, let's drop the "1." and be for ever done with that
conversation.

We are following in the footstep of giants here.
3 years ago
Michael Lutz 10d8c17236 Codechange: Add CMake source group for the saveload compat tables.
While at it, fix the not-working OpenGL sub-group.
3 years ago
Rubidium 3237e97b35 Cleanup: [Script] Use nullptr instead of 0 or NULL 3 years ago
Loïc Guilloux 076f3d26c2
Fix #9329: [CMake] FindVersion.cmake relied on internal cmake variable (#9330) 3 years ago
Owen Rudge 3ce7e31f64 Feature: Sign Windows builds 3 years ago
milek7 36bcd2956a Fix: Building on Haiku 3 years ago
Loïc Guilloux c0a0d85d20
Fix: [Actions] Annotations not shown for MSVC (#9247) 3 years ago
glx22 aca20092aa Fix: [CMake] Check nforenum and grfcodec return value 3 years ago
glx22 e62ecbff16 Fix: [CMake] Incorrect dependency checks for GRF 3 years ago
Loïc Guilloux d4f0b6f434
Fix: [CMake] Auto-fill version details in rev.cpp and ottres.rc (#9066) 3 years ago
Loïc Guilloux 8395c6532e
Fix 799eb31: [CMake] Don't include regression AIs in bundles (#9068) 3 years ago
Loïc Guilloux f306d65ea3
Fix: [CMake] Use the right run-time library depending on vcpkg triplet (#8964) 3 years ago
Loïc Guilloux 799eb31ff1
Change: [CMake] Copy AI/GS compatibility files to build dir (#8906) 3 years ago
Patric Stout 501087058e Fix: [CMake] if the regex for STABLETAG is empty, it means it is stable
This feels a bit inside out, but it makes sense: if there are no
"beta1" or "RC1" mentions, it means it is a stable release.
3 years ago
glx22 35a228f78f Add: [CMake] Install menu and media files 3 years ago
glx22 b5770acd50 Codechange: [CMake] Add checks for baseset script parameters 3 years ago
glx22 349dc568ea Fix: [CMake] Remove timestamps from regression output 3 years ago
glx22 b67245d71e Fix: [CMake] CMake may use || at the end of custom commands 3 years ago
glx22 ec9d1a6b8f Fix: [CMake] CMAKE_SOURCE_DIR may contain regex commands 3 years ago
Michael Lutz 9a069faa01 Codechange: [Win32] Try to get an OpenGL 3.2+ context if possible. 3 years ago
Owen Rudge 395e015282 Change: Convert .md to .rtf for Windows/Mac packages 3 years ago
glx22 2cbfcd2327 Change: [CMake] Bump minimum version to 3.9 3 years ago
Patric Stout 9322b40df1
Fix: [CMake] our allegro drivers use v4, so skip v5 if found (#8653)
On some distros allegro v5 is called allegro-5, but on some others
it is not. So this should fix for all distros that allegro v5 is
not being picked up, and only v4 is.
3 years ago
glx22 99448eedca Fix: [CMake] os/windows/openttd.manifest is not a generated file 3 years ago
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.
3 years ago
Owen Rudge a2bd0a14e1 Feature: [Actions] ARM64 builds for Windows 3 years ago
Owen Rudge 2d9e164ec4 Fix: [Actions] Give Universal Mac packages the "universal" suffix 3 years ago
Owen Rudge 0a129bc810 Change: Label Mac builds as "macos" instead of "macosx" 3 years ago
glx22 97d554feb1 Codechange: On regression failure, output the result in a file 3 years ago
Owen Rudge bbc96fd37c Fix: Don't add -mno-sse4 on arm64 3 years ago
Michael Lutz 21a45168bd Codechange: [OSX] CMake source group for OSX files.
This separates the OSX specific files into a proper folder when generating
Xcode project files.
3 years ago
Charles Pigott 10090d0ac6 Add: [CMake] Explicitly support txz for Arch Linux 3 years ago
Charles Pigott 3dfee979a7 Codechange: Drop libxdg-basedir dependency in favour of finding the directories ourselves 3 years ago
Michael Lutz 5b1fb94240 Codechange: [OSX] Prevent the compiler from using SSE4 instructions unless we want to.
This improves compatibility on older systems. We don't need to disable anything
older, as there are no SSE2-only Macs.
3 years ago
Patric Stout 0c3ddc5436
Fix: support non-ubuntu/debian Linux variants with LSB support (#8408)
This now generates a warning, as we would still like people to
make a Pull Request to support the target. But it does continue
with packing to a txz.
3 years ago
Patric Stout 2df182748c Fix: [CMake] automatically detect dependencies for .deb packages 3 years ago
Patric Stout 6228dde3da Fix: [bundle] postfix the distribution for Linux bundles 3 years ago
Patric Stout b8217610ce Fix: [bundle] postfix the architecture for Mac OS bundles
This in preparation for other architectures, like arm64.
3 years ago
Patric Stout 7cdf7c7ca0 Fix: [bundle] custom launch.sh is no longer required for Mac OS
Co-authored-by: Owen Rudge <owen@owenrudge.net>
3 years ago
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>
3 years ago
Owen Rudge b14e3b9b9d Feature: Switch to bzip2 compression for DMG files (supported by OS X 10.4+) 3 years ago
glx22 d1fa6b129c Add: [CMake] Option to only build tools/docs 3 years ago
Michael Lutz a660dce295 Fix: [CMake, MSVC] Don't copy regression exe's into a subfolder as they need have their lang files next to them. 3 years ago
glx22 6fae0b83d9 Add: [CMake] targets to generate documentation 3 years ago
glx22 a06fe8e8a7 Fix: [CMake] cross-compiling requires native tools 4 years ago
Charles Pigott 0a9aed0522 Fix: [CMake] Don't detect XAudio2 if defines are missing 4 years ago
Jelle van der Waa b6615b2cd4 Fix: make reproducible by not embedding timestamps
By default gzip embeds a timestamps which makes building it twice
not reproducible, passing -n skips this embedding behaviour.

Motivation: https://reproducible-builds.org
4 years ago
Charles Pigott a0307652f3 Fix: Work around cmake bug by stripping link target strings 4 years ago
Charles Pigott 348c231e12 Codechange: Make codestyle for CMake files consistent for 'control' statements 4 years ago
laikh 6358ae47de Fix: Remove /MP flag and improve FindEditbin.cmake for Windows clang-cl build 4 years ago