]> git.sesse.net Git - pistorm/blob - Makefile
[MEGA-WIP] Raylib-based RTG output
[pistorm] / Makefile
1 EXENAME          = emulator
2
3 MAINFILES        = emulator.c \
4         memory_mapped.c \
5         config_file/config_file.c \
6         config_file/rominfo.c \
7         input/input.c \
8         gpio/ps_protocol.c \
9         platforms/platforms.c \
10         platforms/amiga/amiga-autoconf.c \
11         platforms/amiga/amiga-platform.c \
12         platforms/amiga/amiga-registers.c \
13         platforms/dummy/dummy-platform.c \
14         platforms/dummy/dummy-registers.c \
15         platforms/amiga/Gayle.c \
16         platforms/amiga/hunk-reloc.c \
17         platforms/amiga/cdtv-dmac.c \
18         platforms/amiga/rtg/rtg.c \
19         platforms/amiga/rtg/rtg-output-raylib.c \
20         platforms/amiga/rtg/rtg-gfx.c \
21         platforms/amiga/piscsi/piscsi.c \
22         platforms/amiga/pistorm-dev/pistorm-dev.c \
23         platforms/amiga/net/pi-net.c \
24         platforms/shared/rtc.c
25
26 MUSASHIFILES     = m68kcpu.c m68kdasm.c softfloat/softfloat.c softfloat/softfloat_fpsp.c
27 MUSASHIGENCFILES = m68kops.c
28 MUSASHIGENHFILES = m68kops.h
29 MUSASHIGENERATOR = m68kmake
30
31 # EXE = .exe
32 # EXEPATH = .\\
33 EXE =
34 EXEPATH = ./
35
36 .CFILES   = $(MAINFILES) $(MUSASHIFILES) $(MUSASHIGENCFILES)
37 .OFILES   = $(.CFILES:%.c=%.o)
38
39 CC        = gcc
40 WARNINGS  = -Wall -Wextra -pedantic
41 CFLAGS    = $(WARNINGS) -I. -I./raylib -march=armv8-a -mfloat-abi=hard -mfpu=neon-fp-armv8 -O3 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
42 # Old SDL2 stuff
43 #LFLAGS    = $(WARNINGS) `sdl2-config --libs`
44 # Pi4 experimental crap
45 #LFLAGS    = $(WARNINGS) -L/opt/vc/lib -L./raylib -lraylib -lbrcmGLESv2 -lbrcmEGL -lbcm_host -I./raylib/external/glfw/include -I./raylib/external/glfw/deps/mingw -I/usr/include/libdrm
46 # Pi3 standard raylib stuff
47 LFLAGS    = $(WARNINGS) -L/opt/vc/lib -L./raylib -lraylib -lbrcmGLESv2 -lbrcmEGL -lbcm_host
48
49 TARGET = $(EXENAME)$(EXE)
50
51 DELETEFILES = $(MUSASHIGENCFILES) $(MUSASHIGENHFILES) $(.OFILES) $(TARGET) $(MUSASHIGENERATOR)$(EXE)
52
53
54 all: $(TARGET)
55
56 clean:
57         rm -f $(DELETEFILES)
58
59
60 $(TARGET): $(MUSASHIGENHFILES) $(.OFILES) Makefile
61         $(CC) -o $@ $(.OFILES) -O3 -pthread $(LFLAGS) -lm
62
63 $(MUSASHIGENCFILES) $(MUSASHIGENHFILES): $(MUSASHIGENERATOR)$(EXE)
64         $(EXEPATH)$(MUSASHIGENERATOR)$(EXE)
65
66 $(MUSASHIGENERATOR)$(EXE):  $(MUSASHIGENERATOR).c
67         $(CC) -o  $(MUSASHIGENERATOR)$(EXE)  $(MUSASHIGENERATOR).c