]> git.sesse.net Git - vlc/blob - plugins/motion/Makefile
e1663d6aa581a6eadd14c135c2b0c671445f966d
[vlc] / plugins / motion / Makefile
1 ###############################################################################
2 # vlc (VideoLAN Client) motion module makefile
3 # (c)2001 VideoLAN
4 ###############################################################################
5
6 include ../../Makefile.modules
7
8 ###############################################################################
9 # Objects and files
10 ###############################################################################
11 PLUGIN_MOTION = motion.o vdec_motion_inner.o
12 PLUGIN_MOTIONMMX = motionmmx.o vdec_motion_inner_mmx.o
13 PLUGIN_MOTIONMMXEXT = motionmmxext.o vdec_motion_inner_mmxext.o
14 PLUGIN_MOTIONCOMMON = vdec_motion_common.o
15
16 BUILTIN_MOTION = $(PLUGIN_MOTION:%.o=%-BUILTIN-MOTION.o) \
17                 $(PLUGIN_MOTIONCOMMON:%.o=%-BUILTIN-MOTION.o)
18 BUILTIN_MOTIONMMX = $(PLUGIN_MOTIONMMX:%.o=%-BUILTIN-MOTIONMMX.o) \
19                 $(PLUGIN_MOTIONCOMMON:%.o=%-BUILTIN-MOTIONMMX.o)
20 BUILTIN_MOTIONMMXEXT = $(PLUGIN_MOTIONMMXEXT:%.o=%-BUILTIN-MOTIONMMXEXT.o) \
21                 $(PLUGIN_MOTIONCOMMON:%.o=%-BUILTIN-MOTIONMMXEXT.o)
22
23 STD_PLUGIN_OBJ = $(PLUGIN_MOTION) $(PLUGIN_MOTIONMMX) $(PLUGIN_MOTIONMMXEXT) $(PLUGIN_MOTIONCOMMON)
24 ALL_OBJ = $(STD_PLUGIN_OBJ) $(BUILTIN_MOTION) $(BUILTIN_MOTIONMMX) $(BUILTIN_MOTIONMMXEXT)
25
26 objects := $(ALL_OBJ)
27 cdependancies := $(objects:%.o=.dep/%.d)
28
29 export
30
31 #
32 # Virtual targets
33 #
34 all:
35
36 clean:
37         rm -f $(ALL_OBJ)
38         rm -f *.o *.moc *.bak *.builtin
39         rm -rf .dep
40
41 FORCE:
42
43 $(cdependancies): %.d: FORCE
44         @$(MAKE) -s --no-print-directory -f ../../Makefile.dep $@
45
46 $(ALL_OBJ): %.o: ../../Makefile.dep Makefile
47
48 $(STD_PLUGIN_OBJ): %.o: .dep/%.d
49 $(STD_PLUGIN_OBJ): %.o: %.c
50         $(CC) $(CFLAGS) $(PCFLAGS) -c -o $@ $<
51
52 $(BUILTIN_MOTION): %-BUILTIN-MOTION.o: .dep/%.d
53 $(BUILTIN_MOTION): %-BUILTIN-MOTION.o: %.c
54         $(CC) $(CFLAGS) -DBUILTIN -DMODULE_NAME=motion -c -o $@ $<
55
56 $(BUILTIN_MOTIONMMX): %-BUILTIN-MOTIONMMX.o: .dep/%.d
57 $(BUILTIN_MOTIONMMX): %-BUILTIN-MOTIONMMX.o: %.c
58         $(CC) $(CFLAGS) -DBUILTIN -DMODULE_NAME=motionmmx -c -o $@ $<
59
60 $(BUILTIN_MOTIONMMXEXT): %-BUILTIN-MOTIONMMXEXT.o: .dep/%.d
61 $(BUILTIN_MOTIONMMXEXT): %-BUILTIN-MOTIONMMXEXT.o: %.c
62         $(CC) $(CFLAGS) -DBUILTIN -DMODULE_NAME=motionmmxext -c -o $@ $<
63
64 #
65 # Real targets
66 #
67 ../../lib/motion.so: $(PLUGIN_MOTION) $(PLUGIN_MOTIONCOMMON)
68         $(CC) $(PCFLAGS) -o $@ $^ $(PLCFLAGS) 
69
70 ../../lib/motion.a: $(BUILTIN_MOTION)
71         ar r $@ $^
72
73 ../../lib/motionclassic.so: $(PLUGIN_MOTIONCLASSIC) $(PLUGIN_MOTIONCOMMON)
74         $(CC) $(PCFLAGS) -o $@ $^ $(PLCFLAGS) 
75
76 ../../lib/motionclassic.a: $(BUILTIN_MOTIONCLASSIC)
77         ar r $@ $^
78
79 ../../lib/motionmmx.so: $(PLUGIN_MOTIONMMX) $(PLUGIN_MOTIONCOMMON)
80         $(CC) $(PCFLAGS) -o $@ $^ $(PLCFLAGS) 
81
82 ../../lib/motionmmx.a: $(BUILTIN_MOTIONMMX)
83         ar r $@ $^
84
85 ../../lib/motionmmxext.so: $(PLUGIN_MOTIONMMXEXT) $(PLUGIN_MOTIONCOMMON)
86         $(CC) $(PCFLAGS) -o $@ $^ $(PLCFLAGS) 
87
88 ../../lib/motionmmxext.a: $(BUILTIN_MOTIONMMXEXT)
89         ar r $@ $^
90