[dpdk-dev] [PATCH 2/2] net/sfc: add support for meson build

Bruce Richardson bruce.richardson at intel.com
Mon Feb 5 11:06:42 CET 2018


On Sat, Feb 03, 2018 at 06:33:51PM +0300, Andrew Rybchenko wrote:
> On 02/02/2018 07:18 PM, Bruce Richardson wrote:
> > On Fri, Feb 02, 2018 at 12:43:58PM +0000, Andrew Rybchenko wrote:
> > > From: Ivan Malov <ivan.malov at oktetlabs.ru>
> > > 
> > > Signed-off-by: Ivan Malov <ivan.malov at oktetlabs.ru>
> > > Signed-off-by: Andrew Rybchenko <arybchenko at solarflare.com>
> > > ---
> > >   drivers/net/meson.build          |  2 +-
> > >   drivers/net/sfc/base/meson.build | 69 ++++++++++++++++++++++++++++++++++++++++
> > >   drivers/net/sfc/meson.build      | 61 +++++++++++++++++++++++++++++++++++
> > >   3 files changed, 131 insertions(+), 1 deletion(-)
> > >   create mode 100644 drivers/net/sfc/base/meson.build
> > >   create mode 100644 drivers/net/sfc/meson.build
> > Hi,
> > 
> > looks pretty good in general. I have a few comments below to improve
> > things.
> > 
> > Unfortunately, this will break the ARM builds in it's current form too
> > (or at least it broke the builds using the cross-files that I tested).
> > I think you need to add a check at the top of the driver meson.build
> > file for unsupported architectures, and set "build = false" for those
> > platforms.
> 
> Many thanks for review notes. Hopefully we have processed everything.
> It looks like x86 is the common for 64-bit and 32-bit.
> In theory we do not supported 32-bit x86 with make.
> I've tried to build on 32-bit host with meson/ninja and the build fails
> but earlier than our driver:
> 
> ../dpdk-next-net/lib/librte_kni/rte_kni.c: In function ‘kni_allocate_mbufs’:
> ../dpdk-next-net/lib/librte_kni/rte_kni.c:669:2: error: size of unnamed
> array is negative
>   RTE_BUILD_BUG_ON(offsetof(struct rte_mbuf, data_off) !=
>   ^~~~~~~~~~~~~~~~
> ../dpdk-next-net/lib/librte_kni/rte_kni.c:671:2: error: size of unnamed
> array is negative
>   RTE_BUILD_BUG_ON(offsetof(struct rte_mbuf, data_len) !=
>   ^~~~~~~~~~~~~~~~
> ../dpdk-next-net/lib/librte_kni/rte_kni.c:673:2: error: size of unnamed
> array is negative
>   RTE_BUILD_BUG_ON(offsetof(struct rte_mbuf, pkt_len) !=
>   ^~~~~~~~~~~~~~~~
> ../dpdk-next-net/lib/librte_kni/rte_kni.c:675:2: error: size of unnamed
> array is negative
>   RTE_BUILD_BUG_ON(offsetof(struct rte_mbuf, ol_flags) !=
>   ^~~~~~~~~~~~~~~~
> ../dpdk-next-net/lib/librte_kni/rte_kni.c: At top level:
> cc1: warning: unrecognized command line option ‘-Wno-format-truncation’
> cc1: warning: unrecognized command line option
> ‘-Wno-address-of-packed-member’
> [26/498] Compiling C object 'lib/rte_port at sta/rte_port_kni.c.o'.
> ninja: build stopped: subcommand failed.
> 
> It is Debian stretch. gcc (Debian 6.3.0-18) 6.3.0 20170516
> Does the build on 32-bit x86 work for you?
> 
> bash$ meson --version
> 0.42.1
> bash$ ninja --version
> 1.7.2
> 
> Build using make works fine.
> 
Yes, I haven't investigated getting 32-bit builds working yet on meson,
due to time constraints. It should be fixed soon in the 18.05 release, I
hope.

At this point for meson patches, the main requirement is to not break
anything that is already confirmed as working. Beyond that, additional
support is always welcome, but not required. :-)

/Bruce


More information about the dev mailing list