diff --git a/Makefile b/Makefile index 4631119..c627ca9 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,4 @@ +COMPONENTS = conn crypto db thirdparty hashmap identify net os peer record routing secio swarm utils yamux DEBUG = true export DEBUG @@ -5,6 +6,7 @@ export DEBUG ROOT= $(shell pwd) export INCLUDE = -I$(ROOT)/include -I$(ROOT)/c-protobuf -I$(ROOT)/c-multihash/include -I$(ROOT)/c-multiaddr/include + OBJS = \ conn/*.o \ crypto/*.o \ @@ -27,21 +29,7 @@ link: compile ar rcs libp2p.a $(OBJS) $(LINKER_FLAGS) compile: - cd conn; make all; - cd crypto; make all; - cd db; make all; - cd thirdparty; make all; - cd hashmap; make all; - cd identify; make all; - cd net; make all; - cd os; make all; - cd peer; make all; - cd record; make all; - cd routing; make all; - cd secio; make all; - cd swarm; make all; - cd utils; make all; - cd yamux; make all; + $(foreach dir,$(COMPONENTS), $(MAKE) -C $(dir) all ;) test: compile link cd test; make all; @@ -51,21 +39,4 @@ rebuild: clean all all: test clean: - cd conn; make clean; - cd crypto; make clean; - cd db; make clean; - cd hashmap; make clean; - cd identify; make clean; - cd net; make clean; - cd os; make clean; - cd peer; make clean; - cd thirdparty; make clean - cd record; make clean; - cd routing; make clean; - cd secio; make clean; - cd swarm; make clean; - cd utils; make clean; - cd test; make clean; - cd yamux; make clean; - rm -rf libp2p.a - + $(foreach dir,$(COMPONENTS), $(MAKE) -C $(dir) clean ;)