xenvirt: convert to use of PMD_REGISTER_DRIVER and fix linking
authorNeil Horman <nhorman@tuxdriver.com>
Mon, 21 Apr 2014 14:59:30 +0000 (10:59 -0400)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Tue, 20 May 2014 12:28:16 +0000 (14:28 +0200)
commit2c62588a533f3ca1dd10acb9521d3c24754d0c4d
tree40d96af7a067ad6df00c71278419bec2b10bc3b3
parent61934c0956d4816cf4bdb797f943264b9f476095
xenvirt: convert to use of PMD_REGISTER_DRIVER and fix linking

Convert the xenvirt driver to use the PMD_REGISTER_DRIVER macro.
This means that the test applications now have no reference to the xenvirt library
when building DSO's and must specify its use on the command line with the -d
option.  Static linking will still initalize the driver automatically.

A few notes:

xenvirt was unbuildable as of commit 4c39baf297d10c217e7d3e7370f26a1fede58308..
That commit neglected to include the rte_vdev.h header, so several structs were
left undefined.  This patch includes a fix for that as well.

Also, The linkage for xenvirt is broken in much the same way pmd_ring was, in
that the xenvirt pmd has a function that is called directly from applications
(the example being the testpmd application).  The function is
rte_mempool_gntalloc_create, and should clearly be moved into the rte_mempool
library, with the supporting code in the function implementation moved to a new
xenvirt library separate from the pmd.  This is a large undertaking that
detracts from the purpose of this series however, and so for now, I'm leaving
the linkage to the application in place, and will address this issue in a later
series

Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
lib/librte_pmd_xenvirt/rte_eth_xenvirt.c
mk/rte.app.mk