summaryrefslogtreecommitdiff
path: root/Makefile.SH
diff options
context:
space:
mode:
authorTony Cook <tony@develop-help.com>2016-03-09 11:54:13 +1100
committerTony Cook <tony@develop-help.com>2016-03-09 11:54:13 +1100
commitc2538af7458bf317cdc7bc684f65831744010d80 (patch)
tree84c3b8b0048fb59567f3d7a7e8d81f8765169c9f /Makefile.SH
parentcda0c02ca04cbb6960392d44273bd40182397820 (diff)
downloadperl-c2538af7458bf317cdc7bc684f65831744010d80.tar.gz
[perl #122287] probe in Configure whether dtrace builds an object
When building the object file, newer versions of dtrace (on Illumos based systems at least) require an input object file that uses at least one of the probes defined in the .d file. The test in Makefile.SH didn't provide that definition so the test would fail, and not build an object file, and fail to link later on, on systems that *do* need the object file. Moved the probe to Configure (where it probably belongs) and supplied an object file that uses a probe. Tested successfully on OmniOS (with the new dtrace), Solaris 11, and darwin.
Diffstat (limited to 'Makefile.SH')
-rwxr-xr-xMakefile.SH11
1 files changed, 7 insertions, 4 deletions
diff --git a/Makefile.SH b/Makefile.SH
index a9ece4f126..43701addb0 100755
--- a/Makefile.SH
+++ b/Makefile.SH
@@ -234,10 +234,13 @@ 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)' \
- && minidtrace_o='miniperldtrace$(OBJ_EXT)'
+ dtrace_h='perldtrace.h'
+ case "$dtraceobject" in
+ define)
+ dtrace_o='perldtrace$(OBJ_EXT)'
+ minidtrace_o='miniperldtrace$(OBJ_EXT)'
+ ;;
+ esac
;;
esac