mirror of
https://github.com/protobuf-c/protobuf-c.git
synced 2024-12-26 21:04:23 +08:00
9fa749d679
exact version coupling between the compiler and the public headers is too strict because some existing projects (such as collectd, riemann-c-client, and nmsg) directly embed .pb-c.h files generated by protoc-c into their exported headers. this would cause unnecessary build failures in downstream clients of these libraries if a newer version of the protobuf-c headers is installed. however, it's still desireable to be able to explicitly declare when compatibility is broken between the headers and the compiler, so introduce new variables that allow independently setting the minimum header version required by the compiler and the minimum compiler version required by the header. this follows the protobuf C++ implementation a little bit more closely, though we don't have an analogous facility for verifying that the header and *library* are compatible. (this seems like overkill for a C project; in practice the headers and the library will be from the same version, especially in downstream distributors like debian where the -dev package has an exact versioned dependency on the shared library package.)