aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Shahaf <d.s@daniel.shahaf.name>2015-11-20 04:56:10 +0000
committerDaniel Stenberg <daniel@haxx.se>2015-11-24 22:22:01 +0100
commitbe0d4141af6de8380d24180eab316c898fcb27e1 (patch)
tree97ec45b8328f9f90619cd67692e74297c37b62f4
parent40c349ada92865faadd0de92fa5dc0d50ba67eb3 (diff)
build: Install zsh completion
Fixes #534 Closes #537
-rw-r--r--.gitignore1
-rw-r--r--Makefile.am2
-rw-r--r--configure.ac26
-rw-r--r--scripts/Makefile.am13
4 files changed, 41 insertions, 1 deletions
diff --git a/.gitignore b/.gitignore
index a2e7df8b8..183136a68 100644
--- a/.gitignore
+++ b/.gitignore
@@ -49,3 +49,4 @@ missing
mkinstalldirs
tags
test-driver
+scripts/_curl
diff --git a/Makefile.am b/Makefile.am
index bdcf4b5f3..397498889 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -140,7 +140,7 @@ CLEANFILES = $(VC6_LIBDSP) $(VC6_SRCDSP) $(VC7_LIBVCPROJ) $(VC7_SRCVCPROJ) \
bin_SCRIPTS = curl-config
-SUBDIRS = lib src include
+SUBDIRS = lib src include scripts
DIST_SUBDIRS = $(SUBDIRS) tests packages docs
pkgconfigdir = $(libdir)/pkgconfig
diff --git a/configure.ac b/configure.ac
index e51be4f93..4c14e382e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3031,6 +3031,31 @@ if test X"$want_h2" != Xno; then
fi
dnl **********************************************************************
+dnl Check for zsh completion path
+dnl **********************************************************************
+
+OPT_ZSH_FPATH=default
+AC_ARG_WITH(zsh-functions-dir,
+AC_HELP_STRING([--with-zsh-functions-dir=PATH],[Install zsh completions to PATH])
+AC_HELP_STRING([--without-zsh-functions-dir],[Do not install zsh completions]),
+ [OPT_ZSH_FPATH=$withval])
+case "$OPT_ZSH_FPATH" in
+ no)
+ dnl --without-zsh-functions-dir option used
+ ;;
+ default|yes)
+ dnl --with-zsh-functions-dir option used without path
+ ZSH_FUNCTIONS_DIR="$datarootdir/zsh/site-functions"
+ AC_SUBST(ZSH_FUNCTIONS_DIR)
+ ;;
+ *)
+ dnl --with-zsh-functions-dir option used with path
+ ZSH_FUNCTIONS_DIR="$withval"
+ AC_SUBST(ZSH_FUNCTIONS_DIR)
+ ;;
+esac
+
+dnl **********************************************************************
dnl Back to "normal" configuring
dnl **********************************************************************
@@ -3797,6 +3822,7 @@ AC_CONFIG_FILES([Makefile \
include/curl/Makefile \
src/Makefile \
lib/Makefile \
+ scripts/Makefile \
lib/libcurl.vers \
tests/Makefile \
tests/certs/Makefile \
diff --git a/scripts/Makefile.am b/scripts/Makefile.am
new file mode 100644
index 000000000..6978d4194
--- /dev/null
+++ b/scripts/Makefile.am
@@ -0,0 +1,13 @@
+ZSH_FUNCTIONS_DIR = @ZSH_FUNCTIONS_DIR@
+PERL = @PERL@
+
+ZSH_COMPLETION_FUNCTION_FILENAME = _curl
+
+all-local: $(ZSH_COMPLETION_FUNCTION_FILENAME)
+
+$(ZSH_COMPLETION_FUNCTION_FILENAME): zsh.pl
+ $(PERL) $< > $@
+
+install-data-local:
+ $(MKDIR_P) $(ZSH_FUNCTIONS_DIR)
+ $(INSTALL_DATA) $(ZSH_COMPLETION_FUNCTION_FILENAME) $(ZSH_FUNCTIONS_DIR)/$(ZSH_COMPLETION_FUNCTION_FILENAME)