]> git.sesse.net Git - vlc/blob - modules/video_output/Makefile.am
decoder: fix data race in input_DecoderFrameNext()
[vlc] / modules / video_output / Makefile.am
1 voutdir = $(pluginsdir)/video_output
2 vout_LTLIBRARIES =
3
4 EXTRA_DIST += video_output/README
5
6 if HAVE_DECKLINK
7 libdecklinkoutput_plugin_la_SOURCES = video_output/decklink.cpp
8 libdecklinkoutput_plugin_la_CXXFLAGS = $(AM_CFLAGS) $(CPPFLAGS_decklinkoutput)
9 libdecklinkoutput_plugin_la_LIBADD = $(LIBS_decklink) $(LIBDL) -lpthread
10 vout_LTLIBRARIES += libdecklinkoutput_plugin.la
11 endif
12
13 if HAVE_OSX
14 libvout_macosx_plugin_la_SOURCES = video_output/macosx.m video_output/opengl.c video_output/opengl.h
15 libvout_macosx_plugin_la_CFLAGS = $(AM_CFLAGS) $(GL_CFLAGS)
16 libvout_macosx_plugin_la_LIBADD = $(GL_LIBS)
17 libvout_macosx_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)' -Wl,-framework,OpenGL,-framework,Cocoa
18
19 libcaopengllayer_plugin_la_SOURCES = video_output/caopengllayer.m video_output/opengl.c video_output/opengl.h
20 libcaopengllayer_plugin_la_CFLAGS = $(AM_CFLAGS) $(GL_CFLAGS)
21 libcaopengllayer_plugin_la_LIBADD = $(GL_LIBS)
22 libcaopengllayer_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)' -Wl,-framework,OpenGL,-framework,Cocoa,-framework,QuartzCore
23 vout_LTLIBRARIES += libvout_macosx_plugin.la libcaopengllayer_plugin.la
24 endif
25
26 libvout_ios2_plugin_la_SOURCES = video_output/ios2.m video_output/opengl.h video_output/opengl.c
27 libvout_ios2_plugin_la_CFLAGS = $(AM_CFLAGS) $(GL_CFLAGS)
28 libvout_ios2_plugin_la_OBJCFLAGS = $(AM_OBJCFLAGS) $(GL_OBJCFLAGS)
29 libvout_ios2_plugin_la_LIBADD = $(AM_LIBADD) $(GL_LIBS)
30 libvout_ios2_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)' -Wl,-framework,OpenGLES,-framework,QuartzCore,-framework,UIKit
31 if HAVE_IOS
32 vout_LTLIBRARIES += libvout_ios2_plugin.la
33 endif
34
35 ### OpenGL ###
36 # TODO: merge all three source files (?)
37 libgles2_plugin_la_SOURCES = video_output/opengl.c video_output/opengl.h \
38         video_output/gl.c
39 libgles2_plugin_la_CFLAGS = $(AM_CFLAGS) $(GLES2_CFLAGS) -DUSE_OPENGL_ES=2
40 libgles2_plugin_la_LIBADD = $(GLES2_LIBS)
41 libgles2_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
42
43 libgles1_plugin_la_SOURCES = video_output/opengl.c video_output/opengl.h \
44         video_output/gl.c
45 libgles1_plugin_la_CFLAGS = $(AM_CFLAGS) $(GLES1_CFLAGS) -DUSE_OPENGL_ES=1
46 libgles1_plugin_la_LIBADD = $(GLES1_LIBS)
47 libgles1_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
48
49 EXTRA_LTLIBRARIES += libgles2_plugin.la libgles1_plugin.la
50 vout_LTLIBRARIES += $(LTLIBgles2) $(LTLIBgles1)
51
52 libgl_plugin_la_SOURCES = video_output/opengl.c video_output/opengl.h \
53         video_output/gl.c
54 libgl_plugin_la_CFLAGS = $(AM_CFLAGS) $(GL_CFLAGS)
55 libgl_plugin_la_LIBADD = $(GL_LIBS)
56 if HAVE_GL
57 vout_LTLIBRARIES += libgl_plugin.la
58 endif
59
60
61 ### XCB ###
62 libvlc_xcb_events_la_SOURCES = \
63         video_output/xcb/events.c video_output/xcb/events.h
64 libvlc_xcb_events_la_CPPFLAGS = -DMODULE_STRING=\"xcb\"
65 libvlc_xcb_events_la_CFLAGS = $(AM_CFLAGS) $(XCB_CFLAGS)
66 libvlc_xcb_events_la_LDFLAGS = -static
67 libvlc_xcb_events_la_LIBADD = $(XCB_LIBS)
68
69 libxcb_x11_plugin_la_SOURCES = \
70         video_output/xcb/pictures.c video_output/xcb/pictures.h \
71         video_output/xcb/x11.c
72 libxcb_x11_plugin_la_CFLAGS = $(AM_CFLAGS) \
73         $(XCB_CFLAGS) $(XCB_SHM_CFLAGS)
74 libxcb_x11_plugin_la_LIBADD = libvlc_xcb_events.la \
75         $(XCB_LIBS) $(XCB_SHM_LIBS)
76
77 libxcb_xv_plugin_la_SOURCES = \
78         video_output/xcb/pictures.c video_output/xcb/pictures.h \
79         video_output/xcb/xvideo.c
80 libxcb_xv_plugin_la_CFLAGS = $(AM_CFLAGS) \
81         $(XCB_CFLAGS) $(XCB_SHM_CFLAGS) $(XCB_XV_CFLAGS)
82 libxcb_xv_plugin_la_LIBADD = libvlc_xcb_events.la \
83         $(XCB_LIBS) $(XCB_SHM_LIBS) $(XCB_XV_LIBS)
84
85 libxcb_glx_plugin_la_SOURCES = \
86         video_output/opengl.c video_output/opengl.h \
87         video_output/xcb/glx.c
88 libxcb_glx_plugin_la_CFLAGS = $(AM_CFLAGS) \
89         $(XCB_CFLAGS) $(GL_CFLAGS)
90 libxcb_glx_plugin_la_LIBADD = libvlc_xcb_events.la \
91         $(XCB_LIBS) $(GL_LIBS)
92
93 libxcb_window_plugin_la_SOURCES =  \
94         video_output/xcb/keys.c \
95         video_output/xcb/keysym.h video_output/xcb/xcb_keysym.h \
96         video_output/xcb/window.c
97 libxcb_window_plugin_la_CFLAGS = $(AM_CFLAGS) \
98         $(CFLAGS_xcb_window) \
99         $(XPROTO_CFLAGS) $(XCB_CFLAGS) $(XCB_KEYSYMS_CFLAGS)
100 libxcb_window_plugin_la_LIBADD = $(XPROTO_LIBS) $(XCB_LIBS) $(XCB_KEYSYMS_LIBS)
101
102 libegl_x11_plugin_la_SOURCES = video_output/egl.c
103 libegl_x11_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DUSE_PLATFORM_X11=1
104 libegl_x11_plugin_la_CFLAGS = $(AM_CFLAGS) $(EGL_CFLAGS)
105 libegl_x11_plugin_la_LIBADD = $(EGL_LIBS) $(X_LIBS) $(X_PRE_LIBS) -lX11
106
107 libglx_plugin_la_SOURCES = video_output/glx.c
108 libglx_plugin_la_CFLAGS = $(AM_CFLAGS) $(GL_CFLAGS)
109 libglx_plugin_la_LIBADD = $(GL_LIBS) $(X_LIBS) $(X_PRE_LIBS) -lX11
110
111 if HAVE_XCB
112 noinst_LTLIBRARIES += libvlc_xcb_events.la
113 vout_LTLIBRARIES += libxcb_x11_plugin.la libxcb_window_plugin.la
114 if HAVE_XCB_KEYSYMS
115 libxcb_window_plugin_la_CFLAGS += -DHAVE_XCB_KEYSYMS
116 endif
117 if HAVE_XCB_XVIDEO
118 vout_LTLIBRARIES += libxcb_xv_plugin.la
119 endif
120 if HAVE_EGL
121 vout_LTLIBRARIES += libegl_x11_plugin.la
122 endif
123 if HAVE_GL
124 vout_LTLIBRARIES += libxcb_glx_plugin.la libglx_plugin.la
125 endif
126 endif
127
128
129 ### Wayland ###
130 libwl_shm_plugin_la_SOURCES = video_output/wayland/shm.c
131 nodist_libwl_shm_plugin_la_SOURCES = video_output/wayland/scaler-protocol.c
132 libwl_shm_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) \
133         -I$(builddir)/video_output/wayland
134 libwl_shm_plugin_la_CFLAGS = $(WAYLAND_CLIENT_CFLAGS)
135 libwl_shm_plugin_la_LIBADD = $(WAYLAND_CLIENT_LIBS)
136 EXTRA_DIST += video_output/wayland/scaler.xml
137 CLEANFILES += $(nodist_libwl_shm_plugin_la_SOURCES)
138
139 libwl_shell_surface_plugin_la_SOURCES = video_output/wayland/shell_surface.c
140 libwl_shell_surface_plugin_la_CFLAGS = $(WAYLAND_CLIENT_CFLAGS)
141 libwl_shell_surface_plugin_la_LIBADD = $(WAYLAND_CLIENT_LIBS) $(LIBPTHREAD)
142
143 libegl_wl_plugin_la_SOURCES = video_output/egl.c
144 libegl_wl_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DUSE_PLATFORM_WAYLAND=1
145 libegl_wl_plugin_la_CFLAGS = $(AM_CFLAGS) $(EGL_CFLAGS) $(WAYLAND_EGL_CFLAGS)
146 libegl_wl_plugin_la_LIBADD = $(EGL_LIBS) $(WAYLAND_EGL_LIBS)
147
148 if HAVE_WAYLAND
149 BUILT_SOURCES += video_output/wayland/scaler-client-protocol.h
150 vout_LTLIBRARIES += libwl_shm_plugin.la
151 vout_LTLIBRARIES += libwl_shell_surface_plugin.la
152 if HAVE_WAYLAND_EGL
153 if HAVE_EGL
154 vout_LTLIBRARIES += libegl_wl_plugin.la
155 endif
156 endif
157 endif
158
159
160 ### Win32 ###
161 libdirect2d_plugin_la_SOURCES = video_output/msw/direct2d.c \
162         video_output/msw/common.c video_output/msw/common.h \
163         video_output/msw/events.c video_output/msw/events.h \
164         video_output/msw/win32touch.c video_output/msw/win32touch.h
165 libdirect2d_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) \
166         -DMODULE_NAME_IS_direct2d
167 libdirect2d_plugin_la_LIBADD = -lgdi32 -lole32 -luuid
168 libdirect2d_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
169 vout_LTLIBRARIES += $(LTLIBdirect2d)
170 EXTRA_LTLIBRARIES += libdirect2d_plugin.la
171
172 libdirect3d9_plugin_la_SOURCES = video_output/msw/direct3d9.c \
173         video_output/msw/common.c video_output/msw/common.h \
174         video_output/msw/events.c video_output/msw/events.h \
175         video_output/msw/builtin_shaders.h \
176         video_output/msw/win32touch.c video_output/msw/win32touch.h
177 libdirect3d9_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) \
178         -DMODULE_NAME_IS_direct3d9
179 libdirect3d9_plugin_la_LIBADD = -lgdi32 -lole32 -luuid
180 libdirect3d9_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
181 vout_LTLIBRARIES += $(LTLIBdirect3d9)
182 EXTRA_LTLIBRARIES += libdirect3d9_plugin.la
183
184 libdirect3d11_plugin_la_SOURCES = video_output/msw/direct3d11.c \
185  video_output/msw/common.c video_output/msw/common.h \
186  video_output/msw/events.c video_output/msw/events.h \
187  video_output/msw/builtin_shaders.h \
188  video_output/msw/win32touch.c video_output/msw/win32touch.h
189 libdirect3d11_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) \
190  -DMODULE_NAME_IS_direct3d11
191 if !HAVE_WINSTORE
192 libdirect3d11_plugin_la_LIBADD = -lgdi32 -lole32 -luuid
193 else
194 libdirect3d11_plugin_la_LIBADD = -ld3dcompiler -lole32 -luuid
195 endif
196 libdirect3d11_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
197 vout_LTLIBRARIES += $(LTLIBdirect3d11)
198 EXTRA_LTLIBRARIES += libdirect3d11_plugin.la
199
200 libdirectdraw_plugin_la_SOURCES = video_output/msw/directdraw.c \
201         video_output/msw/common.c video_output/msw/common.h \
202         video_output/msw/events.c video_output/msw/events.h \
203         video_output/msw/win32touch.c video_output/msw/win32touch.h
204 libdirectdraw_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) \
205         -DMODULE_NAME_IS_directdraw
206 libdirectdraw_plugin_la_LIBADD = -luser32 -lgdi32 -lole32 -luuid
207 if HAVE_DIRECTX
208 vout_LTLIBRARIES += libdirectdraw_plugin.la
209 endif
210
211 libglwin32_plugin_la_SOURCES = video_output/msw/glwin32.c \
212         video_output/opengl.c video_output/opengl.h \
213         video_output/msw/common.c video_output/msw/common.h \
214         video_output/msw/events.c video_output/msw/events.h \
215         video_output/msw/win32touch.c video_output/msw/win32touch.h
216 libglwin32_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) \
217         -DMODULE_NAME_IS_glwin32
218 libglwin32_plugin_la_LIBADD = -lopengl32 -lgdi32 -lole32 -luuid
219 libglwin32_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
220 vout_LTLIBRARIES += $(LTLIBglwin32)
221 EXTRA_LTLIBRARIES += libglwin32_plugin.la
222
223 libwingdi_plugin_la_SOURCES = video_output/msw/wingdi.c \
224         video_output/msw/common.c video_output/msw/common.h \
225         video_output/msw/events.c video_output/msw/events.h \
226         video_output/msw/win32touch.c video_output/msw/win32touch.h
227 libwingdi_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) \
228         -DMODULE_NAME_IS_wingdi
229 libwingdi_plugin_la_LIBADD = -lgdi32 -lole32 -luuid
230 if HAVE_WIN32
231 if !HAVE_WINSTORE
232 vout_LTLIBRARIES += libwingdi_plugin.la
233 endif
234 endif
235
236 libegl_win32_plugin_la_SOURCES = video_output/egl.c
237 libegl_win32_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DUSE_PLATFORM_WIN32=1
238 libegl_win32_plugin_la_CFLAGS = $(AM_CFLAGS) $(EGL_CFLAGS)
239 libegl_win32_plugin_la_LIBADD = $(EGL_LIBS)
240 if HAVE_WIN32
241 if HAVE_EGL
242 vout_LTLIBRARIES += libegl_win32_plugin.la
243 endif
244 endif
245
246 libdrawable_plugin_la_SOURCES = video_output/drawable.c
247 if HAVE_WIN32
248 vout_LTLIBRARIES += libdrawable_plugin.la
249 endif
250
251 ### OS/2 ###
252 if HAVE_OS2
253 vout_LTLIBRARIES += libdrawable_plugin.la
254 endif
255
256 libkva_plugin_la_SOURCES = video_output/kva.c
257 libkva_plugin_la_LIBADD = $(KVA_LIBS)
258 if HAVE_KVA
259 vout_LTLIBRARIES += libkva_plugin.la
260 endif
261
262
263 ### Android ###
264
265 libegl_android_plugin_la_SOURCES = video_output/egl.c
266 libegl_android_plugin_la_CFLAGS = $(AM_CFLAGS) $(EGL_CFLAGS) -DUSE_PLATFORM_ANDROID=1
267 libegl_android_plugin_la_LIBADD = $(EGL_LIBS)
268
269 libandroid_native_window_plugin_la_SOURCES = video_output/android/nativewindow.c video_output/android/utils.c
270 libandroid_native_window_plugin_la_CFLAGS = $(AM_CFLAGS)
271 libandroid_native_window_plugin_la_LIBADD = $(LIBDL)
272
273 libandroid_window_plugin_la_SOURCES = video_output/android/android_window.c video_output/android/android_window.h video_output/android/utils.c video_output/android/utils.h
274 libandroid_window_plugin_la_CFLAGS = $(AM_CFLAGS)
275 libandroid_window_plugin_la_LIBADD = $(LIBDL)
276 libandroid_window_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
277 EXTRA_LTLIBRARIES += libandroid_window_plugin.la
278
279 libandroid_surface_plugin_la_SOURCES = video_output/android/surface.c video_output/android/utils.c video_output/android/utils.h
280 libandroid_surface_plugin_la_CFLAGS = $(AM_CFLAGS)
281 libandroid_surface_plugin_la_LIBADD = $(LIBDL)
282 libandroid_surface_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
283 EXTRA_LTLIBRARIES += libandroid_surface_plugin.la
284
285 if HAVE_ANDROID
286 vout_LTLIBRARIES += libandroid_native_window_plugin.la
287 vout_LTLIBRARIES += $(LTLIBandroid_window)
288 vout_LTLIBRARIES += $(LTLIBandroid_surface)
289 if HAVE_EGL
290 vout_LTLIBRARIES += libegl_android_plugin.la
291 endif
292 endif
293
294
295 ### FrameBuffer ###
296
297 libdirectfb_plugin_la_SOURCES = video_output/directfb.c
298 libdirectfb_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_directfb)
299 libdirectfb_plugin_la_LIBADD = $(LIBS_directfb)
300 libdirectfb_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
301 EXTRA_LTLIBRARIES += libdirectfb_plugin.la
302 vout_LTLIBRARIES += $(LTLIBdirectfb)
303
304 libfb_plugin_la_SOURCES = video_output/fb.c
305 libfb_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
306 EXTRA_LTLIBRARIES += libfb_plugin.la
307 vout_LTLIBRARIES += $(LTLIBfb)
308
309
310 ### Simple DirectMedia Layer ###
311 libvout_sdl_plugin_la_SOURCES = video_output/sdl.c
312 libvout_sdl_plugin_la_CFLAGS = $(AM_CFLAGS) $(SDL_CFLAGS)
313 libvout_sdl_plugin_la_LIBADD = $(SDL_LIBS)
314 if !HAVE_WIN32
315 if !HAVE_OS2
316 libvout_sdl_plugin_la_LIBADD += $(X_LIBS) $(X_PRE_LIBS) -lX11
317 endif
318 endif
319 libvout_sdl_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
320 EXTRA_LTLIBRARIES += libvout_sdl_plugin.la
321 vout_LTLIBRARIES += $(LTLIBvout_sdl)
322
323
324
325 ### ASCII Art ###
326 libaa_plugin_la_SOURCES = video_output/aa.c
327 libaa_plugin_la_LIBADD = -laa
328 if !HAVE_WIN32
329 libaa_plugin_la_LIBADD += $(X_LIBS) $(X_PRE_LIBS) -lX11
330 endif
331 libaa_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
332 EXTRA_LTLIBRARIES += libaa_plugin.la
333 vout_LTLIBRARIES += $(LTLIBaa)
334
335
336 ### Coloured ASCII art ###
337 libcaca_plugin_la_SOURCES = video_output/caca.c
338 libcaca_plugin_la_CFLAGS = $(AM_CFLAGS) $(CACA_CFLAGS)
339 libcaca_plugin_la_LIBADD = $(CACA_LIBS)
340 if !HAVE_WIN32
341 if !HAVE_DARWIN
342 libcaca_plugin_la_LIBADD += $(X_LIBS) $(X_PRE_LIBS) -lX11
343 endif
344 endif
345 libcaca_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
346 EXTRA_LTLIBRARIES += libcaca_plugin.la
347 vout_LTLIBRARIES += $(LTLIBcaca)
348
349
350 ### Common ###
351 libvdummy_plugin_la_SOURCES = video_output/vdummy.c
352 libvmem_plugin_la_SOURCES = video_output/vmem.c
353 libyuv_plugin_la_SOURCES = video_output/yuv.c
354
355 vout_LTLIBRARIES += \
356         libvdummy_plugin.la \
357         libvmem_plugin.la \
358         libyuv_plugin.la