diff options
Diffstat (limited to 'examples/cdrom/cdxa/makefile')
| -rw-r--r-- | examples/cdrom/cdxa/makefile | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/examples/cdrom/cdxa/makefile b/examples/cdrom/cdxa/makefile new file mode 100644 index 0000000..8858979 --- /dev/null +++ b/examples/cdrom/cdxa/makefile @@ -0,0 +1,52 @@ +include ../../sdk-common.mk + +TARGET = cdxa.elf + +CFILES = $(notdir $(wildcard *.c)) +CPPFILES = $(notdir $(wildcard *.cpp)) +AFILES = $(notdir $(wildcard *.s)) + +OFILES = $(addprefix build/,$(CFILES:.c=.o) $(CPPFILES:.cpp=.o) $(AFILES:.s=.o)) + +PREFIX = mipsel-unknown-elf- + +LIBS = -lpsxcd -lpsxetc -lpsxgpu -lpsxgte -lpsxspu -lpsxsio -lpsxapi -lc + +CFLAGS = -g -O2 -fno-builtin -fdata-sections -ffunction-sections +CPPFLAGS = $(CFLAGS) \ + -fno-exceptions \ + -fno-rtti \ + -fno-unwind-tables \ + -fno-threadsafe-statics \ + -fno-use-cxa-atexit + +AFLAGS = -g -msoft-float +LDFLAGS = -g -Ttext=0x80010000 -gc-sections \ + -T $(GCC_BASE)/mipsel-unknown-elf/lib/ldscripts/elf32elmip.x + +CC = $(PREFIX)gcc +CXX = $(PREFIX)g++ +AS = $(PREFIX)as +LD = $(PREFIX)ld + +all: $(OFILES) + $(LD) $(LDFLAGS) $(LIBDIRS) $(OFILES) $(LIBS) -o $(TARGET) + elf2x -q $(TARGET) + +iso: + mkpsxiso -y -q iso.xml + +build/%.o: %.c + @mkdir -p $(dir $@) + $(CC) $(CFLAGS) $(INCLUDE) -c $< -o $@ + +build/%.o: %.cpp + @mkdir -p $(dir $@) + $(CXX) $(CPPFLAGS) $(INCLUDE) -c $< -o $@ + +build/%.o: %.s + @mkdir -p $(dir $@) + $(CC) $(AFLAGS) $(INCLUDE) -c $< -o $@ + +clean: + rm -rf build $(TARGET) $(TARGET:.elf=.exe) |
