Martin Dorey wrote:
This seems to work:martind@sirius:~/tmp/vanem-2023-04-14$ cat Makefile g_trace.h: Makefile; $(file > $@,$(trace_h)) \ = \ define trace_h #define G_TRACE(level, fmt, ...) $\\ do { $\\ if (_g_trace_level() >= level) { $\\ _g_trace_color (TRACE_COLOUR_START); $\\ # .... endef martind@sirius:~/tmp/vanem-2023-04-14$ make --warn-undefined-variables; cat g_trace.h; rm g_trace.h make: 'g_trace.h' is up to date. #define G_TRACE(level, fmt, ...) \ do { \ if (_g_trace_level() >= level) { \ _g_trace_color (TRACE_COLOUR_START); \ # ....
Thanks! But isn't make overzealous on this warning? Shouldn't the '$\' be treated as an ESCape character?
