mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-08-18 20:19:11 +00:00
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.
This commit is contained in:
@@ -20,13 +20,13 @@ set(BASESET_OTHER_SOURCE_FILES
|
||||
)
|
||||
|
||||
# Done by the subdirectories, if nforenum / grfcodec is installed
|
||||
if (NFORENUM_FOUND AND GRFCODEC_FOUND)
|
||||
if (GRFCODEC_FOUND)
|
||||
set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/openttd.grf PROPERTIES GENERATED TRUE)
|
||||
set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/orig_extra.grf PROPERTIES GENERATED TRUE)
|
||||
|
||||
list(APPEND BASESET_BINARY_FILES openttd.grf)
|
||||
list(APPEND BASESET_BINARY_FILES orig_extra.grf)
|
||||
endif (NFORENUM_FOUND AND GRFCODEC_FOUND)
|
||||
endif (GRFCODEC_FOUND)
|
||||
|
||||
set(BASESET_EXTRAGRF_FILE ${CMAKE_CURRENT_SOURCE_DIR}/orig_extra.grf)
|
||||
|
||||
|
@@ -3,7 +3,7 @@
|
||||
# This is mainly because not many people have both of these tools installed,
|
||||
# so it is cheaper to cache them in git, and only regenerate when you are
|
||||
# working on it / have the tools installed.
|
||||
if (NFORENUM_FOUND AND GRFCODEC_FOUND)
|
||||
include(CreateGrfCommand REQUIRED)
|
||||
if (GRFCODEC_FOUND)
|
||||
include(CreateGrfCommand)
|
||||
create_grf_command()
|
||||
endif (NFORENUM_FOUND AND GRFCODEC_FOUND)
|
||||
endif (GRFCODEC_FOUND)
|
||||
|
@@ -3,12 +3,12 @@
|
||||
# This is mainly because not many people have both of these tools installed,
|
||||
# so it is cheaper to cache them in git, and only regenerate when you are
|
||||
# working on it / have the tools installed.
|
||||
if (NFORENUM_FOUND AND GRFCODEC_FOUND)
|
||||
include(CreateGrfCommand REQUIRED)
|
||||
if (GRFCODEC_FOUND)
|
||||
include(CreateGrfCommand)
|
||||
create_grf_command(
|
||||
# We share some files with 'openttd' grf
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../openttd/airports.png
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../openttd/canals.png
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../openttd/chars.png
|
||||
)
|
||||
endif (NFORENUM_FOUND AND GRFCODEC_FOUND)
|
||||
endif (GRFCODEC_FOUND)
|
||||
|
Reference in New Issue
Block a user