mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-07-05 11:36:50 +00:00
make: add functions for checking build prerequisites
This patch introduces the following functions for Makefiles: check_dep_exec <exe> Check existence of the executable <exe> check_dep_pylib <lib> Check existence of the python library <lib> Calling and evaluting the functions will create a check_xxx target and add the target to the variable BUILD_DEPS. Thus it is sufficient to add the following to a Makefile for checking a number of build dependencies. include deps.mk $(eval $(call check_dep_exec,python)) $(eval $(call check_dep_pylib,Sphinx)) all: $(BUILD_DEPS) ... v4 -> v5: * No changes. v3 -> v4: * No changes. v2 -> v3: * No changes. v1 -> v2: * New in v2. Signed-off-by: Junjie Mao <junjie.mao@intel.com> Reviewed-by: Kevin Tian <kevin.tian@intel.com> Reviewed-by: Zhao Yakui <yakui.zhao@intel.com>
This commit is contained in:
parent
bce7ed1715
commit
10518de722
27
scripts/deps.mk
Normal file
27
scripts/deps.mk
Normal file
@ -0,0 +1,27 @@
|
||||
# check the existence of a specific executable
|
||||
# usage: check_dep_exec <executable name>
|
||||
define check_dep_exec =
|
||||
BUILD_DEPS += check_$(1)
|
||||
check_$(1):
|
||||
@if ! which $(1) > /dev/null; then \
|
||||
echo "******** Missing prerequisite tool ********"; \
|
||||
echo "Cannot find executable *$(1)*"; \
|
||||
echo "Please refer to the Getting Started Guide" \
|
||||
"for installation instructions"; \
|
||||
exit 1; \
|
||||
fi
|
||||
endef
|
||||
|
||||
# check the existence of a specific python library
|
||||
# usage: check_dep_pylib <library name>
|
||||
define check_dep_pylib =
|
||||
BUILD_DEPS += check_$(1)
|
||||
check_$(1):
|
||||
@if ! pip list 2>/dev/null | grep $(1) > /dev/null 2>&1; then \
|
||||
echo "******** Missing prerequisite tool ********"; \
|
||||
echo "The python library *$(1)* is not installed"; \
|
||||
echo "Please refer to the Getting Started Guide" \
|
||||
"for installation instructions"; \
|
||||
exit 1; \
|
||||
fi
|
||||
endef
|
Loading…
Reference in New Issue
Block a user