Currently there are no trace-cmd related plugins, all of them are designed to be used with libtraceeevnt. As both libtraceevent and trace-cmd have logic for managing plugins, the one in trace-cmd is redundant. Those redundant code is removed and replaced with calls to libtraceeevnt plugin APIs. When trace-cmd has to load any plugins, it uses libtraceeevnt to do the job. A new libtraceevent API is introduced, which can be used to define custom plugin directories. It is used by trace-cmd to load development plugins, if any. An initial infrastructure for trace-cmd specific plugins is added - new lib/trace-cmd/plugins directory and an initial set of APIs for working with trace-cmd plugins. [ v6 changes: - Introduced new libtraceevent API for adding custom plugin directories. v5 changes: - Removed accepted patches from the patch set. - Moved logic which loads traceevent development plugins from libtraceevent to trace-cmd application. ] Tzvetomir Stoyanov (VMware) (3): trace-cmd: Introduced new traceevent API, for adding new plugins directories. trace-cmd: Load libtraceevent plugins from build folder, if exists. trace-cmd: Add initial infrastructure for trace-cmd specific plugins. .gitignore | 1 + Makefile | 40 +++- include/trace-cmd/trace-cmd.h | 42 ++++ include/traceevent/event-parse.h | 7 + lib/trace-cmd/Makefile | 1 + lib/trace-cmd/plugins/Makefile | 58 ++++++ lib/trace-cmd/trace-input.c | 7 +- lib/trace-cmd/trace-plugin.c | 313 +++++++++++++++++++++++++++++ lib/trace-cmd/trace-util.c | 42 ++++ lib/traceevent/event-parse-local.h | 5 +- lib/traceevent/event-parse.c | 1 + lib/traceevent/event-plugin.c | 70 +++++++ tracecmd/trace-check-events.c | 7 +- tracecmd/trace-list.c | 14 +- 14 files changed, 575 insertions(+), 33 deletions(-) create mode 100644 lib/trace-cmd/plugins/Makefile create mode 100644 lib/trace-cmd/trace-plugin.c -- 2.21.0