]> code.delx.au - pulseaudio/blob - src/Makefile.am
Move timeval calculation functions into their own file.
[pulseaudio] / src / Makefile.am
1 # $Id$
2 #
3 # This file is part of polypaudio.
4 #
5 # polypaudio is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU Lesser General Public License as published by
7 # the Free Software Foundation; either version 2 of the License, or
8 # (at your option) any later version.
9 #
10 # polypaudio is distributed in the hope that it will be useful, but
11 # WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 # General Public License for more details.
14 #
15 # You should have received a copy of the GNU Lesser General Public License
16 # along with polypaudio; if not, write to the Free Software
17 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
18 # USA.
19
20
21 ###################################
22 # Extra directories #
23 ###################################
24
25 polypincludedir=$(includedir)/polyp
26 polypcoreincludedir=$(includedir)/polypcore
27 polypconfdir=$(sysconfdir)/polypaudio
28
29 ###################################
30 # Defines #
31 ###################################
32
33 POLYPAUDIO_BINARY=$(bindir)/polypaudio$(EXEEXT)
34 if OS_IS_WIN32
35 DEFAULT_CONFIG_DIR=%POLYP_ROOT%
36 else
37 DEFAULT_CONFIG_DIR=$(polypconfdir)
38 endif
39
40 ###################################
41 # Compiler/linker flags #
42 ###################################
43
44 AM_CFLAGS = -I$(top_srcdir)/src
45 AM_CFLAGS += $(PTHREAD_CFLAGS) -D_POSIX_PTHREAD_SEMANTICS
46 AM_CFLAGS += $(LTDLINCL)
47 AM_CFLAGS += $(LIBSAMPLERATE_CFLAGS) $(LIBSNDFILE_CFLAGS)
48 AM_CFLAGS += -DDLSEARCHPATH=\"$(modlibexecdir)\"
49 #AM_CFLAGS += -DDLSEARCHPATH=\"$(shell pwd)\"
50 AM_CFLAGS += -DDEFAULT_CONFIG_DIR=\"$(DEFAULT_CONFIG_DIR)\"
51 AM_CFLAGS += -DPOLYPAUDIO_BINARY=\"$(POLYPAUDIO_BINARY)\"
52
53 # This cool debug trap works on i386/gcc only
54 AM_CFLAGS += '-DDEBUG_TRAP=__asm__("int $$3")'
55
56 AM_LIBADD = $(PTHREAD_LIBS)
57 AM_LDADD = $(PTHREAD_LIBS)
58
59 # Only required on some platforms but defined for all to avoid errors
60 AM_LDFLAGS = -no-undefined
61
62 if STATIC_BINS
63 BINLDFLAGS = -static
64 endif
65
66 if OS_IS_WIN32
67 AM_LDFLAGS+=-Wl,--export-all-symbols
68 WINSOCK_LIBS=-lwsock32 -lws2_32 -lwininet
69 endif
70
71 ###################################
72 # Extra files #
73 ###################################
74
75 EXTRA_DIST = \
76 polyp/client.conf.in \
77 daemon/daemon.conf.in \
78 daemon/default.pa.in \
79 depmod.py \
80 daemon/esdcompat.sh.in \
81 modules/module-defs.h.m4
82
83 polypconf_DATA = \
84 default.pa \
85 daemon.conf \
86 client.conf
87
88 BUILT_SOURCES = \
89 polyp/version.h
90
91 ###################################
92 # Main daemon #
93 ###################################
94
95 bin_PROGRAMS = polypaudio
96
97 polypaudio_SOURCES = \
98 daemon/caps.h daemon/caps.c \
99 daemon/cmdline.c daemon/cmdline.h \
100 daemon/cpulimit.c daemon/cpulimit.h \
101 daemon/daemon-conf.c daemon/daemon-conf.h \
102 daemon/dumpmodules.c daemon/dumpmodules.h \
103 daemon/main.c \
104 polypcore/gccmacro.h
105
106 polypaudio_CFLAGS = $(AM_CFLAGS) $(LIBOIL_CFLAGS)
107 polypaudio_CPPFLAGS = $(AM_CPPFLAGS)
108 polypaudio_LDADD = $(AM_LDADD) libpolypcore.la $(LIBLTDL) \
109 $(LIBSAMPLERATE_LIBS) $(LIBSNDFILE_LIBS) $(CAP_LIBS) $(LIBOIL_LIBS)
110
111 if PREOPEN_MODS
112 PREOPEN_LIBS = $(PREOPEN_MODS)
113 else
114 PREOPEN_LIBS = $(modlibexec_LTLIBRARIES)
115 endif
116
117 if FORCE_PREOPEN
118 polypaudio_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) -dlpreopen force $(foreach f,$(PREOPEN_LIBS),-dlpreopen $(f))
119 else
120 polypaudio_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) -dlopen force $(foreach f,$(PREOPEN_LIBS),-dlopen $(f))
121 endif
122
123 ###################################
124 # Utility programs #
125 ###################################
126
127 bin_PROGRAMS += \
128 pacat \
129 pactl \
130 paplay
131
132 if HAVE_AF_UNIX
133 bin_PROGRAMS += pacmd
134 endif
135
136 if HAVE_X11
137 bin_PROGRAMS += pax11publish
138 endif
139
140 if HAVE_HOWL
141 bin_PROGRAMS += pabrowse
142 endif
143
144 bin_SCRIPTS = esdcompat.sh
145
146 pacat_SOURCES = utils/pacat.c
147 pacat_LDADD = $(AM_LDADD) libpolyp.la
148 pacat_CFLAGS = $(AM_CFLAGS)
149 pacat_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
150
151 paplay_SOURCES = utils/paplay.c
152 paplay_LDADD = $(AM_LDADD) libpolyp.la $(LIBSNDFILE_LIBS)
153 paplay_CFLAGS = $(AM_CFLAGS) $(LIBSNDFILE_CFLAGS)
154 paplay_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
155
156 pactl_SOURCES = utils/pactl.c
157 pactl_LDADD = $(AM_LDADD) libpolyp.la $(LIBSNDFILE_LIBS)
158 pactl_CFLAGS = $(AM_CFLAGS) $(LIBSNDFILE_CFLAGS)
159 pactl_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
160
161 pacmd_SOURCES = utils/pacmd.c polypcore/pid.c polypcore/pid.h
162 pacmd_CFLAGS = $(AM_CFLAGS)
163 pacmd_LDADD = $(AM_LDADD) libpolyp.la
164 pacmd_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
165
166 pax11publish_SOURCES = utils/pax11publish.c
167 pax11publish_CFLAGS = $(AM_CFLAGS) $(X_CFLAGS)
168 pax11publish_LDADD = $(AM_LDADD) libpolyp.la $(X_PRE_LIBS) -lX11 $(X_LIBS) $(X_EXTRA_LIBS)
169 pax11publish_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
170
171 pabrowse_SOURCES = utils/pabrowse.c
172 pabrowse_LDADD = $(AM_LDADD) libpolyp.la libpolyp-browse.la
173 pabrowse_CFLAGS = $(AM_CFLAGS)
174 pabrowse_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
175
176 ###################################
177 # Test programs #
178 ###################################
179
180 noinst_PROGRAMS = \
181 mainloop-test \
182 mcalign-test \
183 pacat-simple \
184 parec-simple \
185 strlist-test \
186 voltest \
187 memblockq-test \
188 sync-playback \
189 channelmap-test \
190 thread-mainloop-test \
191 utf8-test
192
193 if HAVE_SIGXCPU
194 noinst_PROGRAMS += \
195 cpulimit-test \
196 cpulimit-test2
197 endif
198
199 if HAVE_GLIB20
200 noinst_PROGRAMS += \
201 mainloop-test-glib
202 endif
203
204 if HAVE_GLIB12
205 noinst_PROGRAMS += \
206 mainloop-test-glib12
207 endif
208
209 mainloop_test_SOURCES = tests/mainloop-test.c
210 mainloop_test_CFLAGS = $(AM_CFLAGS)
211 mainloop_test_LDADD = $(AM_LDADD) libpolyp.la
212 mainloop_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
213
214 thread_mainloop_test_SOURCES = tests/thread-mainloop-test.c
215 thread_mainloop_test_CFLAGS = $(AM_CFLAGS)
216 thread_mainloop_test_LDADD = $(AM_LDADD) libpolyp.la
217 thread_mainloop_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
218
219 utf8_test_SOURCES = tests/utf8-test.c
220 utf8_test_CFLAGS = $(AM_CFLAGS)
221 utf8_test_LDADD = $(AM_LDADD) libpolypcore.la
222 utf8_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
223
224 mcalign_test_SOURCES = tests/mcalign-test.c
225 mcalign_test_CFLAGS = $(AM_CFLAGS)
226 mcalign_test_LDADD = $(AM_LDADD) $(WINSOCK_LIBS) libpolypcore.la
227 mcalign_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
228
229 pacat_simple_SOURCES = tests/pacat-simple.c
230 pacat_simple_LDADD = $(AM_LDADD) libpolyp.la libpolyp-simple.la
231 pacat_simple_CFLAGS = $(AM_CFLAGS)
232 pacat_simple_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
233
234 parec_simple_SOURCES = tests/parec-simple.c
235 parec_simple_LDADD = $(AM_LDADD) libpolyp.la libpolyp-simple.la
236 parec_simple_CFLAGS = $(AM_CFLAGS)
237 parec_simple_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
238
239 strlist_test_SOURCES = tests/strlist-test.c
240 strlist_test_CFLAGS = $(AM_CFLAGS)
241 strlist_test_LDADD = $(AM_LDADD) $(WINSOCK_LIBS) libpolypcore.la libstrlist.la
242 strlist_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
243
244 voltest_SOURCES = tests/voltest.c
245 voltest_CFLAGS = $(AM_CFLAGS)
246 voltest_LDADD = $(AM_LDADD) libpolyp.la
247 voltest_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
248
249 channelmap_test_SOURCES = tests/channelmap-test.c
250 channelmap_test_CFLAGS = $(AM_CFLAGS)
251 channelmap_test_LDADD = $(AM_LDADD) libpolyp.la
252 channelmap_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
253
254 cpulimit_test_SOURCES = tests/cpulimit-test.c daemon/cpulimit.c daemon/cpulimit.h
255 cpulimit_test_CFLAGS = $(AM_CFLAGS)
256 cpulimit_test_LDADD = $(AM_LDADD) libpolypcore.la
257 cpulimit_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
258
259 cpulimit_test2_SOURCES = tests/cpulimit-test.c daemon/cpulimit.c daemon/cpulimit.h
260 cpulimit_test2_CFLAGS = $(AM_CFLAGS) -DTEST2
261 cpulimit_test2_LDADD = $(AM_LDADD) libpolypcore.la
262 cpulimit_test2_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
263
264 mainloop_test_glib_SOURCES = $(mainloop_test_SOURCES)
265 mainloop_test_glib_CFLAGS = $(mainloop_test_CFLAGS) $(GLIB20_CFLAGS) -DGLIB_MAIN_LOOP
266 mainloop_test_glib_LDADD = $(mainloop_test_LDADD) $(GLIB20_LIBS) libpolyp-mainloop-glib.la
267 mainloop_test_glib_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
268
269 mainloop_test_glib12_SOURCES = $(mainloop_test_SOURCES)
270 mainloop_test_glib12_CFLAGS = $(mainloop_test_CFLAGS) $(GLIB12_CFLAGS) -DGLIB_MAIN_LOOP
271 mainloop_test_glib12_LDADD = $(mainloop_test_LDADD) $(GLIB12_LIBS) libpolyp-mainloop-glib12.la
272 mainloop_test_glib12_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
273
274 memblockq_test_SOURCES = tests/memblockq-test.c
275 memblockq_test_CFLAGS = $(AM_CFLAGS)
276 memblockq_test_LDADD = $(AM_LDADD) $(WINSOCK_LIBS) libpolypcore.la
277 memblockq_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
278
279 sync_playback_SOURCES = tests/sync-playback.c
280 sync_playback_LDADD = $(AM_LDADD) libpolyp.la
281 sync_playback_CFLAGS = $(AM_CFLAGS)
282 sync_playback_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
283
284 ###################################
285 # Client library #
286 ###################################
287
288 polypinclude_HEADERS = \
289 polyp/cdecl.h \
290 polyp/channelmap.h \
291 polyp/glib-mainloop.h \
292 polyp/mainloop.h \
293 polyp/mainloop-api.h \
294 polyp/mainloop-signal.h \
295 polyp/thread-mainloop.h \
296 polyp/polypaudio.h \
297 polyp/context.h \
298 polyp/def.h \
299 polyp/error.h \
300 polyp/introspect.h \
301 polyp/operation.h \
302 polyp/scache.h \
303 polyp/simple.h \
304 polyp/stream.h \
305 polyp/subscribe.h \
306 polyp/version.h \
307 polyp/sample.h \
308 polyp/utf8.h \
309 polyp/volume.h \
310 polyp/xmalloc.h \
311 polyp/util.h
312
313 if HAVE_HOWL
314 polypinclude_HEADERS += \
315 polyp/browser.h
316 endif
317
318 lib_LTLIBRARIES = \
319 libpolyp.la \
320 libpolyp-simple.la
321
322 if HAVE_HOWL
323 lib_LTLIBRARIES += \
324 libpolyp-browse.la
325 endif
326
327 if HAVE_GLIB20
328 lib_LTLIBRARIES += \
329 libpolyp-mainloop-glib.la
330 endif
331
332 if HAVE_GLIB12
333 lib_LTLIBRARIES += \
334 libpolyp-mainloop-glib12.la
335 endif
336
337 # Public interface
338 libpolyp_la_SOURCES = \
339 polyp/cdecl.h \
340 polyp/channelmap.c polyp/channelmap.h \
341 polyp/client-conf.c polyp/client-conf.h \
342 polyp/mainloop-api.c polyp/mainloop-api.h \
343 polyp/polypaudio.h \
344 polyp/context.c polyp/context.h \
345 polyp/def.h \
346 polyp/error.c polyp/error.h \
347 polyp/internal.h \
348 polyp/introspect.c polyp/introspect.h \
349 polyp/operation.c polyp/operation.h \
350 polyp/scache.c polyp/scache.h \
351 polyp/stream.c polyp/stream.h \
352 polyp/subscribe.c polyp/subscribe.h \
353 polyp/sample.c polyp/sample.h \
354 polyp/timeval.c polyp/timeval.h \
355 polyp/volume.c polyp/volume.h \
356 polyp/utf8.c polyp/utf8.h \
357 polyp/mainloop.c polyp/mainloop.h \
358 polyp/mainloop-signal.c polyp/mainloop-signal.h \
359 polyp/thread-mainloop.c polyp/thread-mainloop.h \
360 polyp/xmalloc.c polyp/xmalloc.h \
361 polyp/util.c polyp/util.h
362
363 # Internal stuff that is shared with libpolypcore
364 libpolyp_la_SOURCES += \
365 polypcore/authkey.c polypcore/authkey.h \
366 polypcore/conf-parser.c polypcore/conf-parser.h \
367 polypcore/dynarray.c polypcore/dynarray.h \
368 polypcore/gccmacro.h \
369 polypcore/hashmap.c polypcore/hashmap.h \
370 polypcore/idxset.c polypcore/idxset.h \
371 polypcore/iochannel.c polypcore/iochannel.h \
372 polypcore/log.c polypcore/log.h \
373 polypcore/mcalign.c polypcore/mcalign.h \
374 polypcore/memblock.c polypcore/memblock.h \
375 polypcore/memblockq.c polypcore/memblockq.h \
376 polypcore/memchunk.c polypcore/memchunk.h \
377 polypcore/native-common.h \
378 polypcore/packet.c polypcore/packet.h \
379 polypcore/parseaddr.c polypcore/parseaddr.h \
380 polypcore/pdispatch.c polypcore/pdispatch.h \
381 polypcore/pstream.c polypcore/pstream.h \
382 polypcore/pstream-util.c polypcore/pstream-util.h \
383 polypcore/queue.c polypcore/queue.h \
384 polypcore/random.c polypcore/random.h \
385 polypcore/socket-client.c polypcore/socket-client.h \
386 polypcore/socket-util.c polypcore/socket-util.h \
387 polypcore/strbuf.c polypcore/strbuf.h \
388 polypcore/strlist.c polypcore/strlist.h \
389 polypcore/tagstruct.c polypcore/tagstruct.h \
390 polypcore/core-util.c polypcore/core-util.h \
391 polypcore/winsock.h \
392 polypcore/llist.h \
393 polypcore/pipe.c polypcore/pipe.h \
394 polypcore/poll.c polypcore/poll.h
395
396 if OS_IS_WIN32
397 libpolyp_la_SOURCES += \
398 polypcore/dllmain.c
399 endif
400
401 if HAVE_X11
402 libpolyp_la_SOURCES += \
403 polyp/client-conf-x11.c polyp/client-conf-x11.h \
404 polypcore/x11prop.c polypcore/x11prop.h
405 endif
406
407 libpolyp_la_CFLAGS = $(AM_CFLAGS)
408 libpolyp_la_LDFLAGS = -version-info $(LIBPOLYP_VERSION_INFO)
409 libpolyp_la_LIBADD = $(AM_LIBADD) $(WINSOCK_LIBS)
410
411 if HAVE_X11
412 libpolyp_la_CFLAGS += $(X_CFLAGS)
413 libpolyp_la_LDFLAGS += $(X_PRE_LIBS) -lX11 $(X_LIBS) $(X_EXTRA_LIBS)
414 endif
415
416 if HAVE_LIBASYNCNS
417 libpolyp_la_CFLAGS += $(LIBASYNCNS_CFLAGS)
418 libpolyp_la_LIBADD += $(LIBASYNCNS_LIBS)
419 endif
420
421 libpolyp_simple_la_SOURCES = polyp/simple.c polyp/simple.h
422 libpolyp_simple_la_CFLAGS = $(AM_CFLAGS)
423 libpolyp_simple_la_LIBADD = $(AM_LIBADD) libpolyp.la
424 libpolyp_simple_la_LDFLAGS = -version-info $(LIBPOLYP_SIMPLE_VERSION_INFO)
425
426 libpolyp_browse_la_SOURCES = polyp/browser.c polyp/browser.h
427 libpolyp_browse_la_CFLAGS = $(AM_CFLAGS) $(HOWL_CFLAGS)
428 libpolyp_browse_la_LIBADD = $(AM_LIBADD) libpolyp.la $(HOWL_LIBS)
429 libpolyp_browse_la_LDFLAGS = -version-info $(LIBPOLYP_BROWSE_VERSION_INFO)
430
431 libpolyp_mainloop_glib_la_SOURCES = polyp/glib-mainloop.h polyp/glib-mainloop.c
432 libpolyp_mainloop_glib_la_CFLAGS = $(AM_CFLAGS) $(GLIB20_CFLAGS)
433 libpolyp_mainloop_glib_la_LIBADD = $(AM_LIBADD) libpolyp.la $(GLIB20_LIBS)
434 libpolyp_mainloop_glib_la_LDFLAGS = -version-info $(LIBPOLYP_MAINLOOP_GLIB_VERSION_INFO)
435
436 libpolyp_mainloop_glib12_la_SOURCES = polyp/glib-mainloop.h polyp/glib12-mainloop.c
437 libpolyp_mainloop_glib12_la_CFLAGS = $(AM_CFLAGS) $(GLIB12_CFLAGS)
438 libpolyp_mainloop_glib12_la_LIBADD = $(AM_LIBADD) libpolyp.la $(GLIB12_LIBS)
439 libpolyp_mainloop_glib12_la_LDFLAGS = -version-info $(LIBPOLYP_MAINLOOP_GLIB_VERSION_INFO)
440
441 ###################################
442 # Daemon core library #
443 ###################################
444
445 polypcoreinclude_HEADERS = \
446 polypcore/autoload.h \
447 polypcore/cli-command.h \
448 polypcore/cli-text.h \
449 polypcore/client.h \
450 polypcore/core.h \
451 polypcore/core-def.h \
452 polypcore/core-scache.h \
453 polypcore/core-subscribe.h \
454 polypcore/conf-parser.h \
455 polypcore/dynarray.h \
456 polypcore/g711.h \
457 polypcore/hashmap.h \
458 polypcore/idxset.h \
459 polypcore/log.h \
460 polypcore/mcalign.h \
461 polypcore/memblock.h \
462 polypcore/memblockq.h \
463 polypcore/memchunk.h \
464 polypcore/modargs.h \
465 polypcore/modinfo.h \
466 polypcore/module.h \
467 polypcore/namereg.h \
468 polypcore/pid.h \
469 polypcore/play-memchunk.h \
470 polypcore/props.h \
471 polypcore/queue.h \
472 polypcore/random.h \
473 polypcore/resampler.h \
474 polypcore/sample-util.h \
475 polypcore/sconv.h \
476 polypcore/sink.h \
477 polypcore/sink-input.h \
478 polypcore/sioman.h \
479 polypcore/sound-file.h \
480 polypcore/sound-file-stream.h \
481 polypcore/source.h \
482 polypcore/source-output.h \
483 polypcore/strbuf.h \
484 polypcore/tokenizer.h \
485 polypcore/core-util.h
486
487 lib_LTLIBRARIES += libpolypcore.la
488
489 # Some public stuff is used even in the core.
490 libpolypcore_la_SOURCES = \
491 polyp/channelmap.c polyp/channelmap.h \
492 polyp/mainloop.c polyp/mainloop.h \
493 polyp/mainloop-api.c polyp/mainloop-api.h \
494 polyp/mainloop-signal.c polyp/mainloop-signal.h \
495 polyp/sample.c polyp/sample.h \
496 polyp/volume.c polyp/volume.h \
497 polyp/timeval.c polyp/timeval.h \
498 polyp/utf8.c polyp/utf8.h \
499 polyp/util.c polyp/util.h \
500 polyp/xmalloc.c polyp/xmalloc.h
501
502 # Pure core stuff (some are shared in libpolyp though).
503 libpolypcore_la_SOURCES += \
504 polypcore/autoload.c polypcore/autoload.h \
505 polypcore/cli-command.c polypcore/cli-command.h \
506 polypcore/cli-text.c polypcore/cli-text.h \
507 polypcore/client.c polypcore/client.h \
508 polypcore/conf-parser.c polypcore/conf-parser.h \
509 polypcore/core.c polypcore/core.h \
510 polypcore/core-scache.c polypcore/core-scache.h \
511 polypcore/core-subscribe.c polypcore/core-subscribe.h \
512 polypcore/dynarray.c polypcore/dynarray.h \
513 polypcore/endianmacros.h \
514 polypcore/g711.c polypcore/g711.h \
515 polypcore/hashmap.c polypcore/hashmap.h \
516 polypcore/idxset.c polypcore/idxset.h \
517 polypcore/log.c polypcore/log.h \
518 polypcore/mcalign.c polypcore/mcalign.h \
519 polypcore/memblock.c polypcore/memblock.h \
520 polypcore/memblockq.c polypcore/memblockq.h \
521 polypcore/memchunk.c polypcore/memchunk.h \
522 polypcore/modargs.c polypcore/modargs.h \
523 polypcore/modinfo.c polypcore/modinfo.h \
524 polypcore/module.c polypcore/module.h \
525 polypcore/namereg.c polypcore/namereg.h \
526 polypcore/pid.c polypcore/pid.h \
527 polypcore/pipe.c polypcore/pipe.h \
528 polypcore/play-memchunk.c polypcore/play-memchunk.h \
529 polypcore/poll.c polypcore/poll.h \
530 polypcore/props.c polypcore/props.h \
531 polypcore/queue.c polypcore/queue.h \
532 polypcore/random.c polypcore/random.h \
533 polypcore/resampler.c polypcore/resampler.h \
534 polypcore/sample-util.c polypcore/sample-util.h \
535 polypcore/sconv.c polypcore/sconv.h \
536 polypcore/sconv-s16be.c polypcore/sconv-s16be.h \
537 polypcore/sconv-s16le.c polypcore/sconv-s16le.h \
538 polypcore/sink.c polypcore/sink.h \
539 polypcore/sink-input.c polypcore/sink-input.h \
540 polypcore/sioman.c polypcore/sioman.h \
541 polypcore/sound-file.c polypcore/sound-file.h \
542 polypcore/sound-file-stream.c polypcore/sound-file-stream.h \
543 polypcore/source.c polypcore/source.h \
544 polypcore/source-output.c polypcore/source-output.h \
545 polypcore/strbuf.c polypcore/strbuf.h \
546 polypcore/tokenizer.c polypcore/tokenizer.h \
547 polypcore/core-util.c polypcore/core-util.h \
548 polypcore/winsock.h
549
550 if OS_IS_WIN32
551 libpolypcore_la_SOURCES += \
552 polypcore/dllmain.c
553 endif
554
555 libpolypcore_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBOIL_CFLAGS)
556 libpolypcore_la_LDFLAGS = -version-info $(LIBPOLYPCORE_VERSION_INFO)
557 libpolypcore_la_LIBADD = $(AM_LIBADD) $(LIBLTDL) $(LIBSAMPLERATE_LIBS) $(LIBSNDFILE_LIBS) $(WINSOCK_LIBS) $(LIBOIL_LIBS)
558
559 ###################################
560 # Plug-in support libraries #
561 ###################################
562
563 polypcoreinclude_HEADERS += \
564 polypcore/socket-util.h \
565 polypcore/iochannel.h \
566 polypcore/socket-server.h \
567 polypcore/socket-client.h \
568 polypcore/parseaddr.h \
569 polypcore/packet.h \
570 polypcore/pstream.h \
571 polypcore/ioline.h \
572 polypcore/cli.h \
573 polypcore/protocol-cli.h \
574 polypcore/tagstruct.h \
575 polypcore/pstream-util.h \
576 polypcore/pdispatch.h \
577 polypcore/authkey.h \
578 polypcore/authkey-prop.h \
579 polypcore/strlist.h \
580 polypcore/protocol-simple.h \
581 polypcore/esound.h \
582 polypcore/protocol-esound.h \
583 polypcore/native-common.h \
584 polypcore/protocol-native.h \
585 polypcore/protocol-http.h
586
587 ### Warning! Due to an obscure bug in libtool/automake it is required
588 ### that the libraries in modlibexec_LTLIBRARIES are specified in-order,
589 ### i.e. libraries near the end of the list depend on libraries near
590 ### the head, and not the other way!
591
592 modlibexec_LTLIBRARIES = \
593 libsocket-util.la \
594 libiochannel.la \
595 libsocket-server.la \
596 libparseaddr.la \
597 libsocket-client.la \
598 libpacket.la \
599 libpstream.la \
600 libioline.la \
601 libcli.la \
602 libprotocol-cli.la \
603 libtagstruct.la \
604 libpstream-util.la \
605 libpdispatch.la \
606 libauthkey.la \
607 libauthkey-prop.la \
608 libstrlist.la \
609 libprotocol-simple.la \
610 libprotocol-esound.la \
611 libprotocol-native.la \
612 libprotocol-http.la
613
614 # We need to emulate sendmsg/recvmsg to support this on Win32
615 if !OS_IS_WIN32
616 modlibexec_LTLIBRARIES += \
617 librtp.la
618 endif
619
620 if HAVE_X11
621 polypcoreinclude_HEADERS += \
622 polypcore/x11wrap.h \
623 polypcore/x11prop.h
624
625 modlibexec_LTLIBRARIES += \
626 libx11wrap.la \
627 libx11prop.la
628 endif
629
630 libprotocol_simple_la_SOURCES = polypcore/protocol-simple.c polypcore/protocol-simple.h
631 libprotocol_simple_la_LDFLAGS = -avoid-version
632 libprotocol_simple_la_LIBADD = $(AM_LIBADD) libpolypcore.la libsocket-server.la libiochannel.la
633
634 libsocket_server_la_SOURCES = \
635 polypcore/inet_ntop.c polypcore/inet_ntop.h \
636 polypcore/inet_pton.c polypcore/inet_pton.h \
637 polypcore/socket-server.c polypcore/socket-server.h
638 libsocket_server_la_LDFLAGS = -avoid-version
639 libsocket_server_la_LIBADD = $(AM_LIBADD) libpolypcore.la libiochannel.la libsocket-util.la $(LIBWRAP_LIBS) $(WINSOCK_LIBS)
640
641 libsocket_client_la_SOURCES = polypcore/socket-client.c polypcore/socket-client.h
642 libsocket_client_la_LDFLAGS = -avoid-version
643 libsocket_client_la_LIBADD = $(AM_LIBADD) libpolypcore.la libiochannel.la libsocket-util.la libparseaddr.la $(LIBASYNCNS_LIBS) $(WINSOCK_LIBS)
644 libsocket_client_la_CFLAGS = $(AM_CFLAGS) $(LIBASYNCNS_CFLAGS)
645
646 libparseaddr_la_SOURCES = polypcore/parseaddr.c polypcore/parseaddr.h
647 libparseaddr_la_LDFLAGS = -avoid-version
648 libparseaddr_la_LIBADD = $(AM_LIBADD) libpolypcore.la
649
650 libpstream_la_SOURCES = polypcore/pstream.c polypcore/pstream.h
651 libpstream_la_LDFLAGS = -avoid-version
652 libpstream_la_LIBADD = $(AM_LIBADD) libpolypcore.la libpacket.la libiochannel.la $(WINSOCK_LIBS)
653
654 libpstream_util_la_SOURCES = polypcore/pstream-util.c polypcore/pstream-util.h
655 libpstream_util_la_LDFLAGS = -avoid-version
656 libpstream_util_la_LIBADD = $(AM_LIBADD) libpacket.la libpstream.la libtagstruct.la
657
658 libpdispatch_la_SOURCES = polypcore/pdispatch.c polypcore/pdispatch.h
659 libpdispatch_la_LDFLAGS = -avoid-version
660 libpdispatch_la_LIBADD = $(AM_LIBADD) libtagstruct.la libpolypcore.la
661
662 libiochannel_la_SOURCES = polypcore/iochannel.c polypcore/iochannel.h
663 libiochannel_la_LDFLAGS = -avoid-version
664 libiochannel_la_LIBADD = $(AM_LIBADD) libsocket-util.la libpolypcore.la $(WINSOCK_LIBS)
665
666 libpacket_la_SOURCES = polypcore/packet.c polypcore/packet.h
667 libpacket_la_LDFLAGS = -avoid-version
668 libpacket_la_LIBADD = $(AM_LIBADD) libpolypcore.la
669
670 libioline_la_SOURCES = polypcore/ioline.c polypcore/ioline.h
671 libioline_la_LDFLAGS = -avoid-version
672 libioline_la_LIBADD = $(AM_LIBADD) libiochannel.la libpolypcore.la
673
674 libcli_la_SOURCES = polypcore/cli.c polypcore/cli.h
675 libcli_la_CPPFLAGS = $(AM_CPPFLAGS)
676 libcli_la_LDFLAGS = -avoid-version
677 libcli_la_LIBADD = $(AM_LIBADD) libiochannel.la libioline.la libpolypcore.la
678
679 libstrlist_la_SOURCES = polypcore/strlist.c polypcore/strlist.h
680 libstrlist_la_LDFLAGS = -avoid-version
681 libstrlist_la_LIBADD = $(AM_LIBADD) libpolypcore.la
682
683 libprotocol_cli_la_SOURCES = polypcore/protocol-cli.c polypcore/protocol-cli.h
684 libprotocol_cli_la_LDFLAGS = -avoid-version
685 libprotocol_cli_la_LIBADD = $(AM_LIBADD) libsocket-server.la libiochannel.la libcli.la libpolypcore.la
686
687 libprotocol_http_la_SOURCES = polypcore/protocol-http.c polypcore/protocol-http.h
688 libprotocol_http_la_LDFLAGS = -avoid-version
689 libprotocol_http_la_LIBADD = $(AM_LIBADD) libsocket-server.la libioline.la libpolypcore.la libiochannel.la
690
691 libprotocol_native_la_SOURCES = polypcore/protocol-native.c polypcore/protocol-native.h polypcore/native-common.h
692 libprotocol_native_la_LDFLAGS = -avoid-version
693 libprotocol_native_la_LIBADD = $(AM_LIBADD) libsocket-server.la libpstream.la libpstream-util.la libpdispatch.la libtagstruct.la libauthkey.la libauthkey-prop.la libstrlist.la libpolypcore.la libiochannel.la
694
695 libtagstruct_la_SOURCES = polypcore/tagstruct.c polypcore/tagstruct.h
696 libtagstruct_la_LDFLAGS = -avoid-version
697 libtagstruct_la_LIBADD = $(AM_LIBADD) libpolypcore.la $(WINSOCK_LIBS)
698
699 libprotocol_esound_la_SOURCES = polypcore/protocol-esound.c polypcore/protocol-esound.h polypcore/esound.h
700 libprotocol_esound_la_LDFLAGS = -avoid-version
701 libprotocol_esound_la_LIBADD = $(AM_LIBADD) libsocket-server.la libiochannel.la libauthkey.la libpolypcore.la
702
703 libauthkey_la_SOURCES = polypcore/authkey.c polypcore/authkey.h
704 libauthkey_la_LDFLAGS = -avoid-version
705 libauthkey_la_LIBADD = $(AM_LIBADD) libpolypcore.la
706
707 libauthkey_prop_la_SOURCES = polypcore/authkey-prop.c polypcore/authkey-prop.h
708 libauthkey_prop_la_LDFLAGS = -avoid-version
709 libauthkey_prop_la_LIBADD = $(AM_LIBADD) libpolypcore.la
710
711 libsocket_util_la_SOURCES = polypcore/socket-util.c polypcore/socket-util.h
712 libsocket_util_la_LDFLAGS = -avoid-version
713 libsocket_util_la_LIBADD = $(AM_LIBADD) $(WINSOCK_LIBS) libpolypcore.la
714
715 librtp_la_SOURCES = modules/rtp/rtp.c modules/rtp/rtp.h modules/rtp/sdp.c modules/rtp/sdp.h modules/rtp/sap.c modules/rtp/sap.h
716 librtp_la_LDFLAGS = -avoid-version
717 librtp_la_LIBADD = $(AM_LIBADD) libpolypcore.la
718
719 # X11
720
721 libx11wrap_la_SOURCES = polypcore/x11wrap.c polypcore/x11wrap.h
722 libx11wrap_la_LDFLAGS = -avoid-version
723 libx11wrap_la_CFLAGS = $(AM_CFLAGS) $(X_CFLAGS)
724 libx11wrap_la_LIBADD = $(AM_LIBADD) $(X_PRE_LIBS) -lX11 $(X_LIBS) $(X_EXTRA_LIBS) libpolypcore.la
725
726 libx11prop_la_SOURCES = polypcore/x11prop.c polypcore/x11prop.h
727 libx11prop_la_LDFLAGS = -avoid-version
728 libx11prop_la_CFLAGS = $(AM_CFLAGS) $(X_CFLAGS)
729 libx11prop_la_LIBADD = $(AM_LIBADD) $(X_PRE_LIBS) -lX11 $(X_LIBS) $(X_EXTRA_LIBS)
730
731 ###################################
732 # Plug-in libraries #
733 ###################################
734
735 modlibexec_LTLIBRARIES += \
736 module-cli.la \
737 module-cli-protocol-tcp.la \
738 module-simple-protocol-tcp.la \
739 module-esound-protocol-tcp.la \
740 module-native-protocol-tcp.la \
741 module-native-protocol-fd.la \
742 module-sine.la \
743 module-combine.la \
744 module-tunnel-sink.la \
745 module-tunnel-source.la \
746 module-null-sink.la \
747 module-esound-sink.la \
748 module-http-protocol-tcp.la \
749 module-detect.la \
750 module-volume-restore.la
751
752 # See comment at librtp.la above
753 if !OS_IS_WIN32
754 modlibexec_LTLIBRARIES += \
755 module-rtp-send.la \
756 module-rtp-recv.la
757 endif
758
759 if HAVE_AF_UNIX
760 modlibexec_LTLIBRARIES += \
761 module-cli-protocol-unix.la \
762 module-simple-protocol-unix.la \
763 module-esound-protocol-unix.la \
764 module-native-protocol-unix.la \
765 module-http-protocol-unix.la
766 endif
767
768 if HAVE_MKFIFO
769 modlibexec_LTLIBRARIES += \
770 module-pipe-sink.la \
771 module-pipe-source.la
772 endif
773
774 if !OS_IS_WIN32
775 modlibexec_LTLIBRARIES += \
776 module-esound-compat-spawnfd.la \
777 module-esound-compat-spawnpid.la
778 endif
779
780 if HAVE_REGEX
781 modlibexec_LTLIBRARIES += \
782 module-match.la
783 endif
784
785 if HAVE_X11
786 modlibexec_LTLIBRARIES += \
787 module-x11-bell.la \
788 module-x11-publish.la
789 endif
790
791 if HAVE_OSS
792 modlibexec_LTLIBRARIES += \
793 liboss-util.la \
794 module-oss.la \
795 module-oss-mmap.la
796 endif
797
798 if HAVE_ALSA
799 modlibexec_LTLIBRARIES += \
800 libalsa-util.la \
801 module-alsa-sink.la \
802 module-alsa-source.la
803 endif
804
805 if HAVE_SOLARIS
806 modlibexec_LTLIBRARIES += \
807 module-solaris.la
808 endif
809
810 if HAVE_HOWL
811 modlibexec_LTLIBRARIES += \
812 libhowl-wrap.la \
813 module-zeroconf-publish.la
814 endif
815
816 if HAVE_LIRC
817 modlibexec_LTLIBRARIES += \
818 module-lirc.la
819 endif
820
821 if HAVE_EVDEV
822 modlibexec_LTLIBRARIES += \
823 module-mmkbd-evdev.la
824 endif
825
826 if HAVE_JACK
827 modlibexec_LTLIBRARIES += \
828 module-jack-sink.la \
829 module-jack-source.la
830 endif
831
832 if OS_IS_WIN32
833 modlibexec_LTLIBRARIES += \
834 module-waveout.la
835 endif
836
837 # These are generated by a M4 script
838
839 SYMDEF_FILES = \
840 modules/module-cli-symdef.h \
841 modules/module-cli-protocol-tcp-symdef.h \
842 modules/module-cli-protocol-unix-symdef.h \
843 modules/module-pipe-sink-symdef.h \
844 modules/module-pipe-source-symdef.h \
845 modules/module-simple-protocol-tcp-symdef.h \
846 modules/module-simple-protocol-unix-symdef.h \
847 modules/module-esound-protocol-tcp-symdef.h \
848 modules/module-esound-protocol-unix-symdef.h \
849 modules/module-native-protocol-tcp-symdef.h \
850 modules/module-native-protocol-unix-symdef.h \
851 modules/module-native-protocol-fd-symdef.h \
852 modules/module-sine-symdef.h \
853 modules/module-combine-symdef.h \
854 modules/module-esound-compat-spawnfd-symdef.h \
855 modules/module-esound-compat-spawnpid-symdef.h \
856 modules/module-match-symdef.h \
857 modules/module-tunnel-sink-symdef.h \
858 modules/module-tunnel-source-symdef.h \
859 modules/module-null-sink-symdef.h \
860 modules/module-esound-sink-symdef.h \
861 modules/module-zeroconf-publish-symdef.h \
862 modules/module-lirc-symdef.h \
863 modules/module-mmkbd-evdev-symdef.h \
864 modules/module-http-protocol-tcp-symdef.h \
865 modules/module-http-protocol-unix-symdef.h \
866 modules/module-x11-bell-symdef.h \
867 modules/module-x11-publish-symdef.h \
868 modules/module-oss-symdef.h \
869 modules/module-oss-mmap-symdef.h \
870 modules/module-alsa-sink-symdef.h \
871 modules/module-alsa-source-symdef.h \
872 modules/module-solaris-symdef.h \
873 modules/module-waveout-symdef.h \
874 modules/module-detect-symdef.h \
875 modules/rtp/module-rtp-send-symdef.h \
876 modules/rtp/module-rtp-recv-symdef.h \
877 modules/module-jack-sink-symdef.h \
878 modules/module-jack-source-symdef.h \
879 modules/module-volume-restore-symdef.h
880
881
882 EXTRA_DIST += $(SYMDEF_FILES)
883 BUILT_SOURCES += $(SYMDEF_FILES)
884
885 $(SYMDEF_FILES): modules/module-defs.h.m4
886 $(M4) -Dfname="$@" $< > $@
887
888 # Simple protocol
889
890 module_simple_protocol_tcp_la_SOURCES = modules/module-protocol-stub.c
891 module_simple_protocol_tcp_la_CFLAGS = -DUSE_TCP_SOCKETS -DUSE_PROTOCOL_SIMPLE $(AM_CFLAGS)
892 module_simple_protocol_tcp_la_LDFLAGS = -module -avoid-version
893 module_simple_protocol_tcp_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-simple.la libsocket-server.la
894
895 module_simple_protocol_unix_la_SOURCES = modules/module-protocol-stub.c
896 module_simple_protocol_unix_la_CFLAGS = -DUSE_UNIX_SOCKETS -DUSE_PROTOCOL_SIMPLE $(AM_CFLAGS)
897 module_simple_protocol_unix_la_LDFLAGS = -module -avoid-version
898 module_simple_protocol_unix_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-simple.la libsocket-server.la libsocket-util.la
899
900 # CLI protocol
901
902 module_cli_la_SOURCES = modules/module-cli.c
903 module_cli_la_LDFLAGS = -module -avoid-version
904 module_cli_la_LIBADD = $(AM_LIBADD) libcli.la libiochannel.la libpolypcore.la
905
906 module_cli_protocol_tcp_la_SOURCES = modules/module-protocol-stub.c
907 module_cli_protocol_tcp_la_CFLAGS = -DUSE_TCP_SOCKETS -DUSE_PROTOCOL_CLI $(AM_CFLAGS)
908 module_cli_protocol_tcp_la_LDFLAGS = -module -avoid-version
909 module_cli_protocol_tcp_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-cli.la libsocket-server.la
910
911 module_cli_protocol_unix_la_SOURCES = modules/module-protocol-stub.c
912 module_cli_protocol_unix_la_CFLAGS = -DUSE_UNIX_SOCKETS -DUSE_PROTOCOL_CLI $(AM_CFLAGS)
913 module_cli_protocol_unix_la_LDFLAGS = -module -avoid-version
914 module_cli_protocol_unix_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-cli.la libsocket-server.la libsocket-util.la
915
916 # HTTP protocol
917
918 module_http_protocol_tcp_la_SOURCES = modules/module-protocol-stub.c
919 module_http_protocol_tcp_la_CFLAGS = -DUSE_TCP_SOCKETS -DUSE_PROTOCOL_HTTP $(AM_CFLAGS)
920 module_http_protocol_tcp_la_LDFLAGS = -module -avoid-version
921 module_http_protocol_tcp_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-http.la libsocket-server.la
922
923 module_http_protocol_unix_la_SOURCES = modules/module-protocol-stub.c
924 module_http_protocol_unix_la_CFLAGS = -DUSE_UNIX_SOCKETS -DUSE_PROTOCOL_HTTP $(AM_CFLAGS)
925 module_http_protocol_unix_la_LDFLAGS = -module -avoid-version
926 module_http_protocol_unix_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-http.la libsocket-server.la libsocket-util.la
927
928 # Native protocol
929
930 module_native_protocol_tcp_la_SOURCES = modules/module-protocol-stub.c
931 module_native_protocol_tcp_la_CFLAGS = -DUSE_TCP_SOCKETS -DUSE_PROTOCOL_NATIVE $(AM_CFLAGS)
932 module_native_protocol_tcp_la_LDFLAGS = -module -avoid-version
933 module_native_protocol_tcp_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-native.la libsocket-server.la
934
935 module_native_protocol_unix_la_SOURCES = modules/module-protocol-stub.c
936 module_native_protocol_unix_la_CFLAGS = -DUSE_UNIX_SOCKETS -DUSE_PROTOCOL_NATIVE $(AM_CFLAGS)
937 module_native_protocol_unix_la_LDFLAGS = -module -avoid-version
938 module_native_protocol_unix_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-native.la libsocket-server.la libsocket-util.la
939
940 module_native_protocol_fd_la_SOURCES = modules/module-native-protocol-fd.c
941 module_native_protocol_fd_la_CFLAGS = $(AM_CFLAGS)
942 module_native_protocol_fd_la_LDFLAGS = -module -avoid-version
943 module_native_protocol_fd_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-native.la libsocket-server.la libsocket-util.la libiochannel.la
944
945 # EsounD protocol
946
947 module_esound_protocol_tcp_la_SOURCES = modules/module-protocol-stub.c
948 module_esound_protocol_tcp_la_CFLAGS = -DUSE_TCP_SOCKETS -DUSE_PROTOCOL_ESOUND $(AM_CFLAGS)
949 module_esound_protocol_tcp_la_LDFLAGS = -module -avoid-version
950 module_esound_protocol_tcp_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-esound.la libsocket-server.la
951
952 module_esound_protocol_unix_la_SOURCES = modules/module-protocol-stub.c
953 module_esound_protocol_unix_la_CFLAGS = -DUSE_UNIX_SOCKETS -DUSE_PROTOCOL_ESOUND $(AM_CFLAGS)
954 module_esound_protocol_unix_la_LDFLAGS = -module -avoid-version
955 module_esound_protocol_unix_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-esound.la libsocket-server.la libsocket-util.la
956
957 module_esound_compat_spawnfd_la_SOURCES = modules/module-esound-compat-spawnfd.c
958 module_esound_compat_spawnfd_la_LDFLAGS = -module -avoid-version
959 module_esound_compat_spawnfd_la_LIBADD = $(AM_LIBADD) libpolypcore.la
960
961 module_esound_compat_spawnpid_la_SOURCES = modules/module-esound-compat-spawnpid.c
962 module_esound_compat_spawnpid_la_LDFLAGS = -module -avoid-version
963 module_esound_compat_spawnpid_la_LIBADD = $(AM_LIBADD) libpolypcore.la
964
965 module_esound_sink_la_SOURCES = modules/module-esound-sink.c
966 module_esound_sink_la_LDFLAGS = -module -avoid-version
967 module_esound_sink_la_LIBADD = $(AM_LIBADD) libpolypcore.la libiochannel.la libsocket-client.la libauthkey.la
968
969 # Pipes
970
971 module_pipe_sink_la_SOURCES = modules/module-pipe-sink.c
972 module_pipe_sink_la_LDFLAGS = -module -avoid-version
973 module_pipe_sink_la_LIBADD = $(AM_LIBADD) libpolypcore.la libiochannel.la
974
975 module_pipe_source_la_SOURCES = modules/module-pipe-source.c
976 module_pipe_source_la_LDFLAGS = -module -avoid-version
977 module_pipe_source_la_LIBADD = $(AM_LIBADD) libpolypcore.la libiochannel.la
978
979 # Fake sources/sinks
980
981 module_sine_la_SOURCES = modules/module-sine.c
982 module_sine_la_LDFLAGS = -module -avoid-version
983 module_sine_la_LIBADD = $(AM_LIBADD) libpolypcore.la
984
985 module_null_sink_la_SOURCES = modules/module-null-sink.c
986 module_null_sink_la_LDFLAGS = -module -avoid-version
987 module_null_sink_la_LIBADD = $(AM_LIBADD) libpolypcore.la
988
989 # Couplings
990
991 module_combine_la_SOURCES = modules/module-combine.c
992 module_combine_la_LDFLAGS = -module -avoid-version
993 module_combine_la_LIBADD = $(AM_LIBADD) libpolypcore.la
994
995 module_match_la_SOURCES = modules/module-match.c
996 module_match_la_LDFLAGS = -module -avoid-version
997 module_match_la_LIBADD = $(AM_LIBADD) libpolypcore.la
998
999 module_tunnel_sink_la_SOURCES = modules/module-tunnel.c
1000 module_tunnel_sink_la_CFLAGS = -DTUNNEL_SINK=1 $(AM_CFLAGS)
1001 module_tunnel_sink_la_LDFLAGS = -module -avoid-version
1002 module_tunnel_sink_la_LIBADD = $(AM_LIBADD) libpolypcore.la libsocket-client.la libpstream.la libpstream-util.la libpdispatch.la libtagstruct.la libauthkey.la libauthkey-prop.la libsocket-util.la libiochannel.la
1003
1004 module_tunnel_source_la_SOURCES = modules/module-tunnel.c
1005 module_tunnel_source_la_LDFLAGS = -module -avoid-version
1006 module_tunnel_source_la_LIBADD = $(AM_LIBADD) libpolypcore.la libsocket-client.la libpstream.la libpstream-util.la libpdispatch.la libtagstruct.la libauthkey.la libauthkey-prop.la libsocket-util.la libiochannel.la
1007
1008 # X11
1009
1010 module_x11_bell_la_SOURCES = modules/module-x11-bell.c
1011 module_x11_bell_la_CFLAGS = $(AM_CFLAGS) $(X_CFLAGS)
1012 module_x11_bell_la_LDFLAGS = -module -avoid-version
1013 module_x11_bell_la_LIBADD = $(AM_LIBADD) $(X_PRE_LIBS) -lX11 $(X_LIBS) $(X_EXTRA_LIBS) libx11wrap.la libpolypcore.la
1014
1015 module_x11_publish_la_SOURCES = modules/module-x11-publish.c
1016 module_x11_publish_la_CFLAGS = $(AM_CFLAGS) $(X_CFLAGS)
1017 module_x11_publish_la_LDFLAGS = -module -avoid-version
1018 module_x11_publish_la_LIBADD = $(AM_LIBADD) $(X_PRE_LIBS) -lX11 $(X_LIBS) $(X_EXTRA_LIBS) libx11wrap.la libauthkey.la libauthkey-prop.la libx11prop.la libstrlist.la
1019
1020 # OSS
1021
1022 liboss_util_la_SOURCES = modules/oss-util.c modules/oss-util.h
1023 liboss_util_la_LDFLAGS = -avoid-version
1024 liboss_util_la_LIBADD = libpolypcore.la
1025
1026 module_oss_la_SOURCES = modules/module-oss.c
1027 module_oss_la_LDFLAGS = -module -avoid-version
1028 module_oss_la_LIBADD = $(AM_LIBADD) libiochannel.la liboss-util.la
1029
1030 module_oss_mmap_la_SOURCES = modules/module-oss-mmap.c
1031 module_oss_mmap_la_LDFLAGS = -module -avoid-version
1032 module_oss_mmap_la_LIBADD = $(AM_LIBADD) liboss-util.la libpolypcore.la
1033
1034 # ALSA
1035
1036 libalsa_util_la_SOURCES = modules/alsa-util.c modules/alsa-util.h
1037 libalsa_util_la_LDFLAGS = -avoid-version
1038 libalsa_util_la_LIBADD = $(AM_LIBADD) $(ASOUNDLIB_LIBS) libpolypcore.la
1039 libalsa_util_la_CFLAGS = $(AM_CFLAGS) $(ASOUNDLIB_CFLAGS)
1040
1041 module_alsa_sink_la_SOURCES = modules/module-alsa-sink.c
1042 module_alsa_sink_la_LDFLAGS = -module -avoid-version
1043 module_alsa_sink_la_LIBADD = $(AM_LIBADD) $(ASOUNDLIB_LIBS) libalsa-util.la libpolypcore.la
1044 module_alsa_sink_la_CFLAGS = $(AM_CFLAGS) $(ASOUNDLIB_CFLAGS)
1045
1046 module_alsa_source_la_SOURCES = modules/module-alsa-source.c
1047 module_alsa_source_la_LDFLAGS = -module -avoid-version
1048 module_alsa_source_la_LIBADD = $(AM_LIBADD) $(ASOUNDLIB_LIBS) libalsa-util.la libpolypcore.la
1049 module_alsa_source_la_CFLAGS = $(AM_CFLAGS) $(ASOUNDLIB_CFLAGS)
1050
1051 # Solaris
1052
1053 module_solaris_la_SOURCES = modules/module-solaris.c
1054 module_solaris_la_LDFLAGS = -module -avoid-version
1055 module_solaris_la_LIBADD = $(AM_LIBADD) libiochannel.la
1056
1057 # HOWL
1058
1059 libhowl_wrap_la_SOURCES = modules/howl-wrap.c modules/howl-wrap.h
1060 libhowl_wrap_la_LDFLAGS = -avoid-version
1061 libhowl_wrap_la_LIBADD = $(AM_LIBADD) $(HOWL_LIBS)
1062 libhowl_wrap_la_CFLAGS = $(AM_CFLAGS) $(HOWL_CFLAGS)
1063
1064 module_zeroconf_publish_la_SOURCES = modules/module-zeroconf-publish.c
1065 module_zeroconf_publish_la_LDFLAGS = -module -avoid-version
1066 module_zeroconf_publish_la_LIBADD = $(AM_LIBADD) $(HOWL_LIBS) libhowl-wrap.la
1067 module_zeroconf_publish_la_CFLAGS = $(AM_CFLAGS) $(HOWL_CFLAGS)
1068
1069 # LIRC
1070
1071 module_lirc_la_SOURCES = modules/module-lirc.c
1072 module_lirc_la_LDFLAGS = -module -avoid-version
1073 module_lirc_la_LIBADD = $(AM_LIBADD) $(LIRC_LIBS) libpolypcore.la
1074 module_lirc_la_CFLAGS = $(AM_CFLAGS) $(LIRC_CFLAGS)
1075
1076 # Linux evdev
1077
1078 module_mmkbd_evdev_la_SOURCES = modules/module-mmkbd-evdev.c
1079 module_mmkbd_evdev_la_LDFLAGS = -module -avoid-version
1080 module_mmkbd_evdev_la_LIBADD = $(AM_LIBADD) libpolypcore.la
1081 module_mmkbd_evdev_la_CFLAGS = $(AM_CFLAGS)
1082
1083 # Windows waveout
1084
1085 module_waveout_la_SOURCES = modules/module-waveout.c
1086 module_waveout_la_LDFLAGS = -module -avoid-version
1087 module_waveout_la_LIBADD = $(AM_LIBADD) libpolypcore.la -lwinmm
1088 module_waveout_la_CFLAGS = $(AM_CFLAGS)
1089
1090 # Hardware autodetection module
1091 module_detect_la_SOURCES = modules/module-detect.c
1092 module_detect_la_LDFLAGS = -module -avoid-version
1093 module_detect_la_LIBADD = $(AM_LIBADD) libpolypcore.la
1094 module_detect_la_CFLAGS = $(AM_CFLAGS)
1095
1096 # Volume restore module
1097 module_volume_restore_la_SOURCES = modules/module-volume-restore.c
1098 module_volume_restore_la_LDFLAGS = -module -avoid-version
1099 module_volume_restore_la_LIBADD = $(AM_LIBADD) libpolypcore.la
1100 module_volume_restore_la_CFLAGS = $(AM_CFLAGS)
1101
1102 # RTP modules
1103 module_rtp_send_la_SOURCES = modules/rtp/module-rtp-send.c
1104 module_rtp_send_la_LDFLAGS = -module -avoid-version
1105 module_rtp_send_la_LIBADD = $(AM_LIBADD) libpolypcore.la librtp.la
1106 module_rtp_send_la_CFLAGS = $(AM_CFLAGS)
1107
1108 module_rtp_recv_la_SOURCES = modules/rtp/module-rtp-recv.c
1109 module_rtp_recv_la_LDFLAGS = -module -avoid-version
1110 module_rtp_recv_la_LIBADD = $(AM_LIBADD) libpolypcore.la librtp.la
1111 module_rtp_recv_la_CFLAGS = $(AM_CFLAGS)
1112
1113 # JACK
1114
1115 module_jack_sink_la_SOURCES = modules/module-jack-sink.c
1116 module_jack_sink_la_LDFLAGS = -module -avoid-version
1117 module_jack_sink_la_LIBADD = $(AM_LIBADD) libpolypcore.la $(JACK_LIBS)
1118 module_jack_sink_la_CFLAGS = $(AM_LIBADD) $(JACK_CFLAGS)
1119
1120 module_jack_source_la_SOURCES = modules/module-jack-source.c
1121 module_jack_source_la_LDFLAGS = -module -avoid-version
1122 module_jack_source_la_LIBADD = $(AM_LIBADD) libpolypcore.la $(JACK_LIBS)
1123 module_jack_source_la_CFLAGS = $(AM_LIBADD) $(JACK_CFLAGS)
1124
1125 ###################################
1126 # Some minor stuff #
1127 ###################################
1128
1129 suid: polypaudio
1130 chown root $<
1131 chmod u+s $<
1132
1133 CLEANFILES=esdcompat.sh client.conf default.pa daemon.conf
1134
1135 esdcompat.sh: daemon/esdcompat.sh.in Makefile
1136 sed -e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
1137 -e 's,@PACKAGE_NAME\@,$(PACKAGE_NAME),g' \
1138 -e 's,@POLYPAUDIO_BINARY\@,$(POLYPAUDIO_BINARY),g' < $< > $@
1139
1140 client.conf: polyp/client.conf.in Makefile
1141 sed -e 's,@POLYPAUDIO_BINARY\@,$(POLYPAUDIO_BINARY),g' < $< > $@
1142
1143 if OS_IS_WIN32
1144 default.pa: daemon/default.pa.win32
1145 cp $< $@
1146 else
1147 default.pa: daemon/default.pa.in Makefile
1148 sed -e 's,@POLYPAUDIO_BINARY\@,$(POLYPAUDIO_BINARY),g' < $< > $@
1149 endif
1150
1151 daemon.conf: daemon/daemon.conf.in Makefile
1152 sed -e 's,@DLSEARCHPATH\@,$(modlibexecdir),g' \
1153 -e 's,@DEFAULT_CONFIG_FILE\@,$(DEFAULT_CONFIG_DIR),g' < $< > $@
1154
1155 install-exec-hook:
1156 chown root $(DESTDIR)$(bindir)/polypaudio ; true
1157 chmod u+s $(DESTDIR)$(bindir)/polypaudio
1158 ln -sf pacat $(DESTDIR)$(bindir)/parec
1159 rm -f $(DESTDIR)$(modlibexecdir)/*.a