@@ -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
@@ -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 = ""
@@ -16,6 +16,9 @@ __email__ = "stefanha@linux.vnet.ibm.com"
from tracetool import out
+PUBLIC = True
+
+
PROBEPREFIX = None
def _probeprefix():
@@ -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):
@@ -16,6 +16,9 @@ __email__ = "stefanha@linux.vnet.ibm.com"
from tracetool import out
+PUBLIC = True
+
+
def c(events):
out('#include "trace.h"',
'',
@@ -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',