From 5f43173209e99567e1427e0d9db05ae3ac28cfbe Mon Sep 17 00:00:00 2001 From: "Igor V. Kovalenko" Date: Fri, 5 Nov 2021 00:34:26 +0300 Subject: [PATCH] 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: --- meson.build | 4 +-- shell-completion/bash/meson.build | 28 +++++++++++++-------- shell-completion/bash/{pulseaudio => pactl} | 0 shell-completion/zsh/meson.build | 6 +++-- 4 files changed, 22 insertions(+), 16 deletions(-) rename shell-completion/bash/{pulseaudio => pactl} (100%) diff --git a/meson.build b/meson.build index e80de63b7..827dfe13f 100644 --- a/meson.build +++ b/meson.build @@ -837,9 +837,7 @@ if get_option('man') subdir('man') endif subdir('shell-completion/bash') -if get_option('client') - subdir('shell-completion/zsh') -endif +subdir('shell-completion/zsh') subdir('src') if get_option('client') subdir('vala') diff --git a/shell-completion/bash/meson.build b/shell-completion/bash/meson.build index 1d5a8cdab..fb406551b 100644 --- a/shell-completion/bash/meson.build +++ b/shell-completion/bash/meson.build @@ -3,27 +3,33 @@ if bashcompletiondir != 'no' if get_option('daemon') aliases += [ + 'pulseaudio', 'pacmd', '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 if get_option('client') - aliases += [ - 'pacat', - 'pactl', - 'padsp', - 'paplay', - 'parec', - 'parecord', - ] + aliases += [ + 'pacat', + 'padsp', + 'paplay', + 'parec', + 'parecord', + ] + install_data('pactl', install_dir : bashcompletiondir) endif - install_data('pulseaudio', install_dir : bashcompletiondir) - foreach alias : aliases 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) endforeach endif diff --git a/shell-completion/bash/pulseaudio b/shell-completion/bash/pactl similarity index 100% rename from shell-completion/bash/pulseaudio rename to shell-completion/bash/pactl diff --git a/shell-completion/zsh/meson.build b/shell-completion/zsh/meson.build index 489be569c..3f133b186 100644 --- a/shell-completion/zsh/meson.build +++ b/shell-completion/zsh/meson.build @@ -1,3 +1,5 @@ -if zshcompletiondir != 'no' - install_data('_pulseaudio', install_dir : zshcompletiondir) +if get_option('client') + if zshcompletiondir != 'no' + install_data('_pulseaudio', install_dir : zshcompletiondir) + endif endif