summaryrefslogtreecommitdiffstats
path: root/buildrun.cxx
diff options
context:
space:
mode:
authorMark Wielaard <mjw@redhat.com>2009-04-01 23:04:29 +0200
committerMark Wielaard <mjw@redhat.com>2009-04-01 23:04:29 +0200
commit2c246d55893998d60461671767c5f9c05f70c6b7 (patch)
tree04e20f69c813c67534d8a3bd9cd0d4cad84a3544 /buildrun.cxx
parentdd1636396623adacdb9e6502adabd9195ae7ef33 (diff)
parent952ce18c9672046c052fc77d5da8f98e8ae75735 (diff)
downloadsystemtap-steved-2c246d55893998d60461671767c5f9c05f70c6b7.tar.gz
systemtap-steved-2c246d55893998d60461671767c5f9c05f70c6b7.tar.xz
systemtap-steved-2c246d55893998d60461671767c5f9c05f70c6b7.zip
Merge branch 'master' into pr6866
Diffstat (limited to 'buildrun.cxx')
-rw-r--r--buildrun.cxx8
1 files changed, 7 insertions, 1 deletions
diff --git a/buildrun.cxx b/buildrun.cxx
index 6a266bd2..97357692 100644
--- a/buildrun.cxx
+++ b/buildrun.cxx
@@ -149,6 +149,7 @@ compile_pass (systemtap_session& s)
output_autoconf(s, o, "autoconf-procfs-owner.c", "STAPCONF_PROCFS_OWNER", NULL);
output_autoconf(s, o, "autoconf-alloc-percpu-align.c", "STAPCONF_ALLOC_PERCPU_ALIGN", NULL);
output_autoconf(s, o, "autoconf-find-task-pid.c", "STAPCONF_FIND_TASK_PID", NULL);
+ output_autoconf(s, o, "autoconf-x86-gs.c", "STAPCONF_X86_GS", NULL);
#if 0
/* NB: For now, the performance hit of probe_kernel_read/write (vs. our
@@ -345,7 +346,7 @@ run_pass (systemtap_session& s)
// Build a tiny kernel module to query tracepoints
int
-make_tracequery(systemtap_session& s, string& name)
+make_tracequery(systemtap_session& s, string& name, const vector<string>& extra_headers)
{
// create a subdirectory for the module
string dir(s.tmpdir + "/tracequery");
@@ -382,6 +383,11 @@ make_tracequery(systemtap_session& s, string& name)
osrc << "#define DEFINE_TRACE(name, proto, args) \\" << endl;
osrc << " DECLARE_TRACE(name, TPPROTO(proto), TPARGS(args))" << endl;
+ // PR9993: Add extra headers to work around undeclared types in individual
+ // include/trace/foo.h files
+ for (unsigned z=0; z<extra_headers.size(); z++)
+ osrc << "#include <" << extra_headers[z] << ">\n";
+
// dynamically pull in all tracepoint headers from include/trace/
glob_t trace_glob;
string globs[2] = { "/include/trace/*.h", "/source/include/trace/*.h" };