diff --git a/conans/model/workspace.py b/conans/model/workspace.py index 3cdff1181c3..decc9217753 100644 --- a/conans/model/workspace.py +++ b/conans/model/workspace.py @@ -108,8 +108,18 @@ def generate(self): cmake_minimum_required(VERSION 3.3) project({name} CXX) +macro(find_package) + set(CONAN_SUBPROJECTS {subprojects}) + if(NOT "${{ARGV0}}" IN_LIST CONAN_SUBPROJECTS) + _find_package(${{ARGV}}) + endif() +endmacro() + +enable_testing() + """ - cmake = template.format(name=self._name) + subprojects = ' '.join(self._workspace_packages.keys()) + cmake = template.format(name=self._name, subprojects=subprojects) for _, workspace_package in self._workspace_packages.items(): build_folder = workspace_package.build_folder build_folder = build_folder.replace("\\", "/")