The bash completion files were the only reason pacman was not able to build as a non-root user. This patch adds the option to not install these files. This was needed for my use case, hopefully upstream someone else has a use for it as well. Signed-off-by: Wouter Wijsman <wwijsman@live.nl> --- meson_options.txt | 3 +++ scripts/meson.build | 44 +++++++++++++++++++++++--------------------- 2 files changed, 26 insertions(+), 21 deletions(-) diff --git a/meson_options.txt b/meson_options.txt index 4d8cc300..2927cd15 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -51,6 +51,9 @@ option('gpgme', type : 'feature', value : 'auto', option('i18n', type : 'boolean', value : true, description : 'enable localization of pacman, libalpm and scripts') +option('bash-completion', type : 'boolean', value : true, + description : 'install bash-completion files') + # tools option('file-seccomp', type: 'feature', value: 'auto', description: 'determine whether file is seccomp-enabled') diff --git a/scripts/meson.build b/scripts/meson.build index d2466523..12262e98 100644 --- a/scripts/meson.build +++ b/scripts/meson.build @@ -68,25 +68,27 @@ configure_file( output : '@BASENAME@', install_dir : join_paths(DATAROOTDIR, 'pkgconfig')) -custom_target( - 'bash_completion', - command : [ SCRIPT_EDITOR, '@INPUT@', '@OUTPUT@' ], - input : 'completion/bash_completion.in', - output : 'pacman', - install : true, - install_dir : BASHCOMPDIR) - -foreach symlink : ['pacman-key', 'makepkg'] - meson.add_install_script(MESON_MAKE_SYMLINK, - 'pacman', - join_paths(BASHCOMPDIR, symlink)) -endforeach +if get_option('bash-completion') + custom_target( + 'bash_completion', + command : [ SCRIPT_EDITOR, '@INPUT@', '@OUTPUT@' ], + input : 'completion/bash_completion.in', + output : 'pacman', + install : true, + install_dir : BASHCOMPDIR) -zsh_completion_dir = join_paths(DATAROOTDIR, 'zsh/site-functions') -custom_target( - 'zsh_completion', - command : [ SCRIPT_EDITOR, '@INPUT@', '@OUTPUT@' ], - input : 'completion/zsh_completion.in', - output : '_pacman', - install : true, - install_dir : zsh_completion_dir) + foreach symlink : ['pacman-key', 'makepkg'] + meson.add_install_script(MESON_MAKE_SYMLINK, + 'pacman', + join_paths(BASHCOMPDIR, symlink)) + endforeach + + zsh_completion_dir = join_paths(DATAROOTDIR, 'zsh/site-functions') + custom_target( + 'zsh_completion', + command : [ SCRIPT_EDITOR, '@INPUT@', '@OUTPUT@' ], + input : 'completion/zsh_completion.in', + output : '_pacman', + install : true, + install_dir : zsh_completion_dir) +endif -- 2.20.1