[dpdk-dev] [PATCH v4 00/10] Fix build errors related to exported headers

Adrien Mazarguil adrien.mazarguil at 6wind.com
Mon Jul 18 12:47:56 CEST 2016


On Fri, Jul 15, 2016 at 10:03:02PM +0100, Bruce Richardson wrote:
> On Wed, Jul 13, 2016 at 03:02:37PM +0200, Adrien Mazarguil wrote:
> > DPDK uses GNU C language extensions in most of its code base. This is fine
> > for internal source files whose compilation flags are controlled by DPDK,
> > however user applications that use exported "public" headers may experience
> > compilation failures when enabling strict error/standard checks (-std and
> > -pedantic for instance).
> > 
> > Exported headers are installed system-wide and must be as clean as possible
> > so applications do not have to resort to workarounds.
> > 
> > This patchset affects exported headers only, compilation problems are
> > addressed as follows:
> > 
> > - Adding the __extension__ keyword to nonstandard constructs (same method
> >   as existing libraries when there is no other choice).
> > - Adding the __extension__ keyword to C11 constructs to remain compatible
> >   with pure C99.
> > - Adding missing includes so exported files can be included out of order
> >   and on their own.
> > - Fixing GNU printf-like variadic macros as there is no magic keyword for
> >   these.
> > 
> 
> Having upgraded to Fedora 24, I'm seeing quite a few errors compiling with gcc
> 6.1.1 in debug mode. Applying this patchset seems to really cut down on those
> errors, so may need to be applied for 16.07 release.
> 
> The remaining error I'm seeing is, in mlx drivers, complaints about the
> pedantic flag (the flag which I think was causing all the other errors to be
> triggered too):
> 
> 	error: `-pedantic' is not an option that controls warnings

Saw this as well with GCC 6, I've planned to drop these #pragmas as soon as
possible after this series is applied, however there is some work left to do
on the libibverbs side before that.

> For this set though, I don't see any new errors introduced into gcc or clang
> builds for the libs or drivers, and a number of errors cleared, so:
> 
> Tested-by: Bruce Richardson <bruce.richardson at intel.com>

Thanks for testing.

-- 
Adrien Mazarguil
6WIND


More information about the dev mailing list