Charles Pigott
3dfee979a7
Codechange: Drop libxdg-basedir dependency in favour of finding the directories ourselves
2021-01-02 19:46:08 +00:00
Charles Pigott
860c270c73
Codechange: Replace assert_compile macro with static_assert
2020-12-27 10:55:42 +00:00
Jonathan G Rennison
0e017f6233
Codechange: Enable FINAL, (un)likely, __attribute__ when building with clang
2020-12-27 10:30:55 +00:00
Jonathan G Rennison
fc52d3df50
Codechange: Use likely/__builtin_expect for assertion macros
2020-12-27 10:30:55 +00:00
Jonathan G Rennison
5cf28be742
Codechange: Add support for verbose asserts
2020-12-27 10:30:55 +00:00
Jonathan G Rennison
eb74179c6d
Codechange: Unconditionally use static_assert
...
We're well past having to support non-C++11 compliant compilers now.
2020-12-27 10:30:55 +00:00
Charles Pigott
52f3abba6e
Cleanup: Remove unnecessary assert_tcompile macro
2020-12-27 10:30:55 +00:00
Jonathan G Rennison
755fa8196f
Use PRI macros where available for 64 bit printf format codes
2020-10-24 10:52:57 +01:00
Jonathan G Rennison
5c43de8ef8
Add padded printf 64 hex defines
2020-10-17 14:23:01 +01:00
Jonathan G Rennison
737ced9f50
Merge branch 'master' into jgrpp
2020-07-07 17:28:19 +01:00
TechGeekNZ
716c883737
Fix: Globally apply preprocessor directive coding style
...
Global; except for the 32-bit SSE blitter, which has some #DEFINEs
in not-very-nice places.
2020-07-03 09:08:46 +02:00
TechGeekNZ
cf8ea74733
Update: Merge branch 'jgrpp_master_cmake' into jgrpp_cmake
2020-06-28 21:56:43 +01:00
Niels Martin Hansen
9895ced6af
Fix: Silence some warnings when building with clang-cl on VS 2019
...
Clang-cl presents as both _MSC_VER and __clang__ in the preprocessor which makes some things confusing.
2020-06-18 08:56:27 +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
Jonathan G Rennison
cbdd9f84d8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/console_gui.cpp
# src/lang/korean.txt
# src/video/sdl2_v.cpp
# src/video/sdl2_v.h
# src/window.cpp
# src/window_gui.h
2019-11-12 18:43:10 +00:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
Jonathan G Rennison
03fbe87752
Merge branch 'master' into jgrpp
2019-10-12 00:56:56 +01:00
Joe Stringer
66c32533ec
Fix: [Cygwin] Fix missing definitions in stdafx
...
Fix the following compile errors:
In file included from openttd/src/debug.h:15:0,
from openttd/src/string.cpp:13:
openttd/src/cpu.h:35:19: error: 'uint' was not declared in this scope
bool HasCPUIDFlag(uint type, uint index, uint bit);
openttd/src/string.cpp: In function 'char* strcasestr(const char*, const char*)':
openttd/src/string.cpp:548:7: error: 'strncasecmp' was not declared in this scope
if (strncasecmp(haystack, needle, needle_len) == 0) return const_cast<char *>(haystack);
openttd/src/strgen/strgen_base.cpp: In function 'void EmitPlural(Buffer*, char*, int)':
openttd/src/core/alloc_func.hpp:136:6: error: 'alloca' was not declared in this scope
(T*)alloca((num_elements) * sizeof(T)))
Signed-off-by: Joe Stringer <joe@wand.net.nz >
2019-10-07 21:36:00 +02:00
glx22
49f3592ac9
Fix: vcpkg used to patch lzma.h to define LZMA_API_STATIC for static builds ( #7614 )
...
(cherry picked from commit 846fc8fe09
)
2019-07-09 08:48:07 +01:00
Jonathan G Rennison
36eb4165b8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/bridge_map.h
# src/crashlog.cpp
# src/industry.h
# src/linkgraph/linkgraph_type.h
# src/order_type.h
# src/saveload/afterload.cpp
# src/settings.cpp
# src/settings_type.h
# src/smallmap_gui.cpp
# src/spritecache.cpp
# src/stdafx.h
# src/table/settings.h.preamble
# src/train.h
# src/vehicle.cpp
# src/viewport.cpp
# src/viewport_func.h
# src/widgets/station_widget.h
# src/zoom_func.h
# src/zoom_type.h
2019-07-08 16:19:07 +01:00
glx22
846fc8fe09
Fix: vcpkg used to patch lzma.h to define LZMA_API_STATIC for static builds ( #7614 )
2019-06-03 00:18:28 +02:00
glx22
19a6829ea2
Fix #7553 : check bounds when loading strings ( #7554 )
...
(cherry picked from commit cef9a76c3f
)
2019-05-02 18:35:47 +01:00
glx22
cef9a76c3f
Fix #7553 : check bounds when loading strings ( #7554 )
2019-05-01 19:12:37 +02:00
Jonathan G Rennison
674732cd68
Merge: Codechange: Use null pointer literal instead of the NULL macro
2019-04-11 18:14:13 +01:00
Jonathan G Rennison
f5747bf753
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/genworld_gui.cpp
# src/group_gui.cpp
# src/saveload/saveload.cpp
# src/settings_gui.cpp
# src/toolbar_gui.cpp
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
# src/widgets/dropdown.cpp
# src/widgets/dropdown_type.h
2019-04-11 18:12:22 +01:00
Michael Lutz
baf9229931
Codechange: Replace AutoDeleteSmallVector with direct std::vector use in text layout code.
2019-04-09 22:45:15 +02:00
Jonathan G Rennison
ba34ec7ade
Merge branch 'master' into jgrpp
...
Replace build and refit, and group collapse implementations
Fix template creation build and refit
# Conflicts:
# Makefile.bundle.in
# config.lib
# src/animated_tile.cpp
# src/blitter/32bpp_anim.hpp
# src/blitter/32bpp_base.hpp
# src/blitter/8bpp_base.hpp
# src/blitter/null.hpp
# src/build_vehicle_gui.cpp
# src/command.cpp
# src/command_func.h
# src/console_gui.cpp
# src/core/smallstack_type.hpp
# src/date.cpp
# src/debug.cpp
# src/genworld_gui.cpp
# src/ground_vehicle.hpp
# src/group_gui.cpp
# src/lang/korean.txt
# src/linkgraph/linkgraph_gui.h
# src/main_gui.cpp
# src/misc_gui.cpp
# src/network/core/game.h
# src/network/core/packet.cpp
# src/network/core/udp.cpp
# src/network/core/udp.h
# src/network/network_content.cpp
# src/network/network_type.h
# src/network/network_udp.cpp
# src/newgrf_house.h
# src/openttd.cpp
# src/order_cmd.cpp
# src/order_gui.cpp
# src/os/unix/crashlog_unix.cpp
# src/os/windows/crashlog_win.cpp
# src/osk_gui.cpp
# src/pathfinder/opf/opf_ship.cpp
# src/rail_cmd.cpp
# src/rail_gui.cpp
# src/saveload/saveload.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/smallmap_gui.h
# src/station_base.h
# src/station_cmd.cpp
# src/table/gameopt_settings.ini
# src/table/newgrf_debug_data.h
# src/table/settings.ini
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/train_gui.cpp
# src/vehicle.cpp
# src/vehicle_gui.cpp
# src/vehiclelist.cpp
# src/viewport.cpp
# src/widgets/dropdown.cpp
# src/window_gui.h
2019-03-27 18:12:04 +00:00
Patric Stout
72c5f2b3ee
Remove: DOS support
...
In 10 years there was no active development on DOS. Although it
turned out to still work, the FPS was very bad. There is little
interest in the current community to look into this.
Further more, we like to switch to c++11 functions for threads,
which are not implemented by DJGPP, the only current compiler
for DOS.
Additionally, DOS is the only platform which does not support
networking. It is the reason we have tons of #ifdefs to support
disabling networking.
By removing DOS support, we can both use c++11 functions for threads,
and remove all the code related to disabling network. Sadly, this
means we have to see DOS go.
Of course, if you feel up for the task, simply revert this commit,
and implement stub c++11 functions for threads and stub functions
for networking. We are more than happy to accept such Pull Request.
2019-03-19 23:22:51 +01:00
Jonathan G Rennison
5e6d283463
Merge branch 'master' into jgrpp
...
Remove the viewport sign cache as this is now superseded by the kd tree
implementation
# Conflicts:
# src/crashlog.cpp
# src/lang/english.txt
# src/misc.cpp
# src/pathfinder/follow_track.hpp
# src/pbs.cpp
# src/rail_cmd.cpp
# src/saveload/vehicle_sl.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/ship_cmd.cpp
# src/station.cpp
# src/station_base.h
# src/station_cmd.cpp
# src/table/settings.ini
# src/thread/thread_morphos.cpp
# src/town_cmd.cpp
# src/train_cmd.cpp
# src/viewport.cpp
# src/waypoint.cpp
2019-03-13 03:38:26 +00:00
Patric Stout
1c5ea33099
Fix: warnings when compiling for a recent version of Haiku
...
This might break older Haiku versions, but it is hard to tell.
2019-03-05 22:22:00 +01:00
Patric Stout
f58db44ff2
Remove: BeOS support (deprecated by Haiku)
...
In 10 years there is no commit to change how BeOS works, and we
have no active maintainer for it. It is unlikely it works in its
current state (but not impossible).
With the arrival of SDL2 (and removal of SDL), BeOS is no longer
support. SDL2 suggests to use Haiku instead of BeOS.
2019-03-05 22:03:00 +01:00
Patric Stout
ad30d04b5e
Codechange: removed some left-behind __NDS__ references
2019-03-05 22:03:00 +01:00
Patric Stout
7784d77713
Remove: MorphOS / AmigaOS support
...
In 10 years there is no commit to change how MorphOS works, and we
have no active maintainer for it. It is unlikely it works in its
current state (but not impossible).
With the arrival of SDL2 (and removal of SDL), MorphOS is no longer
support. There is an SDL2 port for MorphOS, but it is not maintained
by upstream SDL2, and nobody can currently test it out.
If anyone wants to re-add MorphOS, please do (revert this patch,
fix the problems, and create a Pull Request). If you need any help
doing so, let us know! It is not that we don't like MorphOS, it is
that we don't have anyone fixing the problems :(
2019-03-05 22:03:00 +01:00
Jonathan G Rennison
4f1d54564e
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/debug.cpp
2019-01-02 16:09:44 +00:00
glx
c540d72445
Fix: [Win32] WIN32 may not be defined, always prefer the compiler predefined macro _WIN32
2018-12-27 18:09:16 +01:00
glx
3be6ab555c
Change: use vcpkg integration in Visual Studio
...
Removes the need for us to provide OpenTTD-useful package
2018-12-26 17:29:11 +01:00
Jonathan G Rennison
5661763d6a
Merge branch 'crashlog_improvements' into jgrpp
2018-07-26 19:04:34 +01:00
Jonathan G Rennison
7f027f8dca
Add tile info dump function and assert variants
2018-07-26 18:48:53 +01:00
Jonathan G Rennison
035f5622b9
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/console_cmds.cpp
# src/landscape.cpp
# src/linkgraph/linkgraphschedule.cpp
# src/openttd.cpp
# src/roadveh_cmd.cpp
# src/toolbar_gui.cpp
# src/train_cmd.cpp
# src/vehicle.cpp
# src/viewport.cpp
# src/window_type.h
2018-07-24 18:30:42 +01:00
Charles Pigott
63898f61b0
Codechange: Rearrange struct packing defines and make MinGW use _Pragma pack style
2018-07-19 20:24:17 +02:00
Jonathan G Rennison
fd4d9591c1
Merge branch 'save_ext' into jgrpp
2018-06-06 01:56:07 +01:00
Jonathan G Rennison
f05ca1ba91
Merge branch 'cpp-11' into save_ext
2018-06-06 01:55:09 +01:00
Jonathan G Rennison
183a5cb114
Add unaligned uint 16, 32, 64 typedefs
2018-06-06 01:54:37 +01:00
Jonathan G Rennison
fa304cdb75
Merge branch 'master' into save_ext
...
# Conflicts:
# src/saveload/saveload.cpp
2018-05-25 19:09:20 +01:00
Jonathan G Rennison
ad1c402ad8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/debug.cpp
# src/saveload/afterload.cpp
# src/saveload/saveload.cpp
# src/settings_type.h
# src/town_cmd.cpp
# src/window.cpp
2018-05-03 23:54:51 +01:00
Patric Stout
aef69443e7
Remove: WinCE support
2018-04-29 15:32:16 +02:00
Patric Stout
85adde7485
Remove: PSP support
2018-04-29 15:32:16 +02:00
Jonathan G Rennison
f42cc19aad
Merge branch 'cpp-11' into crashlog_improvements
...
# Conflicts:
# Makefile.src.in
# src/crashlog.cpp
# src/crashlog.h
2018-04-27 00:33:44 +01:00
Charles Pigott
dd6b82d6b2
Codechange: Simplify C++11 check for assert_compile
2018-04-11 18:24:19 +02:00
Jonathan G Rennison
a93cc441a9
Merge branch 'cpp-11' into jgrpp
2017-10-05 18:20:54 +01:00