trace: [tracetool] Explicitly identify public backends

Public backends are those printed by "--list-backends" and thus considered valid
by the configure script.

Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
Lluís Vilanova 2013-03-05 14:47:26 +01:00 committed by Stefan Hajnoczi
parent e280ff5e91
commit 93fba1618d
6 changed files with 30 additions and 3 deletions

View File

@ -90,8 +90,8 @@ def main(args):
arg_format = arg
elif opt == "--list-backends":
backends = tracetool.backend.get_list()
out(", ".join([ b for b,_ in backends ]))
public_backends = tracetool.backend.get_list(only_public = True)
out(", ".join([ b for b,_ in public_backends ]))
sys.exit(0)
elif opt == "--check-backend":
check_backend = True

View File

@ -17,6 +17,16 @@ considered its short description.
All backends must generate their contents through the 'tracetool.out' routine.
Backend attributes
------------------
========= ====================================================================
Attribute Description
========= ====================================================================
PUBLIC If exists and is set to 'True', the backend is considered "public".
========= ====================================================================
Backend functions
-----------------
@ -42,7 +52,7 @@ import os
import tracetool
def get_list():
def get_list(only_public = False):
"""Get a list of (name, description) pairs."""
res = [("nop", "Tracing disabled.")]
modnames = []
@ -57,6 +67,10 @@ def get_list():
continue
module = module[1]
public = getattr(module, "PUBLIC", False)
if only_public and not public:
continue
doc = module.__doc__
if doc is None:
doc = ""

View File

@ -16,6 +16,9 @@ __email__ = "stefanha@linux.vnet.ibm.com"
from tracetool import out
PUBLIC = True
PROBEPREFIX = None
def _probeprefix():

View File

@ -15,6 +15,10 @@ __email__ = "stefanha@linux.vnet.ibm.com"
from tracetool import out
PUBLIC = True
def is_string(arg):
strtype = ('const char*', 'char*', 'const char *', 'char *')
if arg.lstrip().startswith(strtype):

View File

@ -16,6 +16,9 @@ __email__ = "stefanha@linux.vnet.ibm.com"
from tracetool import out
PUBLIC = True
def c(events):
out('#include "trace.h"',
'',

View File

@ -16,6 +16,9 @@ __email__ = "stefanha@linux.vnet.ibm.com"
from tracetool import out
PUBLIC = True
def c(events):
out('#include <ust/marker.h>',
'#undef mutex_lock',