Merge branch 'master' into jgrpp

# Conflicts:
#	cmake/CompileFlags.cmake
#	src/crashlog.cpp
#	src/fileio.cpp
#	src/fileio_func.h
#	src/fios_gui.cpp
#	src/ini_load.cpp
#	src/ini_type.h
#	src/lang/english.txt
#	src/lang/german.txt
#	src/lang/korean.txt
#	src/network/network_client.cpp
#	src/order_base.h
#	src/order_cmd.cpp
#	src/os/windows/win32.cpp
#	src/road_cmd.cpp
#	src/saveload/saveload.cpp
#	src/saveload/saveload.h
#	src/settings.cpp
#	src/station_cmd.cpp
#	src/stdafx.h
#	src/table/settings.ini
#	src/tree_cmd.cpp
#	src/tree_gui.cpp
#	src/vehicle_base.h
#	src/video/cocoa/cocoa_v.mm
#	src/video/cocoa/event.mm
#	src/video/cocoa/wnd_quartz.mm
#	src/viewport.cpp
#	src/widgets/tree_widget.h
This commit is contained in:
Jonathan G Rennison
2021-01-30 23:24:40 +00:00
235 changed files with 3537 additions and 3063 deletions

View File

@@ -133,10 +133,20 @@ macro(compile_flags)
)
endif()
if(APPLE)
if(CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang")
add_compile_options(
-fno-stack-check
)
include(CheckCXXCompilerFlag)
check_cxx_compiler_flag("-mno-sse4" NO_SSE4_FOUND)
if(NO_SSE4_FOUND)
add_compile_options(
# Don't use SSE4 for general sources to increase compatibility.
-mno-sse4
)
endif()
endif()
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
add_compile_options(

View File

@@ -1,65 +0,0 @@
#[=======================================================================[.rst:
FindXDG_basedir
-------
Finds the xdg-basedir library.
Result Variables
^^^^^^^^^^^^^^^^
This will define the following variables:
``XDG_basedir_FOUND``
True if the system has the xdg-basedir library.
``XDG_basedir_INCLUDE_DIRS``
Include directories needed to use xdg-basedir.
``XDG_basedir_LIBRARIES``
Libraries needed to link to xdg-basedir.
``XDG_basedir_VERSION``
The version of the xdg-basedir library which was found.
Cache Variables
^^^^^^^^^^^^^^^
The following cache variables may also be set:
``XDG_basedir_INCLUDE_DIR``
The directory containing ``xdg-basedir.h``.
``XDG_basedir_LIBRARY``
The path to the xdg-basedir library.
#]=======================================================================]
find_package(PkgConfig QUIET)
pkg_check_modules(PC_XDG_basedir QUIET libxdg-basedir)
find_path(XDG_basedir_INCLUDE_DIR
NAMES basedir.h
PATHS ${PC_XDG_basedir_INCLUDE_DIRS}
)
find_library(XDG_basedir_LIBRARY
NAMES xdg-basedir
PATHS ${PC_XDG_basedir_LIBRARY_DIRS}
)
set(XDG_basedir_VERSION ${PC_XDG_basedir_VERSION})
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(XDG_basedir
FOUND_VAR XDG_basedir_FOUND
REQUIRED_VARS
XDG_basedir_LIBRARY
XDG_basedir_INCLUDE_DIR
VERSION_VAR XDG_basedir_VERSION
)
if(XDG_basedir_FOUND)
set(XDG_basedir_LIBRARIES ${XDG_basedir_LIBRARY})
set(XDG_basedir_INCLUDE_DIRS ${XDG_basedir_INCLUDE_DIR})
endif()
mark_as_advanced(
XDG_basedir_INCLUDE_DIR
XDG_basedir_LIBRARY
)

View File

@@ -123,25 +123,37 @@ elseif(UNIX)
OUTPUT_VARIABLE LSB_RELEASE_ID
OUTPUT_STRIP_TRAILING_WHITESPACE
)
if(NOT LSB_RELEASE_ID)
if(LSB_RELEASE_ID)
if(LSB_RELEASE_ID STREQUAL "Ubuntu" OR LSB_RELEASE_ID STREQUAL "Debian")
execute_process(COMMAND ${LSB_RELEASE_EXEC} -cs
OUTPUT_VARIABLE LSB_RELEASE_CODENAME
OUTPUT_STRIP_TRAILING_WHITESPACE
)
string(TOLOWER "${LSB_RELEASE_ID}-${LSB_RELEASE_CODENAME}" PLATFORM)
set(CPACK_GENERATOR "DEB")
include(PackageDeb)
else()
set(UNSUPPORTED_PLATFORM_NAME "LSB-based Linux distribution '${LSB_RELEASE_ID}'")
endif()
elseif(EXISTS "/etc/os-release")
file(STRINGS "/etc/os-release" OS_RELEASE_CONTENTS REGEX "^ID=")
string(REGEX MATCH "ID=(.*)" _ ${OS_RELEASE_CONTENTS})
set(DISTRO_ID ${CMAKE_MATCH_1})
if(DISTRO_ID STREQUAL "arch")
set(PLATFORM "generic")
set(CPACK_GENERATOR "TXZ")
else()
set(UNSUPPORTED_PLATFORM_NAME "Linux distribution '${DISTRO_ID}' from /etc/os-release")
endif()
else()
set(UNSUPPORTED_PLATFORM_NAME "Linux distribution")
endif()
if(NOT PLATFORM)
set(PLATFORM "generic")
set(CPACK_GENERATOR "TXZ")
message(WARNING "Unknown Linux distribution found for packaging; can only pack to a txz. Please consider creating a Pull Request to add support for this distribution.")
elseif(LSB_RELEASE_ID STREQUAL "Ubuntu" OR LSB_RELEASE_ID STREQUAL "Debian")
execute_process(COMMAND ${LSB_RELEASE_EXEC} -cs
OUTPUT_VARIABLE LSB_RELEASE_CODENAME
OUTPUT_STRIP_TRAILING_WHITESPACE
)
string(TOLOWER "${LSB_RELEASE_ID}-${LSB_RELEASE_CODENAME}" PLATFORM)
set(CPACK_GENERATOR "DEB")
include(PackageDeb)
else()
set(PLATFORM "unknown")
set(CPACK_GENERATOR "TXZ")
message(WARNING "Unknown LSB-based Linux distribution '${LSB_RELEASE_ID}' found for packaging; can only pack to a txz. Please consider creating a Pull Request to add support for this distribution.")
message(WARNING "Unknown ${UNSUPPORTED_PLATFORM_NAME} found for packaging; can only pack to a txz. Please consider creating a Pull Request to add support for this distribution.")
endif()
set(CPACK_PACKAGE_FILE_NAME "openttd-#CPACK_PACKAGE_VERSION#-linux-${PLATFORM}-${CPACK_SYSTEM_NAME}")

View File

@@ -8,6 +8,7 @@ source_group("MD5" REGULAR_EXPRESSION "src/3rdparty/md5/")
source_group("Misc" REGULAR_EXPRESSION "src/misc/")
source_group("Music" REGULAR_EXPRESSION "src/music/")
source_group("Network Core" REGULAR_EXPRESSION "src/network/core/")
source_group("OSX" REGULAR_EXPRESSION "src/os/macosx/")
source_group("Pathfinder" REGULAR_EXPRESSION "src/pathfinder/")
source_group("Save/Load handlers" REGULAR_EXPRESSION "src/saveload/")
source_group("Sound" REGULAR_EXPRESSION "src/sound/")