From f46d1b8ad2ff5e1f2355b2aefe2fe7a6ab54823c Mon Sep 17 00:00:00 2001 From: Stan Cox Date: Mon, 26 Jan 2009 16:11:41 -0500 Subject: Fix syscall.exp. --- dtrace | 1 - 1 file changed, 1 deletion(-) (limited to 'dtrace') diff --git a/dtrace b/dtrace index 1eb53bf9..2b261f5a 100755 --- a/dtrace +++ b/dtrace @@ -117,7 +117,6 @@ while (i < len (sys.argv)): elif (sys.argv[i] == "-G"): build_source = True i += 1 -# print build_header == False and build_source == False if (build_header == False and build_source == False): usage() sys.exit(1) -- cgit From d079c8a3bfbd22936e0ad435e8d5f6937b4cbd00 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Tue, 27 Jan 2009 17:35:13 +0100 Subject: dtrace: Handle (absense of) -o argument correctly. --- dtrace | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'dtrace') diff --git a/dtrace b/dtrace index 2b261f5a..bbf6b81c 100755 --- a/dtrace +++ b/dtrace @@ -21,7 +21,7 @@ class provider: have_provider = False self.f = open(provider) self.h = open(header,mode='w') - self.h.write("// Generated by /usr/bin/dtrace\n") + self.h.write("// Generated by the Systemtap dtrace wrapper\n") self.h.write("\n#include \n\n") in_comment = False while (True): @@ -124,21 +124,21 @@ if (build_header == False and build_source == False): if (filename == ""): if (s_filename != ""): filename = s_filename.replace(".d","") + if (build_header): + filename = filename + ".h" + elif (build_source): + filename = filename + ".o" else: usage sys.exit(1) if (build_header): providers = provider() - providers.open(s_filename, filename + ".h") + providers.open(s_filename, filename) elif (build_source): fn = "/tmp/" + os.path.basename(s_filename).replace(".d", ".c") f = open(fn,mode='w') f.write("static __dtrace () {}\n") f.close() - call("gcc -fPIC -c " + fn + " -o " + filename + ".o", shell=True) - f.close() + call("gcc -fPIC -c " + fn + " -o " + filename, shell=True) os.remove(fn) - - - -- cgit From e3c5bcd9d838731926fa72d652c29c7ba0eb332a Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Mon, 16 Feb 2009 13:14:47 +0100 Subject: PR 9849, use mkstemp. --- dtrace | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'dtrace') diff --git a/dtrace b/dtrace index bbf6b81c..d62279f8 100755 --- a/dtrace +++ b/dtrace @@ -14,6 +14,7 @@ import os,posix,sys from subprocess import * +from tempfile import mkstemp class provider: arglist = dict() @@ -136,7 +137,8 @@ if (build_header): providers = provider() providers.open(s_filename, filename) elif (build_source): - fn = "/tmp/" + os.path.basename(s_filename).replace(".d", ".c") + basename = os.path.basename(s_filename).replace(".d", ".c") + (d,fn) = mkstemp(suffix=".c",prefix=basename) f = open(fn,mode='w') f.write("static __dtrace () {}\n") f.close() -- cgit From bf611ccca84bc4a49de8444303540dd778e0e50c Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Mon, 16 Feb 2009 13:30:18 +0100 Subject: PR 9851, use os.path.splitext instead of string.replace. --- dtrace | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'dtrace') diff --git a/dtrace b/dtrace index d62279f8..15c85aeb 100755 --- a/dtrace +++ b/dtrace @@ -124,7 +124,7 @@ if (build_header == False and build_source == False): if (filename == ""): if (s_filename != ""): - filename = s_filename.replace(".d","") + (filename,ext) = os.path.splitext(s_filename) if (build_header): filename = filename + ".h" elif (build_source): @@ -137,7 +137,8 @@ if (build_header): providers = provider() providers.open(s_filename, filename) elif (build_source): - basename = os.path.basename(s_filename).replace(".d", ".c") + (basename,ext) = os.path.splitext(s_filename) + basename = os.path.basename(basename) (d,fn) = mkstemp(suffix=".c",prefix=basename) f = open(fn,mode='w') f.write("static __dtrace () {}\n") -- cgit From c0d0d86876a3763492b3f4054961e9c850e9c216 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Mon, 16 Feb 2009 14:50:02 +0100 Subject: PR 9850, use a list of arguments for call. --- dtrace | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'dtrace') diff --git a/dtrace b/dtrace index 15c85aeb..46da93a8 100755 --- a/dtrace +++ b/dtrace @@ -13,7 +13,7 @@ # later version. import os,posix,sys -from subprocess import * +from subprocess import call from tempfile import mkstemp class provider: @@ -143,5 +143,5 @@ elif (build_source): f = open(fn,mode='w') f.write("static __dtrace () {}\n") f.close() - call("gcc -fPIC -c " + fn + " -o " + filename, shell=True) + call(["gcc", "-fPIC", "-c", fn, "-o", filename], shell=False) os.remove(fn) -- cgit From 59b2ec52534f90cf22a741cfb482b36f9dcb6a78 Mon Sep 17 00:00:00 2001 From: Stan Cox Date: Wed, 18 Feb 2009 18:00:42 -0500 Subject: Always emit .probes section; use .label method as a backup strategy --- dtrace | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'dtrace') diff --git a/dtrace b/dtrace index 46da93a8..d6d5ce21 100755 --- a/dtrace +++ b/dtrace @@ -60,7 +60,7 @@ class provider: if (len(new_args) > 0): self.arglist[this_probe] = ('%s arg%d' % (new_args, c)) if (len(new_args) == 0): - self.h.write ('#define %s STAP_PROBE(provider,%s)\n' % (this_probe_canon, this_probe)) + self.h.write ('#define %s() STAP_PROBE(provider,%s)\n' % (this_probe_canon, this_probe)) elif (c == 0): self.h.write ('#define %s(arg1) STAP_PROBE%d(provider,%s,arg1)\n' % (this_probe_canon, c+1, this_probe)) elif (c == 1): @@ -125,6 +125,7 @@ if (build_header == False and build_source == False): if (filename == ""): if (s_filename != ""): (filename,ext) = os.path.splitext(s_filename) + filename = os.path.basename(filename) if (build_header): filename = filename + ".h" elif (build_source): -- cgit