From ecad370fe9eb321e0f4bd8610a55f5fecbe455ec Mon Sep 17 00:00:00 2001 From: Daniel Mensinger Date: Sun, 16 Feb 2020 20:52:58 +0100 Subject: cmake: traceparser better handle lists --- mesonbuild/cmake/traceparser.py | 7 ++++--- test cases/cmake/8 custom command/subprojects/cmMod/CMakeLists.txt | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/mesonbuild/cmake/traceparser.py b/mesonbuild/cmake/traceparser.py index 2005825..f024b0c 100644 --- a/mesonbuild/cmake/traceparser.py +++ b/mesonbuild/cmake/traceparser.py @@ -264,7 +264,7 @@ class CMakeTraceParser: target = CMakeGeneratorTarget(name) def handle_output(key: str, target: CMakeGeneratorTarget) -> None: - target.outputs += [key] + target.outputs += key.split(';') def handle_command(key: str, target: CMakeGeneratorTarget) -> None: if key == 'ARGS': @@ -272,7 +272,7 @@ class CMakeTraceParser: target.command[-1] += key.split(';') def handle_depends(key: str, target: CMakeGeneratorTarget) -> None: - target.depends += [key] + target.depends += key.split(';') def handle_working_dir(key: str, target: CMakeGeneratorTarget) -> None: if target.working_dir is None: @@ -423,7 +423,8 @@ class CMakeTraceParser: if not target: return self._gen_exception('add_dependencies', 'target not found', tline) - target.depends += args[1:] + for i in args[1:]: + target.depends += i.split(';') def _cmake_target_compile_definitions(self, tline: CMakeTraceLine) -> None: # DOC: https://cmake.org/cmake/help/latest/command/target_compile_definitions.html diff --git a/test cases/cmake/8 custom command/subprojects/cmMod/CMakeLists.txt b/test cases/cmake/8 custom command/subprojects/cmMod/CMakeLists.txt index 8a6ab67..70ac236 100644 --- a/test cases/cmake/8 custom command/subprojects/cmMod/CMakeLists.txt +++ b/test cases/cmake/8 custom command/subprojects/cmMod/CMakeLists.txt @@ -22,7 +22,7 @@ add_custom_command( COMMAND mycpy cpyBase.cpp.in cpyBase.cpp.something COMMAND mycpy cpyBase.cpp.something cpyBase.cpp.IAmRunningOutOfIdeas COMMAND mycpy cpyBase.cpp.IAmRunningOutOfIdeas cpyBase.cpp - DEPENDS cpyBase.cpp.am gen + DEPENDS cpyBase.cpp.am;gen ) add_custom_command( @@ -124,4 +124,4 @@ add_custom_target(args_test_cmd add_custom_target(macro_name_cmd COMMAND macro_name) add_dependencies(cmModLib args_test_cmd) -add_dependencies(args_test_cmd macro_name_cmd) +add_dependencies(args_test_cmd macro_name_cmd;gen;mycpy) -- cgit v1.1