Better mkdir/clean in Makefile

Former-commit-id: 19b676817919290ff44ccc9542728cfba029a6c7
This commit is contained in:
Luke Street 2022-09-30 17:25:39 -04:00
parent 78c2744399
commit be663369fc

View File

@ -156,11 +156,6 @@ default: all
all: $(DOL) all: $(DOL)
ALL_DIRS := $(sort $(dir $(O_FILES)))
# Make sure build directory exists before compiling anything
DUMMY != mkdir -p $(ALL_DIRS)
.PHONY: tools .PHONY: tools
$(LDSCRIPT): ldscript.lcf $(LDSCRIPT): ldscript.lcf
@ -174,7 +169,7 @@ ifneq ($(findstring -map,$(LDFLAGS)),)
endif endif
clean: clean:
$(RM) $(O_FILES) $(DEPENDS) $(RM) -r $(BUILD_DIR)
$(MAKE) -C tools clean $(MAKE) -C tools clean
tools: tools:
$(MAKE) -C tools $(MAKE) -C tools
@ -182,8 +177,8 @@ tools:
# ELF creation makefile instructions # ELF creation makefile instructions
$(ELF): $(O_FILES) $(LDSCRIPT) $(ELF): $(O_FILES) $(LDSCRIPT)
@echo Linking ELF $@ @echo Linking ELF $@
$(QUIET) @echo $(O_FILES) > build/o_files $(QUIET) @echo $(O_FILES) > $(BUILD_DIR)/o_files
$(QUIET) $(LD) $(LDFLAGS) -o $@ -lcf $(LDSCRIPT) @build/o_files $(QUIET) $(LD) $(LDFLAGS) -o $@ -lcf $(LDSCRIPT) @$(BUILD_DIR)/o_files
%.d.unix: %.d $(TRANSFORM_DEP) %.d.unix: %.d $(TRANSFORM_DEP)
@echo Processing $< @echo Processing $<
@ -193,26 +188,32 @@ $(ELF): $(O_FILES) $(LDSCRIPT)
$(BUILD_DIR)/%.o: %.s $(BUILD_DIR)/%.o: %.s
@echo "Assembling" $< @echo "Assembling" $<
$(QUIET) mkdir -p $(dir $@)
$(QUIET) $(AS) $(ASFLAGS) -o $@ $< $(QUIET) $(AS) $(ASFLAGS) -o $@ $<
$(BUILD_DIR)/%.clang.o: %.cpp $(BUILD_DIR)/%.clang.o: %.cpp
@echo "Clang " $< @echo "Clang " $<
$(QUIET) mkdir -p $(dir $@)
$(QUIET) $(CLANG_CC) $(CLANG_CFLAGS) -c -o $@ $< $(QUIET) $(CLANG_CC) $(CLANG_CFLAGS) -c -o $@ $<
$(BUILD_DIR)/%.ep.o: $(BUILD_DIR)/%.o $(BUILD_DIR)/%.ep.o: $(BUILD_DIR)/%.o
@echo Frank is fixing $< @echo Frank is fixing $<
$(QUIET) mkdir -p $(dir $@)
$(QUIET) $(PYTHON) $(FRANK) $< $@ $(QUIET) $(PYTHON) $(FRANK) $< $@
$(BUILD_DIR)/%.o: %.c $(BUILD_DIR)/%.o: %.c
@echo "Compiling " $< @echo "Compiling " $<
$(QUIET) mkdir -p $(dir $@)
$(QUIET) $(CC) $(CFLAGS) -c -o $(dir $@) $< $(QUIET) $(CC) $(CFLAGS) -c -o $(dir $@) $<
$(BUILD_DIR)/%.o: %.cp $(BUILD_DIR)/%.o: %.cp
@echo "Compiling " $< @echo "Compiling " $<
$(QUIET) mkdir -p $(dir $@)
$(QUIET) $(CC) $(CFLAGS) -c -o $(dir $@) $< $(QUIET) $(CC) $(CFLAGS) -c -o $(dir $@) $<
$(BUILD_DIR)/%.o: %.cpp $(BUILD_DIR)/%.o: %.cpp
@echo "Compiling " $< @echo "Compiling " $<
$(QUIET) mkdir -p $(dir $@)
$(QUIET) $(CC) $(CFLAGS) -c -o $(dir $@) $< $(QUIET) $(CC) $(CFLAGS) -c -o $(dir $@) $<
### Debug Print ### ### Debug Print ###