mirror of
https://github.com/JGRennison/OpenTTD-patches.git
synced 2024-11-04 06:00:15 +00:00
4fac6b295c
# Conflicts: # .github/workflows/release-linux.yml # src/base_consist.h # src/blitter/32bpp_optimized.cpp # src/blitter/32bpp_optimized.hpp # src/blitter/32bpp_sse2.hpp # src/blitter/8bpp_optimized.hpp # src/gfx_func.h # src/industry_cmd.cpp # src/industrytype.h # src/linkgraph/linkgraphjob.cpp # src/mixer.cpp # src/newgrf_callbacks.h # src/openttd.cpp # src/os/macosx/macos.mm # src/os/windows/win32.cpp # src/pathfinder/npf/npf.cpp # src/road_cmd.cpp # src/saveload/afterload.cpp # src/saveload/saveload.h # src/saveload/vehicle_sl.cpp # src/sound.cpp # src/spritecache.cpp # src/spriteloader/spriteloader.hpp # src/station_map.h # src/timetable_cmd.cpp # src/timetable_cmd.h # src/timetable_gui.cpp # src/town_cmd.cpp # src/vehicle_cmd.cpp # src/vehicle_gui_base.h # src/video/opengl.cpp # src/video/opengl.h # src/viewport.cpp
100 lines
4.0 KiB
CMake
100 lines
4.0 KiB
CMake
add_subdirectory(openttd)
|
|
add_subdirectory(orig_extra)
|
|
|
|
set(BASESET_SOURCE_FILES
|
|
${CMAKE_CURRENT_SOURCE_DIR}/orig_dos.obg
|
|
${CMAKE_CURRENT_SOURCE_DIR}/orig_dos_de.obg
|
|
${CMAKE_CURRENT_SOURCE_DIR}/orig_win.obg
|
|
${CMAKE_CURRENT_SOURCE_DIR}/no_music.obm
|
|
${CMAKE_CURRENT_SOURCE_DIR}/orig_dos.obm
|
|
${CMAKE_CURRENT_SOURCE_DIR}/orig_tto.obm
|
|
${CMAKE_CURRENT_SOURCE_DIR}/orig_win.obm
|
|
${CMAKE_CURRENT_SOURCE_DIR}/no_sound.obs
|
|
${CMAKE_CURRENT_SOURCE_DIR}/orig_dos.obs
|
|
${CMAKE_CURRENT_SOURCE_DIR}/orig_win.obs
|
|
)
|
|
set(BASESET_OTHER_SOURCE_FILES
|
|
${CMAKE_CURRENT_SOURCE_DIR}/openttd.grf
|
|
${CMAKE_CURRENT_SOURCE_DIR}/opntitle.dat
|
|
${CMAKE_CURRENT_SOURCE_DIR}/orig_extra.grf
|
|
${CMAKE_CURRENT_SOURCE_DIR}/innerhighlight.grf
|
|
${CMAKE_CURRENT_SOURCE_DIR}/progsignals.grf
|
|
${CMAKE_CURRENT_SOURCE_DIR}/extra_signals.grf
|
|
${CMAKE_CURRENT_SOURCE_DIR}/route_step.grf
|
|
${CMAKE_CURRENT_SOURCE_DIR}/tracerestrict.grf
|
|
${CMAKE_CURRENT_SOURCE_DIR}/misc_gui.grf
|
|
${CMAKE_CURRENT_SOURCE_DIR}/road_waypoints.grf
|
|
)
|
|
|
|
if (UNIX AND NOT APPLE)
|
|
list(APPEND BASESET_OTHER_SOURCE_FILES ${CMAKE_CURRENT_SOURCE_DIR}/../openttd.32.bmp)
|
|
endif ()
|
|
|
|
# Done by the subdirectories, if nforenum / grfcodec is installed
|
|
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()
|
|
|
|
set(BASESET_EXTRAGRF_FILE ${CMAKE_CURRENT_SOURCE_DIR}/orig_extra.grf)
|
|
|
|
# Walk over all the baseset files, and generate a command to configure them
|
|
foreach(BASESET_SOURCE_FILE IN LISTS BASESET_SOURCE_FILES)
|
|
get_filename_component(BASESET_SOURCE_FILE_NAME "${BASESET_SOURCE_FILE}" NAME)
|
|
set(BASESET_BINARY_FILE "${CMAKE_BINARY_DIR}/baseset/${BASESET_SOURCE_FILE_NAME}")
|
|
|
|
get_target_property(LANG_SOURCE_FILES language_files LANG_SOURCE_FILES)
|
|
|
|
add_custom_command_timestamp(OUTPUT ${BASESET_BINARY_FILE}
|
|
COMMAND ${CMAKE_COMMAND}
|
|
-DBASESET_SOURCE_FILE=${BASESET_SOURCE_FILE}
|
|
-DBASESET_BINARY_FILE=${BASESET_BINARY_FILE}
|
|
-DBASESET_EXTRAGRF_FILE=${BASESET_EXTRAGRF_FILE}
|
|
-P ${CMAKE_SOURCE_DIR}/cmake/scripts/Baseset.cmake
|
|
--
|
|
${LANG_SOURCE_FILES}
|
|
MAIN_DEPENDENCY ${BASESET_SOURCE_FILE}
|
|
DEPENDS ${LANG_SOURCE_FILES}
|
|
${BASESET_EXTRAGRF_FILE}
|
|
${BASESET_EXTRAGRF_FILE}.hash
|
|
${CMAKE_SOURCE_DIR}/cmake/scripts/Baseset.cmake
|
|
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
|
COMMENT "Generating ${BASESET_SOURCE_FILE_NAME} baseset metadata file"
|
|
)
|
|
|
|
list(APPEND BASESET_BINARY_FILES ${BASESET_BINARY_FILE})
|
|
endforeach()
|
|
|
|
# Walk over all the other baseset files, and generate a command to copy them
|
|
foreach(BASESET_OTHER_SOURCE_FILE IN LISTS BASESET_OTHER_SOURCE_FILES)
|
|
get_filename_component(BASESET_OTHER_SOURCE_FILE_NAME "${BASESET_OTHER_SOURCE_FILE}" NAME)
|
|
set(BASESET_OTHER_BINARY_FILE "${CMAKE_BINARY_DIR}/baseset/${BASESET_OTHER_SOURCE_FILE_NAME}")
|
|
|
|
add_custom_command(OUTPUT ${BASESET_OTHER_BINARY_FILE}
|
|
COMMAND ${CMAKE_COMMAND} -E copy
|
|
${BASESET_OTHER_SOURCE_FILE}
|
|
${BASESET_OTHER_BINARY_FILE}
|
|
MAIN_DEPENDENCY ${BASESET_OTHER_SOURCE_FILE}
|
|
COMMENT "Copying ${BASESET_OTHER_SOURCE_FILE_NAME} baseset file"
|
|
)
|
|
|
|
list(APPEND BASESET_BINARY_FILES ${BASESET_OTHER_BINARY_FILE})
|
|
endforeach()
|
|
|
|
# Create a new target which generates all baseset metadata files
|
|
add_custom_target_timestamp(baseset_files
|
|
DEPENDS
|
|
${BASESET_BINARY_FILES}
|
|
)
|
|
|
|
add_library(basesets
|
|
INTERFACE
|
|
)
|
|
add_dependencies(basesets
|
|
baseset_files
|
|
)
|
|
add_library(openttd::basesets ALIAS basesets)
|