vector-of-bool/pitchfork

Missing directories include/ and tools/

Opened this issue · 1 comments

If you're developing a library (not an application), then you want a root include directory which will be installed as public API on the system (this means you use <...> for them instead of "..." for headers in src/).

include/mylibrary/
include/mylibrary/mylibrary.hpp
include/mylibrary/mylibrary/specific_header.hpp

Users are recommended to include <mylibrary/mylibrary.hpp>

If a library has multiple modules (like boost), then the layout is:

include/myproject/
include/myproject/sublibrary1.hpp
include/myproject/sublibrary1/specific_header.hpp
include/myproject/sublibrary2.hpp
include/myproject/sublibrary2/specific_header.hpp

This is for larger projects with multiple library modules (that might be in separate repos or the same repo).

Having the include/ files available serves as a kind of public documentation.

The second issue, is there needs to be a tools/ directory for scripts, optional tooling, things used for development of the code but aren't necessarily part of the main distribution for the application/library.

Assuming this is about the project layout spec. There is an include/ and a tools/. I believe they are what you're looking for.