* [xDS Proto] Enhence gRPC buildgen for 3rd party proto compilation
* Rebase from master to update envoy-api version
* Address reviewer's comments
* Address reviewer's comment
* Regenerate project
* Rename external_library
* Address reviewer's comments
* Add comments for the internals of generate C++ proto code
* Add proto file as a dependency to the custom command
This fixes the issue: https://github.com/grpc/grpc/issues/16688
Which causes that grpc can not be build because of the following
compiler error:
third_party/cares/cares/ares_init.c: In function ‘ares_dup’:
third_party/cares/cares/ares_init.c:301:17: error: argument to ‘sizeof’ in ‘strncpy’ call is the same expression as the source; did you mean to use the size of the destination? [-Werror=sizeof-pointer- memaccess] sizeof(src->local_dev_name));
We have to give cmake the explicit zlib location as the internal testing
environment has C:/msys64/usr/bin in the PATH and zlib-devel installed.
cmake has heuristics in find_package which sees this /bin suffix in PATH
and adds C:/msys64/usr/ to the find_package search locations. Doing a
find_package(zlib) in this environment makes the find module for it (FindZLIB)
find the header zlib.h in C:/msys64/usr/include while the library will still
be taken from the testinstall location masking the issue in the log. To satisfy
the dependency cmake adds C:/msys64/usr/include as an include directory. This
makes cl.exe build with mixed C and C++ standard lib headers breaking the
build.
This issue was previously masked by cmake writing absolute paths for zlib and
other dependencies into the grpc cmake exports.