* [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components
@ 2019-06-05 20:22 Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 01/10] build: print list of disabled components for meson build Bruce Richardson
` (10 more replies)
0 siblings, 11 replies; 14+ messages in thread
From: Bruce Richardson @ 2019-06-05 20:22 UTC (permalink / raw)
To: bluca, thomas; +Cc: dev, john.mcnamara, Bruce Richardson
After using meson to configure a build, we output a brief list of all
components that are enabled. However, of more use to most users is a
list of what is not being enabled, so that they can look for gaps and
see about fixing those gaps, e.g. by installing driver dependencies.
This patchset adds such a printout at the end, but to make things
easier, it also adds support for drivers adding a reason why they not
being built, e.g. unsupported platform, or missing software dependency.
Example output from a FreeBSD platform, for which many drivers do not
compile:
=================
Content Skipped
=================
libs:
kni: only supported on 64-bit linux
power: only supported on linux
vhost: only supported on linux
telemetry: missing dependency "jansson"
drivers:
common/dpaax: only supported on linux
common/mvep: missing dependency, "libmusdk"
bus/dpaa: only supported on linux
bus/fslmc: only supported on linux
bus/vmbus: only supported on linux
mempool/dpaa: only supported on linux
mempool/dpaa2: only supported on linux
net/af_packet: only supported on linux
net/af_xdp: missing dependency, "libbpf"
net/avp: only supported on linux
net/axgbe: only supported on linux
net/dpaa: only supported on linux
net/dpaa2: only supported on linux
net/enetc: only supported on linux
net/ifc: missing dependency, DPDK vhost library
net/kni: missing dependency, DPDK KNI library
net/mlx4: missing dependency, "ibverbs"
net/mlx5: missing dependency, "ibverbs"
net/mvneta: missing dependency, "libmusdk"
net/mvpp2: missing dependency, "libmusdk"
net/netvsc: missing dependency, DPDK VMBus driver
net/nfb: missing dependency, "libnfb"
net/nfp: only supported on 64-bit linux
net/softnic: only supported on linux
net/szedata2: missing dependency, "libsze2"
net/tap: only supported on linux
net/vdev_netvsc: only supported on linux
net/vhost: missing dependency, DPDK vhost library
crypto/aesni_gcm: missing dependency, "libIPSec_MB"
crypto/aesni_mb: missing dependency, "libIPSec_MB"
crypto/caam_jr: only supported on linux
crypto/ccp: missing dependency, "libcrypto"
crypto/dpaa_sec: only supported on linux
crypto/dpaa2_sec: only supported on linux
crypto/kasumi: missing dependency, "libsso_kasumi"
crypto/mvsam: missing dependency, "libmusdk"
crypto/octeontx: only supported on linux
crypto/openssl: missing dependency, "libcrypto"
crypto/snow3g: missing dependency, "libsso_snow3g"
crypto/zuc: missing dependency, "libsso_zuc"
compress/isal: missing dependency, "libisal"
event/dpaa: only supported on linux
event/dpaa2: only supported on linux
raw/dpaa2_cmdif: missing dependency, DPDK DPAA2 mempool driver
raw/dpaa2_qdma: missing dependency, DPDK DPAA2 mempool driver
raw/ifpga_rawdev: missing dependency, "libfdt"
Bruce Richardson (10):
build: print list of disabled components for meson build
lib: add reasons for components being disabled
drivers/bus: add reasons for components being disabled
drivers/common: add reasons for components being disabled
drivers/compress: add reasons for components being disabled
drivers/crypto: add reasons for components being disabled
drivers/event: add reasons for components being disabled
drivers/mempool: add reasons for components being disabled
drivers/net: add reasons for components being disabled
drivers/raw: add reasons for components being disabled
doc/guides/contributing/coding_style.rst | 15 ++++++++++++++-
drivers/bus/dpaa/meson.build | 3 ++-
drivers/bus/fslmc/meson.build | 3 ++-
drivers/bus/vmbus/meson.build | 1 +
drivers/common/dpaax/meson.build | 3 ++-
drivers/common/mvep/meson.build | 1 +
drivers/common/qat/meson.build | 1 +
drivers/compress/isal/meson.build | 3 ++-
drivers/compress/zlib/meson.build | 1 +
drivers/crypto/aesni_gcm/meson.build | 5 +++--
drivers/crypto/aesni_mb/meson.build | 5 +++--
drivers/crypto/caam_jr/meson.build | 3 ++-
drivers/crypto/ccp/meson.build | 4 +++-
drivers/crypto/dpaa2_sec/meson.build | 3 ++-
drivers/crypto/dpaa_sec/meson.build | 3 ++-
drivers/crypto/kasumi/meson.build | 1 +
drivers/crypto/mvsam/meson.build | 1 +
drivers/crypto/octeontx/meson.build | 1 +
drivers/crypto/openssl/meson.build | 1 +
drivers/crypto/qat/meson.build | 1 +
drivers/crypto/snow3g/meson.build | 1 +
drivers/crypto/zuc/meson.build | 1 +
drivers/event/dpaa/meson.build | 1 +
drivers/event/dpaa2/meson.build | 1 +
drivers/mempool/dpaa/meson.build | 3 ++-
drivers/mempool/dpaa2/meson.build | 3 ++-
drivers/meson.build | 12 +++++++++++-
drivers/net/af_packet/meson.build | 1 +
drivers/net/af_xdp/meson.build | 1 +
drivers/net/avp/meson.build | 3 ++-
drivers/net/axgbe/meson.build | 1 +
drivers/net/bnx2x/meson.build | 1 +
drivers/net/dpaa/meson.build | 1 +
drivers/net/dpaa2/meson.build | 3 ++-
drivers/net/enetc/meson.build | 1 +
drivers/net/ifc/meson.build | 1 +
drivers/net/kni/meson.build | 1 +
drivers/net/mlx4/meson.build | 1 +
drivers/net/mlx5/meson.build | 1 +
drivers/net/mvneta/meson.build | 1 +
drivers/net/mvpp2/meson.build | 1 +
drivers/net/netvsc/meson.build | 1 +
drivers/net/nfb/meson.build | 1 +
drivers/net/nfp/meson.build | 3 ++-
drivers/net/pcap/meson.build | 1 +
drivers/net/sfc/meson.build | 1 +
drivers/net/softnic/meson.build | 3 ++-
drivers/net/szedata2/meson.build | 1 +
drivers/net/tap/meson.build | 3 ++-
drivers/net/vdev_netvsc/meson.build | 3 ++-
drivers/net/vhost/meson.build | 1 +
drivers/raw/dpaa2_cmdif/meson.build | 1 +
drivers/raw/dpaa2_qdma/meson.build | 1 +
drivers/raw/ifpga_rawdev/meson.build | 1 +
lib/librte_kni/meson.build | 1 +
lib/librte_power/meson.build | 1 +
lib/librte_telemetry/meson.build | 1 +
lib/librte_vhost/meson.build | 1 +
lib/meson.build | 6 +++++-
meson.build | 15 +++++++++++++++
60 files changed, 122 insertions(+), 23 deletions(-)
--
2.21.0
^ permalink raw reply [flat|nested] 14+ messages in thread
* [dpdk-dev] [PATCH 01/10] build: print list of disabled components for meson build
2019-06-05 20:22 [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Bruce Richardson
@ 2019-06-05 20:22 ` Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 02/10] lib: add reasons for components being disabled Bruce Richardson
` (9 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Bruce Richardson @ 2019-06-05 20:22 UTC (permalink / raw)
To: bluca, thomas; +Cc: dev, john.mcnamara, Bruce Richardson
When configuring with meson we print out a list of enabled components, but
it is also useful to list out the disabled components and the reasons why.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
doc/guides/contributing/coding_style.rst | 15 ++++++++++++++-
drivers/meson.build | 12 +++++++++++-
lib/meson.build | 6 +++++-
meson.build | 15 +++++++++++++++
4 files changed, 45 insertions(+), 3 deletions(-)
diff --git a/doc/guides/contributing/coding_style.rst b/doc/guides/contributing/coding_style.rst
index a5d5897f3..449b33494 100644
--- a/doc/guides/contributing/coding_style.rst
+++ b/doc/guides/contributing/coding_style.rst
@@ -852,12 +852,15 @@ allow_experimental_apis
build
**Default Value = true**
Used to optionally compile a library, based on its dependencies or
- environment. A simple example of use would be:
+ environment. When set to "false" the ``reason`` value, explained below, should
+ also be set to explain to the user why the component is not being built.
+ A simple example of use would be:
.. code-block:: python
if not is_linux
build = false
+ reason = 'only supported on Linux'
endif
@@ -938,6 +941,13 @@ objs
objects that were compiled up as part of another target given in the
included library ``meson.build`` file.
+reason
+ **Default Value = '<unknown reason>'**.
+ This variable should be used when a library is not to be built i.e. when
+ ``build`` is set to "false", to specify the reason why a library will not be
+ built. For missing dependencies this should be of the form
+ ``'missing dependency, "libname"'``.
+
version
**Default Value = 1**.
Specifies the ABI version of the library, and is used as the major
@@ -991,6 +1001,9 @@ pkgconfig_extra_libs
using static libraries. Anything added here will be appended to the end
of the ``pkgconfig --libs`` output.
+reason
+ As above.
+
sources [mandatory]
As above
diff --git a/drivers/meson.build b/drivers/meson.build
index 4c444f495..94e6c829e 100644
--- a/drivers/meson.build
+++ b/drivers/meson.build
@@ -40,6 +40,7 @@ foreach class:dpdk_driver_classes
# set up empty variables used for build
build = true # set to false to disable, e.g. missing deps
+ reason = '<unknown reason>' # set if build == false to explain
name = drv
version = 1
allow_experimental_apis = false
@@ -61,7 +62,16 @@ foreach class:dpdk_driver_classes
# pull in driver directory which should assign to each of the above
subdir(drv_path)
- if build
+ if not build
+ # some driver directories are placeholders which
+ # are never built, so we allow suppression of the
+ # component disable printout in those cases
+ if reason != ''
+ dpdk_drvs_disabled += drv_path
+ set_variable(drv_path.underscorify() +
+ '_disable_reason', reason)
+ endif
+ else
class_drivers += name
dpdk_conf.set(config_flag_fmt.format(name.to_upper()),1)
diff --git a/lib/meson.build b/lib/meson.build
index e067ce5ea..76c13b7da 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -46,6 +46,7 @@ default_cflags += '-D_GNU_SOURCE'
foreach l:libraries
build = true
+ reason = '<unknown reason>' # set if build == false to explain why
name = l
version = 1
allow_experimental_apis = false
@@ -68,7 +69,10 @@ foreach l:libraries
dir_name = 'librte_' + l
subdir(dir_name)
- if build
+ if not build
+ dpdk_libs_disabled += name
+ set_variable(name.underscorify() + '_disable_reason', reason)
+ else
enabled_libs += name
dpdk_conf.set('RTE_LIBRTE_' + name.to_upper(), 1)
install_headers(headers)
diff --git a/meson.build b/meson.build
index 9cad43481..63a1ce25b 100644
--- a/meson.build
+++ b/meson.build
@@ -20,6 +20,8 @@ dpdk_driver_classes = []
dpdk_drivers = []
dpdk_extra_ldflags = []
dpdk_app_link_libraries = []
+dpdk_libs_disabled = []
+dpdk_drvs_disabled = []
# configure the build, and make sure configs here and in config folder are
# able to be included in any file. We also store a global array of include dirs
@@ -108,3 +110,16 @@ foreach class:dpdk_driver_classes
endforeach
endforeach
message(output_message + '\n')
+
+output_message = '\n=================\nContent Skipped\n=================\n'
+output_message += '\nlibs:\n\t'
+foreach lib:dpdk_libs_disabled
+ reason = get_variable(lib.underscorify() + '_disable_reason')
+ output_message += lib + ':\t' + reason + '\n\t'
+endforeach
+output_message += '\ndrivers:\n\t'
+foreach drv:dpdk_drvs_disabled
+ reason = get_variable(drv.underscorify() + '_disable_reason')
+ output_message += drv + ':\t' + reason + '\n\t'
+endforeach
+message(output_message + '\n')
--
2.21.0
^ permalink raw reply [flat|nested] 14+ messages in thread
* [dpdk-dev] [PATCH 02/10] lib: add reasons for components being disabled
2019-06-05 20:22 [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 01/10] build: print list of disabled components for meson build Bruce Richardson
@ 2019-06-05 20:22 ` Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 03/10] drivers/bus: " Bruce Richardson
` (8 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Bruce Richardson @ 2019-06-05 20:22 UTC (permalink / raw)
To: bluca, thomas; +Cc: dev, john.mcnamara, Bruce Richardson
For each library where we optionally disable it, add in the reason why it's
being disabled, so the user knows how to fix it.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
lib/librte_kni/meson.build | 1 +
lib/librte_power/meson.build | 1 +
lib/librte_telemetry/meson.build | 1 +
lib/librte_vhost/meson.build | 1 +
4 files changed, 4 insertions(+)
diff --git a/lib/librte_kni/meson.build b/lib/librte_kni/meson.build
index 400af9a4d..41fa2e39b 100644
--- a/lib/librte_kni/meson.build
+++ b/lib/librte_kni/meson.build
@@ -3,6 +3,7 @@
if not is_linux or not dpdk_conf.get('RTE_ARCH_64')
build = false
+ reason = 'only supported on 64-bit linux'
endif
version = 2
sources = files('rte_kni.c')
diff --git a/lib/librte_power/meson.build b/lib/librte_power/meson.build
index cc6c30075..cdf08f6df 100644
--- a/lib/librte_power/meson.build
+++ b/lib/librte_power/meson.build
@@ -3,6 +3,7 @@
if not is_linux
build = false
+ reason = 'only supported on linux'
endif
sources = files('rte_power.c', 'power_acpi_cpufreq.c',
'power_kvm_vm.c', 'guest_channel.c',
diff --git a/lib/librte_telemetry/meson.build b/lib/librte_telemetry/meson.build
index cafb26f08..3e7db4f19 100644
--- a/lib/librte_telemetry/meson.build
+++ b/lib/librte_telemetry/meson.build
@@ -12,4 +12,5 @@ if jansson.found()
dpdk_app_link_libraries += ['telemetry']
else
build = false
+ reason = 'missing dependency "jansson"'
endif
diff --git a/lib/librte_vhost/meson.build b/lib/librte_vhost/meson.build
index 3090bbe08..cb1123ae3 100644
--- a/lib/librte_vhost/meson.build
+++ b/lib/librte_vhost/meson.build
@@ -3,6 +3,7 @@
if not is_linux
build = false
+ reason = 'only supported on linux'
endif
if has_libnuma == 1
dpdk_conf.set10('RTE_LIBRTE_VHOST_NUMA', true)
--
2.21.0
^ permalink raw reply [flat|nested] 14+ messages in thread
* [dpdk-dev] [PATCH 03/10] drivers/bus: add reasons for components being disabled
2019-06-05 20:22 [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 01/10] build: print list of disabled components for meson build Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 02/10] lib: add reasons for components being disabled Bruce Richardson
@ 2019-06-05 20:22 ` Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 04/10] drivers/common: " Bruce Richardson
` (7 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Bruce Richardson @ 2019-06-05 20:22 UTC (permalink / raw)
To: bluca, thomas; +Cc: dev, john.mcnamara, Bruce Richardson
For each driver where we optionally disable it, add in the reason why it's
being disabled, so the user knows how to fix it.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
drivers/bus/dpaa/meson.build | 3 ++-
drivers/bus/fslmc/meson.build | 3 ++-
drivers/bus/vmbus/meson.build | 1 +
3 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/drivers/bus/dpaa/meson.build b/drivers/bus/dpaa/meson.build
index 1c8ca8c9a..19daaa5b5 100644
--- a/drivers/bus/dpaa/meson.build
+++ b/drivers/bus/dpaa/meson.build
@@ -4,7 +4,8 @@
version = 2
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
deps += ['common_dpaax', 'eventdev']
diff --git a/drivers/bus/fslmc/meson.build b/drivers/bus/fslmc/meson.build
index 04624c363..faebc4327 100644
--- a/drivers/bus/fslmc/meson.build
+++ b/drivers/bus/fslmc/meson.build
@@ -4,7 +4,8 @@
version = 2
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
deps += ['common_dpaax', 'eventdev', 'kvargs']
diff --git a/drivers/bus/vmbus/meson.build b/drivers/bus/vmbus/meson.build
index 9fd430dae..79d4c685e 100644
--- a/drivers/bus/vmbus/meson.build
+++ b/drivers/bus/vmbus/meson.build
@@ -17,4 +17,5 @@ if is_linux
includes += include_directories('linux')
else
build = false
+ reason = 'only supported on linux'
endif
--
2.21.0
^ permalink raw reply [flat|nested] 14+ messages in thread
* [dpdk-dev] [PATCH 04/10] drivers/common: add reasons for components being disabled
2019-06-05 20:22 [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Bruce Richardson
` (2 preceding siblings ...)
2019-06-05 20:22 ` [dpdk-dev] [PATCH 03/10] drivers/bus: " Bruce Richardson
@ 2019-06-05 20:22 ` Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 05/10] drivers/compress: " Bruce Richardson
` (6 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Bruce Richardson @ 2019-06-05 20:22 UTC (permalink / raw)
To: bluca, thomas; +Cc: dev, john.mcnamara, Bruce Richardson
For each driver where we optionally disable it, add in the reason why it's
being disabled, so the user knows how to fix it.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
drivers/common/dpaax/meson.build | 3 ++-
drivers/common/mvep/meson.build | 1 +
drivers/common/qat/meson.build | 1 +
3 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/common/dpaax/meson.build b/drivers/common/dpaax/meson.build
index 78378e2a6..a315e7786 100644
--- a/drivers/common/dpaax/meson.build
+++ b/drivers/common/dpaax/meson.build
@@ -4,7 +4,8 @@
allow_experimental_apis = true
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
sources = files('dpaax_iova_table.c')
diff --git a/drivers/common/mvep/meson.build b/drivers/common/mvep/meson.build
index 8ccfacb3f..8df4bc6e0 100644
--- a/drivers/common/mvep/meson.build
+++ b/drivers/common/mvep/meson.build
@@ -10,6 +10,7 @@ inc_dir = path + '/include'
lib = cc.find_library('libmusdk', dirs: [lib_dir], required: false)
if not lib.found()
build = false
+ reason = 'missing dependency, "libmusdk"'
else
ext_deps += lib
includes += include_directories(inc_dir)
diff --git a/drivers/common/qat/meson.build b/drivers/common/qat/meson.build
index 80b6b25a8..8de249289 100644
--- a/drivers/common/qat/meson.build
+++ b/drivers/common/qat/meson.build
@@ -4,6 +4,7 @@
# This does not build a driver, but instead holds common files for
# the crypto and compression drivers.
build = false
+reason = '' # sentinal value to suppress printout
qat_deps = ['bus_pci']
qat_sources = files('qat_common.c',
'qat_qp.c',
--
2.21.0
^ permalink raw reply [flat|nested] 14+ messages in thread
* [dpdk-dev] [PATCH 05/10] drivers/compress: add reasons for components being disabled
2019-06-05 20:22 [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Bruce Richardson
` (3 preceding siblings ...)
2019-06-05 20:22 ` [dpdk-dev] [PATCH 04/10] drivers/common: " Bruce Richardson
@ 2019-06-05 20:22 ` Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 06/10] drivers/crypto: " Bruce Richardson
` (5 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Bruce Richardson @ 2019-06-05 20:22 UTC (permalink / raw)
To: bluca, thomas; +Cc: dev, john.mcnamara, Bruce Richardson
For each driver where we optionally disable it, add in the reason why it's
being disabled, so the user knows how to fix it.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
drivers/compress/isal/meson.build | 3 ++-
drivers/compress/zlib/meson.build | 1 +
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/compress/isal/meson.build b/drivers/compress/isal/meson.build
index 94c10fd60..67b5c4aae 100644
--- a/drivers/compress/isal/meson.build
+++ b/drivers/compress/isal/meson.build
@@ -3,7 +3,8 @@
dep = dependency('libisal', required: false)
if not dep.found()
- build =false
+ build = false
+ reason = 'missing dependency, "libisal"'
endif
deps += 'bus_vdev'
diff --git a/drivers/compress/zlib/meson.build b/drivers/compress/zlib/meson.build
index b036703c7..b1328c535 100644
--- a/drivers/compress/zlib/meson.build
+++ b/drivers/compress/zlib/meson.build
@@ -4,6 +4,7 @@
dep = dependency('zlib', required: false)
if not dep.found()
build = false
+ reason = 'missing dependency, "zlib"'
endif
deps += 'bus_vdev'
--
2.21.0
^ permalink raw reply [flat|nested] 14+ messages in thread
* [dpdk-dev] [PATCH 06/10] drivers/crypto: add reasons for components being disabled
2019-06-05 20:22 [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Bruce Richardson
` (4 preceding siblings ...)
2019-06-05 20:22 ` [dpdk-dev] [PATCH 05/10] drivers/compress: " Bruce Richardson
@ 2019-06-05 20:22 ` Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 07/10] drivers/event: " Bruce Richardson
` (4 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Bruce Richardson @ 2019-06-05 20:22 UTC (permalink / raw)
To: bluca, thomas; +Cc: dev, john.mcnamara, Bruce Richardson
For each driver where we optionally disable it, add in the reason why it's
being disabled, so the user knows how to fix it.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
drivers/crypto/aesni_gcm/meson.build | 5 +++--
drivers/crypto/aesni_mb/meson.build | 5 +++--
drivers/crypto/caam_jr/meson.build | 3 ++-
drivers/crypto/ccp/meson.build | 4 +++-
drivers/crypto/dpaa2_sec/meson.build | 3 ++-
drivers/crypto/dpaa_sec/meson.build | 3 ++-
drivers/crypto/kasumi/meson.build | 1 +
drivers/crypto/mvsam/meson.build | 1 +
drivers/crypto/octeontx/meson.build | 1 +
drivers/crypto/openssl/meson.build | 1 +
drivers/crypto/qat/meson.build | 1 +
drivers/crypto/snow3g/meson.build | 1 +
drivers/crypto/zuc/meson.build | 1 +
13 files changed, 22 insertions(+), 8 deletions(-)
diff --git a/drivers/crypto/aesni_gcm/meson.build b/drivers/crypto/aesni_gcm/meson.build
index 7183cfcba..3a6e332dc 100644
--- a/drivers/crypto/aesni_gcm/meson.build
+++ b/drivers/crypto/aesni_gcm/meson.build
@@ -5,6 +5,7 @@ IMB_required_ver = '0.52.0'
lib = cc.find_library('IPSec_MB', required: false)
if not lib.found()
build = false
+ reason = 'missing dependency, "libIPSec_MB"'
else
ext_deps += lib
@@ -13,8 +14,8 @@ else
prefix : '#include<intel-ipsec-mb.h>').split('"')[1]
if (imb_ver == '') or (imb_ver.version_compare('<' + IMB_required_ver))
- message('IPSec_MB version >= @0@ is required, found version @1@'.format(
- IMB_required_ver, imb_ver))
+ reason = 'IPSec_MB version >= @0@ is required, found version @1@'.format(
+ IMB_required_ver, imb_ver)
build = false
endif
endif
diff --git a/drivers/crypto/aesni_mb/meson.build b/drivers/crypto/aesni_mb/meson.build
index 7c1eb3f86..3e1687416 100644
--- a/drivers/crypto/aesni_mb/meson.build
+++ b/drivers/crypto/aesni_mb/meson.build
@@ -5,6 +5,7 @@ IMB_required_ver = '0.52.0'
lib = cc.find_library('IPSec_MB', required: false)
if not lib.found()
build = false
+ reason = 'missing dependency, "libIPSec_MB"'
else
ext_deps += lib
@@ -13,8 +14,8 @@ else
prefix : '#include<intel-ipsec-mb.h>').split('"')[1]
if (imb_ver == '') or (imb_ver.version_compare('<' + IMB_required_ver))
- message('IPSec_MB version >= @0@ is required, found version @1@'.format(
- IMB_required_ver, imb_ver))
+ reason = 'IPSec_MB version >= @0@ is required, found version @1@'.format(
+ IMB_required_ver, imb_ver)
build = false
endif
diff --git a/drivers/crypto/caam_jr/meson.build b/drivers/crypto/caam_jr/meson.build
index e61a13c25..4c66dd844 100644
--- a/drivers/crypto/caam_jr/meson.build
+++ b/drivers/crypto/caam_jr/meson.build
@@ -2,7 +2,8 @@
# Copyright 2018 NXP
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
deps += ['bus_vdev', 'bus_dpaa', 'security']
diff --git a/drivers/crypto/ccp/meson.build b/drivers/crypto/ccp/meson.build
index 071ccc5e7..6f7217adb 100644
--- a/drivers/crypto/ccp/meson.build
+++ b/drivers/crypto/ccp/meson.build
@@ -2,11 +2,13 @@
# Copyright(c) 2018 Advanced Micro Devices, Inc. All rights reserved.
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
dep = dependency('libcrypto', required: false)
if not dep.found()
build = false
+ reason = 'missing dependency, "libcrypto"'
endif
deps += 'bus_vdev'
deps += 'bus_pci'
diff --git a/drivers/crypto/dpaa2_sec/meson.build b/drivers/crypto/dpaa2_sec/meson.build
index d197cda1a..23affa8a6 100644
--- a/drivers/crypto/dpaa2_sec/meson.build
+++ b/drivers/crypto/dpaa2_sec/meson.build
@@ -4,7 +4,8 @@
version = 2
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
deps += ['security', 'mempool_dpaa2']
diff --git a/drivers/crypto/dpaa_sec/meson.build b/drivers/crypto/dpaa_sec/meson.build
index 134af88da..7b9a019b9 100644
--- a/drivers/crypto/dpaa_sec/meson.build
+++ b/drivers/crypto/dpaa_sec/meson.build
@@ -2,7 +2,8 @@
# Copyright 2018 NXP
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
deps += ['bus_dpaa', 'security']
diff --git a/drivers/crypto/kasumi/meson.build b/drivers/crypto/kasumi/meson.build
index 0fa301740..90a3c4fe6 100644
--- a/drivers/crypto/kasumi/meson.build
+++ b/drivers/crypto/kasumi/meson.build
@@ -4,6 +4,7 @@
lib = cc.find_library('sso_kasumi', required: false)
if not lib.found() or not cc.has_header('sso_kasumi.h')
build = false
+ reason = 'missing dependency, "libsso_kasumi"'
subdir_done()
endif
diff --git a/drivers/crypto/mvsam/meson.build b/drivers/crypto/mvsam/meson.build
index f1c879663..6d97dc8a2 100644
--- a/drivers/crypto/mvsam/meson.build
+++ b/drivers/crypto/mvsam/meson.build
@@ -10,6 +10,7 @@ inc_dir = path + '/include'
lib = cc.find_library('libmusdk', dirs: [lib_dir], required: false)
if not lib.found()
build = false
+ reason = 'missing dependency, "libmusdk"'
else
ext_deps += lib
includes += include_directories(inc_dir)
diff --git a/drivers/crypto/octeontx/meson.build b/drivers/crypto/octeontx/meson.build
index a9f2d3157..63a59c51a 100644
--- a/drivers/crypto/octeontx/meson.build
+++ b/drivers/crypto/octeontx/meson.build
@@ -2,6 +2,7 @@
# Copyright(c) 2018 Cavium, Inc
if not is_linux
build = false
+ reason = 'only supported on linux'
endif
deps += ['bus_pci']
diff --git a/drivers/crypto/openssl/meson.build b/drivers/crypto/openssl/meson.build
index d56a32366..394e74c9e 100644
--- a/drivers/crypto/openssl/meson.build
+++ b/drivers/crypto/openssl/meson.build
@@ -4,6 +4,7 @@
dep = dependency('libcrypto', required: false)
if not dep.found()
build = false
+ reason = 'missing dependency, "libcrypto"'
endif
allow_experimental_apis = true
deps += 'bus_vdev'
diff --git a/drivers/crypto/qat/meson.build b/drivers/crypto/qat/meson.build
index 710b081ff..fc65923a7 100644
--- a/drivers/crypto/qat/meson.build
+++ b/drivers/crypto/qat/meson.build
@@ -4,6 +4,7 @@
# this does not build the QAT driver, instead that is done in the compression
# driver which comes later. Here we just add our sources files to the list
build = false
+reason = '' # sentinal value to suppress printout
dep = dependency('libcrypto', required: false)
qat_includes += include_directories('.')
qat_deps += 'cryptodev'
diff --git a/drivers/crypto/snow3g/meson.build b/drivers/crypto/snow3g/meson.build
index c566a5f67..0e8742ab9 100644
--- a/drivers/crypto/snow3g/meson.build
+++ b/drivers/crypto/snow3g/meson.build
@@ -4,6 +4,7 @@
lib = cc.find_library('sso_snow3g', required: false)
if not lib.found() or not cc.has_header('sso_snow3g.h')
build = false
+ reason = 'missing dependency, "libsso_snow3g"'
subdir_done()
endif
diff --git a/drivers/crypto/zuc/meson.build b/drivers/crypto/zuc/meson.build
index fc2900244..b231de0ba 100644
--- a/drivers/crypto/zuc/meson.build
+++ b/drivers/crypto/zuc/meson.build
@@ -4,6 +4,7 @@
lib = cc.find_library('sso_zuc', required: false)
if not lib.found() or not cc.has_header('sso_zuc.h')
build = false
+ reason = 'missing dependency, "libsso_zuc"'
subdir_done()
endif
--
2.21.0
^ permalink raw reply [flat|nested] 14+ messages in thread
* [dpdk-dev] [PATCH 07/10] drivers/event: add reasons for components being disabled
2019-06-05 20:22 [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Bruce Richardson
` (5 preceding siblings ...)
2019-06-05 20:22 ` [dpdk-dev] [PATCH 06/10] drivers/crypto: " Bruce Richardson
@ 2019-06-05 20:22 ` Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 08/10] drivers/mempool: " Bruce Richardson
` (3 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Bruce Richardson @ 2019-06-05 20:22 UTC (permalink / raw)
To: bluca, thomas; +Cc: dev, john.mcnamara, Bruce Richardson
For each driver where we optionally disable it, add in the reason why it's
being disabled, so the user knows how to fix it.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
drivers/event/dpaa/meson.build | 1 +
drivers/event/dpaa2/meson.build | 1 +
2 files changed, 2 insertions(+)
diff --git a/drivers/event/dpaa/meson.build b/drivers/event/dpaa/meson.build
index 11b1fe669..c1e725475 100644
--- a/drivers/event/dpaa/meson.build
+++ b/drivers/event/dpaa/meson.build
@@ -3,6 +3,7 @@
if not is_linux
build = false
+ reason = 'only supported on linux'
endif
deps += ['pmd_dpaa']
sources = files('dpaa_eventdev.c')
diff --git a/drivers/event/dpaa2/meson.build b/drivers/event/dpaa2/meson.build
index a94bc5643..f7da7fad5 100644
--- a/drivers/event/dpaa2/meson.build
+++ b/drivers/event/dpaa2/meson.build
@@ -5,6 +5,7 @@ version = 2
if not is_linux
build = false
+ reason = 'only supported on linux'
endif
deps += ['bus_vdev', 'pmd_dpaa2', 'pmd_dpaa2_sec']
sources = files('dpaa2_hw_dpcon.c',
--
2.21.0
^ permalink raw reply [flat|nested] 14+ messages in thread
* [dpdk-dev] [PATCH 08/10] drivers/mempool: add reasons for components being disabled
2019-06-05 20:22 [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Bruce Richardson
` (6 preceding siblings ...)
2019-06-05 20:22 ` [dpdk-dev] [PATCH 07/10] drivers/event: " Bruce Richardson
@ 2019-06-05 20:22 ` Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 09/10] drivers/net: " Bruce Richardson
` (2 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Bruce Richardson @ 2019-06-05 20:22 UTC (permalink / raw)
To: bluca, thomas; +Cc: dev, john.mcnamara, Bruce Richardson
For each driver where we optionally disable it, add in the reason why it's
being disabled, so the user knows how to fix it.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
drivers/mempool/dpaa/meson.build | 3 ++-
drivers/mempool/dpaa2/meson.build | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/mempool/dpaa/meson.build b/drivers/mempool/dpaa/meson.build
index c4c8ebc09..b7446f174 100644
--- a/drivers/mempool/dpaa/meson.build
+++ b/drivers/mempool/dpaa/meson.build
@@ -2,7 +2,8 @@
# Copyright 2018 NXP
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
deps += ['bus_dpaa']
diff --git a/drivers/mempool/dpaa2/meson.build b/drivers/mempool/dpaa2/meson.build
index 9a8b28d7c..3d25ba06d 100644
--- a/drivers/mempool/dpaa2/meson.build
+++ b/drivers/mempool/dpaa2/meson.build
@@ -4,7 +4,8 @@
version = 2
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
deps += ['bus_fslmc']
--
2.21.0
^ permalink raw reply [flat|nested] 14+ messages in thread
* [dpdk-dev] [PATCH 09/10] drivers/net: add reasons for components being disabled
2019-06-05 20:22 [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Bruce Richardson
` (7 preceding siblings ...)
2019-06-05 20:22 ` [dpdk-dev] [PATCH 08/10] drivers/mempool: " Bruce Richardson
@ 2019-06-05 20:22 ` Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 10/10] drivers/raw: " Bruce Richardson
2019-06-05 20:39 ` [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Luca Boccassi
10 siblings, 0 replies; 14+ messages in thread
From: Bruce Richardson @ 2019-06-05 20:22 UTC (permalink / raw)
To: bluca, thomas; +Cc: dev, john.mcnamara, Bruce Richardson
For each driver where we optionally disable it, add in the reason why it's
being disabled, so the user knows how to fix it.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
drivers/net/af_packet/meson.build | 1 +
drivers/net/af_xdp/meson.build | 1 +
drivers/net/avp/meson.build | 3 ++-
drivers/net/axgbe/meson.build | 1 +
drivers/net/bnx2x/meson.build | 1 +
drivers/net/dpaa/meson.build | 1 +
drivers/net/dpaa2/meson.build | 3 ++-
drivers/net/enetc/meson.build | 1 +
drivers/net/ifc/meson.build | 1 +
drivers/net/kni/meson.build | 1 +
drivers/net/mlx4/meson.build | 1 +
drivers/net/mlx5/meson.build | 1 +
drivers/net/mvneta/meson.build | 1 +
drivers/net/mvpp2/meson.build | 1 +
drivers/net/netvsc/meson.build | 1 +
drivers/net/nfb/meson.build | 1 +
drivers/net/nfp/meson.build | 3 ++-
drivers/net/pcap/meson.build | 1 +
drivers/net/sfc/meson.build | 1 +
drivers/net/softnic/meson.build | 3 ++-
drivers/net/szedata2/meson.build | 1 +
drivers/net/tap/meson.build | 3 ++-
drivers/net/vdev_netvsc/meson.build | 3 ++-
drivers/net/vhost/meson.build | 1 +
24 files changed, 30 insertions(+), 6 deletions(-)
diff --git a/drivers/net/af_packet/meson.build b/drivers/net/af_packet/meson.build
index 92c306c73..a7f392ea1 100644
--- a/drivers/net/af_packet/meson.build
+++ b/drivers/net/af_packet/meson.build
@@ -3,5 +3,6 @@
if not is_linux
build = false
+ reason = 'only supported on linux'
endif
sources = files('rte_eth_af_packet.c')
diff --git a/drivers/net/af_xdp/meson.build b/drivers/net/af_xdp/meson.build
index 7904840f0..ac679b92b 100644
--- a/drivers/net/af_xdp/meson.build
+++ b/drivers/net/af_xdp/meson.build
@@ -13,4 +13,5 @@ if bpf_dep.found() and cc.has_header('bpf/xsk.h') and cc.has_header('linux/if_xd
pkgconfig_extra_libs += '-lbpf'
else
build = false
+ reason = 'missing dependency, "libbpf"'
endif
diff --git a/drivers/net/avp/meson.build b/drivers/net/avp/meson.build
index 8138cb22d..a5f63cdef 100644
--- a/drivers/net/avp/meson.build
+++ b/drivers/net/avp/meson.build
@@ -2,7 +2,8 @@
# Copyright(c) 2018 Intel Corporation
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
sources = files('avp_ethdev.c')
install_headers('rte_avp_common.h', 'rte_avp_fifo.h')
diff --git a/drivers/net/axgbe/meson.build b/drivers/net/axgbe/meson.build
index 6decb25d4..86873b7ef 100644
--- a/drivers/net/axgbe/meson.build
+++ b/drivers/net/axgbe/meson.build
@@ -3,6 +3,7 @@
if not is_linux
build = false
+ reason = 'only supported on linux'
endif
sources = files('axgbe_ethdev.c',
diff --git a/drivers/net/bnx2x/meson.build b/drivers/net/bnx2x/meson.build
index dd189ffc4..4892bb234 100644
--- a/drivers/net/bnx2x/meson.build
+++ b/drivers/net/bnx2x/meson.build
@@ -3,6 +3,7 @@
dep = dependency('zlib', required: false)
build = dep.found()
+reason = 'missing dependency, "zlib"'
ext_deps += dep
cflags += '-DZLIB_CONST'
sources = files('bnx2x.c',
diff --git a/drivers/net/dpaa/meson.build b/drivers/net/dpaa/meson.build
index 8e5418bd6..94c0e22c5 100644
--- a/drivers/net/dpaa/meson.build
+++ b/drivers/net/dpaa/meson.build
@@ -3,6 +3,7 @@
if not is_linux
build = false
+ reason = 'only supported on linux'
endif
deps += ['mempool_dpaa']
diff --git a/drivers/net/dpaa2/meson.build b/drivers/net/dpaa2/meson.build
index a0ea99238..7e74c656a 100644
--- a/drivers/net/dpaa2/meson.build
+++ b/drivers/net/dpaa2/meson.build
@@ -4,7 +4,8 @@
version = 2
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
deps += ['mempool_dpaa2']
diff --git a/drivers/net/enetc/meson.build b/drivers/net/enetc/meson.build
index 7d0c2ffe7..3bc069844 100644
--- a/drivers/net/enetc/meson.build
+++ b/drivers/net/enetc/meson.build
@@ -3,6 +3,7 @@
if not is_linux
build = false
+ reason = 'only supported on linux'
endif
sources = files('enetc_ethdev.c',
diff --git a/drivers/net/ifc/meson.build b/drivers/net/ifc/meson.build
index 72df070ac..adc9ed9ff 100644
--- a/drivers/net/ifc/meson.build
+++ b/drivers/net/ifc/meson.build
@@ -2,6 +2,7 @@
# Copyright(c) 2018 Intel Corporation
build = dpdk_conf.has('RTE_LIBRTE_VHOST')
+reason = 'missing dependency, DPDK vhost library'
allow_experimental_apis = true
sources = files('ifcvf_vdpa.c', 'base/ifcvf.c')
includes += include_directories('base')
diff --git a/drivers/net/kni/meson.build b/drivers/net/kni/meson.build
index e3b2d83b5..0539b4768 100644
--- a/drivers/net/kni/meson.build
+++ b/drivers/net/kni/meson.build
@@ -3,5 +3,6 @@
# this driver can be built if-and-only-if KNI library is buildable
build = dpdk_conf.has('RTE_LIBRTE_KNI')
+reason = 'missing dependency, DPDK KNI library'
sources = files('rte_eth_kni.c')
deps += 'kni'
diff --git a/drivers/net/mlx4/meson.build b/drivers/net/mlx4/meson.build
index 2540489bb..5de04b70b 100644
--- a/drivers/net/mlx4/meson.build
+++ b/drivers/net/mlx4/meson.build
@@ -25,6 +25,7 @@ foreach libname:libnames
libs += [ lib ]
else
build = false
+ reason = 'missing dependency, "' + libname + '"'
endif
endforeach
# Compile PMD
diff --git a/drivers/net/mlx5/meson.build b/drivers/net/mlx5/meson.build
index ac3b529d1..22ddd54c2 100644
--- a/drivers/net/mlx5/meson.build
+++ b/drivers/net/mlx5/meson.build
@@ -25,6 +25,7 @@ foreach libname:libnames
libs += [ lib ]
else
build = false
+ reason = 'missing dependency, "' + libname + '"'
endif
endforeach
if build
diff --git a/drivers/net/mvneta/meson.build b/drivers/net/mvneta/meson.build
index c0b1bce01..8d7202788 100644
--- a/drivers/net/mvneta/meson.build
+++ b/drivers/net/mvneta/meson.build
@@ -10,6 +10,7 @@ inc_dir = path + '/include'
lib = cc.find_library('libmusdk', dirs : [lib_dir], required: false)
if not lib.found()
build = false
+ reason = 'missing dependency, "libmusdk"'
else
ext_deps += lib
includes += include_directories(inc_dir)
diff --git a/drivers/net/mvpp2/meson.build b/drivers/net/mvpp2/meson.build
index 70ef2d642..e06eddaac 100644
--- a/drivers/net/mvpp2/meson.build
+++ b/drivers/net/mvpp2/meson.build
@@ -10,6 +10,7 @@ inc_dir = path + '/include'
lib = cc.find_library('libmusdk', dirs : [lib_dir], required: false)
if not lib.found()
build = false
+ reason = 'missing dependency, "libmusdk"'
else
ext_deps += lib
includes += include_directories(inc_dir)
diff --git a/drivers/net/netvsc/meson.build b/drivers/net/netvsc/meson.build
index c84269716..e9fe35344 100644
--- a/drivers/net/netvsc/meson.build
+++ b/drivers/net/netvsc/meson.build
@@ -2,6 +2,7 @@
# Copyright(c) 2018 Microsoft Corporation
build = dpdk_conf.has('RTE_LIBRTE_VMBUS_BUS')
+reason = 'missing dependency, DPDK VMBus driver'
version = 2
sources = files('hn_ethdev.c', 'hn_rxtx.c', 'hn_rndis.c', 'hn_nvs.c', 'hn_vf.c')
diff --git a/drivers/net/nfb/meson.build b/drivers/net/nfb/meson.build
index 457955d72..4502c3f76 100644
--- a/drivers/net/nfb/meson.build
+++ b/drivers/net/nfb/meson.build
@@ -4,6 +4,7 @@
# All rights reserved.
dep = cc.find_library('nfb', required: false)
+reason = 'missing dependency, "libnfb"'
build = dep.found() and cc.has_header('nfb/nfb.h', dependencies: dep)
diff --git a/drivers/net/nfp/meson.build b/drivers/net/nfp/meson.build
index 8c87c5b0b..b487cdffd 100644
--- a/drivers/net/nfp/meson.build
+++ b/drivers/net/nfp/meson.build
@@ -2,7 +2,8 @@
# Copyright(c) 2018 Intel Corporation
if not is_linux or not dpdk_conf.get('RTE_ARCH_64')
- build = false
+ build = false
+ reason = 'only supported on 64-bit linux'
endif
sources = files('nfpcore/nfp_cpp_pcie_ops.c',
'nfpcore/nfp_nsp.c',
diff --git a/drivers/net/pcap/meson.build b/drivers/net/pcap/meson.build
index 2c2fd11e4..910dfab9b 100644
--- a/drivers/net/pcap/meson.build
+++ b/drivers/net/pcap/meson.build
@@ -14,6 +14,7 @@ else
pkgconfig_extra_libs += '-lpcap'
else
build = false
+ reason = 'missing dependency, "libpcap"'
endif
endif
sources = files('rte_eth_pcap.c')
diff --git a/drivers/net/sfc/meson.build b/drivers/net/sfc/meson.build
index e67560991..4fb0d0ac1 100644
--- a/drivers/net/sfc/meson.build
+++ b/drivers/net/sfc/meson.build
@@ -8,6 +8,7 @@
if arch_subdir != 'x86' or not dpdk_conf.get('RTE_ARCH_64')
build = false
+ reason = 'only supported on x86_64'
endif
allow_experimental_apis = true
diff --git a/drivers/net/softnic/meson.build b/drivers/net/softnic/meson.build
index dd1d610ea..9c10c2ec8 100644
--- a/drivers/net/softnic/meson.build
+++ b/drivers/net/softnic/meson.build
@@ -2,7 +2,8 @@
# Copyright(c) 2018 Intel Corporation
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
allow_experimental_apis = true
install_headers('rte_eth_softnic.h')
diff --git a/drivers/net/szedata2/meson.build b/drivers/net/szedata2/meson.build
index da3733743..032b42518 100644
--- a/drivers/net/szedata2/meson.build
+++ b/drivers/net/szedata2/meson.build
@@ -3,5 +3,6 @@
dep = cc.find_library('sze2', required: false)
build = dep.found()
+reason = 'missing dependency, "libsze2"'
ext_deps += dep
sources = files('rte_eth_szedata2.c')
diff --git a/drivers/net/tap/meson.build b/drivers/net/tap/meson.build
index c407a1f35..baa70f756 100644
--- a/drivers/net/tap/meson.build
+++ b/drivers/net/tap/meson.build
@@ -2,7 +2,8 @@
# Copyright 2018 Luca Boccassi <bluca@debian.org>
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
sources = files(
'rte_eth_tap.c',
diff --git a/drivers/net/vdev_netvsc/meson.build b/drivers/net/vdev_netvsc/meson.build
index 6655859f8..c82c5476c 100644
--- a/drivers/net/vdev_netvsc/meson.build
+++ b/drivers/net/vdev_netvsc/meson.build
@@ -2,7 +2,8 @@
# Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
if not is_linux
- build = false
+ build = false
+ reason = 'only supported on linux'
endif
sources = files('vdev_netvsc.c')
diff --git a/drivers/net/vhost/meson.build b/drivers/net/vhost/meson.build
index 9b067c35e..9532a7605 100644
--- a/drivers/net/vhost/meson.build
+++ b/drivers/net/vhost/meson.build
@@ -2,6 +2,7 @@
# Copyright(c) 2018 Intel Corporation
build = dpdk_conf.has('RTE_LIBRTE_VHOST')
+reason = 'missing dependency, DPDK vhost library'
version = 2
sources = files('rte_eth_vhost.c')
install_headers('rte_eth_vhost.h')
--
2.21.0
^ permalink raw reply [flat|nested] 14+ messages in thread
* [dpdk-dev] [PATCH 10/10] drivers/raw: add reasons for components being disabled
2019-06-05 20:22 [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Bruce Richardson
` (8 preceding siblings ...)
2019-06-05 20:22 ` [dpdk-dev] [PATCH 09/10] drivers/net: " Bruce Richardson
@ 2019-06-05 20:22 ` Bruce Richardson
2019-06-05 20:39 ` [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Luca Boccassi
10 siblings, 0 replies; 14+ messages in thread
From: Bruce Richardson @ 2019-06-05 20:22 UTC (permalink / raw)
To: bluca, thomas; +Cc: dev, john.mcnamara, Bruce Richardson
For each driver where we optionally disable it, add in the reason why it's
being disabled, so the user knows how to fix it.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
drivers/raw/dpaa2_cmdif/meson.build | 1 +
drivers/raw/dpaa2_qdma/meson.build | 1 +
drivers/raw/ifpga_rawdev/meson.build | 1 +
3 files changed, 3 insertions(+)
diff --git a/drivers/raw/dpaa2_cmdif/meson.build b/drivers/raw/dpaa2_cmdif/meson.build
index 37bb24a1b..9ba1ae2de 100644
--- a/drivers/raw/dpaa2_cmdif/meson.build
+++ b/drivers/raw/dpaa2_cmdif/meson.build
@@ -4,6 +4,7 @@
version = 2
build = dpdk_conf.has('RTE_LIBRTE_DPAA2_MEMPOOL')
+reason = 'missing dependency, DPDK DPAA2 mempool driver'
deps += ['rawdev', 'mempool_dpaa2', 'bus_vdev']
sources = files('dpaa2_cmdif.c')
diff --git a/drivers/raw/dpaa2_qdma/meson.build b/drivers/raw/dpaa2_qdma/meson.build
index 1577946fa..f70ade3b4 100644
--- a/drivers/raw/dpaa2_qdma/meson.build
+++ b/drivers/raw/dpaa2_qdma/meson.build
@@ -4,6 +4,7 @@
version = 2
build = dpdk_conf.has('RTE_LIBRTE_DPAA2_MEMPOOL')
+reason = 'missing dependency, DPDK DPAA2 mempool driver'
deps += ['rawdev', 'mempool_dpaa2', 'ring', 'kvargs']
sources = files('dpaa2_qdma.c')
diff --git a/drivers/raw/ifpga_rawdev/meson.build b/drivers/raw/ifpga_rawdev/meson.build
index 132b77793..0ab6fd711 100644
--- a/drivers/raw/ifpga_rawdev/meson.build
+++ b/drivers/raw/ifpga_rawdev/meson.build
@@ -9,6 +9,7 @@ objs = [base_objs]
dep = dependency('libfdt', required: false)
if not dep.found()
build = false
+ reason = 'missing dependency, "libfdt"'
endif
deps += ['rawdev', 'pci', 'bus_pci', 'kvargs',
'bus_vdev', 'bus_ifpga', 'net']
--
2.21.0
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components
2019-06-05 20:22 [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Bruce Richardson
` (9 preceding siblings ...)
2019-06-05 20:22 ` [dpdk-dev] [PATCH 10/10] drivers/raw: " Bruce Richardson
@ 2019-06-05 20:39 ` Luca Boccassi
2019-06-18 13:18 ` Bruce Richardson
2019-07-02 21:21 ` Thomas Monjalon
10 siblings, 2 replies; 14+ messages in thread
From: Luca Boccassi @ 2019-06-05 20:39 UTC (permalink / raw)
To: Bruce Richardson, thomas; +Cc: dev, john.mcnamara
On Wed, 2019-06-05 at 21:22 +0100, Bruce Richardson wrote:
> After using meson to configure a build, we output a brief list of all
> components that are enabled. However, of more use to most users is a
> list of what is not being enabled, so that they can look for gaps and
> see about fixing those gaps, e.g. by installing driver dependencies.
>
> This patchset adds such a printout at the end, but to make things
> easier, it also adds support for drivers adding a reason why they not
> being built, e.g. unsupported platform, or missing software
> dependency.
Series-acked-by: Luca Boccassi <bluca@debian.org>
--
Kind regards,
Luca Boccassi
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components
2019-06-05 20:39 ` [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Luca Boccassi
@ 2019-06-18 13:18 ` Bruce Richardson
2019-07-02 21:21 ` Thomas Monjalon
1 sibling, 0 replies; 14+ messages in thread
From: Bruce Richardson @ 2019-06-18 13:18 UTC (permalink / raw)
To: Luca Boccassi; +Cc: thomas, dev, john.mcnamara
On Wed, Jun 05, 2019 at 09:39:07PM +0100, Luca Boccassi wrote:
> On Wed, 2019-06-05 at 21:22 +0100, Bruce Richardson wrote:
> > After using meson to configure a build, we output a brief list of all
> > components that are enabled. However, of more use to most users is a
> > list of what is not being enabled, so that they can look for gaps and
> > see about fixing those gaps, e.g. by installing driver dependencies.
> >
> > This patchset adds such a printout at the end, but to make things
> > easier, it also adds support for drivers adding a reason why they not
> > being built, e.g. unsupported platform, or missing software
> > dependency.
>
> Series-acked-by: Luca Boccassi <bluca@debian.org>
>
Ping on this patchset. It's acked almost 2 weeks now, so can it be merged?
[to get it off my "list-of-stuff-to-track"]
/Bruce
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components
2019-06-05 20:39 ` [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Luca Boccassi
2019-06-18 13:18 ` Bruce Richardson
@ 2019-07-02 21:21 ` Thomas Monjalon
1 sibling, 0 replies; 14+ messages in thread
From: Thomas Monjalon @ 2019-07-02 21:21 UTC (permalink / raw)
To: Bruce Richardson; +Cc: dev, Luca Boccassi, john.mcnamara
05/06/2019 22:39, Luca Boccassi:
> On Wed, 2019-06-05 at 21:22 +0100, Bruce Richardson wrote:
> > After using meson to configure a build, we output a brief list of all
> > components that are enabled. However, of more use to most users is a
> > list of what is not being enabled, so that they can look for gaps and
> > see about fixing those gaps, e.g. by installing driver dependencies.
> >
> > This patchset adds such a printout at the end, but to make things
> > easier, it also adds support for drivers adding a reason why they not
> > being built, e.g. unsupported platform, or missing software
> > dependency.
>
> Series-acked-by: Luca Boccassi <bluca@debian.org>
Applied, thanks
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2019-07-02 21:21 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-05 20:22 [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 01/10] build: print list of disabled components for meson build Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 02/10] lib: add reasons for components being disabled Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 03/10] drivers/bus: " Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 04/10] drivers/common: " Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 05/10] drivers/compress: " Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 06/10] drivers/crypto: " Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 07/10] drivers/event: " Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 08/10] drivers/mempool: " Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 09/10] drivers/net: " Bruce Richardson
2019-06-05 20:22 ` [dpdk-dev] [PATCH 10/10] drivers/raw: " Bruce Richardson
2019-06-05 20:39 ` [dpdk-dev] [PATCH 00/10] enhance meson summary - list disabled components Luca Boccassi
2019-06-18 13:18 ` Bruce Richardson
2019-07-02 21:21 ` Thomas Monjalon
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).