Commit Graph

700 Commits

Author SHA1 Message Date
Jonathan G Rennison
73c8715eb6 Add LLDB self debug to OSX 2019-04-18 18:30:09 +01:00
Jonathan G Rennison
d5ee9d34da Merge branch 'cpp-11' into crashlog_improvements
# Conflicts:
#	Makefile.src.in
#	projects/determineversion.vbs
#	source.list
#	src/crashlog.cpp
#	src/misc.cpp
#	src/os/unix/crashlog_unix.cpp
#	src/os/windows/crashlog_win.cpp
#	src/rev.h
#	src/thread/thread.h
#	src/thread/thread_morphos.cpp
#	src/thread/thread_none.cpp
#	src/thread/thread_os2.cpp
#	src/thread/thread_pthread.cpp
#	src/thread/thread_win32.cpp
2019-04-09 19:21:39 +01:00
Jonathan G Rennison
01261daec0 Merge branch 'master' into cpp-11
# Conflicts:
#	config.lib
2019-04-09 18:47:28 +01:00
Henry Wilson
31260e6625 Cleanup: Stop OSX compilation complaining about C++11 extensions 2019-03-24 16:10:04 +01:00
Patric Stout
e3c639a09f Remove: ENABLE_NETWORK switch
This switch has been a pain for years. Often disabling broke
compilation, as no developer compiles OpenTTD without, neither do
any of our official binaries.

Additionaly, it has grown so hugely in our codebase, that it
clearly shows that the current solution was a poor one. 350+
instances of "#ifdef ENABLE_NETWORK" were in the code, of which
only ~30 in the networking code itself. The rest were all around
the code to do the right thing, from GUI to NewGRF.

A more proper solution would be to stub all the functions, and
make sure the rest of the code can simply assume network is
available. This was also partially done, and most variables were
correct if networking was disabled. Despite that, often the #ifdefs
were still used.

With the recent removal of DOS, there is also no platform anymore
which we support where networking isn't working out-of-the-box.

All in all, it is time to remove the ENABLE_NETWORK switch. No
replacement is planned, but if you feel we really need this option,
we welcome any Pull Request which implements this in a way that
doesn't crawl through the code like this diff shows we used to.
2019-03-20 19:24:55 +01: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
Patric Stout
36105841b9 Codechange: ICU_SORT is in reality ICU_I18N (according to their CMake files)
By naming it in a different way, things get a bit confusing.
Especially if we are switching to CMake, which autodetects these
things, we need to use the name the authors of ICU gave it; not
our interpertation of that name.
2019-03-11 10:16:00 +01:00
Patric Stout
52d7e7d45e Codechange: ICU_LAYOUT is in reality ICU_LX (according to their CMake files)
By naming it in a different way, things get a bit confusing.
Especially if we are switching to CMake, which autodetects these
things, we need to use the name the authors of ICU gave it; not
our interpertation of that name.
2019-03-11 10:16:00 +01:00
Patric Stout
7adae09897 Codechange: liblzma is called liblzma, how ever strange that might be
It is the only library we use that calls itself with 'lib' in the
name. This might be confusing, but with the arrival of cmake a lot
of these things are automated. And detection will find 'liblzma',
not 'lzma', like with 'lzo', 'zlib', ..
2019-03-11 10:16:00 +01:00
Patric Stout
aa350528df Remove: libtimidity support (NOT timidity support)
libtimidity was introduced with the support for PSP. PSP has been
dropped almost a year ago, but this music driver was not. This
corrects that oversight.

timidity (via extmidi) still works fine. This purely removes the
libtimidity support, which was only really available for PSP.
2019-03-05 22:03: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
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
Charles Pigott
4ac81b3ebb Fix #7308: SDL linker flags were not added on MinGW 2019-03-03 18:04:36 +00:00
Charles Pigott
d9b4ada7e9 Fix 95ccddd6: SDL static library flags was not updated to use pkg-config format 2019-03-03 18:04:36 +00:00
Charles Pigott
1a663d9efc Fix: Wrong variable was used in zlib detection 2019-03-03 18:04:36 +00:00
Jonathan G Rennison
09c62d6951 Merge branch 'master' into cpp-11 2019-02-04 18:09:36 +00:00
Charles Pigott
6535abb88b Codechange: Don't explicitly link with -lstdc++, causes linking issues with freetype on MinGW 2019-01-17 21:55:15 +00:00
glx
ee84f98f1e Fix: deps calculation call could fail due to command line length 2019-01-16 19:27:06 +00:00
glx
5a09337c20 Fix: make reconfigure warning 2019-01-16 19:27:06 +00:00
Jonathan G Rennison
d86aa7719b Use -std=gnu++11 instead of -std=c++11 due to gcc extensions 2019-01-13 23:30:32 +00:00
Jonathan G Rennison
47c7f8f3bb Update OSX clang version detection 2019-01-13 22:55:51 +00:00
Jonathan G Rennison
962a9c5430 Merge branch 'master' into cpp-11
# Conflicts:
#	config.lib
#	projects/openttd_vs100.vcxproj
#	projects/openttd_vs100.vcxproj.filters
#	projects/openttd_vs80.vcproj
#	projects/openttd_vs90.vcproj
#	src/saveload/saveload.cpp
2019-01-06 22:07:28 +00:00
Charles Pigott
4fbfe34e36 Codechange: Always compile with C++11 2019-01-05 17:39:11 +01:00
Charles Pigott
175829b8b5 Fix #6880: [OSX] Clang version detection 2019-01-05 17:39:11 +01:00
Charles Pigott
0e7af55ef7 Fix: [OSX] Check all search paths for iconv.h 2019-01-05 17:39:11 +01:00
Michael Lutz
32ce1ce347 Add: [OSX] Text layout using the native CoreText API.
By default, the native API will be used instead of ICU, but if ICU is
forced in using configure, it will take precedence.
2018-12-08 20:13:27 +01:00
Charles Pigott
0c619b7c4b Add: Fluidsynth music driver support (jmak) 2018-11-01 18:06:38 +01:00
Jonathan G Rennison
9490f33a6c Merge branch 'master' into crashlog_improvements
# Conflicts:
#	src/console_cmds.cpp
#	src/openttd.cpp
#	src/vehicle.cpp
2018-07-26 20:01:08 +01:00
glx
d418d30947 Fix: dmusic detection 2018-07-24 21:39:21 +02:00
Jonathan G Rennison
8fc1517515 Codechange: detect native Apple clang correctly in config.lib #6773
Fixes: 00c1603256
2018-07-22 15:15:54 +01:00
Charles Pigott
a3d1950b65 Codechange: Ensure that -lfreetype is always last when linking statically
Fixes weird bug with MinGW
2018-07-19 20:24:17 +02:00
glx
10d8b83038 Fix: library detection on MSYS2 file system 2018-06-17 21:56:46 +02:00
Michael Lutz
cd966f3810 Add: [Win32] Uniscribe configure options for MinGW targets. 2018-06-06 21:37:09 +02:00
Owen Rudge
7bd2fa3516 Feature: Add XAudio2 driver 2018-05-17 15:06:37 +01:00
Jonathan G Rennison
ffa4f03128 Fix lib detection when using environment c/l flags
This was broken by f06061aa3b
2018-05-06 12:02:11 +01:00
Patric Stout
0165fe1283
Codechange: remove endian_check in favour of __BYTE_ORDER macro (Rubidium) (#6762) 2018-04-29 19:01:28 +02: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
Jonathan G Rennison
b90c5b9618 Merge branch 'master' into cpp-11
# Conflicts:
#	src/stdafx.h
2018-04-26 23:59:13 +01:00
Charles Pigott
00c1603256 Fix e614357: Ask the compiler who it is, instead of using symlinks (#6727)
This fixes #6723
2018-04-15 23:07:17 +02:00
Patric Stout
aaf7e98c77
Fix 6ac0790: don't show the location to / failure of 'realpath' every time (#6719) 2018-04-14 22:05:39 +02:00
Patric Stout
ae5628e903
Change: [Build] prioritize cc-build over build (based on patch by woutershep2) (#6716)
This closes #6414
2018-04-14 20:12:05 +02:00
Patric Stout
f06061aa3b
Change: [Build] use flags set by env at the end, not at the start (based on patch by adf88) (#6715)
This closes #6433
2018-04-14 20:11:49 +02:00
Victor Sergienko
6ac079020b Fix e614357: MingW/MacOS/MacPorts don't have realpath, use reallink in those cases (#6710) 2018-04-12 23:46:09 +02:00
Charles Pigott
e47f646cb3 Fix e61435774b: Some systems don't have realpath (#6705) 2018-04-11 22:50:23 +02:00
Charles Pigott
e61435774b Fix: Resolve symlinks when working out which compiler is being used 2018-04-11 18:24:19 +02:00
Charles Pigott
4b1a42c703 Codechange: Remove outdated assumption about FreeBSD's C compiler 2018-04-11 18:24:19 +02:00
Jonathan G Rennison
4a6ddb2d50 Merge branch 'cpp-11' into crashlog_improvements
# Conflicts:
#	config.lib
2017-09-04 01:22:54 +01:00
Jonathan G Rennison
509e20406f Merge branch 'master' into cpp-11 2017-09-04 01:22:19 +01:00