[pacman-dev] [PATCH] Move bash/zsh completion out of contrib

Allan McRae allan at archlinux.org
Mon Oct 10 00:36:26 UTC 2016


Signed-off-by: Allan McRae <allan at archlinux.org>
---

The "remove contrib" patch has been rebased on top of this.


 contrib/Makefile.am                                | 22 ++--------------
 scripts/Makefile.am                                | 29 +++++++++++++++++++++-
 scripts/completion/.gitignore                      |  2 ++
 {contrib => scripts/completion}/bash_completion.in |  0
 {contrib => scripts/completion}/zsh_completion.in  |  0
 5 files changed, 32 insertions(+), 21 deletions(-)
 create mode 100644 scripts/completion/.gitignore
 rename {contrib => scripts/completion}/bash_completion.in (100%)
 rename {contrib => scripts/completion}/zsh_completion.in (100%)

diff --git a/contrib/Makefile.am b/contrib/Makefile.am
index 897cd85..73df92e 100644
--- a/contrib/Makefile.am
+++ b/contrib/Makefile.am
@@ -28,14 +28,9 @@ OURSCRIPTS = \
 	$(BASHSCRIPTS) \
 	$(OTHERSCRIPTS)
 
-OURFILES = \
-	bash_completion \
-	zsh_completion
-
 EXTRA_DIST = \
 	PKGBUILD.vim \
 	bacman.sh.in \
-	bash_completion.in \
 	checkupdates.sh.in \
 	paccache.sh.in \
 	paclog-pkglist.sh.in \
@@ -46,11 +41,10 @@ EXTRA_DIST = \
 	rankmirrors.sh.in \
 	updpkgsums.sh.in \
 	vimprojects \
-	zsh_completion.in \
 	README
 
 # Files that should be removed, but which Automake does not know.
-MOSTLYCLEANFILES = $(OURSCRIPTS) $(OURFILES) *.tmp
+MOSTLYCLEANFILES = $(OURSCRIPTS) *.tmp
 
 if USE_GIT_VERSION
 GIT_VERSION := $(shell sh -c 'git describe --abbrev=4 --dirty | sed s/^v//')
@@ -85,20 +79,9 @@ $(OURFILES): Makefile
 	$(AM_V_at)chmod a-w $@.tmp
 	$(AM_V_at)mv $@.tmp $@
 
-all-am: $(OURSCRIPTS) $(OURFILES)
-
-install-data-local:
-	$(MKDIR_P) $(DESTDIR)$(sysconfdir)/bash_completion.d/
-	$(INSTALL_DATA) bash_completion $(DESTDIR)$(sysconfdir)/bash_completion.d/pacman
-	$(MKDIR_P) $(DESTDIR)$(datarootdir)/zsh/site-functions/
-	$(INSTALL_DATA) zsh_completion $(DESTDIR)$(datarootdir)/zsh/site-functions/_pacman
-
-uninstall-local:
-	$(RM) $(DESTDIR)$(sysconfdir)/bash_completion.d/pacman
-	$(RM) $(DESTDIR)$(datarootdir)/zsh/site-functions/_pacman
+all-am: $(OURSCRIPTS)
 
 bacman: $(srcdir)/bacman.sh.in
-bash_completion: $(srcdir)/bash_completion.in
 checkupdates: $(srcdir)/checkupdates.sh.in
 paccache: $(srcdir)/paccache.sh.in $(top_srcdir)/scripts/library/parseopts.sh $(top_srcdir)/scripts/library/size_to_human.sh
 pacdiff: $(srcdir)/pacdiff.sh.in
@@ -108,6 +91,5 @@ pacscripts: $(srcdir)/pacscripts.sh.in
 pacsearch: $(srcdir)/pacsearch.in
 rankmirrors: $(srcdir)/rankmirrors.sh.in
 updpkgsums: $(srcdir)/updpkgsums.sh.in
-zsh_completion: $(srcdir)/zsh_completion.in
 
 # vim:set noet:
diff --git a/scripts/Makefile.am b/scripts/Makefile.am
index 8662496..8278b6f 100644
--- a/scripts/Makefile.am
+++ b/scripts/Makefile.am
@@ -26,6 +26,7 @@ EXTRA_DIST = \
 	pacman-key.sh.in \
 	pkgdelta.sh.in \
 	repo-add.sh.in \
+	$(COMPLETION_DIST) \
 	$(LIBRARY) \
 	$(LIBMAKEPKG_DIST)
 
@@ -102,8 +103,15 @@ LIBMAKEPKG_DIST = \
 	$(LIBMAKEPKG) \
 	$(addsuffix .in, $(LIBMAKEPKG_IN))
 
+COMPLETION_IN = \
+	completion/bash_completion \
+	completion/zsh_completion
+
+COMPLETION_DIST = \
+	$(addsuffix .in, $(COMPLETION_IN))
+
 # Files that should be removed, but which Automake does not know.
-MOSTLYCLEANFILES = $(bin_SCRIPTS) $(LIBMAKEPKG_IN)
+MOSTLYCLEANFILES = $(bin_SCRIPTS) $(LIBMAKEPKG_IN) $(COMPLETION_IN)
 
 clean-local:
 	$(AM_V_at)$(RM) -r .lib
@@ -157,6 +165,14 @@ $(LIBMAKEPKG_IN): %: %.in Makefile
 	$(AM_V_at)chmod a-w $@
 	@$(BASH_SHELL) -O extglob -n $@
 
+$(COMPLETION_IN): %: %.in Makefile
+	$(AM_V_at)$(RM) $@
+	$(AM_V_at)$(MKDIR_P) $(dir $@)
+	$(AM_V_GEN)$(edit) $(srcdir)/$@.in >$@
+	$(AM_V_at)chmod a-w $@
+
+all-am: $(COMPLETION_IN)
+
 makepkg: \
 	$(srcdir)/makepkg.sh.in \
 	$(srcdir)/makepkg-wrapper.sh.in \
@@ -213,6 +229,16 @@ makepkg-wrapper: \
 	$(AM_V_at)chmod +x,a-w $@
 	$(AM_V_at)$(LN_S) makepkg-wrapper makepkg
 
+install-data-local:
+	$(MKDIR_P) $(DESTDIR)$(sysconfdir)/bash_completion.d/
+	$(INSTALL_DATA) completion/bash_completion $(DESTDIR)$(sysconfdir)/bash_completion.d/pacman
+	$(MKDIR_P) $(DESTDIR)$(datarootdir)/zsh/site-functions/
+	$(INSTALL_DATA) completion/zsh_completion $(DESTDIR)$(datarootdir)/zsh/site-functions/_pacman
+
+uninstall-local:
+	$(RM) $(DESTDIR)$(sysconfdir)/bash_completion.d/pacman
+	$(RM) $(DESTDIR)$(datarootdir)/zsh/site-functions/_pacman
+
 install-exec-hook:
 	cd $(DESTDIR)$(bindir) && \
 		$(RM) makepkg makepkg-wrapper
@@ -247,4 +273,5 @@ uninstall-hook:
 		$(RM) -r $(DESTDIR)$(libmakepkgdir)/$$dir; \
 	done
 
+
 # vim:set noet:
diff --git a/scripts/completion/.gitignore b/scripts/completion/.gitignore
new file mode 100644
index 0000000..881bfd1
--- /dev/null
+++ b/scripts/completion/.gitignore
@@ -0,0 +1,2 @@
+bash_completion
+zsh_completion
diff --git a/contrib/bash_completion.in b/scripts/completion/bash_completion.in
similarity index 100%
rename from contrib/bash_completion.in
rename to scripts/completion/bash_completion.in
diff --git a/contrib/zsh_completion.in b/scripts/completion/zsh_completion.in
similarity index 100%
rename from contrib/zsh_completion.in
rename to scripts/completion/zsh_completion.in
-- 
2.10.0


More information about the pacman-dev mailing list