2 ms·
What can be done about libraries on which you want to depend, but that have too many opinions about how they should be built? For example I use bazel and one la
by jeffbee 3y ago
What can be done about libraries on which you want to depend, but that have too many opinions about how they should be built? For example I use bazel and one large library I use forced -Werror into the C compiler invocation, but with my C compiler it has warnings, so it can't actually be built unless I patch out that line of their bazel configs. Another library only builds correctly when using clang if the clang toolchain is named literally "clang" and not, for example, "clang-17". Consequently I have to adopt their convention or maintain a patch against their project. There are many, many unsolved rough edges in bazel along these lines.
- gavinhoward 3y agoAuthor here. Rig will have multi-project builds. It also has a concept called "context stacks". The idea would be that you would have a "compiler option" context stack, and you would push `-Wno-bad-warning`, then inside the context, build that library. Then the library would add `-Werror`, but it would also have `-Wno-bad-warning`, so no problem. But multi-project builds won't exist in the first release.