Opened 6 years ago
Closed 4 years ago
#12883 closed Feature Requests (wontfix)
Why are relative #include's not used in config
Reported by: | Owned by: | John Maddock | |
---|---|---|---|
Milestone: | To Be Determined | Component: | config |
Version: | Boost 1.63.0 | Severity: | Problem |
Keywords: | Cc: |
Description
We are trying to use Boost/config in the API of our library -- it really helps for exporting symbols/etc. But that means we need to ship those files as we cannot assume the library consumer has Boost installed. So our API is organized like this:
include/
- my_library.h (This has #include "config.hpp" _relative_ import)
- config.hpp
- config/
- ...
This is fine and works great when we are building the library. But since config uses <> when #include'ing everything below it, consumers need to add the path to the include search path. I feel the use of Boost/config should be an implementation detail of my API that the consumer is not required to know. I would like to see config use relative paths instead of system paths.
I dug up #12063 and #12064, but those were more interested in making #include work instead of fixing the relative paths. I understand that other parts of Boost need to properly find everything else in Boost, but config seems isolated to only itself; i.e. relative paths should not interfere with the local project files.