summaryrefslogtreecommitdiffstats
path: root/dtrace
diff options
context:
space:
mode:
Diffstat (limited to 'dtrace')
-rwxr-xr-xdtrace11
1 files changed, 7 insertions, 4 deletions
diff --git a/dtrace b/dtrace
index bbf6b81c..46da93a8 100755
--- a/dtrace
+++ b/dtrace
@@ -13,7 +13,8 @@
# later version.
import os,posix,sys
-from subprocess import *
+from subprocess import call
+from tempfile import mkstemp
class provider:
arglist = dict()
@@ -123,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):
@@ -136,9 +137,11 @@ if (build_header):
providers = provider()
providers.open(s_filename, filename)
elif (build_source):
- fn = "/tmp/" + 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")
f.close()
- call("gcc -fPIC -c " + fn + " -o " + filename, shell=True)
+ call(["gcc", "-fPIC", "-c", fn, "-o", filename], shell=False)
os.remove(fn)