Commit Graph

42 Commits

Author SHA1 Message Date
dP
f0f93c68ca Merge remote-tracking branch 'upstream/master' 2025-06-14 17:01:17 +05:00
dP
df3a6e321f Merge remote-tracking branch 'upstream/master' 2025-05-14 18:41:13 +05:00
Sam James
4e82091f92 Codechange: use -fno-strict-enums instead of -fno-tree-vrp (#13369)
-fno-tree-vrp is essentially a GCC implementation detail which controls
a powerful source of optimisation information. The linked GCC bug from 2010(!)
shows that -fno-strict-enums was added in response to the bug report, and
we can use that instead. Clang supports it too. Use that instead for both
GCC and (newly) Clang.
2025-01-31 19:45:14 +00:00
dP
a86fd7c621 Update to 15.0-beta1 2024-12-25 20:34:06 +05:00
Loïc Guilloux
e5edfbadcf Codefix: Silence clang-cl warnings (#13066)
* Codefix ad5da0c: clang-cl doesn't need /Zc:preprocessor

* Codefix: use -Wno-multichar with clang-cl
2024-11-08 14:42:12 +01:00
Peter Nelson
ad5da0c924 Codechange: Use __VA_OPT__(,) instead of , ## (#12921)
`__VA_OPT__` is a C++20 standard, `##` is, apparently, a GNU extension.

MSVC needs /Zc:preprocessor adding for whatever reason.
2024-09-12 07:06:15 +01:00
Peter Nelson
55a328c586 Codechange: Replace type-punning with std::bit_cast in squirrel. (#12224) 2024-03-09 17:13:17 +00:00
dP
645bfaffbd Merge remote-tracking branch 'upstream/master' 2024-02-04 22:50:08 +05:30
dP
33ef333b57 Update to 14.0-beta1 2024-02-04 02:18:17 +05:30
Patric Stout
6860a86d45 Codechange: remove all u8 prefix in favour of compile-time option (#11807) 2024-01-16 21:33:53 +00:00
Peter Nelson
890146fecb Codechange: Add -Wsuggest-override compilation flag. 2023-09-25 21:27:45 +01:00
frosch
2ff4248032 Codechange: Enable more warnings. 2023-09-19 22:49:59 +02:00
Patric Stout
53af20910b Fix: [MSVC] generate static libraries / executables correctly with vcpkg -static target (#11208) 2023-08-19 00:43:32 +02:00
Loïc Guilloux
ba95764f1c Fix 57717a2: VS2022 optimisation bug is fixed with MSVC 19.37 (#11172) 2023-08-09 21:43:34 +02:00
dP
e0c85de366 Add /bigobj option to fix windows compilation 2023-06-10 18:55:39 +04:00
dP
c88bb8e91d Update to 13.2 2023-06-10 18:44:21 +04:00
Loïc Guilloux
3c59b8e9ec Fix: disable "redundant move" warnings for GCC (#10803)
GCC warns about redundant std::move while clang warns when they are missing, so we silence the less harmful one
2023-05-10 17:35:11 +00:00
Pavel Stupnikov
59c991fa52 Update to 13.0-RC1 2023-01-03 15:58:14 +04:00
glx22
ffc1f7ce56 Fix 57717a2: [CMake] Don't apply 'cl' workaround to 'clang-cl' 2022-12-30 02:17:38 +01:00
Pavel Stupnikov
be23283677 Update to 13.0-beta1 2022-11-23 14:30:36 +04:00
Loïc Guilloux
c294e8b19f Codechange: [MinGW] use pe-bigobj-x86-64 format for x64 debug builds (#10142) 2022-11-06 11:24:35 +01:00
Loïc Guilloux
57717a20d3 Fix #9966: workaround a VS2022 optimisation bug (#10029) 2022-09-13 12:27:49 +02:00
dP
269352680c Update to 12.2 2022-04-02 15:34:00 +03:00
Loïc Guilloux
c85557e553 Fix: [MinGW] Disable ASLR for x64 Debug builds (#9773) 2021-12-28 21:08:09 +01:00
dP
9df4f2c4fc Update to 12.0-beta1 2021-08-15 14:57:29 +03:00
milek7
36bcd2956a Fix: Building on Haiku 2021-05-24 08:56:18 +02:00
Loïc Guilloux
c0a0d85d20 Fix: [Actions] Annotations not shown for MSVC (#9247) 2021-05-11 21:43:43 +02:00
dP
5881c752f5 Update to 1.11.1 2021-04-19 00:52:41 +03:00
Loïc Guilloux
f306d65ea3 Fix: [CMake] Use the right run-time library depending on vcpkg triplet (#8964) 2021-04-07 12:43:17 +02:00
dP
595606287d Update to 1.11.0-RC1 2021-03-15 12:57:26 +03:00
glx22
99448eedca Fix: [CMake] os/windows/openttd.manifest is not a generated file 2021-02-05 23:41:55 +01:00
dP
5e4506f493 Update to 1.11.0-beta1 2021-01-23 17:31:11 +03:00
Owen Rudge
bbc96fd37c Fix: Don't add -mno-sse4 on arm64 2021-01-08 16:58:14 +00:00
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.
2021-01-02 01:26:26 +01:00
Charles Pigott
348c231e12 Codechange: Make codestyle for CMake files consistent for 'control' statements 2020-09-25 14:43:13 +01:00
laikh
6358ae47de Fix: Remove /MP flag and improve FindEditbin.cmake for Windows clang-cl build 2020-09-01 09:45:48 +01:00
Michael Lutz
de4dc792a9 Fix: [CMake] Re-enable multi-threaded compilation for MSVC project files. 2020-07-05 21:11:09 +02:00
Dan Villiom Podlaski Christiansen
241e3adae8 Fix: use proper flags for suppressing warnings in Clang 2020-06-30 09:43:00 +01:00
Dan Villiom Podlaski Christiansen
0d46e20bd4 Add: add option for forcing coloured compiler output (useful for Ninja) 2020-06-30 09:43:00 +01:00
glx22
63d20c029b Fix 887b912af: MinGW requires an extra link flag with _FORTIFY_SOURCE (#8246)
see #7860
2020-06-28 01:18:28 +02:00
Charles Pigott
887b912af1 Codechange: Only apply FORTIFY_SOURCE in non-debug builds
It requires -O1 (or greater) and GCC spews out warnings if you try using it with -O0
2020-06-27 14:51:14 +01:00
Patric Stout
56d54cf60e Add: introduce CMake for project management
CMake works on all our supported platforms, like MSVC, Mingw, GCC,
Clang, and many more. It allows for a single way of doing things,
so no longer we need shell scripts and vbs scripts to work on all
our supported platforms.

Additionally, CMake allows to generate project files for like MSVC,
KDevelop, etc.

This heavily reduces the lines of code we need to support multiple
platforms from a project perspective.

Addtiionally, this heavily improves our detection of libraries, etc.
2020-06-05 19:36:05 +02:00