diff --git a/ccpnmr2.3/c/Makefile b/ccpnmr2.3/c/Makefile
index 01fb25a..8e8e1fe 100644
--- a/ccpnmr2.3/c/Makefile
+++ b/ccpnmr2.3/c/Makefile
@@ -5,22 +5,22 @@ all: compile
 compile: global structure analysis clouds dynamics bayes
 
 global:
-	cd memops/global && $(MAKE)
+	$(MAKE) -C memops/global
 
-structure:
-	cd ccp/structure && $(MAKE)
+structure: global
+	$(MAKE) -C ccp/structure
 
-analysis:
-	cd ccpnmr/analysis && $(MAKE)
+analysis: global
+	$(MAKE) -C ccpnmr/analysis
 
-clouds:
-	cd ccpnmr/clouds && $(MAKE)
+clouds: global
+	$(MAKE) -C ccpnmr/clouds
 
-dynamics:
-	cd ccpnmr/dynamics && $(MAKE)
+dynamics: global
+	$(MAKE) -C ccpnmr/dynamics
 
-bayes:
-	cd other/cambridge/bayes && $(MAKE)
+bayes: global
+	$(MAKE) -C other/cambridge/bayes
 
 clean: global_clean structure_clean analysis_clean clouds_clean dynamics_clean bayes_clean
 
