From e5140f5266c00397cc85a865c774e4962691561f Mon Sep 17 00:00:00 2001 From: Marvin Liu Date: Mon, 11 Apr 2016 16:50:31 +0800 Subject: [PATCH] examples/vm_power_manager: fix libvirt dependency check vm_power_manager utilize libvirt API virDomainGetVcpuPinInfo to retrieve domU vcpu information. This API is implemented from version 0.9.3. Suse11 SP3 32bit default libvirt version is 0.8.8. examples/vm_power_manager/channel_manager.c: channel_manager.c:117:3: error: implicit declaration of function 'virDomainGetVcpuPinInfo' Check and skip it from examples or raise an error when trying to compile without libvirt or with a too old libvirt. Fixes: e8ae9b662 ("examples/vm_power: channel manager and monitor in host") Signed-off-by: Marvin Liu Signed-off-by: Thomas Monjalon Acked-by: Bruce Richardson --- examples/Makefile | 8 +++++++- examples/vm_power_manager/Makefile | 6 ++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/examples/Makefile b/examples/Makefile index a8bc381c59..b28b30e739 100644 --- a/examples/Makefile +++ b/examples/Makefile @@ -87,6 +87,12 @@ DIRS-$(CONFIG_RTE_LIBRTE_VHOST) += vhost DIRS-$(CONFIG_RTE_LIBRTE_XEN_DOM0) += vhost_xen DIRS-y += vmdq DIRS-y += vmdq_dcb -DIRS-$(CONFIG_RTE_LIBRTE_POWER) += vm_power_manager +ifeq ($(CONFIG_RTE_LIBRTE_POWER), y) +ifeq ($(shell pkg-config --atleast-version=0.9.3 libvirt; echo $$?), 0) +DIRS-y += vm_power_manager +else +$(info vm_power_manager requires libvirt >= 0.9.3) +endif +endif include $(RTE_SDK)/mk/rte.extsubdir.mk diff --git a/examples/vm_power_manager/Makefile b/examples/vm_power_manager/Makefile index 113dbc43ff..59a964179e 100644 --- a/examples/vm_power_manager/Makefile +++ b/examples/vm_power_manager/Makefile @@ -29,6 +29,10 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +ifneq ($(shell pkg-config --atleast-version=0.9.3 libvirt; echo $$?), 0) +$(error vm_power_manager requires libvirt >= 0.9.3) +else + ifeq ($(RTE_SDK),) $(error "Please define RTE_SDK environment variable") endif @@ -57,3 +61,5 @@ CFLAGS_main.o += -Wno-return-type endif include $(RTE_SDK)/mk/rte.extapp.mk + +endif # libvirt check -- 2.20.1