diff options
author | svidyuk <[email protected]> | 2024-02-08 20:48:10 +0300 |
---|---|---|
committer | svidyuk <[email protected]> | 2024-02-08 21:09:10 +0300 |
commit | e51fabbd3cd79d40f75e8986e5d660a7fa0f44ae (patch) | |
tree | a6a419da65ad29c6bed4cdc13dd07aedf601ce9a | |
parent | 1fbd7b3770f3b95e5e59153205d7abbcda6d739d (diff) |
Backport https://github.com/ydb-platform/ydb/pull/1688/files
-rw-r--r-- | build/export_generators/hardcoded-cmake/cmake/common.cmake | 29 | ||||
-rw-r--r-- | cmake/common.cmake | 29 |
2 files changed, 40 insertions, 18 deletions
diff --git a/build/export_generators/hardcoded-cmake/cmake/common.cmake b/build/export_generators/hardcoded-cmake/cmake/common.cmake index 98313341a5b..2dfd77e9d49 100644 --- a/build/export_generators/hardcoded-cmake/cmake/common.cmake +++ b/build/export_generators/hardcoded-cmake/cmake/common.cmake @@ -115,17 +115,28 @@ function(generate_enum_serilization Tgt Input) get_built_tool_path(enum_parser_bin enum_parser_dependency tools/enum_parser/enum_parser enum_parser) get_filename_component(BaseName ${Input} NAME) - add_custom_command( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp ${ENUM_SERIALIZATION_ARGS_GEN_HEADER} - COMMAND - ${enum_parser_bin} - ${Input} - --include-path ${ENUM_SERIALIZATION_ARGS_INCLUDE_HEADERS} - --output ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp - DEPENDS ${Input} ${enum_parser_dependency} - ) if (ENUM_SERIALIZATION_ARGS_GEN_HEADER) set_property(SOURCE ${ENUM_SERIALIZATION_ARGS_GEN_HEADER} PROPERTY GENERATED On) + add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp ${ENUM_SERIALIZATION_ARGS_GEN_HEADER} + COMMAND + ${enum_parser_bin} + ${Input} + --include-path ${ENUM_SERIALIZATION_ARGS_INCLUDE_HEADERS} + --output ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp + --header ${ENUM_SERIALIZATION_ARGS_GEN_HEADER} + DEPENDS ${Input} ${enum_parser_dependency} + ) + else() + add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp + COMMAND + ${enum_parser_bin} + ${Input} + --include-path ${ENUM_SERIALIZATION_ARGS_INCLUDE_HEADERS} + --output ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp + DEPENDS ${Input} ${enum_parser_dependency} + ) endif() target_sources(${Tgt} PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp) endfunction() diff --git a/cmake/common.cmake b/cmake/common.cmake index 98313341a5b..2dfd77e9d49 100644 --- a/cmake/common.cmake +++ b/cmake/common.cmake @@ -115,17 +115,28 @@ function(generate_enum_serilization Tgt Input) get_built_tool_path(enum_parser_bin enum_parser_dependency tools/enum_parser/enum_parser enum_parser) get_filename_component(BaseName ${Input} NAME) - add_custom_command( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp ${ENUM_SERIALIZATION_ARGS_GEN_HEADER} - COMMAND - ${enum_parser_bin} - ${Input} - --include-path ${ENUM_SERIALIZATION_ARGS_INCLUDE_HEADERS} - --output ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp - DEPENDS ${Input} ${enum_parser_dependency} - ) if (ENUM_SERIALIZATION_ARGS_GEN_HEADER) set_property(SOURCE ${ENUM_SERIALIZATION_ARGS_GEN_HEADER} PROPERTY GENERATED On) + add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp ${ENUM_SERIALIZATION_ARGS_GEN_HEADER} + COMMAND + ${enum_parser_bin} + ${Input} + --include-path ${ENUM_SERIALIZATION_ARGS_INCLUDE_HEADERS} + --output ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp + --header ${ENUM_SERIALIZATION_ARGS_GEN_HEADER} + DEPENDS ${Input} ${enum_parser_dependency} + ) + else() + add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp + COMMAND + ${enum_parser_bin} + ${Input} + --include-path ${ENUM_SERIALIZATION_ARGS_INCLUDE_HEADERS} + --output ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp + DEPENDS ${Input} ${enum_parser_dependency} + ) endif() target_sources(${Tgt} PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/${BaseName}_serialized.cpp) endfunction() |