diff options
author | Dave Brolley <brolley@redhat.com> | 2009-03-23 12:16:56 -0400 |
---|---|---|
committer | Dave Brolley <brolley@redhat.com> | 2009-03-23 12:16:56 -0400 |
commit | d171a9ff5fda69cab247d2afd06ec5952941969e (patch) | |
tree | 3127f0a0babb18e62bbe17754462d1366de7a0ad /buildrun.cxx | |
parent | c11e62bef0f85147c96aeb7d0a7f9fd69da51db6 (diff) | |
parent | d4db5608dbc31868a2041f20ea3f473eef3e61fd (diff) | |
download | systemtap-steved-d171a9ff5fda69cab247d2afd06ec5952941969e.tar.gz systemtap-steved-d171a9ff5fda69cab247d2afd06ec5952941969e.tar.xz systemtap-steved-d171a9ff5fda69cab247d2afd06ec5952941969e.zip |
Merge branch 'master' of git://sources.redhat.com/git/systemtap
Diffstat (limited to 'buildrun.cxx')
-rw-r--r-- | buildrun.cxx | 35 |
1 files changed, 21 insertions, 14 deletions
diff --git a/buildrun.cxx b/buildrun.cxx index d797607b..48d4ea50 100644 --- a/buildrun.cxx +++ b/buildrun.cxx @@ -340,7 +340,10 @@ run_pass (systemtap_session& s) staprun_cmd += "-u "; if (s.load_only) - staprun_cmd += "-L "; + staprun_cmd += (s.output_file.empty() ? "-L " : "-D "); + + if (!s.size_option.empty()) + staprun_cmd += "-S " + s.size_option + " "; staprun_cmd += s.tmpdir + "/" + s.module_name + ".ko"; @@ -392,21 +395,25 @@ make_tracequery(systemtap_session& s, string& name) // dynamically pull in all tracepoint headers from include/trace/ glob_t trace_glob; - string glob_str(s.kernel_build_tree + "/include/trace/*.h"); - glob(glob_str.c_str(), 0, NULL, &trace_glob); - for (unsigned i = 0; i < trace_glob.gl_pathc; ++i) + string globs[2] = { "/include/trace/*.h", "/source/include/trace/*.h" }; + for (unsigned z=0; z<2; z++) { - string header(basename(trace_glob.gl_pathv[i])); - - // filter out a few known "internal-only" headers - if (header == "trace_events.h") - continue; - if (header.find("_event_types.h") != string::npos) - continue; - - osrc << "#include <trace/" << header << ">" << endl; + string glob_str(s.kernel_build_tree + globs[z]); + glob(glob_str.c_str(), 0, NULL, &trace_glob); + for (unsigned i = 0; i < trace_glob.gl_pathc; ++i) + { + string header(basename(trace_glob.gl_pathv[i])); + + // filter out a few known "internal-only" headers + if (header == "trace_events.h") + continue; + if (header.find("_event_types.h") != string::npos) + continue; + + osrc << "#include <trace/" << header << ">" << endl; + } + globfree(&trace_glob); } - globfree(&trace_glob); // finish up the module source osrc << "#endif /* CONFIG_TRACEPOINTS */" << endl; |