[dpdk-dev] [PATCH v5 4/8] eal: sys/queue.h implementation for windows

Thomas Monjalon thomas at monjalon.net
Tue Mar 26 23:23:50 CET 2019


26/03/2019 22:54, Jeff Shaw:
> On Tue, Mar 26, 2019 at 10:47:54PM +0100, Thomas Monjalon wrote:
> > 26/03/2019 22:14, Jeff Shaw:
> > > On Tue, Mar 26, 2019 at 09:52:57PM +0100, Thomas Monjalon wrote:
> > > > Even better would be to get it as a dependency outside of DPDK.
> > > > Where this code come from?
> > > > How other projects on Windows get it?
> > > 
> > > It comes from FreeBSD 12.0, specifically
> > >   https://github.com/freebsd/freebsd/blob/releng/12.0/sys/sys/queue.h
> > > 
> > > It has been modified such that only the parts used by DPDK (i.e. TAILQ) are
> > > implemented. The other stuff has been deleted. Windows does not have sys/queue.h,
> > > so we reproduce it here.
> > > 
> > > Would it better to have this as a dependency outside of DPDK? I think pulling a file
> > > from the internet and applying a patch (where we'd have to maintain a patch file
> > > inside of DPDK's repo anyway) would be overkill when we just need a few lines of
> > > code that will change very infrequently.
> > 
> > We already try to get the libbsd dependency on Linux.
> > Why not mandate libbsd for Windows?
> > It has this header file and a lot more:
> > 	https://gitlab.freedesktop.org/libbsd/libbsd/blob/master/include/bsd/sys/queue.h
> > 
> > Relying on libbsd may avoid copying other files for Windows port.
> 
> I like that idea, though it doesn't look like libbsd builds on Windows, do you
> know of a Windows version or one that doesn't depend on autotools to build?

It seems libbsd is not packaged for Windows.
May be worth to ask opinions to libbsd maintainers.

Please could you list which other headers are required for the Windows port?




More information about the dev mailing list