-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/57052/
-----------------------------------------------------------
Review request for mesos, Alex Clemmer, Joseph Wu, and Michael Park.
Bugs: MESOS-7172
https://issues.apache.org/jira/browse/MESOS-7172
Repository: mesos
Description
-------
Commit c7fc1377b introduced a bug that prevented any incremental
recompilation. By defining the `BUILD_TIME` in `MESOS_CPPFLAGS`,
every build was seen as having a root dependency (the flags)
changed, causing a rebuild of every single file (including
dependencies).
This patch introduces a CMake `configure_file` directive which
takes in `config.hpp.in` and emits `config.hpp` with the
`BUILD_TIME`, `BUILD_DATE`, and `BUILD_USER` variables defined.
It also sets `HAVE_CONFIG_H` which `build.cpp` uses to `#include`
the configuration file. The result is that the date, time, and user
are set at the point of configuration (invocation of CMake) instead
of at build, thus allowing for incremental rebuilds.
As `config.hpp` is auto-generated by the CMake configuration,
it is ignored by Git.
Diffs
-----
cmake/CompilationConfigure.cmake ed727e6a679e718f88f158faba9fecc3061ac700
src/common/build.cpp 090b59fb22bfc00516d65f501f8f18cd85a5b4cd
src/common/config.hpp.in PRE-CREATION
support/gitignore 90b6697d19a5e0a68805b23b587b362731a1df25
Diff: https://reviews.apache.org/r/57052/diff/
Testing
-------
cmake; make && make check on Linux
cmake; VS build stout-tests and mesos-tests, then repeat and see no compilation
take place a second time. Also support\windows-build.bat twice.
Thanks,
Andrew Schwartzmeyer