Handle buttons when dynamically loading cores
[lsnes.git] / src / Makefile
blob354ef14af96e0a9ebd15ae6fadcb13a7fe92e0a8
1 __all_files__: util/__all_files__ \
2 lsnes$(DOT_EXECUTABLE_SUFFIX) \
3 $(patsubst %.cpp,%.util$(DOT_EXECUTABLE_SUFFIX),$(wildcard util/*.cpp))
5 ifndef NO_RDYNAMIC
6 LDFLAGS += -rdynamic
7 endif
8 ifdef NO_DLFCN
9 CFLAGS += -DNO_DLFCN
10 else
11 LDFLAGS += -ldl
12 endif
14 ifdef BOOST_FILESYSTEM3
15 CFLAGS += -DBOOST_FILESYSTEM3
16 endif
18 ifdef OPUS_CODEC
19 CFLAGS += -DWITH_OPUS_CODEC
20 LDFLAGS += -lopus
21 endif
23 DUMMY_LIBRARY=core lua fonts library interface video dummy
24 PLATFORM_LIBRARY=core lua fonts library interface video platform
25 ALLOBJECT=__all__.$(OBJECT_SUFFIX)
26 ALLFLAGS=__all__.ldflags
27 DUMMY_LIBRARY_OBJS=$(patsubst %,%/$(ALLOBJECT),$(DUMMY_LIBRARY))
28 PLATFORM_LIBRARY_OBJS=$(patsubst %,%/$(ALLOBJECT),$(PLATFORM_LIBRARY))
29 DUMMY_LIBRARY_FLAGS=$(patsubst %,%/$(ALLFLAGS),$(DUMMY_LIBRARY))
30 PLATFORM_LIBRARY_FLAGS=$(patsubst %,%/$(ALLFLAGS),$(PLATFORM_LIBRARY))
33 core/$(ALLOBJECT): forcelook
34 $(MAKE) -C core
36 dummy/$(ALLOBJECT): forcelook
37 $(MAKE) -C dummy
39 fonts/$(ALLOBJECT): forcelook
40 $(MAKE) -C fonts
42 library/$(ALLOBJECT): forcelook
43 $(MAKE) -C library
45 interface/$(ALLOBJECT): forcelook
46 $(MAKE) -C interface
48 lua/$(ALLOBJECT): forcelook
49 $(MAKE) -C lua
51 platform/$(ALLOBJECT): forcelook
52 $(MAKE) -C platform
54 util/__all_files__: forcelook
55 $(MAKE) -C util
57 util/%.$(OBJECT_SUFFIX): util/__all_files__
58 @true;
60 video/$(ALLOBJECT): forcelook
61 $(MAKE) -C video
63 .PRECIOUS: %.$(OBJECT_SUFFIX) util/%.$(OBJECT_SUFFIX)
65 %.util$(DOT_EXECUTABLE_SUFFIX): %.$(OBJECT_SUFFIX) $(DUMMY_LIBRARY_OBJS)
66 $(REALCC) -o $@ $^ $(LDFLAGS) $(CORE_OBJECT) `cat $(DUMMY_LIBRARY_FLAGS)`
68 lsnes$(DOT_EXECUTABLE_SUFFIX): $(PLATFORM_LIBRARY_OBJS)
69 $(REALCC) -o $@ $^ $(LDFLAGS) $(CORE_OBJECT) `cat $(PLATFORM_LIBRARY_FLAGS)`
71 precheck:
72 $(MAKE) -C core precheck
73 $(MAKE) -C dummy precheck
74 $(MAKE) -C library precheck
75 $(MAKE) -C lua precheck
76 $(MAKE) -C dummy precheck
77 $(MAKE) -C library precheck
78 $(MAKE) -C interface precheck
79 $(MAKE) -C platform precheck
80 $(MAKE) -C util precheck
81 $(MAKE) -C video precheck
83 clean:
84 rm -f *.$(OBJECT_SUFFIX) *.ldflags
85 $(MAKE) -C core clean
86 $(MAKE) -C dummy clean
87 $(MAKE) -C fonts clean
88 $(MAKE) -C library clean
89 $(MAKE) -C lua clean
90 $(MAKE) -C dummy clean
91 $(MAKE) -C library clean
92 $(MAKE) -C interface clean
93 $(MAKE) -C platform clean
94 $(MAKE) -C util clean
95 $(MAKE) -C video clean
97 forcelook:
98 @true