On 02/13/2018 06:00 AM, Peter Maydell wrote:
> A persistent build problem we see is where a source file
> accidentally omits the #include of log.h. This slips through
> local developer testing because if you configure with the
> default (log) trace backend trace.h will pull in log.h for you.
> Compilation fails only if some other backend is selected.
> To make this error cause a compile failure regardless of
> the configured trace backend, split out the parts of log.h
> that trace.h requires into a new log-for-trace.h header.
> Since almost all manual uses of the log.h functions will
> use constants or functions which aren't in log-for-trace.h,
> this will let us catch missing #include "qemu/log.h" more
> Signed-off-by: Peter Maydell <peter.mayd...@linaro.org>
> include/qemu/log-for-trace.h | 35 +++++++++++++++++++++++++++++++++++
> include/qemu/log.h | 18 ++++--------------
> scripts/tracetool/backend/log.py | 13 ++++++-------
> 3 files changed, 45 insertions(+), 21 deletions(-)
> create mode 100644 include/qemu/log-for-trace.h
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>