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