Commit Graph

25 Commits

Author SHA1 Message Date
Peter Nelson 55a328c586
Codechange: Replace type-punning with `std::bit_cast` in squirrel. (#12224) 2024-03-09 17:13:17 +00:00
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
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
glx22 ffc1f7ce56 Fix 57717a2: [CMake] Don't apply 'cl' workaround to 'clang-cl' 2022-12-30 02:17:38 +01: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
Loïc Guilloux c85557e553
Fix: [MinGW] Disable ASLR for x64 Debug builds (#9773) 2021-12-28 21:08:09 +01: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
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
glx22 99448eedca Fix: [CMake] os/windows/openttd.manifest is not a generated file 2021-02-05 23:41:55 +01: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