Seems my previous attempt didn't get Cc'd to p5p correctly. On Tue Dec 21 16:58:13 2010, dgl wrote: > From: David Leadbeater <dgl@dgl.cx> > > As outlined in the RT ticket due to miniperl's dependencies differing > to > the final perl binary dtrace -G needs to be called separately for > each. > > Build tested on Mac OS X 10.6, Solaris 11 and Scientific Linux with > SystemTap from git. > > (Solaris is the only system I have access to where DTRACE_O actually > gets > defined. Neither the dtrace binary on OS X nor SystemTap's dtrace > compatibility layer accept the -G option.) > --- > Makefile.SH | 13 ++++++++++--- > 1 files changed, 10 insertions(+), 3 deletions(-) > > diff --git a/Makefile.SH b/Makefile.SH > index 9d8df27..a34416a 100755 > --- a/Makefile.SH > +++ b/Makefile.SH > @@ -215,11 +215,13 @@ done > > dtrace_h='' > dtrace_o='' > +minidtrace_o='' > case "$usedtrace" in > define|true) > dtrace_h='perldtrace.h' > $dtrace -G -s perldtrace.d -o perldtrace.tmp >/dev/null 2>&1 \ > - && rm -f perldtrace.tmp && dtrace_o='perldtrace$(OBJ_EXT)' > + && rm -f perldtrace.tmp && dtrace_o='perldtrace$(OBJ_EXT)' \ > + && minidtrace_o='miniperldtrace$(OBJ_EXT)' > ;; > esac > > @@ -332,6 +334,7 @@ VALGRIND=valgrind > DTRACE = $dtrace > DTRACE_H = $dtrace_h > DTRACE_O = $dtrace_o > +MINIDTRACE_O = $minidtrace_o > > FIRSTMAKEFILE = $firstmakefile > > @@ -454,7 +457,8 @@ obj1 = $(madlyobj) $(mallocobj) gv$(OBJ_EXT) > toke$(OBJ_EXT) perly$(OBJ_EXT) pad$ > obj2 = hv$(OBJ_EXT) av$(OBJ_EXT) run$(OBJ_EXT) pp_hot$(OBJ_EXT) > sv$(OBJ_EXT) pp$(OBJ_EXT) scope$(OBJ_EXT) pp_ctl$(OBJ_EXT) > pp_sys$(OBJ_EXT) > obj3 = doop$(OBJ_EXT) doio$(OBJ_EXT) regexec$(OBJ_EXT) utf8$(OBJ_EXT) > taint$(OBJ_EXT) deb$(OBJ_EXT) universal$(OBJ_EXT) globals$(OBJ_EXT) > perlio$(OBJ_EXT) perlapi$(OBJ_EXT) numeric$(OBJ_EXT) > mathoms$(OBJ_EXT) locale$(OBJ_EXT) pp_pack$(OBJ_EXT) > pp_sort$(OBJ_EXT) > > -mini_obj = $(obj1) $(obj2) $(obj3) $(ARCHOBJS) $(DTRACE_O) > +minindt_obj = $(obj1) $(obj2) $(obj3) $(ARCHOBJS) > +mini_obj = $(minindt_obj) $(MINIDTRACE_O) > ndt_obj = $(obj0) $(obj1) $(obj2) $(obj3) $(ARCHOBJS) > obj = $(ndt_obj) $(DTRACE_O) > > @@ -742,9 +746,12 @@ mydtrace.h: $(DTRACE_H) > case "$dtrace_o" in > ?*) > $spitshell >>$Makefile <<'!NO!SUBS!' > -$(DTRACE_O): perldtrace.d > +$(DTRACE_O): perldtrace.d $(ndt_obj) > $(DTRACE) -G -s perldtrace.d -o $(DTRACE_O) $(ndt_obj) > > +$(MINIDTRACE_O): perldtrace.d $(minindt_obj) > + $(DTRACE) -G -s perldtrace.d -o $(MINIDTRACE_O) $(minindt_obj) > + > !NO!SUBS! > ;; > esac