mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-10-28 05:40:21 -04:00
* Enable macOS specific modules (module-bonjour-publish, module-coreaudio-detect and module-coreaudio-device) * Correctly set `PA_SOEXT` (.so, .dylib and .dll) * Build `poll-posix.c` and `semaphore-osx.c` * Drop linker flag `-Wl,-z,nodelete` on Darwin * Drop linker flag `-Wl,--no-undefined` on Darwin * Prefer to `clock_gettime` over compat impl for old Darwin * Disable SCM credential on Darwin Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/746>
230 lines
5.7 KiB
Meson
230 lines
5.7 KiB
Meson
libpulsecommon_sources = [
|
|
'pulse/client-conf.c',
|
|
'pulse/error.c',
|
|
'pulse/fork-detect.c',
|
|
'pulse/format.c',
|
|
'pulse/mainloop-api.c',
|
|
'pulse/xmalloc.c',
|
|
'pulse/proplist.c',
|
|
'pulse/utf8.c',
|
|
'pulse/channelmap.c',
|
|
'pulse/sample.c',
|
|
'pulse/util.c',
|
|
'pulse/timeval.c',
|
|
'pulse/rtclock.c',
|
|
'pulse/volume.c',
|
|
'pulsecore/authkey.c',
|
|
'pulsecore/conf-parser.c',
|
|
'pulsecore/core-error.c',
|
|
'pulsecore/core-format.c',
|
|
'pulsecore/core-rtclock.c',
|
|
'pulsecore/core-util.c',
|
|
'pulsecore/dynarray.c',
|
|
'pulsecore/fdsem.c',
|
|
'pulsecore/flist.c',
|
|
'pulsecore/g711.c',
|
|
'pulsecore/hashmap.c',
|
|
'pulsecore/i18n.c',
|
|
'pulsecore/idxset.c',
|
|
'pulsecore/arpa-inet.c',
|
|
'pulsecore/iochannel.c',
|
|
'pulsecore/ioline.c',
|
|
'pulsecore/ipacl.c',
|
|
'pulsecore/json.c',
|
|
'pulsecore/lock-autospawn.c',
|
|
'pulsecore/log.c',
|
|
'pulsecore/ratelimit.c',
|
|
'pulsecore/mcalign.c',
|
|
'pulsecore/memblock.c',
|
|
'pulsecore/memblockq.c',
|
|
'pulsecore/memchunk.c',
|
|
'pulsecore/native-common.c',
|
|
'pulsecore/once.c',
|
|
'pulsecore/packet.c',
|
|
'pulsecore/parseaddr.c',
|
|
'pulsecore/pdispatch.c',
|
|
'pulsecore/pid.c',
|
|
'pulsecore/pipe.c',
|
|
'pulsecore/memtrap.c',
|
|
'pulsecore/aupdate.c',
|
|
'pulsecore/proplist-util.c',
|
|
'pulsecore/pstream-util.c',
|
|
'pulsecore/pstream.c',
|
|
'pulsecore/queue.c',
|
|
'pulsecore/random.c',
|
|
'pulsecore/srbchannel.c',
|
|
'pulsecore/sample-util.c',
|
|
'pulsecore/shm.c',
|
|
'pulsecore/bitset.c',
|
|
'pulsecore/socket-client.c',
|
|
'pulsecore/socket-util.c',
|
|
'pulsecore/strbuf.c',
|
|
'pulsecore/strlist.c',
|
|
'pulsecore/tagstruct.c',
|
|
'pulsecore/time-smoother.c',
|
|
'pulsecore/time-smoother_2.c',
|
|
'pulsecore/tokenizer.c',
|
|
'pulsecore/usergroup.c',
|
|
'pulsecore/sndfile-util.c',
|
|
]
|
|
|
|
libpulsecommon_headers = [
|
|
'pulse/client-conf.h',
|
|
'pulse/error.h',
|
|
'pulse/fork-detect.h',
|
|
'pulse/format.h',
|
|
'pulse/mainloop-api.h',
|
|
'pulse/xmalloc.h',
|
|
'pulse/proplist.h',
|
|
'pulse/utf8.h',
|
|
'pulse/channelmap.h',
|
|
'pulse/sample.h',
|
|
'pulse/util.h',
|
|
'pulse/timeval.h',
|
|
'pulse/rtclock.h',
|
|
'pulse/volume.h',
|
|
'pulsecore/atomic.h',
|
|
'pulsecore/authkey.h',
|
|
'pulsecore/conf-parser.h',
|
|
'pulsecore/core-error.h',
|
|
'pulsecore/core-format.h',
|
|
'pulsecore/core-rtclock.h',
|
|
'pulsecore/core-util.h',
|
|
'pulsecore/creds.h',
|
|
'pulsecore/dynarray.h',
|
|
'pulsecore/endianmacros.h',
|
|
'pulsecore/fdsem.h',
|
|
'pulsecore/flist.h',
|
|
'pulsecore/g711.h',
|
|
'pulsecore/hashmap.h',
|
|
'pulsecore/i18n.h',
|
|
'pulsecore/idxset.h',
|
|
'pulsecore/arpa-inet.h',
|
|
'pulsecore/iochannel.h',
|
|
'pulsecore/ioline.h',
|
|
'pulsecore/ipacl.h',
|
|
'pulsecore/json.h',
|
|
'pulsecore/llist.h',
|
|
'pulsecore/lock-autospawn.h',
|
|
'pulsecore/log.h',
|
|
'pulsecore/ratelimit.h',
|
|
'pulsecore/macro.h',
|
|
'pulsecore/mcalign.h',
|
|
'pulsecore/mem.h',
|
|
'pulsecore/memblock.h',
|
|
'pulsecore/memblockq.h',
|
|
'pulsecore/memchunk.h',
|
|
'pulsecore/mutex.h',
|
|
'pulsecore/native-common.h',
|
|
'pulsecore/once.h',
|
|
'pulsecore/packet.h',
|
|
'pulsecore/parseaddr.h',
|
|
'pulsecore/pdispatch.h',
|
|
'pulsecore/pid.h',
|
|
'pulsecore/pipe.h',
|
|
'pulsecore/memtrap.h',
|
|
'pulsecore/aupdate.h',
|
|
'pulsecore/proplist-util.h',
|
|
'pulsecore/pstream-util.h',
|
|
'pulsecore/pstream.h',
|
|
'pulsecore/queue.h',
|
|
'pulsecore/random.h',
|
|
'pulsecore/refcnt.h',
|
|
'pulsecore/srbchannel.h',
|
|
'pulsecore/sample-util.h',
|
|
'pulsecore/semaphore.h',
|
|
'pulsecore/shm.h',
|
|
'pulsecore/bitset.h',
|
|
'pulsecore/socket-client.h',
|
|
'pulsecore/socket-util.h',
|
|
'pulsecore/strbuf.h',
|
|
'pulsecore/strlist.h',
|
|
'pulsecore/tagstruct.h',
|
|
'pulsecore/thread.h',
|
|
'pulsecore/time-smoother.h',
|
|
'pulsecore/time-smoother_2.h',
|
|
'pulsecore/tokenizer.h',
|
|
'pulsecore/usergroup.h',
|
|
'pulsecore/sndfile-util.h',
|
|
'pulsecore/socket.h',
|
|
]
|
|
|
|
if dbus_dep.found()
|
|
libpulsecommon_sources += [
|
|
'pulsecore/dbus-util.c',
|
|
'pulsecore/rtkit.c',
|
|
]
|
|
libpulsecommon_headers += [
|
|
'pulsecore/dbus-util.h',
|
|
'pulsecore/rtkit.h',
|
|
]
|
|
endif
|
|
|
|
if x11_dep.found()
|
|
libpulsecommon_sources += [
|
|
'pulse/client-conf-x11.c',
|
|
'pulsecore/x11prop.c',
|
|
]
|
|
libpulsecommon_headers += [
|
|
'pulse/client-conf-x11.h',
|
|
'pulsecore/x11prop.h',
|
|
]
|
|
endif
|
|
|
|
# FIXME: Do non-POSIX thread things
|
|
if host_machine.system() == 'windows'
|
|
libpulsecommon_sources += [
|
|
'pulsecore/mutex-win32.c',
|
|
'pulsecore/poll-win32.c',
|
|
'pulsecore/semaphore-win32.c',
|
|
'pulsecore/thread-win32.c',
|
|
]
|
|
else
|
|
libpulsecommon_sources += [
|
|
'pulsecore/mutex-posix.c',
|
|
'pulsecore/poll-posix.c',
|
|
'pulsecore/thread-posix.c',
|
|
]
|
|
if host_machine.system() == 'darwin'
|
|
libpulsecommon_sources += ['pulsecore/semaphore-osx.c']
|
|
else
|
|
libpulsecommon_sources += ['pulsecore/semaphore-posix.c']
|
|
endif
|
|
endif
|
|
# FIXME: Do SIMD things
|
|
|
|
if not get_option('client')
|
|
libpulsecommon_dep = cc.find_library('pulsecommon-' + pa_version_major_minor, dirs : privlibdir, required : true)
|
|
libpulse_dep = dependency('libpulse', required : true)
|
|
libpulse_simple_dep = dependency('libpulse-simple', required : true)
|
|
else
|
|
libpulsecommon = shared_library('pulsecommon-' + pa_version_major_minor,
|
|
libpulsecommon_sources,
|
|
libpulsecommon_headers,
|
|
include_directories : [configinc, topinc],
|
|
c_args : [pa_c_args],
|
|
link_args : [nodelete_link_args],
|
|
install : true,
|
|
install_dir : privlibdir,
|
|
dependencies : [
|
|
libm_dep, thread_dep, dl_dep, shm_dep, iconv_dep, sndfile_dep, dbus_dep,
|
|
x11_dep, libsystemd_dep, glib_dep.partial_dependency(compile_args: true),
|
|
gtk_dep.partial_dependency(compile_args: true), asyncns_dep, libintl_dep,
|
|
platform_dep, platform_socket_dep, execinfo_dep, libatomic_ops_dep,
|
|
],
|
|
implicit_include_directories : false)
|
|
|
|
libpulsecommon_dep = declare_dependency(link_with: libpulsecommon)
|
|
|
|
subdir('pulse')
|
|
endif
|
|
|
|
if get_option('daemon')
|
|
subdir('pulsecore')
|
|
subdir('daemon')
|
|
subdir('modules')
|
|
endif
|
|
if get_option('tests')
|
|
subdir('tests')
|
|
endif
|
|
subdir('utils')
|