From: John Hodge Date: Fri, 21 Oct 2016 07:52:47 +0000 (+0800) Subject: Makefile - Clean up makefiles X-Git-Url: https://git.ucc.asn.au/?p=tpg%2Fopendispense2.git;a=commitdiff_plain;h=857e7c75bb043a518ea0e724e635f68702ba33d0 Makefile - Clean up makefiles --- diff --git a/src/Makefile b/src/Makefile index 7c28d52..37123a0 100644 --- a/src/Makefile +++ b/src/Makefile @@ -1,19 +1,21 @@ .PHONY: all clean install +SUBMAKE := make --no-print-directory + all: - @make -C cokebank_sqlite all -# @make -C cokebank_basic all - @make -C server all - @make -C client all + @echo "--- cokebank_sqlite: all" && $(SUBMAKE) -C cokebank_sqlite all +# @echo "--- cokebank_basic: all" && $(SUBMAKE) -C cokebank_basic all + @echo "--- server: all" && $(SUBMAKE) -C server all + @echo "--- client: all" && $(SUBMAKE) -C client all clean: - @make -C cokebank_sqlite clean -# @make -C cokebank_basic clean - @make -C server clean - @make -C client clean + @echo "--- cokebank_sqlite: clean" && $(SUBMAKE) -C cokebank_sqlite clean +# @echo "--- cokebank_basic: clean" && $(SUBMAKE) -C cokebank_basic clean + @echo "--- server: clean" && $(SUBMAKE) -C server clean + @echo "--- client: clean" && $(SUBMAKE) -C client clean install: - @make -C server install - @make -C client install + @echo "--- server: install" && $(SUBMAKE) -C server install + @echo "--- client: install" && $(SUBMAKE) -C client install diff --git a/src/client/Makefile b/src/client/Makefile index 5045d98..e5247f2 100644 --- a/src/client/Makefile +++ b/src/client/Makefile @@ -1,5 +1,6 @@ # OpenDispense 2 # +V ?= @ INSTALLDIR := /usr/local/opendispense2 CFLAGS := -Wall -Werror -g -std=gnu99 @@ -10,6 +11,9 @@ BIN := ../../dispense OBJ := main.o protocol.o menu.o OBJ += doregex.o config.o +OBJ := $(patsubst %,.obj/%,$(OBJ)) + + DEPFILES := $(OBJ:%.o=%.d) .PHONY: all clean @@ -24,16 +28,18 @@ install: $(BIN) cp $(BIN) $(INSTALLDIR) $(BIN): $(OBJ) - $(CC) -o $(BIN) $(OBJ) $(LDFLAGS) -# chown root $(BIN) -# chmod u+s $(BIN) - -%.o: %.c - $(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS) - $(CC) -M -MT $@ -o $*.d $< $(CPPFLAGS) - -%.o: ../common/%.c - $(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS) - $(CC) -M -MT $@ -o $*.d $< $(CPPFLAGS) + @echo "[CC] -o $@" + $V$(CC) -o $(BIN) $(OBJ) $(LDFLAGS) +# chown root $(BIN) && chmod u+s $(BIN) + +.obj/%.o: %.c + @echo "[CC] -c $<" + @mkdir -p $(dir $@) + $V$(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS) -MMD -MF $@.d + +.obj/%.o: ../common/%.c + @echo "[CC] -c $<" + @mkdir -p $(dir $@) + $V$(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS) -MMD -MF $@.d -include $(DEPFILES) diff --git a/src/server/Makefile b/src/server/Makefile index 5034bf9..ead647d 100644 --- a/src/server/Makefile +++ b/src/server/Makefile @@ -1,5 +1,6 @@ # OpenDispense 2 # +V ?= @ INSTALLDIR := /usr/local/opendispense2 @@ -28,18 +29,19 @@ install: $(BIN) cp $(BIN) $(INSTALLDIR) $(BIN): $(OBJ) - $(CC) -o $(BIN) $(OBJ) $(LINKFLAGS) + @echo "[CC] -o $@" + @$(CC) -o $(BIN) $(OBJ) $(LINKFLAGS) obj/%.o: %.c @mkdir -p $(dir $@) - $(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS) - @cpp $< -MM -MF $@.d + @echo "[CC] -c $<" + $V$(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS) -MMD -MF $@.d obj/%.o: ../common/%.c @mkdir -p $(dir $@) - $(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS) - @cpp $< -MM -MF $@.d + @echo "[CC] -c $<" + $V$(CC) -c $< -o $@ $(CFLAGS) $(CPPFLAGS) -MMD -MF $@.d -include $(DEPFILES)