diff --git a/configure/E3/CONFIG_CELL b/configure/E3/CONFIG_CELL index 4dafb395cb505e6ece363821c17f714cfaf02548..f4b7e12c5408c0247d7d3d28cdd31309d29bb666 100644 --- a/configure/E3/CONFIG_CELL +++ b/configure/E3/CONFIG_CELL @@ -1,6 +1,11 @@ # TOP is e3-MODULENAME ifneq (,$(findstring cell,$(MAKECMDGOALS))) +# Check if non cell targets are being called +NON_CELL_TARGETS=install uninstall build debug rebuild vars +ifneq (,$(filter $(NON_CELL_TARGETS),$(MAKECMDGOALS))) + $(error cell targets cannot be called with non cell targets on the same command line) +endif ## Default is e3-MODULENAME/cellMods E3_CELL_PATH=$(TOP)/cellMods ## diff --git a/tests/test_build.py b/tests/test_build.py index ec80caba10bcab1d86dc3cc78f848ad1e4665f9f..74af2b9ef33435ed28bb2fad301cf276deebd03b 100644 --- a/tests/test_build.py +++ b/tests/test_build.py @@ -607,3 +607,23 @@ def test_double_install_fails(wrapper: Wrapper, module_version): ), errs, ) + + +@pytest.mark.parametrize( + "targets", + [ + ["cellbuild", "build"], + ["cellinstall", "install"], + ["vars", "cellbuild"], + ["debug", "cellinstall"], + ["cellbuild", "uninstall"], + ], + ids=["build", "install", "vars", "debug", "uninstall"], +) +def test_target_fails_with_celltarget(wrapper: Wrapper, targets): + rc, _, errs = wrapper.run_make(targets[0], targets[1]) + assert rc != 0 + assert ( + "cell targets cannot be called with non cell targets on the same command line" + in errs + )