diff --git a/src/Makefile b/src/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..44e798cc0ed4531ce610280355cab95078dbeb2a
--- /dev/null
+++ b/src/Makefile
@@ -0,0 +1,18 @@
+SUBDIRS := $(wildcard */.)
+
+all: $(SUBDIRS)
+
+$(SUBDIRS):
+	$(MAKE) -C $@
+
+clean:
+	rm -f $(BUILDDIR)/cluster/*.o
+	rm -f $(BUILDDIR)/sphere/*.o
+	rm -f $(BUILDDIR)/trapping/*.o
+
+wipe:
+	rm -f $(BUILDDIR)/cluster/*
+	rm -f $(BUILDDIR)/sphere/*
+	rm -f $(BUILDDIR)/trapping/*
+
+.PHONY: all $(SUBDIRS)