diff --git a/Makefile.in b/Makefile.in index dfa3641b7a..7a86cd5859 100644 --- a/Makefile.in +++ b/Makefile.in @@ -213,7 +213,7 @@ all: miniruby$(EXEEXT): @-if test -f $@; then $(MV) -f $@ $@.old; $(RM) $@.old; fi $(ECHO) linking $@ - $(Q) $(PURIFY) $(CC) $(LDFLAGS) $(XLDFLAGS) $(NORMALMAINOBJ) $(MINIOBJS) $(COMMONOBJS) $(INITOBJS) $(DTRACE_OBJ) $(MAINLIBS) $(LIBS) $(OUTFLAG)$@ + $(Q) $(PURIFY) $(CC) $(LDFLAGS) $(XLDFLAGS) $(NORMALMAINOBJ) $(MINIOBJS) $(COMMONOBJS) $(INITOBJS) $(MAINLIBS) $(LIBS) $(OUTFLAG)$@ $(PROGRAM): @$(RM) $@ @@ -236,7 +236,7 @@ $(LIBRUBY_A): $(LIBRUBY_SO): @-$(PRE_LIBRUBY_UPDATE) $(ECHO) linking shared-library $@ - $(Q) $(LDSHARED) $(DLDFLAGS) $(OBJS) $(DLDOBJS) $(DTRACE_OBJ) $(SOLIBS) $(EXTSOLIBS) $(OUTFLAG)$@ + $(Q) $(LDSHARED) $(DLDFLAGS) $(OBJS) $(DLDOBJS) $(SOLIBS) $(EXTSOLIBS) $(OUTFLAG)$@ -$(Q) $(OBJCOPY) -w -L '$(SYMBOL_PREFIX)Init_*' -L '$(SYMBOL_PREFIX)*_threadptr_*' $@ $(Q) $(POSTLINK) @-$(MINIRUBY) -e 'ARGV.each{|link| File.delete link rescue nil; \ diff --git a/common.mk b/common.mk index 1f2327aa27..c80044f93d 100644 --- a/common.mk +++ b/common.mk @@ -101,6 +101,7 @@ COMMONOBJS = array.$(OBJEXT) \ vm_trace.$(OBJEXT) \ thread.$(OBJEXT) \ cont.$(OBJEXT) \ + $(DTRACE_OBJ) \ $(BUILTIN_ENCOBJS) \ $(BUILTIN_TRANSOBJS) \ $(MISSING) @@ -192,7 +193,7 @@ prog: program wprogram $(PREP): $(MKFILES) -miniruby$(EXEEXT): config.status $(ALLOBJS) $(ARCHFILE) $(DTRACE_OBJ) +miniruby$(EXEEXT): config.status $(ALLOBJS) $(ARCHFILE) objs: $(ALLOBJS) @@ -218,7 +219,7 @@ mini: PHONY miniruby$(EXEEXT) $(PROGRAM) $(WPROGRAM): $(LIBRUBY) $(MAINOBJ) $(OBJS) $(EXTOBJS) $(SETUP) $(PREP) -$(LIBRUBY_A): $(OBJS) $(MAINOBJ) $(DTRACE_OBJ) $(DTRACE_GLOMMED_OBJ) $(INITOBJS) $(ARCHFILE) +$(LIBRUBY_A): $(LIBRUBY_A_OBJS) $(MAINOBJ) $(INITOBJS) $(ARCHFILE) $(LIBRUBY_SO): $(OBJS) $(DLDOBJS) $(LIBRUBY_A) $(PREP) $(LIBRUBY_SO_UPDATE) $(BUILTIN_ENCOBJS) diff --git a/configure.in b/configure.in index 85df4a5266..1a9a8867d4 100644 --- a/configure.in +++ b/configure.in @@ -644,10 +644,10 @@ _PROBES _CONF $CC $CFLAGS $CPPFLAGS -c -o conftest.o conftest.c && cp -p conftest.o conftest.oo && - $DTRACE -G -s conftest_provider.d conftest.o 2>/dev/null && - ! cmp -b conftest.o conftest.oo + $DTRACE -G -s conftest_provider.d conftest.o 2>/dev/null }; then rb_cv_prog_dtrace_g=yes + cmp -b conftest.o conftest.oo || rb_cv_prog_dtrace_g=rebuild else rb_cv_prog_dtrace_g=no fi @@ -3608,8 +3608,10 @@ if test "${enable_dtrace}" = "yes"; then AC_MSG_ERROR([--enable-dtrace, however, USDT is not available]) fi RUBY_DTRACE_POSTPROCESS() - if test "$rb_cv_prog_dtrace_g" = 'yes'; then + if test "$rb_cv_prog_dtrace_g" != 'no'; then DTRACE_OBJ='probes.$(OBJEXT)' + fi + if test "$rb_cv_prog_dtrace_g" = 'rebuild'; then DTRACE_GLOMMED_OBJ='ruby-glommed.$(OBJEXT)' LIBRUBY_A_OBJS='$(DTRACE_GLOMMED_OBJ)' fi