Files @ r26099:9c675ef812ea
Branch filter:

Location: cpp/openttd-patchpack/source/bin/game/CMakeLists.txt

Michael Lutz
Change: [Network] Transfer command data as serialized byte stream without fixed structure.

The data will be transmitted as the length followed by the serialized data. This allows the command
data to be different for every command type in the future.
set(GS_COMPAT_SOURCE_FILES
	${CMAKE_CURRENT_SOURCE_DIR}/compat_1.2.nut
	${CMAKE_CURRENT_SOURCE_DIR}/compat_1.3.nut
	${CMAKE_CURRENT_SOURCE_DIR}/compat_1.4.nut
	${CMAKE_CURRENT_SOURCE_DIR}/compat_1.5.nut
	${CMAKE_CURRENT_SOURCE_DIR}/compat_1.6.nut
	${CMAKE_CURRENT_SOURCE_DIR}/compat_1.7.nut
	${CMAKE_CURRENT_SOURCE_DIR}/compat_1.8.nut
	${CMAKE_CURRENT_SOURCE_DIR}/compat_1.9.nut
	${CMAKE_CURRENT_SOURCE_DIR}/compat_1.10.nut
	${CMAKE_CURRENT_SOURCE_DIR}/compat_1.11.nut
	${CMAKE_CURRENT_SOURCE_DIR}/compat_12.nut
)

foreach(GS_COMPAT_SOURCE_FILE IN LISTS GS_COMPAT_SOURCE_FILES)
    string(REPLACE "${CMAKE_SOURCE_DIR}/bin/" "" GS_COMPAT_SOURCE_FILE_NAME "${GS_COMPAT_SOURCE_FILE}")
    string(CONCAT GS_COMPAT_BINARY_FILE "${CMAKE_BINARY_DIR}/" "${GS_COMPAT_SOURCE_FILE_NAME}")

    add_custom_command(OUTPUT ${GS_COMPAT_BINARY_FILE}
            COMMAND ${CMAKE_COMMAND} -E copy
                    ${GS_COMPAT_SOURCE_FILE}
                    ${GS_COMPAT_BINARY_FILE}
            MAIN_DEPENDENCY ${GS_COMPAT_SOURCE_FILE}
            COMMENT "Copying ${GS_COMPAT_SOURCE_FILE_NAME}"
    )

    list(APPEND GS_COMPAT_BINARY_FILES ${GS_COMPAT_BINARY_FILE})
endforeach()

# Create a new target which copies all compat files
add_custom_target(gs_compat_files
        DEPENDS ${GS_COMPAT_BINARY_FILES}
)

add_dependencies(openttd
    gs_compat_files
)