diff --git a/src/Makefile b/src/Makefile index 7c28d52084a6f2a207c3c94f64519ad20fbbdadd..37123a01515e66818b84e434fde513e221136bbd 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 5045d983fc0fd97aaccc73616516f855c6d60b75..e5247f24dfe8af66477b7fb33dbdd2ca793f53b4 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 5034bf93b550a3ea5ed8921a7a4a5ec226d25535..ead647db5d5030fd3b48b44319e457d7788ff3e4 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)