This is the currently recommended directory structure:
I think there has been some wavering around an “include” directory. I
personally like the idea of an include directory because:
It separates publicly installed headers vs private headers in the lib
Its a cleaner separation of API and implementation.
Its easier to point doxygen to the public headers and keep it from
parsing everything in “lib”.
Example of a component w/ include:
Example of a component w/ lib only: