Commit Graph

108 Commits

Author SHA1 Message Date
glx22
b0f8890ba5 Codechange: [CMake] detect source files with duplicate names 2023-09-02 20:32:44 +02:00
glx22
c77184aa35 Codechange: [CMake] reduce code duplication 2023-09-02 20:32:44 +02:00
Patric Stout
f120d2beb8
Add: use breakpad to create crash.dmp on MacOS / Linux too (#11202)
Normally only the Windows platform could create a crash.dmp, making
analysing crash-reports from MacOS / Linux rather tricky.
2023-08-20 17:16:08 +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
Patric Stout
7634553d22 Feature: opt-in survey when exiting a game
On first start-up, the game will ask if you want to participate
in our automated survey. You have to opt-in, and can easily opt-out
(via the Options) at any time.

When opt-in, whenever you exit a game, a JSON blob will be send
to the survey server hosted by OpenTTD. This JSON blob contains
information that gives a global picture of the game just played:
- What settings were used
- How many humans vs AIs
- How long the game has been played
- Basic information about the OS / CPU

All this information is kept very generic, so there is no
chance we send private information to our survey server.
Nothing in the JSON blob could identify you as a person; it
mostly tells about the game played. At any time you can see
what the JSON blob includes, by pressing the "Preview Survey
Results" button in-game.
2023-05-14 23:22:02 +02:00
Rubidium
f9b5bc7ee6 Cleanup: the need for SQAutoFreePointers has gone 2023-05-14 22:54:10 +02:00
Rubidium
d9e93edc8b Codechange: replace 'const char *' script API parameters with std::string 2023-05-14 22:54:10 +02:00
Rubidium
77177f7e8b Add: support for std::string parameters in the script API 2023-05-14 22:54:10 +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
Patric Stout
81d4fa6999 Feature: drop ICU-lx in favour of directly interfacing with harfbuzz
This means we have RTL support again with ICU 58+. It makes use of:
- ICU for bidi-itemization
- ICU for script-itemization
- OpenTTD for style-itemization
- harfbuzz for shaping
2023-05-01 22:17:56 +02:00
PeterN
e97bf271dc
Codechange: Make SpriteType, CargoSortType, SourceType and ScriptType enum classes. (#10663)
This avoids a (soft) namespace conflict between the four ST_* enums.
2023-04-16 20:00:55 +01:00
Rubidium
43a7e54067 Add: unit test functionality using catch2 2023-04-16 18:58:21 +02:00
Rubidium
88ead3f102 Add: catch2 v2.13.10 2023-04-16 18:58:21 +02:00
Rubidium
9b56505fec Codechange: split building into a library and executable 2023-04-16 18:58:21 +02:00
Eric Long
20a1b24b45 Fix: build on platforms without native atomic 2023-02-27 17:11:29 +01:00
Michael Lutz
9b3326e3fd Codechange: [Script] Use std::vector instead of a hand-rolled alternative. 2023-02-24 21:46:27 +01:00
Michael Lutz
ca3cb4d2ef Codechange: [Script] Use a class template instead of a function template for squirrel type conversion.
Class templates allow using partial template specialization, which is useful in
case one wants to have a type conversion on a type that is itself templated.
2023-02-24 21:46:27 +01:00
Byoungchan Lee
12f9fbcf39
Fix: [CMake] remove cpack warning on fedora when lsb_release exists (#10437) 2023-02-01 07:41:41 +00:00
Rubidium
67e1d1ad89 Fix: no need to cast enums down to int32; they will be automatically promoted to int64 2023-01-31 20:09:48 +01:00
Rubidium
042f90a9dd Fix: no ScriptEvent sub class should export constructors to scripts 2023-01-25 22:28:30 +01: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
0afa6f2424
Codechange: [CMake] Auto-fill list of #include in script_window.hpp (#10103) 2022-10-24 12:35:58 +02:00
Bouke Haarsma
887b760c88
Change: Strip symbols from bundles except macOS (#10072) 2022-10-10 13:42:54 +01:00
Bouke Haarsma
d0dcb6547e
Change: Don't strip symbols from bundles (#10071) 2022-10-07 12:56:45 +02:00
Peter Nelson
2cdd8b7429 Change: Separate fontcache implementations. 2022-09-25 18:34:24 +01:00
Loïc Guilloux
57717a20d3
Fix #9966: workaround a VS2022 optimisation bug (#10029) 2022-09-13 12:27:49 +02:00
glx22
906613e83a Change: [CMake] Disable newgrf scan for regression check 2022-05-27 19:57:50 +02:00
Loïc Guilloux
7331149dde
Codechange: [CMake] Pass API files list via a file to minimise command line length (#9874) 2022-05-01 00:39:59 +02:00
Nik Nyby
44713a68ed
Add: [CMake] support rpm for fedora and rhel (#9861) 2022-04-19 02:11:42 +02:00
Nik Nyby
6204020b6a
Fix: CMake error message grammar (#9860) 2022-04-19 01:33:29 +02:00
Loïc Guilloux
c85557e553
Fix: [MinGW] Disable ASLR for x64 Debug builds (#9773) 2021-12-28 21:08:09 +01:00
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.
2021-08-15 12:28:51 +02:00
Michael Lutz
10d8c17236 Codechange: Add CMake source group for the saveload compat tables.
While at it, fix the not-working OpenGL sub-group.
2021-07-04 16:31:59 +02:00
Rubidium
3237e97b35 Cleanup: [Script] Use nullptr instead of 0 or NULL 2021-06-17 16:18:30 +02:00
Loïc Guilloux
076f3d26c2
Fix #9329: [CMake] FindVersion.cmake relied on internal cmake variable (#9330) 2021-06-10 22:14:08 +02:00
Owen Rudge
3ce7e31f64 Feature: Sign Windows builds 2021-05-26 13:40:44 +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
glx22
aca20092aa Fix: [CMake] Check nforenum and grfcodec return value 2021-04-24 21:16:06 +02:00
glx22
e62ecbff16 Fix: [CMake] Incorrect dependency checks for GRF 2021-04-24 21:16:06 +02:00
Loïc Guilloux
d4f0b6f434
Fix: [CMake] Auto-fill version details in rev.cpp and ottres.rc (#9066) 2021-04-20 21:38:46 +02:00
Loïc Guilloux
8395c6532e
Fix 799eb31: [CMake] Don't include regression AIs in bundles (#9068) 2021-04-20 18:46:15 +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
Loïc Guilloux
799eb31ff1
Change: [CMake] Copy AI/GS compatibility files to build dir (#8906) 2021-04-02 10:15:45 +02:00
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.
2021-04-01 13:26:34 +02:00
glx22
35a228f78f Add: [CMake] Install menu and media files 2021-03-09 22:42:25 +01:00
glx22
b5770acd50 Codechange: [CMake] Add checks for baseset script parameters 2021-03-09 22:42:25 +01:00
glx22
349dc568ea Fix: [CMake] Remove timestamps from regression output 2021-03-04 16:22:58 +01:00