[PATCH v4 3/9] build: make most device classes optional
Bruce Richardson
bruce.richardson at intel.com
Fri Jun 23 17:07:02 CEST 2023
Apart from ethdev and cryptodev, which have lots of components and tests
which depend on them, we can make the device class libraries optional
without too much work.
This patch marks:
* bbdev,
* compressdev,
* dmadev,
* eventdev,
* mldev,
* rawdev,
* regexdev
optional, and ensures that DPDK - including tests - can be built with
these components disabled.
Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
Acked-by: Morten Brørup <mb at smartsharesystems.com>
---
app/test/meson.build | 41 ++++++++++++++++++++++++++---------------
lib/meson.build | 7 +++++++
2 files changed, 33 insertions(+), 15 deletions(-)
diff --git a/app/test/meson.build b/app/test/meson.build
index 3e0a2360a3..ad7be379b0 100644
--- a/app/test/meson.build
+++ b/app/test/meson.build
@@ -41,19 +41,12 @@ test_sources = files(
'test_devargs.c',
'test_distributor.c',
'test_distributor_perf.c',
- 'test_dmadev.c',
- 'test_dmadev_api.c',
'test_eal_flags.c',
'test_eal_fs.c',
'test_efd.c',
'test_efd_perf.c',
'test_errno.c',
'test_ethdev_link.c',
- 'test_event_crypto_adapter.c',
- 'test_event_eth_rx_adapter.c',
- 'test_event_ring.c',
- 'test_event_timer_adapter.c',
- 'test_eventdev.c',
'test_external_mem.c',
'test_fbarray.c',
'test_fib.c',
@@ -103,7 +96,6 @@ test_sources = files(
'test_power_intel_uncore.c',
'test_prefetch.c',
'test_rand_perf.c',
- 'test_rawdev.c',
'test_rcu_qsbr.c',
'test_rcu_qsbr_perf.c',
'test_reciprocal_division.c',
@@ -127,7 +119,6 @@ test_sources = files(
'test_sched.c',
'test_security.c',
'test_security_inline_macsec.c',
- 'test_security_inline_proto.c',
'test_seqlock.c',
'test_service_cores.c',
'test_spinlock.c',
@@ -186,7 +177,6 @@ fast_tests = [
['eal_fs_autotest', true, true],
['errno_autotest', true, true],
['ethdev_link_status', true, true],
- ['event_ring_autotest', true, true],
['fib_autotest', true, true],
['fib6_autotest', true, true],
['func_reentrancy_autotest', false, true],
@@ -232,7 +222,6 @@ fast_tests = [
['version_autotest', true, true],
['crc_autotest', true, true],
['distributor_autotest', false, true],
- ['eventdev_common_autotest', true, true],
['fbarray_autotest', true, true],
['hash_readwrite_func_autotest', false, true],
['ipsec_autotest', true, true],
@@ -319,7 +308,6 @@ driver_test_names = [
'cryptodev_sw_snow3g_autotest',
'cryptodev_sw_zuc_autotest',
'cryptodev_uadk_autotest',
- 'dmadev_autotest',
]
dump_test_names = []
@@ -357,6 +345,25 @@ if dpdk_conf.has('RTE_EVENT_SKELETON')
test_deps += 'event_skeleton'
endif
+if dpdk_conf.has('RTE_LIB_DMADEV')
+ test_sources += ['test_dmadev.c', 'test_dmadev_api.c']
+ driver_test_names += 'dmadev_autotest'
+endif
+if dpdk_conf.has('RTE_LIB_EVENTDEV')
+ test_sources += [
+ 'test_event_eth_rx_adapter.c',
+ 'test_event_ring.c',
+ 'test_event_timer_adapter.c',
+ 'test_eventdev.c',
+ ]
+ fast_tests += [
+ ['event_ring_autotest', true, true],
+ ['eventdev_common_autotest', true, true],
+ ]
+ if dpdk_conf.has('RTE_LIB_CRYPTODEV')
+ test_sources += 'test_event_crypto_adapter.c'
+ endif
+endif
if dpdk_conf.has('RTE_LIB_FLOW_CLASSIFY')
test_sources += 'test_flow_classify.c'
fast_tests += [['flow_classify_autotest', false, true]]
@@ -402,15 +409,18 @@ if dpdk_conf.has('RTE_NET_BOND')
driver_test_names += 'link_bonding_mode4_autotest'
endif
endif
-if dpdk_conf.has('RTE_LIB_EVENTDEV') and dpdk_conf.has('RTE_NET_RING')
+if dpdk_conf.has('RTE_NET_RING')
test_deps += 'net_ring'
test_sources += 'test_pmd_ring_perf.c'
test_sources += 'test_pmd_ring.c'
- test_sources += 'test_event_eth_tx_adapter.c'
test_sources += 'sample_packet_forward.c'
fast_tests += [['ring_pmd_autotest', true, true]]
perf_test_names += 'ring_pmd_perf_autotest'
- fast_tests += [['event_eth_tx_adapter_autotest', false, true]]
+ if dpdk_conf.has('RTE_LIB_EVENTDEV')
+ test_sources += 'test_event_eth_tx_adapter.c'
+ test_sources += 'test_security_inline_proto.c'
+ fast_tests += [['event_eth_tx_adapter_autotest', false, true]]
+ endif
if dpdk_conf.has('RTE_LIB_BITRATESTATS')
test_sources += 'test_bitratestats.c'
fast_tests += [['bitratestats_autotest', true, true]]
@@ -430,6 +440,7 @@ if dpdk_conf.has('RTE_NET_NULL')
fast_tests += [['vdev_autotest', true, true]]
endif
if dpdk_conf.has('RTE_RAW_SKELETON')
+ test_sources += 'test_rawdev.c'
test_deps += 'raw_skeleton'
fast_tests += [['rawdev_autotest', true, true]]
endif
diff --git a/lib/meson.build b/lib/meson.build
index fac2f52cad..98a0672a04 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -68,8 +68,12 @@ libraries = [
]
optional_libs = [
+ 'bbdev',
'bitratestats',
'cfgfile',
+ 'compressdev',
+ 'dmadev',
+ 'eventdev',
'flow_classify',
'gpudev',
'graph',
@@ -79,11 +83,14 @@ optional_libs = [
'jobstats',
'latencystats',
'metrics',
+ 'mldev',
'node',
'pdump',
'pipeline',
'port',
'power',
+ 'rawdev',
+ 'regexdev',
'table',
'vhost',
]
--
2.39.2
More information about the dev
mailing list