Comparison of different C libraries providing generic containers capabilities
4 comments
·August 13, 2025fuhsnn
mananaysiempre
The first two should be fixable by invoking make WCFLAGS_GCC= and make LDFLAGS= respectively.
(An assignment like FOO=bar in the makefile is a default[1], overridable by passing FOO=baz as one of the arguments to make. FOO?=bar can additionally be overridden by setting FOO to a different value in the environment.)
[1] https://www.gnu.org/software/make/manual/html_node/Overridin...
fuhsnn
Thanks for the tips! Yes it can always be worked around, however the intuition I developed from doing it for over a hundred of projects [1] is that, with script like that there usually would be more compiler assumptions in C code as well, then I just move on to other projects.
(And it also feels awkward whether to report portability issues to projects with such script because it's like a clear "not for other compilers" message, similar to projects that adopted Meson)
[1] https://github.com/fuhsnn/slimcc/blob/94dde1b8080e02b188ea89...
rurban
Ha, he includes mine. Thanks
I'd love to have some of these libraries in slimcc's test pool, but almost every one of them have hard-coded assumptions to gcc/clang/msvc/tcc in their scripts that are tiresome to undo. For example:
MLIB: assumed GCC https://github.com/P-p-H-d/mlib/blob/4b9c213831624486814a483...
STC: assumed -fopenmp https://github.com/stclib/STC/blob/de7313a58f748d9a6da751eb9...
CC: assumed clang https://github.com/JacksonAllan/CC/blob/main/tests/run_unit_...