Deprecate Make-based build system in favor of CMake

This commit is contained in:
Xavier Del Campo Romero 2021-01-03 01:56:25 +01:00
parent b9afe989d0
commit c8c51a358f
1 changed files with 0 additions and 208 deletions

View File

@ -1,208 +0,0 @@
# Project-wise definitions
PROJECT = AIRPORT
# GNU Toolchain definitions
CC = psx-gcc
LINKER = psx-gcc
GNU_SIZE = mipsel-unknown-elf-size
# Custom define flags for GCC
DEFINE= -DFIXMATH_FAST_SIN -D_PAL_MODE_
DEFINE += -DPSXSDK_DEBUG
DEFINE += -DNO_CDDA
#DEFINE += -DNO_INTRO
# Compiler flags
LIBS= -lfixmath
CC_FLAGS = -Wall -Werror -c -O3 -Wfatal-errors
MKDIR = mkdir
MKDIR_FLAGS = -p
# Path definitions
PATH := $(PATH):$(PSXSDK_PATH)/bin/
PROJECT_DIR = ~/Airport
CDROM_ROOT=$(PROJECT_DIR)/cdimg
BIN_TARGET_PATH = $(PROJECT_DIR)/Bin
#Uncomment this DEFINE below to use Airport together with OpenSend + QPSXSerial toolchain.
#DEFINE += -DSERIAL_INTERFACE
# PSXSDK tools definitions
# ELF2EXE:
ELF2EXE = elf2exe
ELF2EXE_FLAGS = -mark="A homebrew game created with PSXSDK"
LICENSE_FILE = $(PSXSDK_PATH)/share/licenses/infoeur.dat
EXE_PATH = Exe
# PCSX-R
EMULATOR_DIR = ~/pcsxr
EMULATOR = pcsxr
# Uncomment the line below if you get no sound output under Linux.
SOUND_INTERFACE += padsp
EMULATOR_FLAGS = -nogui -psxout
# Objects definition
# Compiled objects list
OBJ_DIR = Obj
SRC_DIR = .
OBJECTS = $(addprefix $(OBJ_DIR)/, main.o System.o Menu.o Gfx.o Pad.o MainMenuBtnAni.o \
LoadMenu.o GameGui.o Sfx.o Camera.o EndAnimation.o \
PSXSDKIntro.o PltParser.o Game.o Font.o MemCard.o \
Aircraft.o Serial.o Timer.o Message.o)
# Source dependencies:
DEPS = $(OBJECTS:.o=.d)
# CD-DA objects:
MUSIC_OBJ_DIR = ../Bin
MUSIC_SRC_DIR = ../Music
MUSIC_TRACKS = $(addprefix $(MUSIC_OBJ_DIR)/, TRACK01.bin TRACK02.bin TRACK03.bin)
FFMPEG = ffmpeg
FFMPEG_DIR =
#FFMPEG_DIR = $(MUSIC_SRC_DIR)/$(FFMPEG)/bin/
FFMPEG_FLAGS = -f s16le -acodec pcm_s16le
# VAG objects:
SOURCE_SOUNDS_FOLDER = ../Sounds
OBJ_SOUNDS_DIR = ../cdimg/DATA/SOUNDS
SOUND_OBJECTS = $(addprefix $(OBJ_SOUNDS_DIR)/, BELL.VAG \
ACCEPT.VAG \
TRAYCL.VAG \
SPINDISK.VAG \
BEEP.VAG \
TAKEOFF1.VAG \
RCTM1F1.VAG \
RCPW1A1.VAG \
RCPM1A1.VAG )
# Level objects:
SRC_LEVELS_DIR = $(PROJECT_DIR)/Levels
OBJ_LEVELS_DIR = $(CDROM_ROOT)/DATA/LEVELS
LEVEL_OBJECTS = $(addprefix $(OBJ_LEVELS_DIR)/, \
LEVEL1.LVL \
LEVEL2.LVL \
LEVEL3.LVL \
LEVEL18.LVL \
XAMI.LVL \
LEVEL1.PLT \
LEVEL2.PLT \
LEVEL3.PLT \
LEVEL18.PLT \
XAMI.PLT \
EASY.PLT \
TUTORIA1.PLT)
# Sprite objects:
BMP2TIM = bmp2tim
SRC_SPRITES_PATH = $(PROJECT_DIR)/Sprites
OBJ_SPRITES_PATH = $(CDROM_ROOT)/DATA/SPRITES
# NOTE: Fonts, despite still being .TIM files, are separated into another folder,
# so SPRITE_OBJECTS are splitted in two parts.
OBJ_FONTS_PATH = $(CDROM_ROOT)/DATA/FONTS
SPRITE_OBJECTS = $(addprefix $(OBJ_SPRITES_PATH)/, PSXDISK.TIM \
TILESET1.TIM \
TILESET2.TIM \
MAINMENU.TIM \
LOADING.TIM \
PLANE.TIM \
BUTTONS.TIM \
GAMEPLN.TIM \
PLNBLUE.CLT \
BUBBLE.TIM \
GPL.TIM \
OPENSRC.TIM \
MOUSE.TIM \
DEPARR.TIM \
PAGEUPDN.TIM \
BLDNGS1.TIM \
LFRARROW.TIM \
UDNARROW.TIM \
BCNGW.TIM \
MENUSTAR.TIM )
SPRITE_OBJECTS += $(addprefix $(OBJ_FONTS_PATH)/, INTROFNT.TIM \
FONT_1.TIM \
FONT_2.TIM )
# ------------------------------------
# Instructions
# ------------------------------------
$(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
rebuild:
make clean
make $(BIN_TARGET_PATH)/$(PROJECT).bin
-include $(DEPS)
clean:
rm -f $(OBJ_DIR)/*.d
rm -f $(OBJ_DIR)/*.o
rm -f $(OBJ_SOUNDS_DIR)/*.VAG
rm -f $(OBJ_LEVELS_DIR)/*.LVL
rm -f $(OBJ_LEVELS_DIR)/*.PLT
rm -f $(OBJ_SPRITES_PATH)/*.TIM
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)
run: $(BIN_TARGET_PATH)/$(PROJECT).bin
export PATH=$$PATH:$(EMULATOR_DIR)
$(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) $@
# ----------------------------------------
# Phony targets
# ----------------------------------------
.PHONY: clean run