]> git.sesse.net Git - vlc/blob - plugins/idct/Makefile
* Altivec IDCT and motion compensation, based on Paul Mackerras's mpeg2dec
[vlc] / plugins / idct / Makefile
1 ###############################################################################
2 # vlc (VideoLAN Client) idct module makefile
3 # (c)2001 VideoLAN
4 ###############################################################################
5
6 #
7 # Objects
8 #
9
10 PLUGIN_IDCT = idct.o
11 PLUGIN_IDCTCLASSIC = idctclassic.o
12 PLUGIN_IDCTMMX = idctmmx.o
13 PLUGIN_IDCTMMXEXT = idctmmxext.o
14 PLUGIN_IDCTALTIVEC = idctaltivec.o
15
16 BUILTIN_IDCT = $(PLUGIN_IDCT:%.o=BUILTIN_IDCT_%.o)
17 BUILTIN_IDCTCLASSIC = $(PLUGIN_IDCTCLASSIC:%.o=BUILTIN_IDCTCLASSIC_%.o)
18 BUILTIN_IDCTMMX = $(PLUGIN_IDCTMMX:%.o=BUILTIN_IDCTMMX_%.o)
19 BUILTIN_IDCTMMXEXT = $(PLUGIN_IDCTMMXEXT:%.o=BUILTIN_IDCTMMXEXT_%.o)
20 BUILTIN_IDCTALTIVEC = $(PLUGIN_IDCTALTIVEC:%.o=BUILTIN_IDCTALTIVEC_%.o)
21
22 PLUGIN_C = $(PLUGIN_IDCT) $(PLUGIN_IDCTCLASSIC) $(PLUGIN_IDCTMMX) $(PLUGIN_IDCTMMXEXT)
23 ALL_OBJ = $(PLUGIN_C) $(PLUGIN_IDCTALTIVEC) $(BUILTIN_IDCT) $(BUILTIN_IDCTCLASSIC) $(BUILTIN_IDCTMMX) $(BUILTIN_IDCTMMXEXT) $(BUILTIN_IDCTALTIVEC)
24
25 #
26 # Virtual targets
27 #
28
29 include ../../Makefile.modules
30
31 $(PLUGIN_IDCTALTIVEC): %.o: .dep/%.d
32 $(PLUGIN_IDCTALTIVEC): %.o: %.c
33         $(CC) $(CFLAGS) -DPLUGIN $(PCFLAGS) -faltivec -c -o $@ $<
34
35 $(BUILTIN_IDCT): BUILTIN_IDCT_%.o: .dep/%.d
36 $(BUILTIN_IDCT): BUILTIN_IDCT_%.o: %.c
37         $(CC) $(CFLAGS) -DBUILTIN -DMODULE_NAME=idct -c -o $@ $<
38
39 $(BUILTIN_IDCTCLASSIC): BUILTIN_IDCTCLASSIC_%.o: .dep/%.d
40 $(BUILTIN_IDCTCLASSIC): BUILTIN_IDCTCLASSIC_%.o: %.c
41         $(CC) $(CFLAGS) -DBUILTIN -DMODULE_NAME=idctclassic -c -o $@ $<
42
43 $(BUILTIN_IDCTMMX): BUILTIN_IDCTMMX_%.o: .dep/%.d
44 $(BUILTIN_IDCTMMX): BUILTIN_IDCTMMX_%.o: %.c
45         $(CC) $(CFLAGS) -DBUILTIN -DMODULE_NAME=idctmmx -c -o $@ $<
46
47 $(BUILTIN_IDCTMMXEXT): BUILTIN_IDCTMMXEXT_%.o: .dep/%.d
48 $(BUILTIN_IDCTMMXEXT): BUILTIN_IDCTMMXEXT_%.o: %.c
49         $(CC) $(CFLAGS) -DBUILTIN -DMODULE_NAME=idctmmxext -c -o $@ $<
50
51 $(BUILTIN_IDCTALTIVEC): BUILTIN_IDCTALTIVEC_%.o: .dep/%.d
52 $(BUILTIN_IDCTALTIVEC): BUILTIN_IDCTALTIVEC_%.o: %.c
53         $(CC) $(CFLAGS) -DBUILTIN -DMODULE_NAME=idctaltivec -c -o $@ $<
54
55 #
56 # Real targets
57 #
58
59 ../idct.so: $(PLUGIN_IDCT)
60         $(CC) $(PCFLAGS) -o $@ $^ $(PLCFLAGS) 
61
62 ../idct.a: $(BUILTIN_IDCT)
63         ar r $@ $^
64         $(RANLIB) $@
65
66 ../idctclassic.so: $(PLUGIN_IDCTCLASSIC)
67         $(CC) $(PCFLAGS) -o $@ $^ $(PLCFLAGS) 
68
69 ../idctclassic.a: $(BUILTIN_IDCTCLASSIC)
70         ar r $@ $^
71         $(RANLIB) $@
72
73 ../idctmmx.so: $(PLUGIN_IDCTMMX)
74         $(CC) $(PCFLAGS) -o $@ $^ $(PLCFLAGS) 
75
76 ../idctmmx.a: $(BUILTIN_IDCTMMX)
77         ar r $@ $^
78         $(RANLIB) $@
79
80 ../idctmmxext.so: $(PLUGIN_IDCTMMXEXT)
81         $(CC) $(PCFLAGS) -o $@ $^ $(PLCFLAGS) 
82
83 ../idctmmxext.a: $(BUILTIN_IDCTMMXEXT)
84         ar r $@ $^
85         $(RANLIB) $@
86
87 ../idctaltivec.so: $(PLUGIN_IDCTALTIVEC)
88         $(CC) $(PCFLAGS) -o $@ $^ $(PLCFLAGS) $(LIB_ALTIVEC)
89
90 ../idctaltivec.a: $(BUILTIN_IDCTALTIVEC)
91         ar r $@ $^
92         $(RANLIB) $@
93