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

Bruce Richardson bruce.richardson at intel.com
Tue Oct 17 18:12:12 CEST 2017


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

-- 
2.13.6



More information about the dev mailing list