16/03/2020 13:04, Thomas Monjalon: > RTE_TOOLCHAIN_* macros are defining the target compiler. > Some API may be used in a host application like pmdinfogen. > That's why the the public headers should check the effective compiler > in use instead of the target compiler. > > Detecting the compiler with macros is easy, except for __GNUC__ > which is defined in all compilers supporting some GNU compatibility. > > It is improved by defining RTE_CC_CLANG, RTE_CC_ICC and RTE_CC_GCC. > The extra macro RTE_CC_IS_GNU is defined to 0 or 1 in GCC case, > so it can be used simply with #if. > > Signed-off-by: Thomas Monjalon <tho...@monjalon.net> > --- > > This patch is probably useless. > The first intent was fixing pmdinfogen compilation with clang > while compiling the target with GCC, with MinGW support patch. > > This case is now better fixed with a patch removing EAL dependencies > from the PCI library, which drops rte_common.h inclusion from pmdinfogen: > http://patches.dpdk.org/patch/66701/
Actually rte_common.h is directly included by buildtools/pmdinfogen/pmdinfogen.c so we need this patch in my opinion. > As a consequence, I send this EAL patch just in case we need it > in future. We can decide to apply or leave it. This patch is now gating acceptance of MinGW support.