You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Benjamin Bannier (JIRA)" <ji...@apache.org> on 2017/05/08 16:52:04 UTC
[jira] [Created] (MESOS-7470) CMake build does not make sure proto
outputs are generated before attempting to compile users
Benjamin Bannier created MESOS-7470:
---------------------------------------
Summary: CMake build does not make sure proto outputs are generated before attempting to compile users
Key: MESOS-7470
URL: https://issues.apache.org/jira/browse/MESOS-7470
Project: Mesos
Issue Type: Bug
Components: cmake
Reporter: Benjamin Bannier
For each protobuf file, our cmake setup creates a dedicated target generating both the header and implementation file and adds these as dependencies directly to some other target (typically a library). At least for the Make generator, this under the covers introduces a dependency edge from the library to an object file generated from compiling the protobuf implementation file.
If a protobuf file has an {{import}} for another protobuf file, the generated C++ will include the corresponding generated header file. We currently do not ensure all input files (e.g., headers) are generated from their sources before compiling users.
This can lead to faulty builds where
1) a consuming protobuf file is compiled before its inputs are generated, or
2) in incremental builds, a consuming protobuf is compiled from an outdated generated protobuf header file.
It seems we should ensure all protobuf files are created before allowing compilation of users.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)