[dpdk-dev] [PATCH v3 0/4] add checking of header includes

Bruce Richardson bruce.richardson at intel.com
Tue Jan 26 16:42:30 CET 2021


On Tue, Jan 26, 2021 at 04:31:36PM +0100, Thomas Monjalon wrote:
> 26/01/2021 15:39, Bruce Richardson:
> > Removing the ALLOW_INTERNAL_API is probably a good idea, but it does indeed
> > throw up the errors with clang - but not gcc, which is strange. The
> > offending headers seem to be (initially):
> > 
> > * rte_ethdev_vdev.h
> > * rte_ethdev_pci.h
> > 
> > Are these public header files, or should they skip header checking - and
> > installation - as internal-only?
> 
> They are helpers for the drivers, so should be internal.
> 
Just to confirm, by that you mean that they should not be installed for
end-application use?

In which case, I believe that "rte_ethdev_driver", "rte_ethdev_vdev" and
"rte_ethdev_pci" should be removed from the "headers" list in
"librte_ethdev/meson.build". Current file list there is:

headers = files('rte_ethdev.h',
        'rte_ethdev_driver.h',
        'rte_ethdev_pci.h',
        'rte_ethdev_trace.h',
        'rte_ethdev_trace_fp.h',
        'rte_ethdev_vdev.h',
        'rte_dev_info.h',
        'rte_flow.h',
        'rte_flow_driver.h',
        'rte_mtr.h',
        'rte_mtr_driver.h',
        'rte_tm.h',
        'rte_tm_driver.h')
headers_no_chkincs += files('rte_eth_ctrl.h',
        'rte_ethdev_core.h')

[Note that the "headers_no_chkincs" files still get installed, they just
skip header checking as indirect includes.]
Anything else that should be removed.

Also, tangential to this, it would probably be good if we could come up
with a different naming scheme for internal-only headers, to make the
difference between what is to be installed or not, a lot clearer!

/Bruce


More information about the dev mailing list