diff --git a/require-ess/tools/driver.makefile b/require-ess/tools/driver.makefile
index c95abca10908322e01f3641593d1a82627aeaa80..d650d0f5391d371285530502a45907272d6dea94 100644
--- a/require-ess/tools/driver.makefile
+++ b/require-ess/tools/driver.makefile
@@ -372,9 +372,7 @@ define update_dep_versions
   # If module_VERSION already exists fails if it doesn't matches
   # module_FETCHED_VERSION.
   $$(foreach mm,$$($$m_DEPS),\
-    $$(eval\
-      $$(mm)_FETCHED_VERSION := $$(call select,2,$$($$m_TBL),$$$$(call str-eq,$$$$1,$$(mm)))\
-      )\
+    $$(eval $$(mm)_FETCHED_VERSION := $$(call select,2,$$($$m_TBL),$$$$(call str-eq,$$$$1,$$(mm))))\
     $$(if $$($$(mm)_VERSION),\
        $$(if $$(filter-out $$($$(mm)_FETCHED_VERSION),$$($$(mm)_VERSION)),\
          $$(error "$$(m) depends on $$(mm),$$($$(mm)_FETCHED_VERSION) but $$(mm),$$($$(mm)_VERSION) is also needed"),\
diff --git a/tests/test_build.py b/tests/test_build.py
index 74af2b9ef33435ed28bb2fad301cf276deebd03b..8af46ae12817bd9a4e626bf5723bc1a304944827 100644
--- a/tests/test_build.py
+++ b/tests/test_build.py
@@ -435,21 +435,27 @@ def test_recursive_header_include(wrappers):
     wrapper_a = wrappers.get()
     wrapper_b = wrappers.get()
     wrapper_c = wrappers.get()
+    wrapper_d = wrappers.get()
 
     cell_path = wrapper_a.path / "cellMods"
 
     module_version = "0.0.0+0"
 
+    wrapper_c.add_var_to_config_module(f"{wrapper_d.name}_DEP_VERSION", module_version)
     wrapper_b.add_var_to_config_module(f"{wrapper_c.name}_DEP_VERSION", module_version)
     wrapper_a.add_var_to_config_module(f"{wrapper_b.name}_DEP_VERSION", module_version)
 
-    wrapper_c.add_var_to_module_makefile("HEADERS", f"{wrapper_c.name}.h")
-    (wrapper_c.module_dir / f"{wrapper_c.name}.h").touch()
+    wrapper_d.add_var_to_module_makefile("HEADERS", f"{wrapper_d.name}.h")
+    (wrapper_d.module_dir / f"{wrapper_d.name}.h").touch()
 
     wrapper_a.add_var_to_module_makefile("SOURCES", f"{wrapper_a.name}.c")
     with open(wrapper_a.module_dir / f"{wrapper_a.name}.c", "w") as f:
-        f.write(f'#include "{wrapper_c.name}.h"')
+        f.write(f'#include "{wrapper_d.name}.h"')
 
+    rc, *_ = wrapper_d.run_make(
+        "cellinstall", module_version=module_version, cell_path=cell_path
+    )
+    assert rc == 0
     rc, *_ = wrapper_c.run_make(
         "cellinstall", module_version=module_version, cell_path=cell_path
     )