3 ms·
> Just like any classic C library ... using pkg-config A "classic C library" cannot assume the existence of pkg-config (or checkinstall, or conan, or vcpkg, or
by torstenvl 4y ago
> Just like any classic C library ... using pkg-config
A "classic C library" cannot assume the existence of pkg-config (or checkinstall, or conan, or vcpkg, or cmake).
It can assume the existence of the preprocessor.
- pjmlp 4y agoRead the rest of the comment... EDIT: Since you modified the comment, it can at very least assume the existence of a compiler, a linker and make.
- deleted 4y ago[deleted]
- deleted 4y ago[deleted]
- deleted 4y ago[deleted]
- torstenvl 4y agoNo, it really can't. Nothing about C guarantees that the implementation will provide `make` (let alone that it will be POSIX make or BSD make or GNU make). Nor (going back to your original comment: https://news.ycombinator.com/item?id=34244452 https://news.ycombinator.com/item?id=34244452) is it guaranteed to be hosted on a system with dynamic linking. The OP library has a design such that the only build system you need is the preprocessor. That is a perfectly valid design decision, especially since this is explicitly for lighter-weight uses where GLib would be excessive. If you don't like it, don't use it. EDIT: Clang, for example, does not provide a `make` or guarantee a `make` exists. It will happily co-exist with BSD make on FreeBSD, or GNU make on macOS, or no make at all. I assume you concede on pkg-config, etc.
- pjmlp 4y agoWho said dynamic linking is required?!? Another example of lack of understanding how C toolchains work. Since the days C got outside Bell Labs, every single C compiler has provided those tools. Ignoring 50 years of C practices in library distribution is exactly that, willful ignorance.