summaryrefslogtreecommitdiff
path: root/src/stdafx.h
AgeCommit message (Collapse)Author
2021-01-08Codechange: Remove min/max functions in favour of STL variants (#8502)Charles Pigott
2021-01-08Codechange: Check if access __attribute__ is supported before trying to use it.milek7
2021-01-08Codechange: Use access __attribute__ to silence warnings in GCCmilek7
2021-01-02Codechange: Drop libxdg-basedir dependency in favour of finding the ↵Charles Pigott
directories ourselves
2020-12-27Codechange: Replace assert_compile macro with static_assertCharles Pigott
2020-12-27Codechange: Enable FINAL, (un)likely, __attribute__ when building with clangJonathan G Rennison
2020-12-27Codechange: Use likely/__builtin_expect for assertion macrosJonathan G Rennison
2020-12-27Codechange: Add support for verbose assertsJonathan G Rennison
2020-12-27Codechange: Unconditionally use static_assertJonathan G Rennison
We're well past having to support non-C++11 compliant compilers now.
2020-12-27Cleanup: Remove unnecessary assert_tcompile macroCharles Pigott
2020-07-03Fix: Globally apply preprocessor directive coding styleTechGeekNZ
Global; except for the 32-bit SSE blitter, which has some #DEFINEs in not-very-nice places.
2020-06-18Fix: Silence some warnings when building with clang-cl on VS 2019Niels Martin Hansen
Clang-cl presents as both _MSC_VER and __clang__ in the preprocessor which makes some things confusing.
2020-06-05Add: introduce CMake for project managementPatric Stout
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.
2019-11-10Cleanup: Removed SVN headersS. D. Cloudt
2019-10-07Fix: [Cygwin] Fix missing definitions in stdafxJoe Stringer
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-06-03Fix: vcpkg used to patch lzma.h to define LZMA_API_STATIC for static builds ↵glx22
(#7614)
2019-05-01Fix #7553: check bounds when loading strings (#7554)glx22
2019-04-09Codechange: Replace AutoDeleteSmallVector with direct std::vector use in ↵Michael Lutz
text layout code.
2019-03-19Remove: DOS supportPatric Stout
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-05Fix: warnings when compiling for a recent version of HaikuPatric Stout
This might break older Haiku versions, but it is hard to tell.
2019-03-05Remove: BeOS support (deprecated by Haiku)Patric Stout
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-05Codechange: removed some left-behind __NDS__ referencesPatric Stout
2019-03-05Remove: MorphOS / AmigaOS supportPatric Stout
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 :(
2018-12-27Fix: [Win32] WIN32 may not be defined, always prefer the compiler predefined ↵glx
macro _WIN32
2018-12-26Change: use vcpkg integration in Visual Studioglx
Removes the need for us to provide OpenTTD-useful package
2018-07-19Codechange: Rearrange struct packing defines and make MinGW use _Pragma pack ↵Charles Pigott
style
2018-04-29Remove: WinCE supportPatric Stout
2018-04-29Remove: PSP supportPatric Stout
2018-04-11Codechange: Simplify C++11 check for assert_compileCharles Pigott
2017-09-24(svn r27916) -Codechange: Enable usage of static_assert for MSVCfrosch
2017-08-13(svn r27893) -Codechange: Use fallthrough attribute. (LordAro)frosch
2015-08-10(svn r27380) -Fix: [Win32] Compilation with MSVC2015.michi_cc
2015-01-02(svn r27109) -Fix (r27102): MinGW compilationrubidium
2015-01-01(svn r27102) -Fix [FS#6194]: money values would end up wrong in strings when ↵rubidium
outside of the bounds of a 32 bits integer
2014-10-25(svn r27040) -Fix: Don't use GCC diagnostic push/pop if unsupportedfonsinchen
2014-09-25(svn r26922) -Fix: Include strings.h on HAIKU for strcasecmp. Some platforms ↵frosch
do not have a strings.h at all, most define the functions in string.h as well.
2014-09-06(svn r26771) -Cleanup: remove OTTD2SQ and SQ2OTTDrubidium
2014-09-06(svn r26769) -Codechange [Squirrel]: remove the difference between some ↵rubidium
platforms having wchar for SQChar and others just char; always use char (and UTF-8) like in the rest of (internal) OpenTTD
2014-04-25(svn r26509) -Codechange: replace strdup with stredup (the latter ensures ↵rubidium
the return is not NULL)
2014-04-24(svn r26500) -Cleanup: remove unused snprintf implementationrubidium
2014-01-05(svn r26226) -Fix (r26212): Compilation in visual studio 2008 failedzuu
2014-01-03(svn r26223) -Codechange: Silence some compile warnings about unititialized ↵planetmaker
variables in the SSE blitters (MJP)
2013-08-05(svn r25677) -Codechange: [Win32] There are no 64-bit Windows versions below ↵michi_cc
XP and we can safely assume it as the target platform.
2013-08-05(svn r25674) -Fix: [Win32] The console code page for non-Unicode builds is ↵michi_cc
not the normal ANSI code page and definitely not UTF-8 either.
2013-03-30(svn r25128) -Codechange: [Win32] MSVC 2010 comes with stdint.h.michi_cc
2013-01-20(svn r24926) -Fix [FS#5373]: Check integer min/max macros individually, and ↵frosch
define them if missing.
2012-12-03(svn r24782) -Codechange: [Win32] Disable MSVC warning about using 'this' in ↵michi_cc
a base member initializer list as we don't use it in any problematic way.
2012-07-19(svn r24416) -Fix [FS#5231]: [Win32] Unbreak NewGRF MD5 sum calculation. ↵michi_cc
Macros and side effects don't mix, especially if there's some obscure '#define min' in a windows header that nobody thinks of.
2011-12-20(svn r23640) -Fix: stop using FORCEINLINE (1/3rd of the instances were, the ↵truebrain
others were still regular inline), but make sure inline is always a 'forced' inline (I am looking at you MSVC)
2011-12-18(svn r23588) -Codechange: use the 'final' keyword so compiler can optimise ↵smatz
out some indirect calls