build: fix for host clang and cross gcc
[dpdk.git] / lib / meson.build
index 73d6f25..fefb360 100644 (file)
@@ -9,13 +9,12 @@
 # given as a dep, no need to mention ring. This is especially true for the
 # core libs which are widely reused, so their deps are kept to a minimum.
 libraries = [ 'compat', # just a header, used for versioning
-       'eal', 'ring', 'mempool', 'mbuf', 'net', 'ether', 'pci', # core
+       'eal', 'ring', 'mempool', 'mbuf', 'net', 'kvargs', 'ethdev', 'pci', # core
        'metrics', # bitrate/latency stats depends on this
        'hash',    # efd depends on this
-       'kvargs',  # cryptodev depends on this
        'timer',   # eventdev depends on this
        'acl', 'bbdev', 'bitratestats', 'cfgfile',
-       'cmdline', 'cryptodev',
+       'cmdline', 'compressdev', 'cryptodev',
        'distributor', 'efd', 'eventdev',
        'gro', 'gso', 'ip_frag', 'jobstats',
        'kni', 'latencystats', 'lpm', 'member',
@@ -24,7 +23,7 @@ libraries = [ 'compat', # just a header, used for versioning
        # add pkt framework libs which use other libs from above
        'port', 'table', 'pipeline',
        # flow_classify lib depends on pkt framework table lib
-       'flow_classify']
+       'flow_classify', 'bpf']
 
 foreach l:libraries
        build = true
@@ -35,6 +34,10 @@ foreach l:libraries
        headers = []
        includes = []
        cflags = machine_args
+       if cc.has_argument('-Wno-format-truncation')
+           cflags += '-Wno-format-truncation'
+       endif
+
        objs = [] # other object files to link against, used e.g. for
                  # instruction-set optimized versions of code
 
@@ -96,7 +99,7 @@ foreach l:libraries
 
                        # then use pre-build objects to build shared lib
                        sources = []
-                       objs += static_lib.extract_all_objects()
+                       objs += static_lib.extract_all_objects(recursive: false)
                        version_map = '@0@/@1@/rte_@2@_version.map'.format(
                                        meson.current_source_dir(), dir_name, name)
                        shared_lib = shared_library(libname,