diff options
author | Tony Cook <tony@develop-help.com> | 2016-11-17 22:18:30 +1100 |
---|---|---|
committer | Tony Cook <tony@develop-help.com> | 2017-01-05 10:03:13 +1100 |
commit | 47a83dc69df787f8ede4d6c21526ce623877cd4e (patch) | |
tree | 184c54053975c6c2889e280eb6de828bcfc006e7 /Makefile.SH | |
parent | 323dbd00f273d31c4a30b1de1a1201aea0f1b778 (diff) | |
download | perl-47a83dc69df787f8ede4d6c21526ce623877cd4e.tar.gz |
(perl #130108) generate a dummy dtrace_main.o if perlmain.o doesn't contain probes
efc4bddfd4 added generating a probes object file for perlmain.o, since
the compiler was generating probes even for unused inline functions.
The default compiler on FreeBSD 11 however doesn't generate probes for
these unused inline functions, and dtrace -G fails because it can't
find any.
So if dtrace fails for perlmain.o generate a dummy object file to
take its place.
Similarly for XS::APItest.
Diffstat (limited to 'Makefile.SH')
-rwxr-xr-x | Makefile.SH | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Makefile.SH b/Makefile.SH index 6c5ec87c61..6a283837a7 100755 --- a/Makefile.SH +++ b/Makefile.SH @@ -840,7 +840,11 @@ $(DTRACE_PERLLIB_O): perldtrace.d $(perllib_objs_nodt) $(DTRACE) -G -s perldtrace.d -o $(DTRACE_PERLLIB_O) $(perllib_objs_nodt) $(DTRACE_MAIN_O): perldtrace.d perlmain$(OBJ_EXT) - $(DTRACE) -G -s perldtrace.d -o $(DTRACE_MAIN_O) perlmain$(OBJ_EXT) + $(DTRACE) -G -s perldtrace.d -o $(DTRACE_MAIN_O) perlmain$(OBJ_EXT) || \ + ( $(ECHO) "No probes in perlmain$(OBJ_EXT), generating a dummy $(DTRACE_MAIN_O)" && \ + $(ECHO) >dtrace_main.c && \ + `$(CCCMD)` $(PLDLFLAGS) dtrace_main.c && \ + rm -f dtrace_main.c ) !NO!SUBS! ;; |