diff options
author | Padraig Connolly <padraig.connolly@intel.com> | 2016-11-29 17:17:20 +0000 |
---|---|---|
committer | Chris Luke <chris_luke@comcast.com> | 2017-01-09 15:20:49 +0000 |
commit | d995c757f05f78aa759b0a65c0a7e38088e690a9 (patch) | |
tree | 5055f3c18d184f20d949817f2a33e7e52006cf53 /Makefile | |
parent | 0d3c1cc7626ac39f25975ebf9d92ba903d470f79 (diff) |
vppctl: bash completion for vppctl commands
Added bash completion that will include all commands from build time
*Script takes list of commands generated by doxygen-siphon-list
*Configured doxygen-siphon makefile to generate just cli commands
*List of cli commands put in /usr/share/vpp
*Stopped siphon using doxygen bootstrap, uses main bootstrap instead
*Added rpm/deb check for installation of packages, separate from bootstrap
*NOTE: Once you have installed the vpp .deb/.rpm package you will have to
restart bash
Change-Id: Ie503e80d5177481f6e7dbe59378f2e0d76f29152
Signed-off-by: Padraig Connolly <padraig.connolly@intel.com>
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 46 |
1 files changed, 39 insertions, 7 deletions
@@ -32,8 +32,8 @@ endif DEB_DEPENDS = curl build-essential autoconf automake bison libssl-dev ccache DEB_DEPENDS += debhelper dkms git libtool libganglia1-dev libapr1-dev dh-systemd -DEB_DEPENDS += libconfuse-dev git-review exuberant-ctags cscope pkg-config -DEB_DEPENDS += python-dev python-virtualenv python-pip lcov chrpath autoconf +DEB_DEPENDS += libconfuse-dev git-review exuberant-ctags cscope pkg-config doxygen graphviz +DEB_DEPENDS += python-dev python-virtualenv python-pip python-pyparsing python-jinja2 lcov chrpath autoconf ifeq ($(OS_VERSION_ID),14.04) DEB_DEPENDS += openjdk-8-jdk-headless else @@ -41,9 +41,9 @@ else endif RPM_DEPENDS_GROUPS = 'Development Tools' -RPM_DEPENDS = redhat-lsb glibc-static java-1.8.0-openjdk-devel yum-utils +RPM_DEPENDS = redhat-lsb glibc-static java-1.8.0-openjdk-devel yum-utils doxygen graphviz RPM_DEPENDS += openssl-devel https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm apr-devel -RPM_DEPENDS += python-devel python-virtualenv lcov chrpath +RPM_DEPENDS += python-devel python-virtualenv pyparsing python-jinja2 lcov chrpath EPEL_DEPENDS = libconfuse-devel ganglia-devel ifneq ($(wildcard $(STARTUP_DIR)/startup.conf),) @@ -183,6 +183,35 @@ distversion: $(BR)/scripts/.version $(BR)/scripts/verdist ${BR} ${prefix}-$(shell $(BR)/scripts/version rpm-version) ${verstring} mv $(verstring).tar.gz $(BR)/rpm +deb-depends-check: +ifeq ($(OS_ID),ubuntu) + @MISSING=$$(apt-get install -y -qq -s $(DEB_DEPENDS) | grep "^Inst ") ; \ + if [ -n "$$MISSING" ] ; then \ + echo "\nPlease install missing packages: \n$$MISSING\n" ; \ + echo "by executing \"make install-dep\"\n" ; \ + exit 1 ; \ + fi; \ + exit 0 +endif + +rpm-depends-check: +ifeq ($(OS_ID),centos) + @RPM_DEPENDS_ARRAY=($(RPM_DEPENDS)) ; \ + for i in "$${!RPM_DEPENDS_ARRAY[@]}"; do \ + if ! yum list installed "$${RPM_DEPENDS_ARRAY[$$i]}" >/dev/null 2>&1; then \ + if ! [[ "$${RPM_DEPENDS_ARRAY[$$i]}" == *"://"* ]] ; then \ + MISSING="$$MISSING $${RPM_DEPENDS_ARRAY[$$i]}" ; \ + fi; \ + fi; \ + done; \ + if [ -n "$$MISSING" ] ; then \ + echo "\nPlease install missing packages: \n$$MISSING\n" ; \ + echo "by executing \"make install-dep\"\n" ; \ + exit 1 ; \ + fi; \ + exit 0 +endif + build: $(BR)/.bootstrap.ok $(call make,$(PLATFORM)_debug,vpp-install) @@ -286,10 +315,10 @@ build-vat: run-vat: @sudo $(BR)/install-$(PLATFORM)_debug-native/vpp/bin/vpp_api_test -pkg-deb: +pkg-deb: deb-depends-check doxygen-siphon-list $(call make,$(PLATFORM),install-deb) -pkg-rpm: dist +pkg-rpm: dist rpm-depends-check doxygen-siphon-list $(call make,$(PLATFORM),install-rpm) ctags: ctags.files @@ -321,7 +350,7 @@ endef .PHONY: bootstrap-doxygen doxygen wipe-doxygen -bootstrap-doxygen: +bootstrap-doxygen: deb-depends-check rpm-depends-check $(call make-doxy) doxygen: @@ -330,6 +359,9 @@ doxygen: wipe-doxygen: $(call make-doxy) +doxygen-siphon-list: + $(call make-doxy) + define banner @echo "========================================================================" @echo " $(1)" |