X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=include%2Flttng%2Ftracepoint-event.h;fp=include%2Flttng%2Ftracepoint-event.h;h=077eaa0b46d48fcf1baa0d35f4b188246275fd85;hb=41858e2b6e81ee5e02eccdd7467b9239d4cdf726;hp=d36a9bafc3b470888b29f7e9010638f893f6f853;hpb=7cd5a8404671276379bdc6a2331ac0da96f9b72b;p=lttng-ust.git diff --git a/include/lttng/tracepoint-event.h b/include/lttng/tracepoint-event.h index d36a9baf..077eaa0b 100644 --- a/include/lttng/tracepoint-event.h +++ b/include/lttng/tracepoint-event.h @@ -39,16 +39,31 @@ extern "C" { TRACEPOINT_EVENT_INSTANCE(_provider, _name, _name, \ _TP_PARAMS(_args)) -#define TRACEPOINT_INCLUDE __tp_stringify(TRACEPOINT_INCLUDE_FILE) #undef TRACEPOINT_CREATE_PROBES #define TRACEPOINT_HEADER_MULTI_READ + +/* + * LTTng-UST 2.0 expects TRACEPOINT_INCLUDE_FILE, but this approach has + * the unwanted side-effect of expanding any macro name found within + * TRACEPOINT_INCLUDE_FILE. + * + * Starting from LTTng-UST 2.1, we expect the TRACEPOINT_INCLUDE to be + * defined by probes as a string. We still check for + * TRACEPOINT_INCLUDE_FILE for API backward compatibility. + */ +#ifdef TRACEPOINT_INCLUDE_FILE +#define TRACEPOINT_INCLUDE __tp_stringify(TRACEPOINT_INCLUDE_FILE) +#endif + #include TRACEPOINT_INCLUDE #include #undef TRACEPOINT_HEADER_MULTI_READ +#undef TRACEPOINT_INCLUDE_FILE +#undef TRACEPOINT_INCLUDE #define TRACEPOINT_CREATE_PROBES