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