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