Hi, On 2018 M05 29, Tue 09:52:16 CEST Brad King wrote: > On 05/15/2018 03:45 PM, Alexander Neundorf wrote: > > I think to do it properly, there would have to be a dependency scanning > > for > > proto files like there is for C/C++ headers. > > In order to handle implicit dependencies like that implied by > > import "MyBase.proto"; > > then they would somehow need to be extracted from source content. > Ideally protoc should be able to write a depfile as a side effect. Parsing them using cmake would more or less work, also the include dirs are known, so technically this would probably work. But the parsing would happen at cmake-time, not at compile-time, but editing a proto-file does not trigger a cmake run... Would that have to be implemented similar to the C dependency scanning ?
> Otherwise all dependencies should be listed explicitly somewhere. so the cheap solution would be to add an argument to PROTOBUF_GENERATE_CPP() to list proto-files these proto-files depend on which is forwarded to (every) add_custom_command() call inside PROTOBUF_GENERATE_CPP(). Not very elegant, but at least it would make it work correctly. This would require that if in a set of proto-files there are different dependencies, for each of those with different dependencies a separate PROTOBUF_GENERATE_CPP() would be needed. A bit ugly, but better than now. Alex -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: https://cmake.org/mailman/listinfo/cmake-developers