pulseaudio/src/meson.build

206 lines
4.9 KiB
Meson
Raw Normal View History

libpulsecommon_sources = [
'pulse/client-conf.c',
'pulse/error.c',
'pulse/fork-detect.c',
'pulse/format.c',
'pulse/json.c',
'pulse/mainloop-api.c',
message-params: Allow parameter strings to contain escaped curly braces The patch adds the possibility to escape curly braces within parameter strings and introduces several new functions that can be used for writing parameters. For writing, the structure pa_message_params, which is a wrapper for pa_strbuf has been created. Following new write functions are available: pa_message_params_new() - creates a new pa_message_params structure pa_message_params_free() - frees a pa_message_params structure pa_message_param_to_string_free() - converts a pa_message_param to string and frees the structure pa_message_params_begin_list() - starts a list pa_message_params_end_list() - ends a list pa_message_params_write_string() - writes a string to a pa_message_params structure pa_message_params_write_raw() - writes a raw string to a pa_message_params structure For string parameters that contain curly braces or backslashes, those characters will be escaped when using pa_message_params_write_string(), while write_raw() will put the string into the buffer without any changes. For reading, pa_message_params_read_string() reverts the changes that pa_message_params_write_string() might have introduced. The patch also adds more restrictions on the object path name. Now only alphanumeric characters and one of "_", ".", "-" and "/" are allowed. The path name may not end with a / or contain a double slash. If the user specifies a trailing / when sending a message, it will be silently removed. Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/51>
2020-01-14 13:24:16 +01:00
'pulse/message-params.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/lock-autospawn.c',
'pulsecore/log.c',
'pulsecore/ratelimit.c',
'pulsecore/mcalign.c',
'pulsecore/memblock.c',
'pulsecore/memblockq.c',
'pulsecore/memchunk.c',
'pulsecore/mutex-posix.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/semaphore-posix.c',
'pulsecore/shm.c',
'pulsecore/bitset.c',
'pulsecore/socket-client.c',
'pulsecore/socket-server.c',
'pulsecore/socket-util.c',
'pulsecore/strbuf.c',
'pulsecore/strlist.c',
'pulsecore/tagstruct.c',
'pulsecore/thread-posix.c',
'pulsecore/time-smoother.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/json.h',
'pulse/mainloop-api.h',
message-params: Allow parameter strings to contain escaped curly braces The patch adds the possibility to escape curly braces within parameter strings and introduces several new functions that can be used for writing parameters. For writing, the structure pa_message_params, which is a wrapper for pa_strbuf has been created. Following new write functions are available: pa_message_params_new() - creates a new pa_message_params structure pa_message_params_free() - frees a pa_message_params structure pa_message_param_to_string_free() - converts a pa_message_param to string and frees the structure pa_message_params_begin_list() - starts a list pa_message_params_end_list() - ends a list pa_message_params_write_string() - writes a string to a pa_message_params structure pa_message_params_write_raw() - writes a raw string to a pa_message_params structure For string parameters that contain curly braces or backslashes, those characters will be escaped when using pa_message_params_write_string(), while write_raw() will put the string into the buffer without any changes. For reading, pa_message_params_read_string() reverts the changes that pa_message_params_write_string() might have introduced. The patch also adds more restrictions on the object path name. Now only alphanumeric characters and one of "_", ".", "-" and "/" are allowed. The path name may not end with a / or contain a double slash. If the user specifies a trailing / when sending a message, it will be silently removed. Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/51>
2020-01-14 13:24:16 +01:00
'pulse/message-params.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/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-server.h',
'pulsecore/socket-util.h',
'pulsecore/strbuf.h',
'pulsecore/strlist.h',
'pulsecore/tagstruct.h',
'pulsecore/thread.h',
'pulsecore/time-smoother.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
# FIXME: Do SIMD things
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, gtk_dep, asyncns_dep, libintl_dep,
],
implicit_include_directories : false)
libpulsecommon_dep = declare_dependency(link_with: libpulsecommon)
subdir('pulse')
subdir('pulsecore')
subdir('daemon')
subdir('modules')
if get_option('tests')
subdir('tests')
endif
subdir('utils')