1AUTOMAKE_OPTIONS = subdir-objects
2include $(top_builddir)/misc/Makefile.plugins
3include $(top_srcdir)/misc/Makefile.common
4
5# REVISIT: This second line here bothers me more than just a little bit
6AM_CFLAGS  = $(DEFAULT_OCFLAGS) $(VISIBILITY_FLAG)
7AM_LDFLAGS = $(xineplug_ldflags)
8
9##
10# IMPORTANT:
11# ---------
12# All of xine input plugins should be named like the scheme "xineplug_inp_"
13#
14
15SUBDIRS =
16if !WITH_EXTERNAL_DVDNAV
17SUBDIRS += libdvdnav
18endif
19
20#
21# helper libs
22#
23
24noinst_LTLIBRARIES = \
25	http_helper.la \
26	input_helper.la \
27	media_helper.la \
28	xine_tls.la
29
30http_helper_la_SOURCES = http_helper.c http_helper.h
31http_helper_la_LIBADD = $(XINE_LIB) $(LTLIBINTL)
32
33input_helper_la_SOURCES = input_helper.c input_helper.h
34input_helper_la_LIBADD = $(XINE_LIB) $(LTLIBINTL)
35
36media_helper_la_SOURCES = media_helper.c media_helper.h
37media_helper_la_LIBADD = $(XINE_LIB) $(LTLIBINTL)
38
39xine_tls_la_SOURCES = tls/xine_tls.c tls/xine_tls.h tls/xine_tls_plugin.h
40xine_tls_la_CFLAGS = $(AM_CFLAGS)
41xine_tls_la_LIBADD = $(XINE_LIB) $(LTLIBINTL)
42
43#
44#
45#
46
47noinst_LTLIBRARIES += \
48        librtsp.la \
49        libreal.la
50
51noinst_HEADERS = net_buf_ctrl.h
52
53EXTRA_DIST = multirate_pref.c
54
55librtsp_la_SOURCES = \
56        librtsp/rtsp.c \
57        librtsp/rtsp.h \
58        librtsp/rtsp_session.c \
59        librtsp/rtsp_session.h
60librtsp_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/src/input/libreal -I$(top_srcdir)/src/input/librtsp
61
62libreal_la_SOURCES = \
63        libreal/real.h \
64        libreal/real.c \
65        libreal/asmrp.h \
66        libreal/asmrp.c \
67        libreal/rmff.h \
68        libreal/rmff.c \
69        libreal/sdpplin.h \
70        libreal/sdpplin.c
71libreal_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/src/input/librtsp -I$(top_srcdir)/src/input/libreal
72
73#
74# external libs
75#
76
77ASFHEADER_LIB = $(top_builddir)/src/demuxers/libasfheader.la
78$(ASFHEADER_LIB):
79	$(MAKE) -C $(top_builddir)/src/demuxers libasfheader.la
80
81#
82# plugins
83#
84
85if !ENABLE_LIBXINE_BUILTINS
86in_builtins = xineplug_inp_file.la xineplug_inp_stdin_fifo.la xineplug_inp_test.la
87endif
88
89if ENABLE_DVB
90in_dvb = xineplug_inp_dvb.la
91endif
92
93if ENABLE_VCD
94in_vcd = xineplug_inp_vcd.la
95endif
96
97if ENABLE_VCDO
98in_vcdo = xineplug_inp_vcdo.la
99endif
100
101if ENABLE_V4L
102in_v4l = xineplug_inp_v4l.la
103endif
104
105if ENABLE_V4L2
106in_v4l2 = xineplug_inp_v4l2.la
107in_pvr = xineplug_inp_pvr.la
108endif
109
110if ENABLE_GNOME_VFS
111in_gnome_vfs = xineplug_inp_gnome_vfs.la
112endif
113
114if ENABLE_LIBSMBCLIENT
115in_smb = xineplug_inp_smb.la
116endif
117
118if ENABLE_SSH
119in_ssh = xineplug_inp_ssh.la
120endif
121
122if ENABLE_NFS
123in_nfs = xineplug_inp_nfs.la
124endif
125
126if ENABLE_DVD
127in_dvd = xineplug_inp_dvd.la
128endif
129
130if ENABLE_MMS
131in_mms = xineplug_inp_mms.la
132endif
133
134if WITH_EXTERNAL_DVDNAV
135DVD_CFLAGS  = $(DVDNAV_CFLAGS) $(DVDREAD_CFLAGS)
136link_dvdnav = $(DVDNAV_LIBS) $(DVDREAD_LIBS)
137else
138DVD_CFLAGS  = -I$(top_srcdir)/src/input/libdvdnav
139link_dvdnav = libdvdnav/libdvdnav.la
140
141$(link_dvdnav):
142	$(MAKE) -C libdvdnav libdvdnav.la
143endif
144
145# not ported to native Windows
146if !WIN32
147in_rtp = xineplug_inp_rtp.la
148endif
149
150if ENABLE_BLURAY
151in_bluray = xineplug_inp_bluray.la
152endif
153
154if ENABLE_GNUTLS
155in_tls_gnutls = xineplug_tls_gnutls.la
156endif
157
158if ENABLE_OPENSSL
159in_tls_openssl = xineplug_tls_openssl.la
160endif
161
162xineplug_LTLIBRARIES = \
163	$(in_builtins) \
164	$(in_tls_gnutls) \
165	$(in_tls_openssl) \
166	$(in_dvd) \
167	$(in_vcd) \
168	$(in_vcdo) \
169	$(in_v4l) \
170	$(in_v4l2) \
171	$(in_gnome_vfs) \
172	$(in_nfs) \
173	$(in_smb) \
174	$(in_ssh) \
175	$(in_mms) \
176	$(in_rtp) \
177	xineplug_inp_network.la \
178	$(in_pvr) \
179	$(in_dvb) \
180	$(in_bluray) \
181	xineplug_inp_cdda.la
182
183xineplug_inp_file_la_SOURCES = input_file.c
184xineplug_inp_file_la_LIBADD = $(XINE_LIB) $(LTLIBINTL) input_helper.la
185
186xineplug_inp_test_la_SOURCES = input_test.c
187xineplug_inp_test_la_LIBADD = $(XINE_LIB) $(LTLIBINTL) input_helper.la
188
189xineplug_inp_dvd_la_SOURCES = input_dvd.c
190xineplug_inp_dvd_la_LIBADD = $(XINE_LIB) $(link_dvdnav) $(PTHREAD_LIBS) $(DYNAMIC_LD_LIBS) $(LTLIBINTL) media_helper.la
191xineplug_inp_dvd_la_CFLAGS = $(AM_CFLAGS) $(DVD_CFLAGS)
192
193xineplug_inp_network_la_SOURCES = \
194	group_network.c \
195	group_network.h \
196	input_ftp.c \
197	input_http.c \
198	input_net.c \
199	input_pnm.c \
200	input_rtsp.c \
201	input_hls.c \
202	pnm.c \
203	pnm.h
204xineplug_inp_network_la_CPPFLAGS = $(AM_CPPFLAGS) $(ZLIB_CPPFLAGS)
205xineplug_inp_network_la_LIBADD = $(XINE_LIB) $(NET_LIBS) $(LTLIBINTL) $(ZLIB_LIBS) \
206	libreal.la librtsp.la http_helper.la input_helper.la xine_tls.la
207
208xineplug_inp_rtp_la_SOURCES = input_rtp.c
209xineplug_inp_rtp_la_LIBADD = $(XINE_LIB) $(NET_LIBS) $(PTHREAD_LIBS) $(LTLIBINTL) input_helper.la
210
211xineplug_inp_mms_la_SOURCES = input_mms.c mms.c mms.h mmsh.c mmsh.h
212xineplug_inp_mms_la_LIBADD = $(XINE_LIB) $(LTLIBICONV) $(LTLIBINTL) $(ASFHEADER_LIB) http_helper.la input_helper.la
213
214xineplug_inp_vcd_la_SOURCES = vcd/xineplug_inp_vcd.c vcd/vcdplayer.c vcd/vcdplayer.h vcd/vcdio.c vcd/vcdio.h
215xineplug_inp_vcd_la_LIBADD = $(XINE_LIB) $(LTLIBINTL) $(LIBCDIO_LIBS) $(LIBVCD_LIBS) $(LIBVCDINFO_LIBS) $(LIBISO9660_LIBS) -lm
216xineplug_inp_vcd_la_DEPENDENCIES = $(LIBCDIO_DEPS) $(LIBVCD_DEPS) $(LIBVCDINFO_DEPS) $(LIBISO9660_DEPS)
217xineplug_inp_vcd_la_CFLAGS  = $(AM_CFLAGS) $(LIBCDIO_CFLAGS) $(LIBVCD_CFLAGS)
218
219xineplug_inp_vcdo_la_SOURCES = input_vcd.c
220xineplug_inp_vcdo_la_LIBADD = $(XINE_LIB) $(LTLIBINTL) media_helper.la
221
222xineplug_inp_stdin_fifo_la_SOURCES = input_stdin_fifo.c
223xineplug_inp_stdin_fifo_la_LIBADD = $(XINE_LIB) $(LTLIBINTL) input_helper.la
224
225xineplug_inp_dvb_la_SOURCES = input_dvb.c
226xineplug_inp_dvb_la_DEPS = $(XDG_BASEDIR_DEPS)
227xineplug_inp_dvb_la_LIBADD = $(XINE_LIB) $(PTHREAD_LIBS) $(LTLIBINTL) $(XDG_BASEDIR_LIBS) input_helper.la
228xineplug_inp_dvb_la_CPPFLAGS = $(AM_CPPFLAGS) $(XDG_BASEDIR_CPPFLAGS)
229
230xineplug_inp_cdda_la_SOURCES = input_cdda.c
231xineplug_inp_cdda_la_DEPS = $(XDG_BASEDIR_DEPS)
232xineplug_inp_cdda_la_LIBADD = $(XINE_LIB) $(LTLIBINTL) $(XDG_BASEDIR_LIBS) $(PTHREAD_LIBS) media_helper.la
233xineplug_inp_cdda_la_CPPFLAGS = $(AM_CPPFLAGS) $(XDG_BASEDIR_CPPFLAGS)
234
235xineplug_inp_v4l_la_SOURCES = input_v4l.c
236xineplug_inp_v4l_la_LIBADD = $(XINE_LIB) $(ALSA_LIBS) $(LTLIBINTL)
237xineplug_inp_v4l_la_CFLAGS = $(AM_CFLAGS) $(ALSA_CFLAGS)
238
239xineplug_inp_v4l2_la_SOURCES = input_v4l2.c
240xineplug_inp_v4l2_la_LIBADD = $(XINE_LIB) $(LTLIBINTL) $(V4L2_LIBS)
241xineplug_inp_v4l2_la_CFLAGS = $(AM_CFLAGS) $(V4L2_CFLAGS)
242
243xineplug_inp_gnome_vfs_la_SOURCES = input_gnome_vfs.c
244xineplug_inp_gnome_vfs_la_LIBADD = $(XINE_LIB) $(GNOME_VFS_LIBS) $(LTLIBINTL)
245xineplug_inp_gnome_vfs_la_CFLAGS = $(AM_CFLAGS) $(GNOME_VFS_CFLAGS)
246
247xineplug_inp_smb_la_SOURCES = input_smb.c
248xineplug_inp_smb_la_LIBADD = $(XINE_LIB) $(LIBSMBCLIENT_LIBS) $(LTLIBINTL)
249xineplug_inp_smb_la_CFLAGS = $(AM_CFLAGS) $(LIBSMBCLIENT_CFLAGS)
250
251xineplug_inp_pvr_la_SOURCES = input_pvr.c
252xineplug_inp_pvr_la_LIBADD = $(XINE_LIB) $(PTHREAD_LIBS) $(LTLIBINTL)
253
254xineplug_inp_bluray_la_SOURCES = input_bluray.c
255xineplug_inp_bluray_la_LIBADD = $(XINE_LIB) $(LIBBLURAY_LIBS) $(PTHREAD_LIBS) $(LTLIBINTL) media_helper.la input_helper.la
256xineplug_inp_bluray_la_CFLAGS = $(AM_CFLAGS) $(LIBBLURAY_CFLAGS)
257
258xineplug_inp_nfs_la_SOURCES = input_nfs.c
259xineplug_inp_nfs_la_LIBADD = $(XINE_LIB) $(LIBNFS_LIBS) $(LTLIBINTL) input_helper.la
260xineplug_inp_nfs_la_CFLAGS = $(AM_CFLAGS) $(LIBNFS_CFLAGS)
261
262xineplug_inp_ssh_la_SOURCES = input_ssh.c
263xineplug_inp_ssh_la_LIBADD = $(XINE_LIB) $(LIBSSH2_LIBS) $(LTLIBINTL) http_helper.la input_helper.la
264xineplug_inp_ssh_la_CFLAGS = $(AM_CFLAGS) $(LIBSSH2_CFLAGS)
265
266# TLS provider plugins
267
268xineplug_tls_gnutls_la_SOURCES = tls/tls_gnutls.c tls/xine_tls_plugin.h
269xineplug_tls_gnutls_la_CFLAGS = $(AM_CFLAGS) $(GNUTLS_CFLAGS)
270xineplug_tls_gnutls_la_LIBADD = $(XINE_LIB) $(LTLIBINTL) $(GNUTLS_LIBS)
271
272xineplug_tls_openssl_la_SOURCES = tls/tls_openssl.c tls/xine_tls_plugin.h
273xineplug_tls_openssl_la_CFLAGS = $(AM_CFLAGS) $(OPENSSL_CFLAGS)
274xineplug_tls_openssl_la_LIBADD = $(XINE_LIB) $(LTLIBINTL) $(OPENSSL_LIBS)
275