-ALL=$(patsubst ccan/%/test, %, $(wildcard ccan/*/test))
-ALL_DIRS=$(patsubst %, ccan/%, $(ALL))
+# Trying to build the whole repo is usually a lose; there will be some
+# dependencies you don't have.
+EXCLUDE=ccan/wwviaudio ccan/ogg_to_pcm
+
+# Anything with an _info file is a module.
+ALL=$(filter-out $(EXCLUDE), $(patsubst ccan/%/_info, %, $(wildcard ccan/*/_info)))