Hi guys,
You may be aware of the musl project, a new/clean implementation of the C library focussed on strict standards compliance and security.
The ibrcommon repository doesn't compile against musl. When I looked I found out that the problem was due to a call to basename(3) in ibrcommon/data/File.cpp.
basename expects a char*, but the code passes a std::string.c_str() which is a const char*. The compiler refuses to build.
The reason why it works on glibc is because they overload basename() by supplying a version which accepts a const char*. This is GNU extension; musl doesn't supply this due to the aforementioned focus on standards compliance.
I have a patch that fixes this which I'm happy to share - is this mailing list the appropriate place to submit patches or is there a preferred mechanism ?
Brendan