1BUILD_PRX          = 0
2PSP_LARGE_MEMORY   = 1
3DEBUG              = 0
4HAVE_KERNEL_PRX    = 1
5HAVE_THREADS       = 1
6BIG_STACK          = 0
7WHOLE_ARCHIVE_LINK = 0
8
9TARGET = retroarchpsp
10
11ifeq ($(DEBUG), 1)
12   OPTIMIZE_LV	:= -O0 -g
13else
14   OPTIMIZE_LV	:= -O3
15endif
16
17ifeq ($(WHOLE_ARCHIVE_LINK), 1)
18   WHOLE_START := -Wl,--whole-archive
19   WHOLE_END := -Wl,--no-whole-archive
20endif
21
22INCDIR = deps deps/stb deps/7zip libretro-common/include libretro-common/include/compat/zlib
23CFLAGS = $(OPTIMIZE_LV) -G0 -std=gnu99 -ffast-math -fsingle-precision-constant
24ASFLAGS = $(CFLAGS)
25
26RARCH_DEFINES = -DPSP -D_MIPS_ARCH_ALLEGREX -DHAVE_LANGEXTRA -DHAVE_ZLIB -DHAVE_AUDIOMIXER -DHAVE_RWAV -DHAVE_RPNG -DHAVE_RJPEG -DHAVE_GRIFFIN=1 -DRARCH_INTERNAL -DHAVE_SCREENSHOTS -DHAVE_REWIND -DRARCH_CONSOLE -DHAVE_MENU -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_CHEATS -DHAVE_RGUI -DHAVE_FILTERS_BUILTIN -DHAVE_DSP_FILTER -DHAVE_VIDEO_FILTER -DHAVE_7ZIP -D_7ZIP_ST -DHAVE_CC_RESAMPLER
27
28LIBDIR =
29LDFLAGS =
30LIBS = $(WHOLE_START) -lretro_psp1 $(WHOLE_END) -lstdc++ -lpspgu -lpspgum -lm -lpspaudio -lpspfpu -lpsppower -lpsprtc -lpthread-psp
31
32ifeq ($(HAVE_THREADS), 1)
33RARCH_DEFINES += -DHAVE_THREADS
34endif
35
36ifeq ($(HAVE_KERNEL_PRX), 1)
37CFLAGS += -DHAVE_KERNEL_PRX
38endif
39
40ifeq ($(BIG_STACK), 1)
41CFLAGS += -DBIG_STACK
42endif
43
44CFLAGS += $(RARCH_DEFINES)
45
46EXTRA_TARGETS = EBOOT.PBP
47PSP_EBOOT_TITLE = RetroArch PSP1
48
49PSP_OBJECTS = griffin/griffin.o bootstrap/psp1/kernel_functions.o
50
51OBJS = $(PSP_OBJECTS)
52
53PSPSDK=$(shell psp-config --pspsdk-path)
54include $(PSPSDK)/lib/build.mak
55
56pspsh-debug:
57	pspsh -e reset
58	read -p "Start debugger in VSCode and press any key to continue... \n" -n1 -s
59	pspsh -e debug ./retroarchpsp.prx
60	pspsh
61
62pspsh-run:
63	pspsh -e reset
64	pspsh -e ./retroarchpsp.prx
65	pspsh
66
67debug: clean all pspsh-debug
68
69run: clean all pspsh-run
70