Add a skeleton for new library: libtracefs, providing APIs for accessing files from tracefs. The library files are added in lib/tracefs include/tracefs It is built and installed by trace-cmd targets make libs make install_libs A unit test framework is added, as POC patch, to test the APIs of the library. It requiers CUnit test framework to be installed on the machine. A new target is added to build the unit test: make test [ v3 changes: - Renamed few APIs, to match the naming convention used commonly - Optimized tracefs_iterate_raw_events() API - Added unit test infrastructure - Few minor changes v2 changes: - Fix copyright of the newly created files - Remove tracefs_write_file() API, add it as a local helper function ] Tzvetomir Stoyanov (VMware) (5): trace-cmd,kernel-shark: Introduce libtracefs library trace-cmd: New libtracefs APIs for ftrace instances trace-cmd,kernel-shark: New libtracefs APIs for ftrace events and systems trace-cmd,kernel-shark: New libtracefs APIs for loading ftrace events trace-cmd: Unit test for libtracefs Makefile | 38 +- include/trace-cmd/trace-cmd.h | 21 - include/tracefs/tracefs.h | 58 +++ kernel-shark/CMakeLists.txt | 3 +- kernel-shark/build/FindTraceCmd.cmake | 30 ++ kernel-shark/src/CMakeLists.txt | 2 + kernel-shark/src/KsCaptureDialog.cpp | 4 +- kernel-shark/src/libkshark.h | 1 + lib/trace-cmd/trace-input.c | 95 ---- lib/trace-cmd/trace-output.c | 3 +- lib/trace-cmd/trace-recorder.c | 7 +- lib/trace-cmd/trace-util.c | 629 -------------------------- lib/tracefs/Makefile | 48 ++ lib/tracefs/include/tracefs-local.h | 13 + lib/tracefs/tracefs-events.c | 627 +++++++++++++++++++++++++ lib/tracefs/tracefs-instance.c | 249 ++++++++++ lib/tracefs/tracefs-utils.c | 226 +++++++++ lib/utest/Makefile | 43 ++ lib/utest/trace-utest.c | 83 ++++ lib/utest/trace-utest.h | 11 + lib/utest/tracefs-utest.c | 132 ++++++ tracecmd/Makefile | 2 +- tracecmd/include/trace-local.h | 5 +- tracecmd/trace-check-events.c | 5 +- tracecmd/trace-list.c | 21 +- tracecmd/trace-record.c | 487 +++++++------------- tracecmd/trace-show.c | 7 +- tracecmd/trace-snapshot.c | 9 +- tracecmd/trace-stack.c | 9 +- tracecmd/trace-stat.c | 38 +- 30 files changed, 1782 insertions(+), 1124 deletions(-) create mode 100644 include/tracefs/tracefs.h create mode 100644 lib/tracefs/Makefile create mode 100644 lib/tracefs/include/tracefs-local.h create mode 100644 lib/tracefs/tracefs-events.c create mode 100644 lib/tracefs/tracefs-instance.c create mode 100644 lib/tracefs/tracefs-utils.c create mode 100644 lib/utest/Makefile create mode 100644 lib/utest/trace-utest.c create mode 100644 lib/utest/trace-utest.h create mode 100644 lib/utest/tracefs-utest.c -- 2.24.1