aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Schwartz <eschwartz@archlinux.org>2019-04-02 20:43:29 -0400
committerDaniel Gustafsson <daniel@yesql.se>2019-04-05 13:26:46 +0200
commit55734f3a27c2d495f724ea50d196fc9d9a91966b (patch)
treeb352f73f958946991985b3594e13c80885111a68
parentab5a6cf6039f5a478195ebe8d92b7eccd271fda8 (diff)
configure: fix default location for fish completions
Fish defines a vendor completions directory for completions that are not installed as part of the fish project itself, and the vendor completions are preferred if they exist. This prevents trying to overwrite the builtin curl.fish completion (or creating file conflicts in distro packaging). Prefer the pkg-config defined location exported by fish, if it can be found, and fall back to the correct directory defined by most systems. Closes #3723 Reviewed-by: Daniel Gustafsson
-rwxr-xr-xconfigure.ac7
1 files changed, 6 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index d8a4736e5..00fef9489 100755
--- a/configure.ac
+++ b/configure.ac
@@ -3479,7 +3479,12 @@ case "$OPT_FISH_FPATH" in
;;
default|yes)
dnl --with-fish-functions-dir option used without path
- FISH_FUNCTIONS_DIR="$datarootdir/fish/completions"
+ CURL_CHECK_PKGCONFIG(fish)
+ if test "$PKGCONFIG" != "no" ; then
+ FISH_FUNCTIONS_DIR="$($PKGCONFIG --variable completionsdir fish)"
+ else
+ FISH_FUNCTIONS_DIR="$datarootdir/fish/vendor_completions.d"
+ fi
AC_SUBST(FISH_FUNCTIONS_DIR)
;;
*)