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