]> code.delx.au - pulseaudio/blob - src/Makefile.am
Move xmalloc to the public side (libpolyp).
[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 = \
275 tests/memblockq-test.c \
276 polyp/xmalloc.c \
277 polypcore/memblockq.c \
278 polypcore/log.c \
279 polypcore/memblock.c \
280 polypcore/util.c \
281 polypcore/mcalign.c \
282 polypcore/memchunk.c
283 memblockq_test_CFLAGS = $(AM_CFLAGS)
284 memblockq_test_LDADD = $(AM_LDADD) $(WINSOCK_LIBS)
285 memblockq_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
286
287 sync_playback_SOURCES = tests/sync-playback.c
288 sync_playback_LDADD = $(AM_LDADD) libpolyp.la
289 sync_playback_CFLAGS = $(AM_CFLAGS)
290 sync_playback_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
291
292 ###################################
293 # Client library #
294 ###################################
295
296 polypinclude_HEADERS = \
297 polyp/cdecl.h \
298 polyp/channelmap.h \
299 polyp/glib-mainloop.h \
300 polyp/mainloop.h \
301 polyp/mainloop-api.h \
302 polyp/mainloop-signal.h \
303 polyp/thread-mainloop.h \
304 polyp/polypaudio.h \
305 polyp/context.h \
306 polyp/def.h \
307 polyp/error.h \
308 polyp/introspect.h \
309 polyp/operation.h \
310 polyp/scache.h \
311 polyp/simple.h \
312 polyp/stream.h \
313 polyp/subscribe.h \
314 polyp/version.h \
315 polyp/sample.h \
316 polyp/volume.h \
317 polyp/xmalloc.h
318
319 if HAVE_HOWL
320 polypinclude_HEADERS += \
321 polyp/browser.h
322 endif
323
324 lib_LTLIBRARIES = \
325 libpolyp.la \
326 libpolyp-simple.la
327
328 if HAVE_HOWL
329 lib_LTLIBRARIES += \
330 libpolyp-browse.la
331 endif
332
333 if HAVE_GLIB20
334 lib_LTLIBRARIES += \
335 libpolyp-mainloop-glib.la
336 endif
337
338 if HAVE_GLIB12
339 lib_LTLIBRARIES += \
340 libpolyp-mainloop-glib12.la
341 endif
342
343 # Public interface
344 libpolyp_la_SOURCES = \
345 polyp/cdecl.h \
346 polyp/channelmap.c polyp/channelmap.h \
347 polyp/client-conf.c polyp/client-conf.h \
348 polyp/mainloop-api.c polyp/mainloop-api.h \
349 polyp/polypaudio.h \
350 polyp/context.c polyp/context.h \
351 polyp/def.h \
352 polyp/error.c polyp/error.h \
353 polyp/internal.h \
354 polyp/introspect.c polyp/introspect.h \
355 polyp/operation.c polyp/operation.h \
356 polyp/scache.c polyp/scache.h \
357 polyp/stream.c polyp/stream.h \
358 polyp/subscribe.c polyp/subscribe.h \
359 polyp/sample.c polyp/sample.h \
360 polyp/volume.c polyp/volume.h \
361 polyp/mainloop.c polyp/mainloop.h \
362 polyp/mainloop-signal.c polyp/mainloop-signal.h \
363 polyp/thread-mainloop.c polyp/thread-mainloop.h \
364 polyp/xmalloc.c polyp/xmalloc.h \
365 polypcore/pipe.c polypcore/pipe.h \
366 polypcore/poll.c polypcore/poll.h
367
368 # Internal stuff that is shared with libpolypcore
369 libpolyp_la_SOURCES += \
370 polypcore/authkey.c polypcore/authkey.h \
371 polypcore/conf-parser.c polypcore/conf-parser.h \
372 polypcore/dynarray.c polypcore/dynarray.h \
373 polypcore/gccmacro.h \
374 polypcore/hashmap.c polypcore/hashmap.h \
375 polypcore/idxset.c polypcore/idxset.h \
376 polypcore/iochannel.c polypcore/iochannel.h \
377 polypcore/log.c polypcore/log.h \
378 polypcore/mcalign.c polypcore/mcalign.h \
379 polypcore/memblock.c polypcore/memblock.h \
380 polypcore/memblockq.c polypcore/memblockq.h \
381 polypcore/memchunk.c polypcore/memchunk.h \
382 polypcore/native-common.h \
383 polypcore/packet.c polypcore/packet.h \
384 polypcore/parseaddr.c polypcore/parseaddr.h \
385 polypcore/pdispatch.c polypcore/pdispatch.h \
386 polypcore/pstream.c polypcore/pstream.h \
387 polypcore/pstream-util.c polypcore/pstream-util.h \
388 polypcore/queue.c polypcore/queue.h \
389 polypcore/random.c polypcore/random.h \
390 polypcore/socket-client.c polypcore/socket-client.h \
391 polypcore/socket-util.c polypcore/socket-util.h \
392 polypcore/strbuf.c polypcore/strbuf.h \
393 polypcore/strlist.c polypcore/strlist.h \
394 polypcore/tagstruct.c polypcore/tagstruct.h \
395 polypcore/util.c polypcore/util.h \
396 polypcore/winsock.h \
397 polypcore/llist.h
398
399 if OS_IS_WIN32
400 libpolyp_la_SOURCES += \
401 polypcore/dllmain.c
402 endif
403
404 if HAVE_X11
405 libpolyp_la_SOURCES += \
406 polyp/client-conf-x11.c polyp/client-conf-x11.h \
407 polypcore/x11prop.c polypcore/x11prop.h
408 endif
409
410 libpolyp_la_CFLAGS = $(AM_CFLAGS)
411 libpolyp_la_LDFLAGS = -version-info $(LIBPOLYP_VERSION_INFO)
412 libpolyp_la_LIBADD = $(AM_LIBADD) $(WINSOCK_LIBS)
413
414 if HAVE_X11
415 libpolyp_la_CFLAGS += $(X_CFLAGS)
416 libpolyp_la_LDFLAGS += $(X_PRE_LIBS) -lX11 $(X_LIBS) $(X_EXTRA_LIBS)
417 endif
418
419 if HAVE_LIBASYNCNS
420 libpolyp_la_CFLAGS += $(LIBASYNCNS_CFLAGS)
421 libpolyp_la_LIBADD += $(LIBASYNCNS_LIBS)
422 endif
423
424 libpolyp_simple_la_SOURCES = polyp/simple.c polyp/simple.h
425 libpolyp_simple_la_CFLAGS = $(AM_CFLAGS)
426 libpolyp_simple_la_LIBADD = $(AM_LIBADD) libpolyp.la
427 libpolyp_simple_la_LDFLAGS = -version-info $(LIBPOLYP_SIMPLE_VERSION_INFO)
428
429 libpolyp_browse_la_SOURCES = polyp/browser.c polyp/browser.h
430 libpolyp_browse_la_CFLAGS = $(AM_CFLAGS) $(HOWL_CFLAGS)
431 libpolyp_browse_la_LIBADD = $(AM_LIBADD) libpolyp.la $(HOWL_LIBS)
432 libpolyp_browse_la_LDFLAGS = -version-info $(LIBPOLYP_BROWSE_VERSION_INFO)
433
434 libpolyp_mainloop_glib_la_SOURCES = polyp/glib-mainloop.h polyp/glib-mainloop.c
435 libpolyp_mainloop_glib_la_CFLAGS = $(AM_CFLAGS) $(GLIB20_CFLAGS)
436 libpolyp_mainloop_glib_la_LIBADD = $(AM_LIBADD) libpolyp.la $(GLIB20_LIBS)
437 libpolyp_mainloop_glib_la_LDFLAGS = -version-info $(LIBPOLYP_MAINLOOP_GLIB_VERSION_INFO)
438
439 libpolyp_mainloop_glib12_la_SOURCES = polyp/glib-mainloop.h polyp/glib12-mainloop.c
440 libpolyp_mainloop_glib12_la_CFLAGS = $(AM_CFLAGS) $(GLIB12_CFLAGS)
441 libpolyp_mainloop_glib12_la_LIBADD = $(AM_LIBADD) libpolyp.la $(GLIB12_LIBS)
442 libpolyp_mainloop_glib12_la_LDFLAGS = -version-info $(LIBPOLYP_MAINLOOP_GLIB_VERSION_INFO)
443
444 ###################################
445 # Daemon core library #
446 ###################################
447
448 polypcoreinclude_HEADERS = \
449 polypcore/autoload.h \
450 polypcore/cli-command.h \
451 polypcore/cli-text.h \
452 polypcore/client.h \
453 polypcore/core.h \
454 polypcore/core-def.h \
455 polypcore/core-scache.h \
456 polypcore/core-subscribe.h \
457 polypcore/conf-parser.h \
458 polypcore/dynarray.h \
459 polypcore/g711.h \
460 polypcore/hashmap.h \
461 polypcore/idxset.h \
462 polypcore/log.h \
463 polypcore/mcalign.h \
464 polypcore/memblock.h \
465 polypcore/memblockq.h \
466 polypcore/memchunk.h \
467 polypcore/modargs.h \
468 polypcore/modinfo.h \
469 polypcore/module.h \
470 polypcore/namereg.h \
471 polypcore/pid.h \
472 polypcore/play-memchunk.h \
473 polypcore/props.h \
474 polypcore/queue.h \
475 polypcore/random.h \
476 polypcore/resampler.h \
477 polypcore/sample-util.h \
478 polypcore/sconv.h \
479 polypcore/sink.h \
480 polypcore/sink-input.h \
481 polypcore/sioman.h \
482 polypcore/sound-file.h \
483 polypcore/sound-file-stream.h \
484 polypcore/source.h \
485 polypcore/source-output.h \
486 polypcore/strbuf.h \
487 polypcore/tokenizer.h \
488 polypcore/util.h \
489 polypcore/utf8.h
490
491 lib_LTLIBRARIES += libpolypcore.la
492
493 # Some public stuff is used even in the core.
494 libpolypcore_la_SOURCES = \
495 polyp/channelmap.c polyp/channelmap.h \
496 polyp/mainloop.c polyp/mainloop.h \
497 polyp/mainloop-api.c polyp/mainloop-api.h \
498 polyp/mainloop-signal.c polyp/mainloop-signal.h \
499 polyp/sample.c polyp/sample.h \
500 polyp/volume.c polyp/volume.h \
501 polyp/xmalloc.c polyp/xmalloc.h
502
503 # Pure core stuff (some are shared in libpolyp though).
504 libpolypcore_la_SOURCES += \
505 polypcore/autoload.c polypcore/autoload.h \
506 polypcore/cli-command.c polypcore/cli-command.h \
507 polypcore/cli-text.c polypcore/cli-text.h \
508 polypcore/client.c polypcore/client.h \
509 polypcore/conf-parser.c polypcore/conf-parser.h \
510 polypcore/core.c polypcore/core.h \
511 polypcore/core-scache.c polypcore/core-scache.h \
512 polypcore/core-subscribe.c polypcore/core-subscribe.h \
513 polypcore/dynarray.c polypcore/dynarray.h \
514 polypcore/endianmacros.h \
515 polypcore/g711.c polypcore/g711.h \
516 polypcore/hashmap.c polypcore/hashmap.h \
517 polypcore/idxset.c polypcore/idxset.h \
518 polypcore/log.c polypcore/log.h \
519 polypcore/mcalign.c polypcore/mcalign.h \
520 polypcore/memblock.c polypcore/memblock.h \
521 polypcore/memblockq.c polypcore/memblockq.h \
522 polypcore/memchunk.c polypcore/memchunk.h \
523 polypcore/modargs.c polypcore/modargs.h \
524 polypcore/modinfo.c polypcore/modinfo.h \
525 polypcore/module.c polypcore/module.h \
526 polypcore/namereg.c polypcore/namereg.h \
527 polypcore/pid.c polypcore/pid.h \
528 polypcore/pipe.c polypcore/pipe.h \
529 polypcore/play-memchunk.c polypcore/play-memchunk.h \
530 polypcore/poll.c polypcore/poll.h \
531 polypcore/props.c polypcore/props.h \
532 polypcore/queue.c polypcore/queue.h \
533 polypcore/random.c polypcore/random.h \
534 polypcore/resampler.c polypcore/resampler.h \
535 polypcore/sample-util.c polypcore/sample-util.h \
536 polypcore/sconv.c polypcore/sconv.h \
537 polypcore/sconv-s16be.c polypcore/sconv-s16be.h \
538 polypcore/sconv-s16le.c polypcore/sconv-s16le.h \
539 polypcore/sink.c polypcore/sink.h \
540 polypcore/sink-input.c polypcore/sink-input.h \
541 polypcore/sioman.c polypcore/sioman.h \
542 polypcore/sound-file.c polypcore/sound-file.h \
543 polypcore/sound-file-stream.c polypcore/sound-file-stream.h \
544 polypcore/source.c polypcore/source.h \
545 polypcore/source-output.c polypcore/source-output.h \
546 polypcore/strbuf.c polypcore/strbuf.h \
547 polypcore/tokenizer.c polypcore/tokenizer.h \
548 polypcore/util.c polypcore/util.h \
549 polypcore/winsock.h \
550 polypcore/utf8.c polypcore/utf8.h
551
552 if OS_IS_WIN32
553 libpolypcore_la_SOURCES += \
554 polypcore/dllmain.c
555 endif
556
557 libpolypcore_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBOIL_CFLAGS)
558 libpolypcore_la_LDFLAGS = -version-info $(LIBPOLYPCORE_VERSION_INFO)
559 libpolypcore_la_LIBADD = $(AM_LIBADD) $(LIBLTDL) $(LIBSAMPLERATE_LIBS) $(LIBSNDFILE_LIBS) $(WINSOCK_LIBS) $(LIBOIL_LIBS)
560
561 ###################################
562 # Plug-in support libraries #
563 ###################################
564
565 polypcoreinclude_HEADERS += \
566 polypcore/socket-util.h \
567 polypcore/iochannel.h \
568 polypcore/socket-server.h \
569 polypcore/socket-client.h \
570 polypcore/parseaddr.h \
571 polypcore/packet.h \
572 polypcore/pstream.h \
573 polypcore/ioline.h \
574 polypcore/cli.h \
575 polypcore/protocol-cli.h \
576 polypcore/tagstruct.h \
577 polypcore/pstream-util.h \
578 polypcore/pdispatch.h \
579 polypcore/authkey.h \
580 polypcore/authkey-prop.h \
581 polypcore/strlist.h \
582 polypcore/protocol-simple.h \
583 polypcore/esound.h \
584 polypcore/protocol-esound.h \
585 polypcore/native-common.h \
586 polypcore/protocol-native.h \
587 polypcore/protocol-http.h
588
589 ### Warning! Due to an obscure bug in libtool/automake it is required
590 ### that the libraries in modlibexec_LTLIBRARIES are specified in-order,
591 ### i.e. libraries near the end of the list depend on libraries near
592 ### the head, and not the other way!
593
594 modlibexec_LTLIBRARIES = \
595 libsocket-util.la \
596 libiochannel.la \
597 libsocket-server.la \
598 libparseaddr.la \
599 libsocket-client.la \
600 libpacket.la \
601 libpstream.la \
602 libioline.la \
603 libcli.la \
604 libprotocol-cli.la \
605 libtagstruct.la \
606 libpstream-util.la \
607 libpdispatch.la \
608 libauthkey.la \
609 libauthkey-prop.la \
610 libstrlist.la \
611 libprotocol-simple.la \
612 libprotocol-esound.la \
613 libprotocol-native.la \
614 libprotocol-http.la
615
616 # We need to emulate sendmsg/recvmsg to support this on Win32
617 if !OS_IS_WIN32
618 modlibexec_LTLIBRARIES += \
619 librtp.la
620 endif
621
622 if HAVE_X11
623 polypcoreinclude_HEADERS += \
624 polypcore/x11wrap.h \
625 polypcore/x11prop.h
626
627 modlibexec_LTLIBRARIES += \
628 libx11wrap.la \
629 libx11prop.la
630 endif
631
632 libprotocol_simple_la_SOURCES = polypcore/protocol-simple.c polypcore/protocol-simple.h
633 libprotocol_simple_la_LDFLAGS = -avoid-version
634 libprotocol_simple_la_LIBADD = $(AM_LIBADD) libpolypcore.la libsocket-server.la libiochannel.la
635
636 libsocket_server_la_SOURCES = \
637 polypcore/inet_ntop.c polypcore/inet_ntop.h \
638 polypcore/inet_pton.c polypcore/inet_pton.h \
639 polypcore/socket-server.c polypcore/socket-server.h
640 libsocket_server_la_LDFLAGS = -avoid-version
641 libsocket_server_la_LIBADD = $(AM_LIBADD) libpolypcore.la libiochannel.la libsocket-util.la $(LIBWRAP_LIBS) $(WINSOCK_LIBS)
642
643 libsocket_client_la_SOURCES = polypcore/socket-client.c polypcore/socket-client.h
644 libsocket_client_la_LDFLAGS = -avoid-version
645 libsocket_client_la_LIBADD = $(AM_LIBADD) libpolypcore.la libiochannel.la libsocket-util.la libparseaddr.la $(LIBASYNCNS_LIBS) $(WINSOCK_LIBS)
646 libsocket_client_la_CFLAGS = $(AM_CFLAGS) $(LIBASYNCNS_CFLAGS)
647
648 libparseaddr_la_SOURCES = polypcore/parseaddr.c polypcore/parseaddr.h
649 libparseaddr_la_LDFLAGS = -avoid-version
650 libparseaddr_la_LIBADD = $(AM_LIBADD) libpolypcore.la
651
652 libpstream_la_SOURCES = polypcore/pstream.c polypcore/pstream.h
653 libpstream_la_LDFLAGS = -avoid-version
654 libpstream_la_LIBADD = $(AM_LIBADD) libpolypcore.la libpacket.la libiochannel.la $(WINSOCK_LIBS)
655
656 libpstream_util_la_SOURCES = polypcore/pstream-util.c polypcore/pstream-util.h
657 libpstream_util_la_LDFLAGS = -avoid-version
658 libpstream_util_la_LIBADD = $(AM_LIBADD) libpacket.la libpstream.la libtagstruct.la
659
660 libpdispatch_la_SOURCES = polypcore/pdispatch.c polypcore/pdispatch.h
661 libpdispatch_la_LDFLAGS = -avoid-version
662 libpdispatch_la_LIBADD = $(AM_LIBADD) libtagstruct.la libpolypcore.la
663
664 libiochannel_la_SOURCES = polypcore/iochannel.c polypcore/iochannel.h
665 libiochannel_la_LDFLAGS = -avoid-version
666 libiochannel_la_LIBADD = $(AM_LIBADD) libsocket-util.la libpolypcore.la $(WINSOCK_LIBS)
667
668 libpacket_la_SOURCES = polypcore/packet.c polypcore/packet.h
669 libpacket_la_LDFLAGS = -avoid-version
670 libpacket_la_LIBADD = $(AM_LIBADD) libpolypcore.la
671
672 libioline_la_SOURCES = polypcore/ioline.c polypcore/ioline.h
673 libioline_la_LDFLAGS = -avoid-version
674 libioline_la_LIBADD = $(AM_LIBADD) libiochannel.la libpolypcore.la
675
676 libcli_la_SOURCES = polypcore/cli.c polypcore/cli.h
677 libcli_la_CPPFLAGS = $(AM_CPPFLAGS)
678 libcli_la_LDFLAGS = -avoid-version
679 libcli_la_LIBADD = $(AM_LIBADD) libiochannel.la libioline.la libpolypcore.la
680
681 libstrlist_la_SOURCES = polypcore/strlist.c polypcore/strlist.h
682 libstrlist_la_LDFLAGS = -avoid-version
683 libstrlist_la_LIBADD = $(AM_LIBADD) libpolypcore.la
684
685 libprotocol_cli_la_SOURCES = polypcore/protocol-cli.c polypcore/protocol-cli.h
686 libprotocol_cli_la_LDFLAGS = -avoid-version
687 libprotocol_cli_la_LIBADD = $(AM_LIBADD) libsocket-server.la libiochannel.la libcli.la libpolypcore.la
688
689 libprotocol_http_la_SOURCES = polypcore/protocol-http.c polypcore/protocol-http.h
690 libprotocol_http_la_LDFLAGS = -avoid-version
691 libprotocol_http_la_LIBADD = $(AM_LIBADD) libsocket-server.la libioline.la libpolypcore.la libiochannel.la
692
693 libprotocol_native_la_SOURCES = polypcore/protocol-native.c polypcore/protocol-native.h polypcore/native-common.h
694 libprotocol_native_la_LDFLAGS = -avoid-version
695 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
696
697 libtagstruct_la_SOURCES = polypcore/tagstruct.c polypcore/tagstruct.h
698 libtagstruct_la_LDFLAGS = -avoid-version
699 libtagstruct_la_LIBADD = $(AM_LIBADD) libpolypcore.la $(WINSOCK_LIBS)
700
701 libprotocol_esound_la_SOURCES = polypcore/protocol-esound.c polypcore/protocol-esound.h polypcore/esound.h
702 libprotocol_esound_la_LDFLAGS = -avoid-version
703 libprotocol_esound_la_LIBADD = $(AM_LIBADD) libsocket-server.la libiochannel.la libauthkey.la libpolypcore.la
704
705 libauthkey_la_SOURCES = polypcore/authkey.c polypcore/authkey.h
706 libauthkey_la_LDFLAGS = -avoid-version
707 libauthkey_la_LIBADD = $(AM_LIBADD) libpolypcore.la
708
709 libauthkey_prop_la_SOURCES = polypcore/authkey-prop.c polypcore/authkey-prop.h
710 libauthkey_prop_la_LDFLAGS = -avoid-version
711 libauthkey_prop_la_LIBADD = $(AM_LIBADD) libpolypcore.la
712
713 libsocket_util_la_SOURCES = polypcore/socket-util.c polypcore/socket-util.h
714 libsocket_util_la_LDFLAGS = -avoid-version
715 libsocket_util_la_LIBADD = $(AM_LIBADD) $(WINSOCK_LIBS) libpolypcore.la
716
717 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
718 librtp_la_LDFLAGS = -avoid-version
719 librtp_la_LIBADD = $(AM_LIBADD) libpolypcore.la
720
721 # X11
722
723 libx11wrap_la_SOURCES = polypcore/x11wrap.c polypcore/x11wrap.h
724 libx11wrap_la_LDFLAGS = -avoid-version
725 libx11wrap_la_CFLAGS = $(AM_CFLAGS) $(X_CFLAGS)
726 libx11wrap_la_LIBADD = $(AM_LIBADD) $(X_PRE_LIBS) -lX11 $(X_LIBS) $(X_EXTRA_LIBS) libpolypcore.la
727
728 libx11prop_la_SOURCES = polypcore/x11prop.c polypcore/x11prop.h
729 libx11prop_la_LDFLAGS = -avoid-version
730 libx11prop_la_CFLAGS = $(AM_CFLAGS) $(X_CFLAGS)
731 libx11prop_la_LIBADD = $(AM_LIBADD) $(X_PRE_LIBS) -lX11 $(X_LIBS) $(X_EXTRA_LIBS)
732
733 ###################################
734 # Plug-in libraries #
735 ###################################
736
737 modlibexec_LTLIBRARIES += \
738 module-cli.la \
739 module-cli-protocol-tcp.la \
740 module-simple-protocol-tcp.la \
741 module-esound-protocol-tcp.la \
742 module-native-protocol-tcp.la \
743 module-native-protocol-fd.la \
744 module-sine.la \
745 module-combine.la \
746 module-tunnel-sink.la \
747 module-tunnel-source.la \
748 module-null-sink.la \
749 module-esound-sink.la \
750 module-http-protocol-tcp.la \
751 module-detect.la \
752 module-volume-restore.la
753
754 # See comment at librtp.la above
755 if !OS_IS_WIN32
756 modlibexec_LTLIBRARIES += \
757 module-rtp-send.la \
758 module-rtp-recv.la
759 endif
760
761 if HAVE_AF_UNIX
762 modlibexec_LTLIBRARIES += \
763 module-cli-protocol-unix.la \
764 module-simple-protocol-unix.la \
765 module-esound-protocol-unix.la \
766 module-native-protocol-unix.la \
767 module-http-protocol-unix.la
768 endif
769
770 if HAVE_MKFIFO
771 modlibexec_LTLIBRARIES += \
772 module-pipe-sink.la \
773 module-pipe-source.la
774 endif
775
776 if !OS_IS_WIN32
777 modlibexec_LTLIBRARIES += \
778 module-esound-compat-spawnfd.la \
779 module-esound-compat-spawnpid.la
780 endif
781
782 if HAVE_REGEX
783 modlibexec_LTLIBRARIES += \
784 module-match.la
785 endif
786
787 if HAVE_X11
788 modlibexec_LTLIBRARIES += \
789 module-x11-bell.la \
790 module-x11-publish.la
791 endif
792
793 if HAVE_OSS
794 modlibexec_LTLIBRARIES += \
795 liboss-util.la \
796 module-oss.la \
797 module-oss-mmap.la
798 endif
799
800 if HAVE_ALSA
801 modlibexec_LTLIBRARIES += \
802 libalsa-util.la \
803 module-alsa-sink.la \
804 module-alsa-source.la
805 endif
806
807 if HAVE_SOLARIS
808 modlibexec_LTLIBRARIES += \
809 module-solaris.la
810 endif
811
812 if HAVE_HOWL
813 modlibexec_LTLIBRARIES += \
814 libhowl-wrap.la \
815 module-zeroconf-publish.la
816 endif
817
818 if HAVE_LIRC
819 modlibexec_LTLIBRARIES += \
820 module-lirc.la
821 endif
822
823 if HAVE_EVDEV
824 modlibexec_LTLIBRARIES += \
825 module-mmkbd-evdev.la
826 endif
827
828 if HAVE_JACK
829 modlibexec_LTLIBRARIES += \
830 module-jack-sink.la \
831 module-jack-source.la
832 endif
833
834 if OS_IS_WIN32
835 modlibexec_LTLIBRARIES += \
836 module-waveout.la
837 endif
838
839 # These are generated by a M4 script
840
841 SYMDEF_FILES = \
842 modules/module-cli-symdef.h \
843 modules/module-cli-protocol-tcp-symdef.h \
844 modules/module-cli-protocol-unix-symdef.h \
845 modules/module-pipe-sink-symdef.h \
846 modules/module-pipe-source-symdef.h \
847 modules/module-simple-protocol-tcp-symdef.h \
848 modules/module-simple-protocol-unix-symdef.h \
849 modules/module-esound-protocol-tcp-symdef.h \
850 modules/module-esound-protocol-unix-symdef.h \
851 modules/module-native-protocol-tcp-symdef.h \
852 modules/module-native-protocol-unix-symdef.h \
853 modules/module-native-protocol-fd-symdef.h \
854 modules/module-sine-symdef.h \
855 modules/module-combine-symdef.h \
856 modules/module-esound-compat-spawnfd-symdef.h \
857 modules/module-esound-compat-spawnpid-symdef.h \
858 modules/module-match-symdef.h \
859 modules/module-tunnel-sink-symdef.h \
860 modules/module-tunnel-source-symdef.h \
861 modules/module-null-sink-symdef.h \
862 modules/module-esound-sink-symdef.h \
863 modules/module-zeroconf-publish-symdef.h \
864 modules/module-lirc-symdef.h \
865 modules/module-mmkbd-evdev-symdef.h \
866 modules/module-http-protocol-tcp-symdef.h \
867 modules/module-http-protocol-unix-symdef.h \
868 modules/module-x11-bell-symdef.h \
869 modules/module-x11-publish-symdef.h \
870 modules/module-oss-symdef.h \
871 modules/module-oss-mmap-symdef.h \
872 modules/module-alsa-sink-symdef.h \
873 modules/module-alsa-source-symdef.h \
874 modules/module-solaris-symdef.h \
875 modules/module-waveout-symdef.h \
876 modules/module-detect-symdef.h \
877 modules/rtp/module-rtp-send-symdef.h \
878 modules/rtp/module-rtp-recv-symdef.h \
879 modules/module-jack-sink-symdef.h \
880 modules/module-jack-source-symdef.h \
881 modules/module-volume-restore-symdef.h
882
883
884 EXTRA_DIST += $(SYMDEF_FILES)
885 BUILT_SOURCES += $(SYMDEF_FILES)
886
887 $(SYMDEF_FILES): modules/module-defs.h.m4
888 $(M4) -Dfname="$@" $< > $@
889
890 # Simple protocol
891
892 module_simple_protocol_tcp_la_SOURCES = modules/module-protocol-stub.c
893 module_simple_protocol_tcp_la_CFLAGS = -DUSE_TCP_SOCKETS -DUSE_PROTOCOL_SIMPLE $(AM_CFLAGS)
894 module_simple_protocol_tcp_la_LDFLAGS = -module -avoid-version
895 module_simple_protocol_tcp_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-simple.la libsocket-server.la
896
897 module_simple_protocol_unix_la_SOURCES = modules/module-protocol-stub.c
898 module_simple_protocol_unix_la_CFLAGS = -DUSE_UNIX_SOCKETS -DUSE_PROTOCOL_SIMPLE $(AM_CFLAGS)
899 module_simple_protocol_unix_la_LDFLAGS = -module -avoid-version
900 module_simple_protocol_unix_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-simple.la libsocket-server.la libsocket-util.la
901
902 # CLI protocol
903
904 module_cli_la_SOURCES = modules/module-cli.c
905 module_cli_la_LDFLAGS = -module -avoid-version
906 module_cli_la_LIBADD = $(AM_LIBADD) libcli.la libiochannel.la libpolypcore.la
907
908 module_cli_protocol_tcp_la_SOURCES = modules/module-protocol-stub.c
909 module_cli_protocol_tcp_la_CFLAGS = -DUSE_TCP_SOCKETS -DUSE_PROTOCOL_CLI $(AM_CFLAGS)
910 module_cli_protocol_tcp_la_LDFLAGS = -module -avoid-version
911 module_cli_protocol_tcp_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-cli.la libsocket-server.la
912
913 module_cli_protocol_unix_la_SOURCES = modules/module-protocol-stub.c
914 module_cli_protocol_unix_la_CFLAGS = -DUSE_UNIX_SOCKETS -DUSE_PROTOCOL_CLI $(AM_CFLAGS)
915 module_cli_protocol_unix_la_LDFLAGS = -module -avoid-version
916 module_cli_protocol_unix_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-cli.la libsocket-server.la libsocket-util.la
917
918 # HTTP protocol
919
920 module_http_protocol_tcp_la_SOURCES = modules/module-protocol-stub.c
921 module_http_protocol_tcp_la_CFLAGS = -DUSE_TCP_SOCKETS -DUSE_PROTOCOL_HTTP $(AM_CFLAGS)
922 module_http_protocol_tcp_la_LDFLAGS = -module -avoid-version
923 module_http_protocol_tcp_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-http.la libsocket-server.la
924
925 module_http_protocol_unix_la_SOURCES = modules/module-protocol-stub.c
926 module_http_protocol_unix_la_CFLAGS = -DUSE_UNIX_SOCKETS -DUSE_PROTOCOL_HTTP $(AM_CFLAGS)
927 module_http_protocol_unix_la_LDFLAGS = -module -avoid-version
928 module_http_protocol_unix_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-http.la libsocket-server.la libsocket-util.la
929
930 # Native protocol
931
932 module_native_protocol_tcp_la_SOURCES = modules/module-protocol-stub.c
933 module_native_protocol_tcp_la_CFLAGS = -DUSE_TCP_SOCKETS -DUSE_PROTOCOL_NATIVE $(AM_CFLAGS)
934 module_native_protocol_tcp_la_LDFLAGS = -module -avoid-version
935 module_native_protocol_tcp_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-native.la libsocket-server.la
936
937 module_native_protocol_unix_la_SOURCES = modules/module-protocol-stub.c
938 module_native_protocol_unix_la_CFLAGS = -DUSE_UNIX_SOCKETS -DUSE_PROTOCOL_NATIVE $(AM_CFLAGS)
939 module_native_protocol_unix_la_LDFLAGS = -module -avoid-version
940 module_native_protocol_unix_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-native.la libsocket-server.la libsocket-util.la
941
942 module_native_protocol_fd_la_SOURCES = modules/module-native-protocol-fd.c
943 module_native_protocol_fd_la_CFLAGS = $(AM_CFLAGS)
944 module_native_protocol_fd_la_LDFLAGS = -module -avoid-version
945 module_native_protocol_fd_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-native.la libsocket-server.la libsocket-util.la libiochannel.la
946
947 # EsounD protocol
948
949 module_esound_protocol_tcp_la_SOURCES = modules/module-protocol-stub.c
950 module_esound_protocol_tcp_la_CFLAGS = -DUSE_TCP_SOCKETS -DUSE_PROTOCOL_ESOUND $(AM_CFLAGS)
951 module_esound_protocol_tcp_la_LDFLAGS = -module -avoid-version
952 module_esound_protocol_tcp_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-esound.la libsocket-server.la
953
954 module_esound_protocol_unix_la_SOURCES = modules/module-protocol-stub.c
955 module_esound_protocol_unix_la_CFLAGS = -DUSE_UNIX_SOCKETS -DUSE_PROTOCOL_ESOUND $(AM_CFLAGS)
956 module_esound_protocol_unix_la_LDFLAGS = -module -avoid-version
957 module_esound_protocol_unix_la_LIBADD = $(AM_LIBADD) libpolypcore.la libprotocol-esound.la libsocket-server.la libsocket-util.la
958
959 module_esound_compat_spawnfd_la_SOURCES = modules/module-esound-compat-spawnfd.c
960 module_esound_compat_spawnfd_la_LDFLAGS = -module -avoid-version
961 module_esound_compat_spawnfd_la_LIBADD = $(AM_LIBADD) libpolypcore.la
962
963 module_esound_compat_spawnpid_la_SOURCES = modules/module-esound-compat-spawnpid.c
964 module_esound_compat_spawnpid_la_LDFLAGS = -module -avoid-version
965 module_esound_compat_spawnpid_la_LIBADD = $(AM_LIBADD) libpolypcore.la
966
967 module_esound_sink_la_SOURCES = modules/module-esound-sink.c
968 module_esound_sink_la_LDFLAGS = -module -avoid-version
969 module_esound_sink_la_LIBADD = $(AM_LIBADD) libpolypcore.la libiochannel.la libsocket-client.la libauthkey.la
970
971 # Pipes
972
973 module_pipe_sink_la_SOURCES = modules/module-pipe-sink.c
974 module_pipe_sink_la_LDFLAGS = -module -avoid-version
975 module_pipe_sink_la_LIBADD = $(AM_LIBADD) libpolypcore.la libiochannel.la
976
977 module_pipe_source_la_SOURCES = modules/module-pipe-source.c
978 module_pipe_source_la_LDFLAGS = -module -avoid-version
979 module_pipe_source_la_LIBADD = $(AM_LIBADD) libpolypcore.la libiochannel.la
980
981 # Fake sources/sinks
982
983 module_sine_la_SOURCES = modules/module-sine.c
984 module_sine_la_LDFLAGS = -module -avoid-version
985 module_sine_la_LIBADD = $(AM_LIBADD) libpolypcore.la
986
987 module_null_sink_la_SOURCES = modules/module-null-sink.c
988 module_null_sink_la_LDFLAGS = -module -avoid-version
989 module_null_sink_la_LIBADD = $(AM_LIBADD) libpolypcore.la
990
991 # Couplings
992
993 module_combine_la_SOURCES = modules/module-combine.c
994 module_combine_la_LDFLAGS = -module -avoid-version
995 module_combine_la_LIBADD = $(AM_LIBADD) libpolypcore.la
996
997 module_match_la_SOURCES = modules/module-match.c
998 module_match_la_LDFLAGS = -module -avoid-version
999 module_match_la_LIBADD = $(AM_LIBADD) libpolypcore.la
1000
1001 module_tunnel_sink_la_SOURCES = modules/module-tunnel.c
1002 module_tunnel_sink_la_CFLAGS = -DTUNNEL_SINK=1 $(AM_CFLAGS)
1003 module_tunnel_sink_la_LDFLAGS = -module -avoid-version
1004 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
1005
1006 module_tunnel_source_la_SOURCES = modules/module-tunnel.c
1007 module_tunnel_source_la_LDFLAGS = -module -avoid-version
1008 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
1009
1010 # X11
1011
1012 module_x11_bell_la_SOURCES = modules/module-x11-bell.c
1013 module_x11_bell_la_CFLAGS = $(AM_CFLAGS) $(X_CFLAGS)
1014 module_x11_bell_la_LDFLAGS = -module -avoid-version
1015 module_x11_bell_la_LIBADD = $(AM_LIBADD) $(X_PRE_LIBS) -lX11 $(X_LIBS) $(X_EXTRA_LIBS) libx11wrap.la libpolypcore.la
1016
1017 module_x11_publish_la_SOURCES = modules/module-x11-publish.c
1018 module_x11_publish_la_CFLAGS = $(AM_CFLAGS) $(X_CFLAGS)
1019 module_x11_publish_la_LDFLAGS = -module -avoid-version
1020 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
1021
1022 # OSS
1023
1024 liboss_util_la_SOURCES = modules/oss-util.c modules/oss-util.h
1025 liboss_util_la_LDFLAGS = -avoid-version
1026 liboss_util_la_LIBADD = libpolypcore.la
1027
1028 module_oss_la_SOURCES = modules/module-oss.c
1029 module_oss_la_LDFLAGS = -module -avoid-version
1030 module_oss_la_LIBADD = $(AM_LIBADD) libiochannel.la liboss-util.la
1031
1032 module_oss_mmap_la_SOURCES = modules/module-oss-mmap.c
1033 module_oss_mmap_la_LDFLAGS = -module -avoid-version
1034 module_oss_mmap_la_LIBADD = $(AM_LIBADD) liboss-util.la libpolypcore.la
1035
1036 # ALSA
1037
1038 libalsa_util_la_SOURCES = modules/alsa-util.c modules/alsa-util.h
1039 libalsa_util_la_LDFLAGS = -avoid-version
1040 libalsa_util_la_LIBADD = $(AM_LIBADD) $(ASOUNDLIB_LIBS) libpolypcore.la
1041 libalsa_util_la_CFLAGS = $(AM_CFLAGS) $(ASOUNDLIB_CFLAGS)
1042
1043 module_alsa_sink_la_SOURCES = modules/module-alsa-sink.c
1044 module_alsa_sink_la_LDFLAGS = -module -avoid-version
1045 module_alsa_sink_la_LIBADD = $(AM_LIBADD) $(ASOUNDLIB_LIBS) libalsa-util.la libpolypcore.la
1046 module_alsa_sink_la_CFLAGS = $(AM_CFLAGS) $(ASOUNDLIB_CFLAGS)
1047
1048 module_alsa_source_la_SOURCES = modules/module-alsa-source.c
1049 module_alsa_source_la_LDFLAGS = -module -avoid-version
1050 module_alsa_source_la_LIBADD = $(AM_LIBADD) $(ASOUNDLIB_LIBS) libalsa-util.la libpolypcore.la
1051 module_alsa_source_la_CFLAGS = $(AM_CFLAGS) $(ASOUNDLIB_CFLAGS)
1052
1053 # Solaris
1054
1055 module_solaris_la_SOURCES = modules/module-solaris.c
1056 module_solaris_la_LDFLAGS = -module -avoid-version
1057 module_solaris_la_LIBADD = $(AM_LIBADD) libiochannel.la
1058
1059 # HOWL
1060
1061 libhowl_wrap_la_SOURCES = modules/howl-wrap.c modules/howl-wrap.h
1062 libhowl_wrap_la_LDFLAGS = -avoid-version
1063 libhowl_wrap_la_LIBADD = $(AM_LIBADD) $(HOWL_LIBS)
1064 libhowl_wrap_la_CFLAGS = $(AM_CFLAGS) $(HOWL_CFLAGS)
1065
1066 module_zeroconf_publish_la_SOURCES = modules/module-zeroconf-publish.c
1067 module_zeroconf_publish_la_LDFLAGS = -module -avoid-version
1068 module_zeroconf_publish_la_LIBADD = $(AM_LIBADD) $(HOWL_LIBS) libhowl-wrap.la
1069 module_zeroconf_publish_la_CFLAGS = $(AM_CFLAGS) $(HOWL_CFLAGS)
1070
1071 # LIRC
1072
1073 module_lirc_la_SOURCES = modules/module-lirc.c
1074 module_lirc_la_LDFLAGS = -module -avoid-version
1075 module_lirc_la_LIBADD = $(AM_LIBADD) $(LIRC_LIBS) libpolypcore.la
1076 module_lirc_la_CFLAGS = $(AM_CFLAGS) $(LIRC_CFLAGS)
1077
1078 # Linux evdev
1079
1080 module_mmkbd_evdev_la_SOURCES = modules/module-mmkbd-evdev.c
1081 module_mmkbd_evdev_la_LDFLAGS = -module -avoid-version
1082 module_mmkbd_evdev_la_LIBADD = $(AM_LIBADD) libpolypcore.la
1083 module_mmkbd_evdev_la_CFLAGS = $(AM_CFLAGS)
1084
1085 # Windows waveout
1086
1087 module_waveout_la_SOURCES = modules/module-waveout.c
1088 module_waveout_la_LDFLAGS = -module -avoid-version
1089 module_waveout_la_LIBADD = $(AM_LIBADD) libpolypcore.la -lwinmm
1090 module_waveout_la_CFLAGS = $(AM_CFLAGS)
1091
1092 # Hardware autodetection module
1093 module_detect_la_SOURCES = modules/module-detect.c
1094 module_detect_la_LDFLAGS = -module -avoid-version
1095 module_detect_la_LIBADD = $(AM_LIBADD) libpolypcore.la
1096 module_detect_la_CFLAGS = $(AM_CFLAGS)
1097
1098 # Volume restore module
1099 module_volume_restore_la_SOURCES = modules/module-volume-restore.c
1100 module_volume_restore_la_LDFLAGS = -module -avoid-version
1101 module_volume_restore_la_LIBADD = $(AM_LIBADD) libpolypcore.la
1102 module_volume_restore_la_CFLAGS = $(AM_CFLAGS)
1103
1104 # RTP modules
1105 module_rtp_send_la_SOURCES = modules/rtp/module-rtp-send.c
1106 module_rtp_send_la_LDFLAGS = -module -avoid-version
1107 module_rtp_send_la_LIBADD = $(AM_LIBADD) libpolypcore.la librtp.la
1108 module_rtp_send_la_CFLAGS = $(AM_CFLAGS)
1109
1110 module_rtp_recv_la_SOURCES = modules/rtp/module-rtp-recv.c
1111 module_rtp_recv_la_LDFLAGS = -module -avoid-version
1112 module_rtp_recv_la_LIBADD = $(AM_LIBADD) libpolypcore.la librtp.la
1113 module_rtp_recv_la_CFLAGS = $(AM_CFLAGS)
1114
1115 # JACK
1116
1117 module_jack_sink_la_SOURCES = modules/module-jack-sink.c
1118 module_jack_sink_la_LDFLAGS = -module -avoid-version
1119 module_jack_sink_la_LIBADD = $(AM_LIBADD) libpolypcore.la $(JACK_LIBS)
1120 module_jack_sink_la_CFLAGS = $(AM_LIBADD) $(JACK_CFLAGS)
1121
1122 module_jack_source_la_SOURCES = modules/module-jack-source.c
1123 module_jack_source_la_LDFLAGS = -module -avoid-version
1124 module_jack_source_la_LIBADD = $(AM_LIBADD) libpolypcore.la $(JACK_LIBS)
1125 module_jack_source_la_CFLAGS = $(AM_LIBADD) $(JACK_CFLAGS)
1126
1127 ###################################
1128 # Some minor stuff #
1129 ###################################
1130
1131 suid: polypaudio
1132 chown root $<
1133 chmod u+s $<
1134
1135 CLEANFILES=esdcompat.sh client.conf default.pa daemon.conf
1136
1137 esdcompat.sh: daemon/esdcompat.sh.in Makefile
1138 sed -e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
1139 -e 's,@PACKAGE_NAME\@,$(PACKAGE_NAME),g' \
1140 -e 's,@POLYPAUDIO_BINARY\@,$(POLYPAUDIO_BINARY),g' < $< > $@
1141
1142 client.conf: polyp/client.conf.in Makefile
1143 sed -e 's,@POLYPAUDIO_BINARY\@,$(POLYPAUDIO_BINARY),g' < $< > $@
1144
1145 if OS_IS_WIN32
1146 default.pa: daemon/default.pa.win32
1147 cp $< $@
1148 else
1149 default.pa: daemon/default.pa.in Makefile
1150 sed -e 's,@POLYPAUDIO_BINARY\@,$(POLYPAUDIO_BINARY),g' < $< > $@
1151 endif
1152
1153 daemon.conf: daemon/daemon.conf.in Makefile
1154 sed -e 's,@DLSEARCHPATH\@,$(modlibexecdir),g' \
1155 -e 's,@DEFAULT_CONFIG_FILE\@,$(DEFAULT_CONFIG_DIR),g' < $< > $@
1156
1157 install-exec-hook:
1158 chown root $(DESTDIR)$(bindir)/polypaudio ; true
1159 chmod u+s $(DESTDIR)$(bindir)/polypaudio
1160 ln -sf pacat $(DESTDIR)$(bindir)/parec
1161 rm -f $(DESTDIR)$(modlibexecdir)/*.a