libcamera: tracing: Implement tracing infrastructure
Implement tracing infrastructure in libcamera. It takes .tp files, as required by lttng, and generates a tracepoint header and C file, as lttng requires. meson is updated accordingly to get it to compile with the rest of libcamera. Update the documentation accordingly. Signed-off-by: Paul Elder <paul.elder@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
@@ -55,6 +55,7 @@ libcamera_sources = files([
|
||||
])
|
||||
|
||||
libcamera_sources += libcamera_public_headers
|
||||
libcamera_sources += libcamera_tracepoint_header
|
||||
|
||||
includes = [
|
||||
libcamera_includes,
|
||||
@@ -72,6 +73,11 @@ if libgnutls.found()
|
||||
config_h.set('HAVE_GNUTLS', 1)
|
||||
endif
|
||||
|
||||
if liblttng.found()
|
||||
config_h.set('HAVE_TRACING', 1)
|
||||
libcamera_sources += files(['tracepoints.cpp'])
|
||||
endif
|
||||
|
||||
if libudev.found()
|
||||
config_h.set('HAVE_LIBUDEV', 1)
|
||||
libcamera_sources += files([
|
||||
@@ -114,6 +120,7 @@ libcamera_deps = [
|
||||
libatomic,
|
||||
libdl,
|
||||
libgnutls,
|
||||
liblttng,
|
||||
libudev,
|
||||
dependency('threads'),
|
||||
]
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
||||
/*
|
||||
* Copyright (C) 2020, Google Inc.
|
||||
*
|
||||
* tracepoints.cpp - Tracepoints with lttng
|
||||
*/
|
||||
#define TRACEPOINT_CREATE_PROBES
|
||||
#define TRACEPOINT_DEFINE
|
||||
|
||||
#include "libcamera/internal/tracepoints.h"
|
||||
Reference in New Issue
Block a user