diff options
author | Andy Armstrong <andy@hexten.net> | 2008-01-10 22:20:52 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2008-01-11 13:36:54 +0000 |
commit | 5ac1e9b286b068746476878a8a6206b06828a175 (patch) | |
tree | 9c3ea7b8fb39c431bd78a689aea2ff13f18de880 | |
parent | 737ddd9966a0343f74f23dcc8d4025bbf64d3e59 (diff) | |
download | perl-5ac1e9b286b068746476878a8a6206b06828a175.tar.gz |
Add dtrace support
Message-Id: <F4AC553F-7C7F-49C3-98C2-E04681E1004F@hexten.net>
with fixups as discussed on list, plus adding usedtrace to Glossary,
plus propagating all the new config variables everywhere.
(Was there an automatic way to do that? I did it with emacs macros)
p4raw-id: //depot/perl@32953
-rwxr-xr-x | Configure | 69 | ||||
-rw-r--r-- | Cross/config.sh-arm-linux | 2 | ||||
-rw-r--r-- | MANIFEST | 2 | ||||
-rw-r--r-- | Makefile.SH | 41 | ||||
-rw-r--r-- | NetWare/config.wc | 2 | ||||
-rw-r--r-- | Porting/Glossary | 7 | ||||
-rw-r--r-- | config_h.SH | 6 | ||||
-rw-r--r-- | configure.com | 2 | ||||
-rw-r--r-- | cop.h | 9 | ||||
-rw-r--r-- | epoc/config.sh | 2 | ||||
-rw-r--r-- | mydtrace.h | 42 | ||||
-rw-r--r-- | perldtrace.d | 9 | ||||
-rw-r--r-- | plan9/config_sh.sample | 2 | ||||
-rw-r--r-- | symbian/config.sh | 2 | ||||
-rw-r--r-- | uconfig.h | 6 | ||||
-rwxr-xr-x | uconfig.sh | 2 | ||||
-rw-r--r-- | win32/config.bc | 2 | ||||
-rw-r--r-- | win32/config.ce | 2 | ||||
-rw-r--r-- | win32/config.gc | 2 | ||||
-rw-r--r-- | win32/config.vc | 2 | ||||
-rw-r--r-- | win32/config.vc64 | 2 | ||||
-rw-r--r-- | win32/config_H.bc | 6 | ||||
-rw-r--r-- | win32/config_H.ce | 6 | ||||
-rw-r--r-- | win32/config_H.gc | 6 | ||||
-rw-r--r-- | win32/config_H.vc | 6 | ||||
-rw-r--r-- | win32/config_H.vc64 | 6 |
26 files changed, 242 insertions, 3 deletions
@@ -238,6 +238,7 @@ cpio='' cpp='' csh='' date='' +dtrace='' echo='' egrep='' emacs='' @@ -1193,6 +1194,7 @@ use5005threads='' useithreads='' usereentrant='' usethreads='' +usedtrace='' incpath='' mips_type='' usrinc='' @@ -8949,6 +8951,71 @@ esac set usefaststdio eval $setvar +: DTrace support +dflt_dtrace='/usr/sbin/dtrace' +cat <<EOM + +Perl can be built to support DTrace on platforms that support it. +DTrace is a diagnosis and performance analysis tool from Sun. + +If this doesn't make any sense to you, just accept the default '$dflt'. +EOM + +while test 1 ; do + case "$usedtrace" in + $define|true|[yY]*) + dflt='y' + ;; + ?*) + dflt='y' + dflt_dtrace=$usedtrace + ;; + *) + dflt='n' + ;; + esac + + rp='Support DTrace if available?' + . ./myread + case "$ans" in + y|Y) val="$define" ;; + *) val="$undef" ;; + esac + set usedtrace + eval $setvar + + test "X$usedtrace" != "X$define" && break + + echo " " + rp='Where is the dtrace executable?' + dflt=$dflt_dtrace + . ./getfile + val="$ans" + set dtrace + eval $setvar + + if test -f $dtrace + then + if ! $dtrace -h -s ../perldtrace.d \ + -o perldtrace.tmp >/dev/null 2>&1 \ + && rm -f perldtrace.tmp + then + cat >&2 <<EOM + +*** $me: Fatal Error: $dtrace doesn't support -h flag +*** +*** Your installed dtrace doesn't support the -h switch to compile a D +*** program into a C header. Can't continue. + +EOM + exit 1 + fi + break; + fi + + echo "$dtrace was not found." + echo " " +done : define an is-a-typedef? function typedef='type=$1; var=$2; def=$3; shift; shift; shift; inclist=$@; @@ -22063,6 +22130,7 @@ dlsrc='$dlsrc' doublesize='$doublesize' drand01='$drand01' drand48_r_proto='$drand48_r_proto' +dtrace='$dtrace' dynamic_ext='$dynamic_ext' eagain='$eagain' ebcdic='$ebcdic' @@ -22523,6 +22591,7 @@ use64bitall='$use64bitall' use64bitint='$use64bitint' usecrosscompile='$usecrosscompile' usedl='$usedl' +usedtrace='$usedtrace' usefaststdio='$usefaststdio' useithreads='$useithreads' uselargefiles='$uselargefiles' diff --git a/Cross/config.sh-arm-linux b/Cross/config.sh-arm-linux index 5e571161dc..ec468909a8 100644 --- a/Cross/config.sh-arm-linux +++ b/Cross/config.sh-arm-linux @@ -530,6 +530,7 @@ dlsrc='dl_dlopen.xs' doublesize='8' drand01='drand48()' drand48_r_proto='0' +dtrace='' dynamic_ext='B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared' eagain='EAGAIN' ebcdic='undef' @@ -985,6 +986,7 @@ use64bitall='undef' use64bitint='undef' usecrosscompile='undef' usedl='define' +usedtrace='undef' usefaststdio='define' useithreads='undef' uselargefiles='define' @@ -2985,6 +2985,7 @@ mpeix/nm MPE/iX port mpeix/relink MPE/iX port mro.c Method Resolution Order code myconfig.SH Prints summary of the current configuration +mydtrace.h Support for optional DTrace probes NetWare/bat/Buildtype.bat NetWare port NetWare/bat/SetCodeWar.bat NetWare port NetWare/bat/Setnlmsdk.bat NetWare port @@ -3115,6 +3116,7 @@ parser.h parser object header patchlevel.h The current patch level of perl perlapi.c Perl API functions perlapi.h Perl API function declarations +perldtrace.d D script for Perl probes perl.c main() perl.h Global declarations perlio.c C code for PerlIO abstraction diff --git a/Makefile.SH b/Makefile.SH index ac8681a7e0..28f8436622 100644 --- a/Makefile.SH +++ b/Makefile.SH @@ -183,6 +183,16 @@ for f in $nonxs_ext; do nonxs_list="$nonxs_list ext/$f/pm_to_blib" done +dtrace_h='' +dtrace_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)' + ;; +esac + echo "Extracting Makefile (with variable substitutions)" $spitshell >Makefile <<!GROK!THIS! # Makefile.SH @@ -274,6 +284,10 @@ PATH_SEP = $p_ # then you'll need to change this, or override it on the make command line. VALGRIND=valgrind +DTRACE = $dtrace +DTRACE_H = $dtrace_h +DTRACE_O = $dtrace_o + FIRSTMAKEFILE = $firstmakefile # Any special object files needed by this architecture, e.g. os2/os2.obj @@ -357,7 +371,7 @@ h1 = EXTERN.h INTERN.h XSUB.h av.h config.h cop.h cv.h dosish.h h2 = embed.h form.h gv.h handy.h hv.h keywords.h mg.h op.h opcode.h h3 = pad.h patchlevel.h perl.h perlapi.h perly.h pp.h proto.h regcomp.h h4 = regexp.h scope.h sv.h unixish.h util.h iperlsys.h thread.h -h5 = utf8.h warnings.h +h5 = utf8.h warnings.h mydtrace.h h = $(h1) $(h2) $(h3) $(h4) $(h5) c1 = av.c scope.c op.c doop.c doio.c dump.c gv.c hv.c mg.c reentr.c mro.c perl.c @@ -372,7 +386,8 @@ obj1 = $(madlyobj) $(mallocobj) gv$(OBJ_EXT) toke$(OBJ_EXT) perly$(OBJ_EXT) op$( obj2 = hv$(OBJ_EXT) av$(OBJ_EXT) perl$(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) xsutils$(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) -obj = $(obj1) $(obj2) $(obj3) $(ARCHOBJS) +ndt_obj = $(obj1) $(obj2) $(obj3) $(ARCHOBJS) +obj = $(ndt_obj) $(DTRACE_O) lintflags = \ -b \ @@ -586,6 +601,26 @@ if test -r $Makefile_s ; then Makefile: $Makefile_s !GROK!THIS! else + case "$dtrace_h" in + ?*) + $spitshell >>Makefile <<'!NO!SUBS!' +$(DTRACE_H): perldtrace.d + $(DTRACE) -h -s perldtrace.d -o $(DTRACE_H) + +mydtrace.h: $(DTRACE_H) + +!NO!SUBS! + ;; + esac + case "$dtrace_o" in + ?*) + $spitshell >>Makefile <<'!NO!SUBS!' +$(DTRACE_O): perldtrace.d + $(DTRACE) -G -s perldtrace.d -o $(DTRACE_O) $(ndt_obj) + +!NO!SUBS! + ;; + esac $spitshell >>Makefile <<'!NO!SUBS!' $(LIBPERL): $& $(obj) $(DYNALOADER) $(LIBPERLEXPORT) !NO!SUBS! @@ -1082,7 +1117,7 @@ _mopup: -rm -f cygwin.c libperl*.def libperl*.dll cygperl*.dll *.exe.stackdump -rm -f perl$(EXE_EXT) suidperl$(EXE_EXT) miniperl$(EXE_EXT) $(LIBPERL) libperl.* microperl -rm -f opcode.h-old opnames.h-old pp.sym-old pp_proto.h-old - -rm -f config.over + -rm -f config.over $(DTRACE_H) # Do not 'make _tidy' directly. _tidy: diff --git a/NetWare/config.wc b/NetWare/config.wc index 2afe65e6c2..942226c899 100644 --- a/NetWare/config.wc +++ b/NetWare/config.wc @@ -522,6 +522,7 @@ dlsrc='dl_netware.xs' doublesize='8' drand01='(rand()/(double)((unsigned)1<<RANDBITS))' drand48_r_proto='0' +dtrace='' dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs' eagain='EAGAIN' ebcdic='undef' @@ -949,6 +950,7 @@ use64bitall='undef' use64bitint='undef' usecrosscompile='undef' usedl='define' +usedtrace='undef' usefaststdio='undef' useithreads='define' uselargefiles='undef' diff --git a/Porting/Glossary b/Porting/Glossary index b69d7b993c..5b3c99b98d 100644 --- a/Porting/Glossary +++ b/Porting/Glossary @@ -2418,6 +2418,9 @@ dynamic_ext (Extensions.U): This variable holds a list of XS extension files we want to link dynamically into the package. It is used by Makefile. +dtrace (dtrace.U): + This variable holds the location of the dtrace executable. + eagain (nblock_io.U): This variable bears the symbolic errno code set by read() when no data is present on the file and non-blocking I/O was enabled (otherwise, @@ -4788,6 +4791,10 @@ usedl (dlsrc.U): This variable indicates if the system supports dynamic loading of some sort. See also dlsrc and dlobj. +usedtrace (trace.U): + This variable indicates whether we are compiling with dtrace support. + See also dtrace. + usefaststdio (usefaststdio.U): This variable conditionally defines the USE_FAST_STDIO symbol, and indicates that Perl should be built to use 'fast stdio'. diff --git a/config_h.SH b/config_h.SH index d6cc1fa7cb..a9b626507a 100644 --- a/config_h.SH +++ b/config_h.SH @@ -2800,6 +2800,12 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un #$d_oldpthreads OLD_PTHREADS_API /**/ #$usereentrant USE_REENTRANT_API /**/ +/* USE_DTRACE + * This symbol, if defined, indicates that Perl should + * be built with support for DTrace. + */ +#$usedtrace USE_DTRACE /**/ + /* PERL_VENDORARCH: * If defined, this symbol contains the name of a private library. * The library is private in the sense that it needn't be in anyone's diff --git a/configure.com b/configure.com index 800f054c21..f36d5c6a10 100644 --- a/configure.com +++ b/configure.com @@ -6127,6 +6127,7 @@ $ WC "dlobj='" + dlobj + "'" $ WC "dlsrc='dl_vms.c'" $ WC "doublesize='" + doublesize + "'" $ WC "drand01='" + drand01 + "'" +$ WC "dtrace=''" $! $! The extensions symbol may be quite long $! @@ -6442,6 +6443,7 @@ $ WC "usedebugging_perl='"+use_debugging_perl+"'" $ WC "usedefaulttypes='" + usedefaulttypes + "'" ! VMS-specific $ WC "usecrosscompile='undef'" $ WC "usedl='" + usedl + "'" +$ WC "usedtrace='undef'" $ WC "usefaststdio='" + usefaststdio + "'" $ WC "useieee='" + useieee + "'" ! VMS-specific $ WC "useithreads='" + useithreads + "'" @@ -132,6 +132,7 @@ typedef struct jmpenv JMPENV; #define CATCH_SET(v) (PL_top_env->je_mustcatch = (v)) +#include "mydtrace.h" struct cop { BASEOP @@ -295,6 +296,10 @@ struct block_sub { * decremented by LEAVESUB, the other by LEAVE. */ #define PUSHSUB_BASE(cx) \ + ENTRY_PROBE(GvENAME(CvGV(cv)), \ + CopFILE((COP*)CvSTART(cv)), \ + CopLINE((COP*)CvSTART(cv))); \ + \ cx->blk_sub.cv = cv; \ cx->blk_sub.olddepth = CvDEPTH(cv); \ cx->blk_sub.hasargs = hasargs; \ @@ -342,6 +347,10 @@ struct block_sub { #define POPSUB(cx,sv) \ STMT_START { \ + RETURN_PROBE(GvENAME(CvGV((CV*)cx->blk_sub.cv)), \ + CopFILE((COP*)CvSTART((CV*)cx->blk_sub.cv)), \ + CopLINE((COP*)CvSTART((CV*)cx->blk_sub.cv))); \ + \ if (cx->blk_sub.hasargs) { \ POP_SAVEARRAY(); \ /* abandon @_ if it got reified */ \ diff --git a/epoc/config.sh b/epoc/config.sh index e54f56836e..bd1a20fab3 100644 --- a/epoc/config.sh +++ b/epoc/config.sh @@ -498,6 +498,7 @@ dlsrc='dl_none.xs' doublesize='8' drand01='(rand()/(double)(1U<<RANDBITS))' drand48_r_proto='0' +dtrace='' dynamic_ext='' eagain='EAGAIN' ebcdic='undef' @@ -855,6 +856,7 @@ use64bitall='undef' use64bitint='undef' usecrosscompile='define' usedl='undef' +usedtrace='undef' usefaststdio='undef' uselargefiles='undef' uselongdouble='undef' diff --git a/mydtrace.h b/mydtrace.h new file mode 100644 index 0000000000..daabcfa0b9 --- /dev/null +++ b/mydtrace.h @@ -0,0 +1,42 @@ +/* mydtrace.h + * + * Copyright (C) 2008, by Larry Wall and others + * + * You may distribute under the terms of either the GNU General Public + * License or the Artistic License, as specified in the README file. + * + * Provides macros that wrap the various DTrace probes we use. We add + * an extra level of wrapping to encapsulate the _ENABLED tests. + */ + +#if defined(USE_DTRACE) && defined(PERL_CORE) + +# include "perldtrace.h" + +# define ENTRY_PROBE(func, file, line) \ + if (PERL_SUB_ENTRY_ENABLED()) { \ + PERL_SUB_ENTRY(func, file, line); \ + } + +# define RETURN_PROBE(func, file, line) \ + if (PERL_SUB_RETURN_ENABLED()) { \ + PERL_SUB_RETURN(func, file, line); \ + } + +#else + +/* NOPs */ +# define ENTRY_PROBE(func, file, line) +# define RETURN_PROBE(func, file, line) + +#endif + +/* + * Local variables: + * c-indentation-style: bsd + * c-basic-offset: 4 + * indent-tabs-mode: t + * End: + * + * ex: set ts=8 sts=4 sw=4 noet: + */ diff --git a/perldtrace.d b/perldtrace.d new file mode 100644 index 0000000000..d90be532f7 --- /dev/null +++ b/perldtrace.d @@ -0,0 +1,9 @@ +/* + * Written by Alan Burlinson -- taken from his blog post + * at <http://blogs.sun.com/alanbur/date/20050909>. + */ + +provider perl { + probe sub__entry(char *, char *, int); + probe sub__return(char *, char *, int); +}; diff --git a/plan9/config_sh.sample b/plan9/config_sh.sample index 9d116652cc..9ce1038812 100644 --- a/plan9/config_sh.sample +++ b/plan9/config_sh.sample @@ -529,6 +529,7 @@ dlsrc='dl_none.xs' doublesize='8' drand01='(rand() / (double) ((unsigned long)1 << 15))' drand48_r_proto='0' +dtrace='' dynamic_ext='' eagain='EAGAIN' ebcdic='undef' @@ -956,6 +957,7 @@ use64bitall='undef' use64bitint='undef' usecrosscompile='undef' usedl='undef' +usedtrace='undef' usefaststdio='undef' useithreads='undef' uselargefiles='define' diff --git a/symbian/config.sh b/symbian/config.sh index c31d4bea54..e53ed934e7 100644 --- a/symbian/config.sh +++ b/symbian/config.sh @@ -476,6 +476,7 @@ dlsrc='dl_symbian.xs' doublesize='8' drand01="((rand() & 0x7FFF) / (double) ((unsigned long)1 << 15))" drand48_r_proto='0' +dtrace='' eagain='EAGAIN' ebcdic='undef' endgrent_r_proto='0' @@ -771,6 +772,7 @@ use64bitall='undef' use64bitint='undef' usecrosscompile='undef' usedl='undef' +usedtrace='undef' usefaststdio='undef' useithreads='undef' uselargefiles='undef' @@ -4358,6 +4358,12 @@ /*#define OLD_PTHREADS_API / **/ /*#define USE_REENTRANT_API / **/ +/* USE_DTRACE + * This symbol, if defined, indicates that Perl should + * be built with support for DTrace. + */ +/*#define USE_DTRACE / **/ + /* PERL_VENDORARCH: * If defined, this symbol contains the name of a private library. * The library is private in the sense that it needn't be in anyone's diff --git a/uconfig.sh b/uconfig.sh index 2503c1b3c6..7f513af57f 100755 --- a/uconfig.sh +++ b/uconfig.sh @@ -465,6 +465,7 @@ direntrytype='struct dirent' doublesize='8' drand01="((rand() & 0x7FFF) / (double) ((unsigned long)1 << 15))" drand48_r_proto='0' +dtrace='' eagain='EAGAIN' ebcdic='undef' endgrent_r_proto='0' @@ -737,6 +738,7 @@ use64bitall='undef' use64bitint='undef' usecrosscompile='undef' usedl='undef' +usedtrace='undef' usefaststdio='undef' useithreads='undef' uselargefiles='undef' diff --git a/win32/config.bc b/win32/config.bc index 7f7cc38729..ec883a98d7 100644 --- a/win32/config.bc +++ b/win32/config.bc @@ -518,6 +518,7 @@ dlsrc='dl_win32.xs' doublesize='8' drand01='(rand()/(double)((unsigned)1<<RANDBITS))' drand48_r_proto='0' +dtrace='' dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs' eagain='EAGAIN' ebcdic='undef' @@ -979,6 +980,7 @@ use64bitall='undef' use64bitint='undef' usecrosscompile='undef' usedl='define' +usedtrace='undef' usefaststdio='undef' useithreads='undef' uselargefiles='undef' diff --git a/win32/config.ce b/win32/config.ce index 2be951961c..00dabcfe0b 100644 --- a/win32/config.ce +++ b/win32/config.ce @@ -520,6 +520,7 @@ dlsrc='dl_win32.xs' doublesize='8' drand01='(rand()/(double)((unsigned)1<<RANDBITS))' drand48_r_proto='0' +dtrace='' dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs' eagain='EAGAIN' ebcdic='undef' @@ -941,6 +942,7 @@ use64bitall='undef' use64bitint='undef' usecrosscompile='define' usedl='define' +usedtrace='undef' usefaststdio='undef' useithreads='~USE_ITHREADS~' uselargefiles='undef' diff --git a/win32/config.gc b/win32/config.gc index e1e1bc37c1..5e6267886f 100644 --- a/win32/config.gc +++ b/win32/config.gc @@ -518,6 +518,7 @@ dlsrc='dl_win32.xs' doublesize='8' drand01='(rand()/(double)((unsigned)1<<RANDBITS))' drand48_r_proto='0' +dtrace='' dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs' eagain='EAGAIN' ebcdic='undef' @@ -979,6 +980,7 @@ use64bitall='undef' use64bitint='undef' usecrosscompile='undef' usedl='define' +usedtrace='undef' usefaststdio='undef' useithreads='undef' uselargefiles='undef' diff --git a/win32/config.vc b/win32/config.vc index 6e167269af..3c58cdcf34 100644 --- a/win32/config.vc +++ b/win32/config.vc @@ -518,6 +518,7 @@ dlsrc='dl_win32.xs' doublesize='8' drand01='(rand()/(double)((unsigned)1<<RANDBITS))' drand48_r_proto='0' +dtrace='' dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs' eagain='EAGAIN' ebcdic='undef' @@ -979,6 +980,7 @@ use64bitall='undef' use64bitint='undef' usecrosscompile='undef' usedl='define' +usedtrace='undef' usefaststdio='undef' useithreads='undef' uselargefiles='undef' diff --git a/win32/config.vc64 b/win32/config.vc64 index b5bea414da..6680911655 100644 --- a/win32/config.vc64 +++ b/win32/config.vc64 @@ -518,6 +518,7 @@ dlsrc='dl_win32.xs' doublesize='8' drand01='(rand()/(double)((unsigned)1<<RANDBITS))' drand48_r_proto='0' +dtrace='' dynamic_ext='Socket IO Fcntl Opcode SDBM_File attrs' eagain='EAGAIN' ebcdic='undef' @@ -979,6 +980,7 @@ use64bitall='undef' use64bitint='define' usecrosscompile='undef' usedl='define' +usedtrace='undef' usefaststdio='undef' useithreads='undef' uselargefiles='undef' diff --git a/win32/config_H.bc b/win32/config_H.bc index c07d573869..205083580b 100644 --- a/win32/config_H.bc +++ b/win32/config_H.bc @@ -4372,6 +4372,12 @@ /*#define OLD_PTHREADS_API /**/ /*#define USE_REENTRANT_API /**/ +/* USE_DTRACE + * This symbol, if defined, indicates that Perl should + * be built with support for DTrace. + */ +/*#define USE_DTRACE / **/ + /* PERL_VENDORARCH: * If defined, this symbol contains the name of a private library. * The library is private in the sense that it needn't be in anyone's diff --git a/win32/config_H.ce b/win32/config_H.ce index 7f9200c421..d563097e18 100644 --- a/win32/config_H.ce +++ b/win32/config_H.ce @@ -3664,6 +3664,12 @@ /*#define OLD_PTHREADS_API /**/ /*#define USE_REENTRANT_API /**/ +/* USE_DTRACE + * This symbol, if defined, indicates that Perl should + * be built with support for DTrace. + */ +/*#define USE_DTRACE / **/ + /* PERL_VENDORARCH: * If defined, this symbol contains the name of a private library. * The library is private in the sense that it needn't be in anyone's diff --git a/win32/config_H.gc b/win32/config_H.gc index 01fdc3a400..c61c04c03d 100644 --- a/win32/config_H.gc +++ b/win32/config_H.gc @@ -4402,6 +4402,12 @@ /*#define OLD_PTHREADS_API /**/ /*#define USE_REENTRANT_API /**/ +/* USE_DTRACE + * This symbol, if defined, indicates that Perl should + * be built with support for DTrace. + */ +/*#define USE_DTRACE / **/ + /* PERL_VENDORARCH: * If defined, this symbol contains the name of a private library. * The library is private in the sense that it needn't be in anyone's diff --git a/win32/config_H.vc b/win32/config_H.vc index 0373bf928e..d300a7d77b 100644 --- a/win32/config_H.vc +++ b/win32/config_H.vc @@ -4398,6 +4398,12 @@ /*#define OLD_PTHREADS_API /**/ /*#define USE_REENTRANT_API /**/ +/* USE_DTRACE + * This symbol, if defined, indicates that Perl should + * be built with support for DTrace. + */ +/*#define USE_DTRACE / **/ + /* PERL_VENDORARCH: * If defined, this symbol contains the name of a private library. * The library is private in the sense that it needn't be in anyone's diff --git a/win32/config_H.vc64 b/win32/config_H.vc64 index fbd234292d..02371e13cf 100644 --- a/win32/config_H.vc64 +++ b/win32/config_H.vc64 @@ -4372,6 +4372,12 @@ /*#define OLD_PTHREADS_API /**/ /*#define USE_REENTRANT_API /**/ +/* USE_DTRACE + * This symbol, if defined, indicates that Perl should + * be built with support for DTrace. + */ +/*#define USE_DTRACE / **/ + /* PERL_VENDORARCH: * If defined, this symbol contains the name of a private library. * The library is private in the sense that it needn't be in anyone's |