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