1. $(JSMN_OBJS) is not set anywhere. 2. You don't need to depend on CCAN_HEADERS, COMMON_HEADERS or JSMN_HEADERS: the top level Makefile has all object depedning on it. 3. Similarly, CCAN_OBJS. 4. Every object file should be rebuilt if its Makefile changes. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>