tdesktop/Telegram/cmake/generate_scheme.cmake

35 lines
1002 B
CMake
Raw Normal View History

2019-11-21 11:56:17 +00:00
# This file is part of Telegram Desktop,
# the official desktop application for the Telegram messaging service.
#
# For license and copyright information please follow this link:
# https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
2019-11-08 11:08:40 +00:00
function(generate_scheme target_name script scheme_files)
set(gen_dst ${CMAKE_CURRENT_BINARY_DIR}/gen)
2019-11-25 15:40:59 +00:00
file(MAKE_DIRECTORY ${gen_dst})
2019-11-08 11:08:40 +00:00
set(generated_files
${gen_dst}/scheme.cpp
${gen_dst}/scheme.h
${gen_dst}/scheme.timestamp
2019-11-08 11:08:40 +00:00
)
add_custom_command(
OUTPUT
${gen_dst}/scheme.timestamp
BYPRODUCTS
${gen_dst}/scheme.cpp
${gen_dst}/scheme.h
2019-11-08 11:08:40 +00:00
COMMAND
python
${script}
-o${gen_dst}/scheme
${scheme_files}
COMMENT "Generating scheme (${target_name})"
DEPENDS
${script}
${submodules_loc}/lib_tl/tl/generate_tl.py
${scheme_files}
)
generate_target(${target_name} scheme "${generated_files}" ${gen_dst})
endfunction()