about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--makefile9
1 files changed, 8 insertions, 1 deletions
diff --git a/makefile b/makefile
index 7adfaf2d..5a95db52 100644
--- a/makefile
+++ b/makefile
@@ -6,6 +6,13 @@
 
 all: mu_bin core.mu
 
+# beware: if you introduce or delete functions the makefile isn't smart enough
+# to recompute dependencies. You have to manually run 'make redo' to recreate
+# the .build/ directory from scratch.
+redo:
+	rm -rf .build
+	@make
+
 CXX ?= c++
 CXXFLAGS ?= -g -O3
 CXXFLAGS := ${CXXFLAGS} -Wall -Wextra -ftrapv -fno-strict-aliasing
@@ -67,7 +74,7 @@ test_list: mu.cc
 .build/global_declarations_list: .build/global_definitions_list
 	@grep ';' .build/global_definitions_list |perl -pwe 's/[=(].*/;/' |perl -pwe 's/^[^\/# ]/extern $$&/' |perl -pwe 's/^extern extern /extern /' > .build/global_declarations_list
 
-.PHONY: all clean clena
+.PHONY: all redo clean clena
 
 clena: clean
 clean: