2bf29432dd7deb59cdeb6ddcfd94f0c80f8e4a1a
[goodguy/cinelerra.git] / cinelerra-5.1 / plugins / Makefile
1 export TOPDIR ?= $(CURDIR)/..
2 include $(TOPDIR)/global_config
3 default: all
4
5 ifeq ($(WANT_DVB), yes)
6 LIVEDVB = liveaudio livevideo
7 endif
8 ifneq ($(WANT_OPENCV), no)
9 want_var:=$(WANT_OPENCV)
10 include $(TOPDIR)/opencv_build
11 OPENCV_OBJS := findobj flowobj gaborobj moveobj stylizeobj puzzleobj
12 $(OPENCV_OBJS): opencv
13 endif
14 ifneq ($(WANT_CUDA), no)
15 CUDA_OBJS := mandelcuda nbodycuda
16 endif
17
18 # burn must come before any other effecttv plugin
19 # colors must come before any plugin
20 # parametric must come before fourier plugins
21 # motion must come before perspective
22
23 DIRS = $(OPENCV_OBJS) \
24         $(CUDA_OBJS) \
25         1080to480 \
26         1080to540 \
27         720to480 \
28         aging \
29         scaleratio \
30         audioscope \
31         bandslide \
32         bandwipe \
33         bluebanana \
34         blur \
35         brightness \
36         burn \
37         C41 \
38         cdripper \
39         chromakey \
40         chromakeyhsv \
41         color3way \
42         colorbalance \
43         compressor \
44         crikey \
45         crossfade \
46         dcoffset \
47         decimate \
48         deinterlace \
49         deinterlace-cv \
50         delayaudio \
51         delayvideo \
52         denoise \
53         denoisefft \
54         denoiseseltempavg \
55         denoisevideo \
56         descratch \
57         despike \
58         diffkey \
59         dissolve \
60         dot \
61         downsample \
62         edge \
63         echo \
64         echocancel \
65         fieldframe \
66         flash \
67         flip \
68         framefield \
69         freeverb \
70         freezeframe \
71         gain \
72         gamma \
73         gradient \
74         graphic \
75         histeq \
76         histogram \
77         histogram_bezier \
78         holo \
79         huesaturation \
80         interpolate \
81         interpolateaudio \
82         interpolatevideo \
83         invertaudio \
84         invertvideo \
85         irissquare \
86         ivtc \
87         lens \
88         level \
89         libeffecttv \
90         linearblur \
91         $(LIVEDVB) \
92         loopaudio \
93         loopvideo \
94         motion \
95         motion51 \
96         motion-cv \
97         motion-hv \
98         motion2point \
99         motionblur \
100         normalize \
101         oilpainting \
102         overlay \
103         overlayaudio \
104         parametric \
105         perspective \
106         photoscale \
107         pitch \
108         polar \
109         radialblur \
110         reframe \
111         reframert \
112         removegaps \
113         reroute \
114         resample \
115         resamplert \
116         reverb \
117         reverseaudio \
118         reversevideo \
119         rgb601 \
120         rgbshift \
121         rotate \
122         rumbler \
123         scale \
124         sketcher \
125         shapewipe \
126         sharpen \
127         shiftinterlace \
128         slide \
129         spectrogram \
130         spherecam \
131         svg \
132         swapchannels \
133         swapframes \
134         synthesizer \
135         threshold \
136         timeavg \
137         timefront \
138         timestretch \
139         timestretchrt \
140         titler \
141         tracer \
142         translate \
143         unsharp \
144         videoscope \
145         wave \
146         whirl \
147         wipe \
148         yuv \
149         yuv411 \
150         yuvshift \
151         zoom \
152         zoomblur \
153         theme_blond \
154         theme_blond_cv \
155         theme_blue \
156         theme_blue_dot \
157         theme_bright \
158         theme_hulk \
159         theme_neophyte \
160         theme_pinklady \
161         theme_suv \
162         theme_unflat \
163         theme_cakewalk \
164
165 # too costly
166 #       findobject \
167 #       greycstoration \
168 # not finished
169 #       denoisemjpeg \
170 # duplicate
171 #       vocoder \
172
173 PLUGIN_DIR = $(BINDIR)/plugins
174 DATA = $(PLUGIN_DIR)/fonts $(PLUGIN_DIR)/shapes
175 LADSPA_DIR = $(BINDIR)/ladspa
176
177 all:    $(PLUGIN_DIR) $(DIRS) $(DATA) $(LADSPA_DIR)
178
179 $(PLUGIN_DIR):
180         mkdir -p $@
181
182 $(DATA):        $(PLUGIN_DIR)
183         cp -a $(notdir $@) $(PLUGIN_DIR)/.
184
185 $(LADSPA_DIR):
186         mkdir -p $@
187         if [ -d $(THIRDPARTY)/ladspa-*/usr/local/lib*/ladspa ]; then \
188                 cp -a $(THIRDPARTY)/ladspa-*/usr/local/lib*/ladspa/. $@/. ; \
189         fi
190
191 # parallel compilation of all directories
192 .PHONY: $(DIRS)
193 $(DIRS):
194         $(MAKE) -C $@
195
196 clean:
197         rm -rf $(foreach d,$(DIRS),$(d)/$(OBJDIR))
198         rm -rf $(PLUGIN_DIR) $(LADSPA_DIR)
199
200 install:
201
202 # dependencies for parallel build
203 aging:          libeffecttv
204 burn:           libeffecttv
205 dot:            libeffecttv
206 holo:           libeffecttv
207 motion2point:   downsample motion
208 motion:         downsample
209 timestretchrt:  timestretch
210