Fixed issue with dependency injection not working due to the 'add target via name in dependencies' shortcut :/.

This commit is contained in:
Patrick 2025-03-02 22:20:21 +01:00
parent 9d3d52ffaf
commit 5c6a8a1cc6

View File

@ -369,14 +369,11 @@ def _wrap_builder(builder, target_type: TargetType):
def _wrapped(env, dependencies = {}, *args, **kwargs):
target_dependencies = []
for name, version_spec in dependencies.items():
if version_spec == {}:
if version_spec == {} and name not in env['SPP_DEPENDENCIES']: # this is basically a shortcut to adding targets from other modules without having to save them in the env
dep_target = _find_target(env, name)
if dep_target is not None and dep_target.target_type != TargetType.PROGRAM:
#if 'LIBS' in kwargs:
# kwargs['LIBS'].append(dep_target)
#else:
# kwargs['LIBS'] = [dep_target]
target_dependencies.append(dep_target)
# TODO: there might be an issue here with dependencies not being injected this way :/
continue
target_dependencies.append(_add_dependency(env, name, _parse_version_spec(version_spec)))