build-sys: meson: Rearrange shell completion between daemon and client

Rename bash completion file to pactl and install it with client build.
Completions specific to daemon are now just symlinks, create target directory
first to install them.

Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/659>
This commit is contained in:
Igor V. Kovalenko 2021-11-05 00:34:26 +03:00 committed by PulseAudio Marge Bot
parent 80c0a497d3
commit 5f43173209
4 changed files with 22 additions and 16 deletions

View file

@ -837,9 +837,7 @@ if get_option('man')
subdir('man') subdir('man')
endif endif
subdir('shell-completion/bash') subdir('shell-completion/bash')
if get_option('client') subdir('shell-completion/zsh')
subdir('shell-completion/zsh')
endif
subdir('src') subdir('src')
if get_option('client') if get_option('client')
subdir('vala') subdir('vala')

View file

@ -3,27 +3,33 @@ if bashcompletiondir != 'no'
if get_option('daemon') if get_option('daemon')
aliases += [ aliases += [
'pulseaudio',
'pacmd', 'pacmd',
'pasuspender', 'pasuspender',
] ]
# Create target directory for symlinks
if meson.version().version_compare('>= 0.60.0')
install_emptydir(bashcompletiondir)
else
meson.add_install_script('sh', '-c', 'mkdir -p $DESTDIR@0@'.format(bashcompletiondir))
endif
endif endif
if get_option('client') if get_option('client')
aliases += [ aliases += [
'pacat', 'pacat',
'pactl', 'padsp',
'padsp', 'paplay',
'paplay', 'parec',
'parec', 'parecord',
'parecord', ]
] install_data('pactl', install_dir : bashcompletiondir)
endif endif
install_data('pulseaudio', install_dir : bashcompletiondir)
foreach alias : aliases foreach alias : aliases
dst = join_paths(bashcompletiondir, alias) dst = join_paths(bashcompletiondir, alias)
cmd = 'ln -fs @0@ $DESTDIR@1@'.format('pulseaudio', dst) cmd = 'ln -fs @0@ $DESTDIR@1@'.format('pactl', dst)
meson.add_install_script('sh', '-c', cmd) meson.add_install_script('sh', '-c', cmd)
endforeach endforeach
endif endif

View file

@ -1,3 +1,5 @@
if zshcompletiondir != 'no' if get_option('client')
install_data('_pulseaudio', install_dir : zshcompletiondir) if zshcompletiondir != 'no'
install_data('_pulseaudio', install_dir : zshcompletiondir)
endif
endif endif