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