1 EXECUTABLE_SUFFIX
= exe
4 FONT_SRC
:= unifontfull-5.1
.20080820.hex
9 OBJECTS
= $(patsubst %.
cpp,%.
$(OBJECT_SUFFIX
),$(wildcard generic
/*.
cpp)) $(patsubst %.
cpp,%.
$(OBJECT_SUFFIX
),$(wildcard avidump
/*.
cpp)) fonts
/font.
$(OBJECT_SUFFIX
)
10 GENERIC_LIBS
= -ldl
-lboost_iostreams
-lboost_filesystem
-lboost_system
-lz
11 CFLAGS
= $(USER_CFLAGS
)
12 HOSTCCFLAGS
= $(USER_HOSTCCFLAGS
)
13 LDFLAGS
= $(GENERIC_LIBS
) $(USER_LDFLAGS
)
15 PLATFORM_CFLAGS
= $(CFLAGS
)
16 PLATFORM_LDFLAGS
= $(LDFLAGS
)
18 PROGRAMS
= lsnes.
$(EXECUTABLE_SUFFIX
) movieinfo.
$(EXECUTABLE_SUFFIX
) lsnes-dumpavi.
$(EXECUTABLE_SUFFIX
)
25 OBJECTS
+= $(patsubst %.
cpp,%.
$(OBJECT_SUFFIX
),$(wildcard lua
/*.
cpp))
26 CFLAGS
+= $(shell pkg-config lua5.1
--cflags)
27 LDFLAGS
+= $(shell pkg-config lua5.1
--libs
)
31 ifdef NO_TIME_INTERCEPT
32 CFLAGS
+= -DNO_TIME_INTERCEPT
34 LDFLAGS
+= -Wl
,--wrap
,time
37 CFLAGS
+= -DNO_THREADS
40 CFLAGS
+= -DUSE_THREADS
43 CFLAGS
+= -DTEST_WIN32_CODE
46 CFLAGS
+= -DBSNES_IS_COMPAT
50 .PRECIOUS
: %.
$(EXECUTABLE_SUFFIX
) %.
$(OBJECT_SUFFIX
)
54 ifeq ($(PLATFORM
), SDL
)
55 LSNES_MAIN
= lsnes.
$(OBJECT_SUFFIX
)
56 PLATFORM_OBJECTS
+= $(patsubst %.
cpp,%.
$(OBJECT_SUFFIX
),$(wildcard SDL
/*.
cpp))
57 PLATFORM_CFLAGS
+= $(shell sdl-config
--cflags)
58 PLATFORM_LDFLAGS
+= $(shell sdl-config
--libs
)
60 PLATFORM_LDFLAGS
+= -lSDLmain
62 SDL
/%.
$(OBJECT_SUFFIX
): SDL
/%.
cpp
63 $(CC
) -I.
-Igeneric
-g
-std
=gnu
++0x
-I
$(BSNES_PATH
) -c
-o
$@
$< $(CFLAGS
) $(PLATFORM_CFLAGS
)
64 lsnes.
$(OBJECT_SUFFIX
): lsnes.
cpp
65 $(CC
) -I.
-Igeneric
-g
-std
=gnu
++0x
-I
$(BSNES_PATH
) -c
-o
$@
$< $(CFLAGS
) $(PLATFORM_CFLAGS
)
66 lsnes.
$(EXECUTABLE_SUFFIX
): lsnes.
$(OBJECT_SUFFIX
) $(OBJECTS
) $(PLATFORM_OBJECTS
)
67 $(CC
) -o
$@
$^
$(BSNES_PATH
)/out
/libsnes.
$(ARCHIVE_SUFFIX
) $(LDFLAGS
) $(PLATFORM_LDFLAGS
)
69 lsnes.
$(OBJECT_SUFFIX
):
70 echo
"Unsupported platform" $(PLATFORM
)
75 %.
$(EXECUTABLE_SUFFIX
): %.
$(OBJECT_SUFFIX
) $(OBJECTS
) dummy
/window-dummy.
$(OBJECT_SUFFIX
)
76 $(CC
) -o
$@
$^
$(BSNES_PATH
)/out
/libsnes.
$(ARCHIVE_SUFFIX
) $(LDFLAGS
)
78 %.
$(OBJECT_SUFFIX
): %.
cpp
79 $(CC
) -I.
-Igeneric
-g
-std
=gnu
++0x
-I
$(BSNES_PATH
) -c
-o
$@
$< $(CFLAGS
)
81 fonts
/font.
$(OBJECT_SUFFIX
): fonts
/$(FONT_SRC
) fonts
/parsehexfont.
$(EXECUTABLE_SUFFIX
)
82 fonts
/parsehexfont.
$(EXECUTABLE_SUFFIX
) <fonts
/$(FONT_SRC
) >fonts
/font.
cpp
83 $(CC
) -std
=gnu
++0x
$(HOSTCCFLAGS
) -c
-o fonts
/font.
$(OBJECT_SUFFIX
) fonts
/font.
cpp
84 $(HOSTCC
) -std
=gnu
++0x
$(HOSTCCFLAGS
) -o fonts
/verifyhexfont.
$(EXECUTABLE_SUFFIX
) fonts
/verifyhexfont.
cpp fonts
/font.
cpp
85 fonts
/verifyhexfont.
$(EXECUTABLE_SUFFIX
)
87 fonts
/parsehexfont.
$(EXECUTABLE_SUFFIX
): fonts
/parsehexfont.
cpp
88 $(HOSTCC
) -std
=gnu
++0x
$(HOSTCCFLAGS
) -o
$@
$^
91 rm -f
$(PROGRAMS
) $(patsubst %.
$(EXECUTABLE_SUFFIX
),%.
$(OBJECT_SUFFIX
),$(PROGRAMS
)) SDL
/*.
$(OBJECT_SUFFIX
) avidump
/*.
$(OBJECT_SUFFIX
) generic
/*.
$(OBJECT_SUFFIX
) fonts
/font.o fonts
/font.
cpp