Makefile: mkdir -p to all folders

This commit is contained in:
Xavier Del Campo Romero 2020-06-03 21:39:19 +02:00
parent 17d0be339a
commit b9886cf7be
1 changed files with 20 additions and 4 deletions

View File

@ -11,7 +11,7 @@ GNU_SIZE = mipsel-unknown-elf-size
# Custom define flags for GCC
DEFINE= -DFIXMATH_FAST_SIN -D_PAL_MODE_
#DEFINE += -DPSXSDK_DEBUG
DEFINE += -DPSXSDK_DEBUG
DEFINE += -DNO_CDDA
#DEFINE += -DNO_INTRO
@ -19,8 +19,11 @@ DEFINE += -DNO_CDDA
LIBS= -lfixmath
CC_FLAGS = -Wall -Werror -c -O3 -Wfatal-errors
MKDIR = mkdir
MKDIR_FLAGS = -p
# Path definitions
PSXSDK_PATH = /usr/local/psxsdk
PSXSDK_PATH = $(HOME)/psxsdk
PATH := $(PATH):$(PSXSDK_PATH)/bin/
PROJECT_DIR = ~/Airport
CDROM_ROOT=$(PROJECT_DIR)/cdimg
@ -33,7 +36,7 @@ BIN_TARGET_PATH = $(PROJECT_DIR)/Bin
# ELF2EXE:
ELF2EXE = elf2exe
ELF2EXE_FLAGS = -mark="A homebrew game created with PSXSDK"
LICENSE_FILE = /usr/local/psxsdk/share/licenses/infoeur.dat
LICENSE_FILE = $(PSXSDK_PATH)/share/licenses/infoeur.dat
EXE_PATH = Exe
# PCSX-R
@ -129,6 +132,7 @@ SPRITE_OBJECTS += $(addprefix $(OBJ_FONTS_PATH)/, INTROFNT.TIM \
# ------------------------------------
$(BIN_TARGET_PATH)/$(PROJECT).bin: $(EXE_PATH)/$(PROJECT).iso
@$(MKDIR) $(BIN_TARGET_PATH) $(MKDIR_FLAGS)
#~ mkpsxiso $< $@ $(LICENSE_FILE) -s $(addprefix --track=, $(MUSIC_TRACKS))
mkpsxiso $< $@ $(LICENSE_FILE) -s
# $(PROJECT).cue is automatically generated by mkpsxiso
@ -149,20 +153,24 @@ clean:
rm -f $(OBJ_FONTS_PATH)/*.TIM
$(OBJ_DIR)/%.d: $(SRC_DIR)/%.c
@$(MKDIR) $(OBJ_DIR) $(MKDIR_FLAGS)
$(CC) $< $(DEFINE) $(CC_FLAGS) -MM > $@
$(OBJ_DIR)/%.o: $(SRC_DIR)/%.c $(OBJ_DIR)/%.d
@$(MKDIR) $(OBJ_DIR) $(MKDIR_FLAGS)
$(CC) $< -o $@ $(DEFINE) $(CC_FLAGS) -MMD
$(EXE_PATH)/$(PROJECT).elf: $(OBJECTS)
@$(MKDIR) $(EXE_PATH) $(MKDIR_FLAGS)
$(LINKER) $^ -o $@ $(LIBS) -Wl,--gc-sections
$(GNU_SIZE) $@
$(EXE_PATH)/$(PROJECT).iso: $(EXE_PATH)/$(PROJECT).exe $(SOUND_OBJECTS) $(LEVEL_OBJECTS) $(SPRITE_OBJECTS)
@$(MKDIR) $(EXE_PATH) $(MKDIR_FLAGS)
mkisofs -o $@ -V $(PROJECT) -sysid PLAYSTATION $(CDROM_ROOT)
$(EXE_PATH)/$(PROJECT).exe: $(EXE_PATH)/$(PROJECT).elf
@$(MKDIR) $(EXE_PATH) $(MKDIR_FLAGS)
$(ELF2EXE) $< $@ $(ELF2EXE_FLAGS)
cp $@ $(CDROM_ROOT)
@ -171,23 +179,31 @@ run: $(BIN_TARGET_PATH)/$(PROJECT).bin
$(EMULATOR) -cdfile $(PROJECT_DIR)/Bin/$(PROJECT).bin $(EMULATOR_FLAGS)
$(OBJ_SPRITES_PATH)/%.TIM: $(SRC_SPRITES_PATH)/%.bmp $(SRC_SPRITES_PATH)/%.flags
@$(MKDIR) $(OBJ_SPRITES_PATH) $(MKDIR_FLAGS)
$(BMP2TIM) $< $@ `cat $(word 2,$^)`
$(OBJ_FONTS_PATH)/%.TIM: $(SRC_SPRITES_PATH)/%.bmp $(SRC_SPRITES_PATH)/%.flags
@$(MKDIR) $(OBJ_FONTS_PATH) $(MKDIR_FLAGS)
$(BMP2TIM) $< $@ `cat $(word 2,$^)`
$(OBJ_SPRITES_PATH)/%.CLT: $(SRC_SPRITES_PATH)/%.bmp $(SRC_SPRITES_PATH)/%.flags
@$(MKDIR) $(OBJ_SPRITES_PATH) $(MKDIR_FLAGS)
$(BMP2TIM) $< $@ `cat $(word 2,$^)`
$(OBJ_SOUNDS_DIR)/%.VAG: $(SOURCE_SOUNDS_FOLDER)/%.wav
@$(MKDIR) $(OBJ_SOUNDS_DIR) $(MKDIR_FLAGS)
wav2vag $^ $@
$(OBJ_LEVELS_DIR)/%.LVL: $(SRC_LEVELS_DIR)/%.LVL
@$(MKDIR) $(OBJ_LEVELS_DIR) $(MKDIR_FLAGS)
cp $^ $@
$(OBJ_LEVELS_DIR)/%.PLT: $(SRC_LEVELS_DIR)/%.PLT
@$(MKDIR) $(OBJ_LEVELS_DIR) $(MKDIR_FLAGS)
cp $^ $@
$(MUSIC_OBJ_DIR)/%.bin: $(MUSIC_SRC_DIR)/%.mp3
@$(MKDIR) $(MUSIC_OBJ_DIR) $(MKDIR_FLAGS)
$(FFMPEG_DIR)$(FFMPEG) -i $< $(FFMPEG_FLAGS) $@
# ----------------------------------------