minor changes; mostly for new Context Help feature
[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         alpha \
30         scaleratio \
31         audioscope \
32         bandslide \
33         bandwipe \
34         bluebanana \
35         blur \
36         brightness \
37         burn \
38         C41 \
39         cdripper \
40         chorus \
41         chromakey \
42         chromakeyhsv \
43         color3way \
44         colorbalance \
45         colorspace \
46         compressor \
47         compressormulti \
48         crikey \
49         crop \
50         crossfade \
51         dcoffset \
52         decimate \
53         deinterlace \
54         deinterlace-cv \
55         delayaudio \
56         delayvideo \
57         denoise \
58         denoisefft \
59         denoiseseltempavg \
60         denoisevideo \
61         descratch \
62         despike \
63         diffkey \
64         dissolve \
65         dot \
66         downsample \
67         edge \
68         echo \
69         echocancel \
70         fieldframe \
71         flanger \
72         flash \
73         flip \
74         foreground \
75         framefield \
76         freeverb \
77         freezeframe \
78         gain \
79         gamma \
80         gradient \
81         graphic \
82         histeq \
83         histogram \
84         histogram_bezier \
85         holo \
86         huesaturation \
87         interpolate \
88         interpolateaudio \
89         interpolatevideo \
90         invertaudio \
91         invertvideo \
92         irissquare \
93         ivtc \
94         lens \
95         level \
96         libeffecttv \
97         linearblur \
98         $(LIVEDVB) \
99         loopaudio \
100         loopvideo \
101         motion \
102         motion51 \
103         motion-cv \
104         motion-hv \
105         motion2point \
106         motionblur \
107         normalize \
108         oilpainting \
109         overlay \
110         overlayaudio \
111         parametric \
112         perspective \
113         photoscale \
114         pitch \
115         polar \
116         radialblur \
117         reframe \
118         reframert \
119         removegaps \
120         reroute \
121         resample \
122         resamplert \
123         reverb \
124         reverseaudio \
125         reversevideo \
126         rgb601 \
127         rgbshift \
128         rotate \
129         rumbler \
130         scale \
131         sketcher \
132         shapewipe \
133         sharpen \
134         shiftinterlace \
135         slide \
136         spectrogram \
137         spherecam \
138         svg \
139         swapchannels \
140         swapframes \
141         synthesizer \
142         threshold \
143         timeavg \
144         timefront \
145         timestretch \
146         timestretchrt \
147         titler \
148         tracer \
149         translate \
150         tremolo \
151         unsharp \
152         videoscope \
153         wave \
154         whirl \
155         wipe \
156         yuv \
157         yuv411 \
158         yuvshift \
159         zoom \
160         zoomblur \
161         theme_blond \
162         theme_blond_cv \
163         theme_blue \
164         theme_blue_dot \
165         theme_bright \
166         theme_hulk \
167         theme_neophyte \
168         theme_pinklady \
169         theme_suv \
170         theme_unflat \
171         theme_cakewalk \
172
173 # too costly
174 #       findobject \
175 #       greycstoration \
176 # not finished
177 #       denoisemjpeg \
178 # duplicate
179 #       vocoder \
180
181 PLUGIN_DIR = $(BINDIR)/plugins
182 DATA = $(PLUGIN_DIR)/fonts $(PLUGIN_DIR)/shapes
183 LADSPA_DIR = $(BINDIR)/ladspa
184
185 all:    $(PLUGIN_DIR) $(DIRS) $(DATA) $(LADSPA_DIR)
186
187 $(PLUGIN_DIR):
188         mkdir -p $@
189
190 $(DATA):        $(PLUGIN_DIR)
191         cp -a $(notdir $@) $(PLUGIN_DIR)/.
192
193 $(LADSPA_DIR):
194         mkdir -p $@
195         if [ -d $(THIRDPARTY)/ladspa-*/usr/local/lib*/ladspa ]; then \
196                 cp -a $(THIRDPARTY)/ladspa-*/usr/local/lib*/ladspa/. $@/. ; \
197         fi
198
199 # parallel compilation of all directories
200 .PHONY: $(DIRS)
201 $(DIRS):
202         $(MAKE) -C $@
203
204 clean:
205         rm -rf $(foreach d,$(DIRS),$(d)/$(OBJDIR))
206         rm -rf $(PLUGIN_DIR) $(LADSPA_DIR)
207
208 install:
209
210 # dependencies for parallel build
211 aging:          libeffecttv
212 burn:           libeffecttv
213 dot:            libeffecttv
214 holo:           libeffecttv
215 motion2point:   downsample motion
216 motion:         downsample
217 timestretchrt:  timestretch
218