From 5a6f83ed600757a2850ef3c83c2daf950decb5c8 Mon Sep 17 00:00:00 2001 From: "Stefan K. Berg" Date: Wed, 2 Dec 2015 16:27:41 +0100 Subject: Support for selecting which plugins to build In order to cut the build time for unofficial builds, this change supports setting the environment variable "BUILD_FUEL_PLUGINS" prior to building. Only the plugin targets from fuel/build/f_isoroot/Makefile that are specified will then be built. In order to completely disable the building of plugins, the environment variable is set to " ". When using this functionality, the resulting iso file will be prepended with the prefix "unofficial-" to clearly indiciate that this is not a full build. Change-Id: Ib0a914ed6577f54f31b056a752691316302081dc Signed-off-by: Stefan K. Berg --- build/Makefile | 6 ++++++ build/docker/runcontext | 2 +- build/f_isoroot/Makefile | 12 +++++++++++- 3 files changed, 18 insertions(+), 2 deletions(-) (limited to 'build') diff --git a/build/Makefile b/build/Makefile index 6e7041dc0..85da6eb29 100644 --- a/build/Makefile +++ b/build/Makefile @@ -22,7 +22,13 @@ export ISOSRC = file:$(shell pwd)/fuel-7.0.iso export ISOCACHE = $(shell pwd)/$(shell basename $(ISOSRC)) export PRODNO = "OPNFV_BGS" export REVSTATE = "P0000" + +ifdef BUILD_FUEL_PLUGINS +$(warning Overriding plugin build selection to $(BUILD_FUEL_PLUGINS)) +export NEWISO = $(shell pwd)/release/unofficial-opnfv-${REVSTATE}.iso +else export NEWISO = $(shell pwd)/release/opnfv-${REVSTATE}.iso +endif # Note! Invoke with "make REVSTATE=RXXXX all" to make release build! # Invoke with ICOCACHE=/full/path/to/iso if cached ISO is in non-standard location. diff --git a/build/docker/runcontext b/build/docker/runcontext index f9065a01f..b442deeed 100755 --- a/build/docker/runcontext +++ b/build/docker/runcontext @@ -111,7 +111,7 @@ if [ -n "$CACHEBASE" ]; then fi fi -RUN_CONTEXT_OPT="--cidfile $CID_FILE --privileged=true --rm -e HOME=$HOME -e CACHEDEBUG -e CACHETRANSPORT -e CACHEMAXAGE -e CACHEBASE -u $USER_ID:$GROUP_ID -w $PWD -v $GITROOT:$GITROOT $CACHEMOUNT" +RUN_CONTEXT_OPT="--cidfile $CID_FILE --privileged=true --rm -e HOME=$HOME -e CACHEDEBUG -e CACHETRANSPORT -e CACHEMAXAGE -e CACHEBASE -e BUILD_FUEL_PLUGINS -u $USER_ID:$GROUP_ID -w $PWD -v $GITROOT:$GITROOT $CACHEMOUNT" # Passing "debug" puts up an interactive bash shell if [ "$1" == "debug" ]; then diff --git a/build/f_isoroot/Makefile b/build/f_isoroot/Makefile index 84c17c0e3..a03134156 100644 --- a/build/f_isoroot/Makefile +++ b/build/f_isoroot/Makefile @@ -8,7 +8,17 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## -SUBDIRS = f_kscfg f_bootstrap f_repobuild f_odlpluginbuild f_qemupluginbuild f_ovs-nsh-dpdk-pluginbuild f_onosfwpluginbuild +# Add Fuel plugin build targets here +PLUGINS = f_odlpluginbuild f_qemupluginbuild f_ovs-nsh-dpdk-pluginbuild f_onosfwpluginbuild + +# If the BUILD_FUEL_PLUGINS environment variable is set, only build the plugins +# indicated therein. +ifdef BUILD_FUEL_PLUGINS +SUBDIRS = f_kscfg f_bootstrap f_repobuild $(BUILD_FUEL_PLUGINS) +$(warning Overriding plugin build selection to $(BUILD_FUEL_PLUGINS)) +else +SUBDIRS = f_kscfg f_bootstrap f_repobuild $(PLUGINS) +endif SUBCLEAN = $(addsuffix .clean,$(SUBDIRS)) .PHONY: all -- cgit 1.2.3-korg