Remove need for "prepare" in the Makefile
Just conditionally do mkdir if it's needed. Potentially a few more calls to 'stat' during make, but should be cheap enough...
This commit is contained in:
parent
3136594bc4
commit
a911219515
26
Makefile
26
Makefile
|
|
@ -91,11 +91,11 @@ else
|
||||||
quiet = quiet_
|
quiet = quiet_
|
||||||
endif
|
endif
|
||||||
|
|
||||||
quiet_cmd_mkdir = ' MKDIR $@'
|
quiet_cmd_mkdir = ' MKDIR $(@D)'
|
||||||
cmd_mkdir = mkdir -p $@
|
cmd_mkdir = mkdir -p $(@D)
|
||||||
|
|
||||||
define do_mkdir
|
define do_mkdir
|
||||||
@if [ ! -d $@ ]; then \
|
@if [ ! -d $(@D) ]; then \
|
||||||
echo $($(quiet)cmd_mkdir); \
|
echo $($(quiet)cmd_mkdir); \
|
||||||
$(cmd_mkdir); \
|
$(cmd_mkdir); \
|
||||||
fi;
|
fi;
|
||||||
|
|
@ -118,19 +118,17 @@ quiet_cmd_cc_o_c = ' CC $@'
|
||||||
cmd_cc_o_c = $(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
|
cmd_cc_o_c = $(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
|
||||||
|
|
||||||
define do_cc_o_c
|
define do_cc_o_c
|
||||||
|
@$(do_mkdir)
|
||||||
@$(cmd_cc_dep_c);
|
@$(cmd_cc_dep_c);
|
||||||
@echo $($(quiet)cmd_cc_o_c);
|
@echo $($(quiet)cmd_cc_o_c);
|
||||||
@$(cmd_cc_o_c);
|
@$(cmd_cc_o_c);
|
||||||
endef
|
endef
|
||||||
|
|
||||||
cmd_cc_dep_rc = \
|
|
||||||
$(CC) -x c-header -MM -MT $@ $(CPPFLAGS) -o $(@D)/.$(@F).d $< ; \
|
|
||||||
$(cmd_fixdep)
|
|
||||||
|
|
||||||
quiet_cmd_cc_link = ' LINK $@'
|
quiet_cmd_cc_link = ' LINK $@'
|
||||||
cmd_cc_link = $(CC) -o $@ $^ $(1)
|
cmd_cc_link = $(CC) -o $@ $^ $(1)
|
||||||
|
|
||||||
define do_cc_link
|
define do_cc_link
|
||||||
|
@$(do_mkdir)
|
||||||
@echo $($(quiet)cmd_cc_link);
|
@echo $($(quiet)cmd_cc_link);
|
||||||
@$(call cmd_cc_link,$(1))
|
@$(call cmd_cc_link,$(1))
|
||||||
endef
|
endef
|
||||||
|
|
@ -202,10 +200,7 @@ APPS = \
|
||||||
$(BIN_PFX)bsputil$(EXT) \
|
$(BIN_PFX)bsputil$(EXT) \
|
||||||
$(BIN_PFX)qbsp$(EXT)
|
$(BIN_PFX)qbsp$(EXT)
|
||||||
|
|
||||||
all: prepare $(patsubst %,$(BIN_DIR)/%,$(APPS))
|
all: $(patsubst %,$(BIN_DIR)/%,$(APPS))
|
||||||
|
|
||||||
.PHONY: prepare
|
|
||||||
prepare: $(BUILD_DIRS) $(BIN_DIR)
|
|
||||||
|
|
||||||
COMMON_CPPFLAGS := -I$(TOPDIR)/include -DLINUX $(DPTHREAD)
|
COMMON_CPPFLAGS := -I$(TOPDIR)/include -DLINUX $(DPTHREAD)
|
||||||
ifeq ($(DEBUG),Y)
|
ifeq ($(DEBUG),Y)
|
||||||
|
|
@ -222,14 +217,6 @@ $(BUILD_DIR)/bspinfo/%.o: CPPFLAGS = $(COMMON_CPPFLAGS)
|
||||||
$(BUILD_DIR)/bsputil/%.o: CPPFLAGS = $(COMMON_CPPFLAGS)
|
$(BUILD_DIR)/bsputil/%.o: CPPFLAGS = $(COMMON_CPPFLAGS)
|
||||||
$(BUILD_DIR)/common/%.o: CPPFLAGS = $(COMMON_CPPFLAGS)
|
$(BUILD_DIR)/common/%.o: CPPFLAGS = $(COMMON_CPPFLAGS)
|
||||||
|
|
||||||
$(BUILD_DIR)/qbsp: ; $(do_mkdir)
|
|
||||||
$(BUILD_DIR)/common: ; $(do_mkdir)
|
|
||||||
$(BUILD_DIR)/light: ; $(do_mkdir)
|
|
||||||
$(BUILD_DIR)/vis: ; $(do_mkdir)
|
|
||||||
$(BUILD_DIR)/bspinfo: ; $(do_mkdir)
|
|
||||||
$(BUILD_DIR)/bsputil: ; $(do_mkdir)
|
|
||||||
$(BIN_DIR): ; $(do_mkdir)
|
|
||||||
|
|
||||||
$(BUILD_DIR)/qbsp/%.o: qbsp/%.c ; $(do_cc_o_c)
|
$(BUILD_DIR)/qbsp/%.o: qbsp/%.c ; $(do_cc_o_c)
|
||||||
$(BUILD_DIR)/common/%.o: common/%.c ; $(do_cc_o_c)
|
$(BUILD_DIR)/common/%.o: common/%.c ; $(do_cc_o_c)
|
||||||
$(BUILD_DIR)/light/%.o: light/%.c ; $(do_cc_o_c)
|
$(BUILD_DIR)/light/%.o: light/%.c ; $(do_cc_o_c)
|
||||||
|
|
@ -339,4 +326,3 @@ clean:
|
||||||
@rm -f $(shell find . \( \
|
@rm -f $(shell find . \( \
|
||||||
-name '*~' -o -name '#*#' -o -name '*.o' -o -name '*.res' \
|
-name '*~' -o -name '#*#' -o -name '*.o' -o -name '*.res' \
|
||||||
\) -print)
|
\) -print)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue