boostorg / boostorg/boost

Use top-level include folder for headers

未关闭
#501 1 条评论 2 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
HTML
星标
8.6k
派生
1.9k
平均合并
39 分钟
30 天内合并 PR
2

描述

Currently `b2 headers` puts all headers under `./boost` and adds the root folder to the include path.
In e.g. https://github.com/boostorg/config/issues/345 I argued, that only the minimum amount of stuff should be in the include path, i.e. the current practice would allow `#include ` which is odd, but possible so users might do stuff like that which they are not supposed to.
Even worse: `#include ` now works on systems with case-insensitive filesystems.

This might sound like a stretch, but such a case did appear with `VERSION` or `version` files other projects put into their root folder and added that to the include path which breaks any library prepared for the C++20 header ``, see https://github.com/boostorg/config/issues/345 for more details.

--> I propose to put the headers into `include/boost` and add the `include` folder to the include paths.

I think CMakes FindBoost would still find it, because it considers the include folder already for each searched prefix. For other projects we could still provide a top-level `boost` symlink to `include/boost` but don't use that ourselves anymore, or just drop that.

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。