From b489f2b497b4feb25938f9e4908b2ee3ba293209 Mon Sep 17 00:00:00 2001 From: Priit Laes Date: Wed, 7 Oct 2020 21:43:02 +0300 Subject: [PATCH] build: Fix dependency management for workbenches Previously the workbench was not disabled even when dependencies were unmet, resulting in eventual compile failure. --- cMake/FreeCAD_Helpers/CheckInterModuleDependencies.cmake | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/cMake/FreeCAD_Helpers/CheckInterModuleDependencies.cmake b/cMake/FreeCAD_Helpers/CheckInterModuleDependencies.cmake index cfd16b4f81..e18b00ff06 100644 --- a/cMake/FreeCAD_Helpers/CheckInterModuleDependencies.cmake +++ b/cMake/FreeCAD_Helpers/CheckInterModuleDependencies.cmake @@ -6,11 +6,12 @@ macro(CheckInterModuleDependencies) # modules. Warns if any of the prerequisite modules are disabled. function(REQUIRES_MODS dependent) if(${dependent}) - foreach(prerequisite ${ARGN}) + foreach(prerequisite IN LISTS ARGN) if(NOT ${prerequisite}) - message(WARNING - "${dependent} requires ${ARGN} each be ON, but " - "${prerequisite} is \"${${prerequisite}}\"") + message(STATUS "${dependent} requires ${prerequisite} to be ON, but it" + " is \"${${prerequisite}}\"") + set(${dependent} OFF PARENT_SCOPE) + break() endif(NOT ${prerequisite}) endforeach() endif(${dependent})