diff --git a/tools/cmake/depgraph.cmake b/tools/cmake/depgraph.cmake index fc312db7ad..9e80666265 100644 --- a/tools/cmake/depgraph.cmake +++ b/tools/cmake/depgraph.cmake @@ -35,10 +35,10 @@ function(depgraph_add_edge dep_from dep_to) # However, show which components are "common" by adding an edge from a node named "common". # If necessary, add a new build property to customize this behavior. if(NOT dep_from IN_LIST common_reqs) - idf_build_set_property(__BUILD_COMPONENT_DEPGRAPH "common -> ${dep_to}" APPEND) + idf_build_set_property(__BUILD_COMPONENT_DEPGRAPH "\"common\" -> \"${dep_to}\"" APPEND) endif() else() - idf_build_set_property(__BUILD_COMPONENT_DEPGRAPH "${dep_from} -> ${dep_to} ${attr}" APPEND) + idf_build_set_property(__BUILD_COMPONENT_DEPGRAPH "\"${dep_from}\" -> \"${dep_to}\" ${attr}" APPEND) endif() endfunction() diff --git a/tools/test_apps/system/g1_components/check_dependencies.py b/tools/test_apps/system/g1_components/check_dependencies.py index 3f0e8e7c1b..7ff34ca5ef 100644 --- a/tools/test_apps/system/g1_components/check_dependencies.py +++ b/tools/test_apps/system/g1_components/check_dependencies.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2024 Espressif Systems (Shanghai) CO LTD +# SPDX-FileCopyrightText: 2024-2025 Espressif Systems (Shanghai) CO LTD # SPDX-License-Identifier: Unlicense OR CC0-1.0 import argparse import logging @@ -6,13 +6,30 @@ from typing import Dict from typing import List from typing import Tuple -g1_g0_components = ['hal', 'cxx', 'newlib', 'freertos', 'esp_hw_support', 'heap', 'log', 'soc', 'esp_rom', - 'esp_common', 'esp_system', 'xtensa', 'riscv', 'spi_flash', 'esp_mm'] +g1_g0_components = [ + 'hal', + 'cxx', + 'newlib', + 'freertos', + 'esp_hw_support', + 'heap', + 'log', + 'soc', + 'esp_rom', + 'esp_common', + 'esp_system', + 'xtensa', + 'riscv', + 'spi_flash', + 'esp_mm', +] -expected_dep_violations = {'esp_system': ['esp_timer', 'bootloader_support', 'esp_pm'], - 'spi_flash': ['bootloader_support', 'app_update', 'esp_driver_gpio'], - 'esp_hw_support': ['efuse', 'bootloader_support', 'esp_driver_gpio', 'esp_timer', 'esp_pm', 'esp_security'], - 'cxx': ['pthread']} +expected_dep_violations = { + 'esp_system': ['esp_timer', 'bootloader_support', 'esp_pm'], + 'spi_flash': ['bootloader_support', 'app_update', 'esp_driver_gpio'], + 'esp_hw_support': ['efuse', 'bootloader_support', 'esp_driver_gpio', 'esp_timer', 'esp_pm', 'esp_security'], + 'cxx': ['pthread'], +} def parse_dependencies(file_path: str) -> Tuple[Dict[str, List[str]], List[str]]: @@ -25,9 +42,9 @@ def parse_dependencies(file_path: str) -> Tuple[Dict[str, List[str]], List[str]] if line: parts = line.split(' -> ') - if (len(parts) >= 2): - source = parts[0] - target = parts[1].split()[0] # Extracting the target component + if len(parts) >= 2: + source = parts[0].strip('"') + target = parts[1].split()[0].strip('"') # Extracting the target component logging.debug(f'Parsed dependency: {source} -> {target}') # Check that g1/g0 dependencies are either on the list of expected violations @@ -48,7 +65,9 @@ def parse_dependencies(file_path: str) -> Tuple[Dict[str, List[str]], List[str]] if __name__ == '__main__': parser = argparse.ArgumentParser(description='Check G1 dependencies') - parser.add_argument('--component_deps_file', required=True, type=str, help='The path to the component_deps.dot file') + parser.add_argument( + '--component_deps_file', required=True, type=str, help='The path to the component_deps.dot file' + ) args = parser.parse_args()