The detection of pcap as a dependency involves invoking pcap-config to get
parameters - something not possible in a cross-compilation environment.
Therefore we need to just look for the presence of the library in a
cross-compilation environment and assume if the library is present we can
compile and link against it.

Signed-off-by: Bruce Richardson <bruce.richard...@intel.com>
---
 drivers/net/pcap/meson.build | 21 +++++++++++++++------
 1 file changed, 15 insertions(+), 6 deletions(-)

diff --git a/drivers/net/pcap/meson.build b/drivers/net/pcap/meson.build
index 2051ccab0..36f997c39 100644
--- a/drivers/net/pcap/meson.build
+++ b/drivers/net/pcap/meson.build
@@ -29,13 +29,22 @@
 #   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 #   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-pcap_dep = dependency('pcap', required: false)
-if pcap_dep.found() == true
-       ext_deps += pcap_dep
-elif find_program('pcap-config', required: false).found() == true
-       ext_deps += cc.find_library('pcap')
+if meson.is_cross_build()
+       pcap_dep = cc.find_library('pcap', required: false)
+       if pcap_dep.found()
+               ext_deps += pcap_dep
+       else
+               build = false
+       endif
 else
-       build = false
+       pcap_dep = dependency('pcap', required: false)
+       if pcap_dep.found() == true
+               ext_deps += pcap_dep
+       elif find_program('pcap-config', required: false).found() == true
+               ext_deps += cc.find_library('pcap')
+       else
+               build = false
+       endif
 endif
 sources = files('rte_eth_pcap.c')
 pkgconfig_extra_libs += '-lpcap'
-- 
2.14.3

Reply via email to