[dpdk-dev] [PATCH 0/8] Support sample applications with new build system

Luca Boccassi bluca at debian.org
Wed Oct 18 19:11:51 CEST 2017


On Tue, 2017-10-17 at 17:12 +0100, Bruce Richardson wrote:
> This patchset enables sample apps to be used with the new meson build
> system. The work is really three-fold:
> 
> * fix issues and pre-requisites to get the sample apps compiling,
> such as
>   ensuring that all needed PMDs are enabled, e.g. bond PMD for bond
> example
> * allow examples - one or more - to built as part of a regular build,
> so as
>   to allow easier testing of feature X using its sample app
> * change the example app Makefiles so that when compiled as
> standalone
>   entities they use the pkg-config information when available, and
> only the
>   DPDK makefile system if pkgconfig info is not installed.
> 
> Bruce Richardson (8):
>   build: add maths library to libs in pkg-config file
>   build: add detection and use of libnuma
>   lpm: install vector header files
>   event: add skeleton and sw eventdevs to meson build
>   net/bonding: add to meson build
>   examples: allow building examples as part of a meson build
>   examples: put app name and sources at top of makefiles
>   examples: use pkg-config info when building examples
> 
>  config/meson.build                            | 11 ++++
>  drivers/event/meson.build                     | 35 ++++++++++
>  drivers/event/skeleton/meson.build            | 32 +++++++++
>  drivers/event/sw/meson.build                  | 37 +++++++++++
>  drivers/meson.build                           |  2 +-
>  drivers/net/bonding/meson.build               | 39 +++++++++++
>  drivers/net/meson.build                       |  3 +-
>  examples/bond/Makefile                        | 35 ++++++++--
>  examples/bond/meson.build                     | 40 ++++++++++++
>  examples/cmdline/Makefile                     | 29 +++++++++
>  examples/cmdline/meson.build                  | 39 +++++++++++
>  examples/distributor/Makefile                 | 35 ++++++++--
>  examples/distributor/meson.build              | 40 ++++++++++++
>  examples/eventdev_pipeline_sw_pmd/Makefile    | 35 ++++++++--
>  examples/eventdev_pipeline_sw_pmd/meson.build | 40 ++++++++++++
>  examples/exception_path/Makefile              | 35 ++++++++--
>  examples/exception_path/meson.build           | 39 +++++++++++
>  examples/helloworld/Makefile                  | 35 ++++++++--
>  examples/helloworld/meson.build               | 39 +++++++++++
>  examples/ip_fragmentation/Makefile            | 35 ++++++++--
>  examples/ip_fragmentation/meson.build         | 40 ++++++++++++
>  examples/ip_pipeline/Makefile                 | 93
> ++++++++++++++++++---------
>  examples/ip_pipeline/meson.build              | 63
> ++++++++++++++++++
>  examples/ip_reassembly/Makefile               | 35 ++++++++--
>  examples/ip_reassembly/meson.build            | 40 ++++++++++++
>  examples/ipsec-secgw/Makefile                 | 55 +++++++++++-----
>  examples/ipsec-secgw/meson.build              | 41 ++++++++++++
>  examples/ipv4_multicast/Makefile              | 35 ++++++++--
>  examples/ipv4_multicast/meson.build           | 40 ++++++++++++
>  examples/kni/Makefile                         | 34 ++++++++--
>  examples/kni/meson.build                      | 40 ++++++++++++
>  examples/l2fwd-cat/Makefile                   | 37 +++++++++--
>  examples/l2fwd-cat/meson.build                | 42 ++++++++++++
>  examples/l2fwd-crypto/Makefile                | 34 ++++++++--
>  examples/l2fwd-crypto/meson.build             | 40 ++++++++++++
>  examples/l2fwd-jobstats/Makefile              | 34 ++++++++--
>  examples/l2fwd-jobstats/meson.build           | 40 ++++++++++++
>  examples/l2fwd-keepalive/Makefile             | 36 +++++++++--
>  examples/l2fwd-keepalive/meson.build          | 40 ++++++++++++
>  examples/l2fwd/Makefile                       | 34 ++++++++--
>  examples/l2fwd/meson.build                    | 39 +++++++++++
>  examples/l3fwd-acl/Makefile                   | 34 ++++++++--
>  examples/l3fwd-acl/meson.build                | 40 ++++++++++++
>  examples/l3fwd-power/Makefile                 | 34 ++++++++--
>  examples/l3fwd-power/meson.build              | 40 ++++++++++++
>  examples/l3fwd-vf/Makefile                    | 34 ++++++++--
>  examples/l3fwd-vf/meson.build                 | 40 ++++++++++++
>  examples/l3fwd/Makefile                       | 34 ++++++++--
>  examples/l3fwd/meson.build                    | 40 ++++++++++++
>  examples/link_status_interrupt/Makefile       | 34 ++++++++--
>  examples/link_status_interrupt/meson.build    | 39 +++++++++++
>  examples/load_balancer/Makefile               | 34 ++++++++--
>  examples/load_balancer/meson.build            | 40 ++++++++++++
>  examples/meson.build                          | 59 +++++++++++++++++
>  examples/multi_process/l2fwd_fork/Makefile    | 12 ++--
>  examples/packet_ordering/Makefile             | 34 ++++++++--
>  examples/packet_ordering/meson.build          | 40 ++++++++++++
>  examples/ptpclient/Makefile                   | 34 ++++++++--
>  examples/ptpclient/meson.build                | 39 +++++++++++
>  examples/qos_meter/Makefile                   | 34 ++++++++--
>  examples/qos_meter/meson.build                | 40 ++++++++++++
>  examples/qos_sched/Makefile                   | 34 ++++++++--
>  examples/qos_sched/meson.build                | 41 ++++++++++++
>  examples/rxtx_callbacks/Makefile              | 34 ++++++++--
>  examples/rxtx_callbacks/meson.build           | 39 +++++++++++
>  examples/skeleton/Makefile                    | 34 ++++++++--
>  examples/skeleton/meson.build                 | 39 +++++++++++
>  examples/tep_termination/Makefile             | 34 ++++++++--
>  examples/tep_termination/meson.build          | 40 ++++++++++++
>  examples/timer/Makefile                       | 34 ++++++++--
>  examples/timer/meson.build                    | 40 ++++++++++++
>  examples/vhost/Makefile                       | 34 ++++++++--
>  examples/vhost/meson.build                    | 40 ++++++++++++
>  examples/vhost_scsi/Makefile                  | 39 ++++++++---
>  examples/vhost_scsi/meson.build               | 41 ++++++++++++
>  examples/vmdq/Makefile                        | 34 ++++++++--
>  examples/vmdq/meson.build                     | 39 +++++++++++
>  examples/vmdq_dcb/Makefile                    | 34 ++++++++--
>  examples/vmdq_dcb/meson.build                 | 39 +++++++++++
>  lib/librte_eal/linuxapp/eal/meson.build       |  3 +
>  lib/librte_lpm/meson.build                    |  3 +
>  lib/librte_vhost/meson.build                  |  3 +
>  meson.build                                   |  5 ++
>  meson_options.txt                             |  2 +
>  84 files changed, 2699 insertions(+), 248 deletions(-)
>  create mode 100644 drivers/event/meson.build
>  create mode 100644 drivers/event/skeleton/meson.build
>  create mode 100644 drivers/event/sw/meson.build
>  create mode 100644 drivers/net/bonding/meson.build
>  create mode 100644 examples/bond/meson.build
>  create mode 100644 examples/cmdline/meson.build
>  create mode 100644 examples/distributor/meson.build
>  create mode 100644 examples/eventdev_pipeline_sw_pmd/meson.build
>  create mode 100644 examples/exception_path/meson.build
>  create mode 100644 examples/helloworld/meson.build
>  create mode 100644 examples/ip_fragmentation/meson.build
>  create mode 100644 examples/ip_pipeline/meson.build
>  create mode 100644 examples/ip_reassembly/meson.build
>  create mode 100644 examples/ipsec-secgw/meson.build
>  create mode 100644 examples/ipv4_multicast/meson.build
>  create mode 100644 examples/kni/meson.build
>  create mode 100644 examples/l2fwd-cat/meson.build
>  create mode 100644 examples/l2fwd-crypto/meson.build
>  create mode 100644 examples/l2fwd-jobstats/meson.build
>  create mode 100644 examples/l2fwd-keepalive/meson.build
>  create mode 100644 examples/l2fwd/meson.build
>  create mode 100644 examples/l3fwd-acl/meson.build
>  create mode 100644 examples/l3fwd-power/meson.build
>  create mode 100644 examples/l3fwd-vf/meson.build
>  create mode 100644 examples/l3fwd/meson.build
>  create mode 100644 examples/link_status_interrupt/meson.build
>  create mode 100644 examples/load_balancer/meson.build
>  create mode 100644 examples/meson.build
>  create mode 100644 examples/packet_ordering/meson.build
>  create mode 100644 examples/ptpclient/meson.build
>  create mode 100644 examples/qos_meter/meson.build
>  create mode 100644 examples/qos_sched/meson.build
>  create mode 100644 examples/rxtx_callbacks/meson.build
>  create mode 100644 examples/skeleton/meson.build
>  create mode 100644 examples/tep_termination/meson.build
>  create mode 100644 examples/timer/meson.build
>  create mode 100644 examples/vhost/meson.build
>  create mode 100644 examples/vhost_scsi/meson.build
>  create mode 100644 examples/vmdq/meson.build
>  create mode 100644 examples/vmdq_dcb/meson.build

Reviewed-by: Luca Boccassi <bluca at debian.org>

Forgot to write that regardless of what we can do with the static +
dynamic builds, the series looks good. Thanks!

-- 
Kind regards,
Luca Boccassi


More information about the dev mailing list