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