From a7f45bea350ed5512ee70b775ca55eaf8415a53a Mon Sep 17 00:00:00 2001 From: Wei Jiangang Date: Mon, 16 May 2016 14:33:55 +0200 Subject: [PATCH] Makefile: implement make-requirements-plugins MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Support `make requirements-plugins` to walk all sub-directories like the same way `make link` works. Signed-off-by: Wei Jiangang Signed-off-by: Lukáš Doktor --- Makefile | 6 ++++++ docs/source/ContributionGuide.rst | 10 +++++----- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 7b54534a..39f2ac50 100644 --- a/Makefile +++ b/Makefile @@ -36,6 +36,7 @@ all: @echo "Package requirements related targets" @echo "requirements: Install runtime requirements" @echo "requirements-selftests: Install runtime and selftests requirements" + @echo "requirements-plugins: Install plugins requirements" @echo @echo "Platform independent distribution/installtion related targets:" @echo "source: Create source package" @@ -127,6 +128,11 @@ requirements: requirements-selftests: requirements - pip install -r requirements-selftests.txt +requirements-plugins: requirements + for MAKEFILE in $(AVOCADO_PLUGINS);\ + do AVOCADO_DIRNAME=$(AVOCADO_DIRNAME) make -C $$MAKEFILE requirements &>/dev/null && echo ">> DONE $$MAKEFILE" || echo ">> SKIP $$MAKEFILE";\ + done + smokecheck: ./scripts/avocado run passtest diff --git a/docs/source/ContributionGuide.rst b/docs/source/ContributionGuide.rst index a1d2413d..45098883 100644 --- a/docs/source/ContributionGuide.rst +++ b/docs/source/ContributionGuide.rst @@ -25,17 +25,17 @@ available). Avocado supports various plugins, which are distributed as separate projects, for example "avocado-vt" and "avocado-virt". These also need to be deployed and linked in order to work properly with the avocado from -sources (installed version works out of the box). To simplify this -one can use `make link` Makefile target. The prerequisite is that you need -to put all the projects in the same parent directory. Then by running -`make link` inside the main avocado project you link and develop the -separated projects as well as avocado itself. The workflow could be:: +sources (installed version works out of the box). To simplify this you can +use `make requirements-plugins` from the main avocado project to install +requirements of the plugins and `make link` to link and develop the +plugins. The workflow could be:: $ cd $AVOCADO_PROJECTS_DIR $ git clone $AVOCADO_GIT $ git clone $AVOCADO_PROJECT2 $ # Add more projects $ cd avocado # go into the main avocado project dir + $ make requirements-plugins $ make link You should see the process and status for each directory. -- GitLab