TARGET := fart ifdef WIN32 export CPPFLAGS += -I"$(shell cd)" else export CPPFLAGS += -I"$(shell pwd)" endif all: $(TARGET) .PHONY: $(TARGET) $(TARGET): make -C util make -C shapes make -C main $(CXX) -o $@ main/*.o util/*.o shapes/*.o $(CXXFLAGS) $(LDFLAGS) .PHONY: tests tests: make -C test $(CXX) -o $@ test/*.o util/*.o shapes/*.o $(CXXFLAGS) $(LDFLAGS) clean: make -C test clean make -C main clean make -C shapes clean make -C util clean -rm -f $(TARGET) tests