Bug 1353259 - Remove build system parts that generate a dtrace ELF object. r?mshal draft
authorMike Hommey <mh+mozilla@glandium.org>
Tue, 04 Apr 2017 13:30:44 +0900
changeset 555363 f96834ed8133d401db485e7ac25af59c6a04d7a1
parent 555362 2d0bf5d43ef819bcc0f2fa9f47c6890ac5ec4554
child 555382 ccb75d247b1dc379a7a6c91dad3ff433300b7969
push id52225
push userbmo:mh+mozilla@glandium.org
push dateTue, 04 Apr 2017 04:42:05 +0000
reviewersmshal
bugs1353259, 702179, 1262241
milestone55.0a1
Bug 1353259 - Remove build system parts that generate a dtrace ELF object. r?mshal The code doing that was already excluding OSX, so we obviously don't need it on OSX. On FreeBSD, afaict, USDT (userspace dtrace) probes don't require that extra ELF object. Solaris presumably does, but the 6 years old bug 702179 says it's not been working for that long, and configure doesn't support Solaris targets anyways. Keeping this build system code working past the changes coming in bug 1262241 is not guaranteed and can't be tested, so I'd rather get rid of effectively dead code rather than trying to maybe not break it while moving it.
config/rules.mk
js/src/Makefile.in
--- a/config/rules.mk
+++ b/config/rules.mk
@@ -739,21 +739,16 @@ ifneq (,$(HOST_CPPSRCS)$(USE_HOST_CXX))
 else
 	$(EXPAND_LIBS_EXEC) -- $(HOST_CC) $(HOST_OUTOPTION)$@ $(HOST_CFLAGS) $(INCLUDES) $< $(HOST_LIBS) $(HOST_EXTRA_LIBS)
 endif
 endif
 ifndef CROSS_COMPILE
 	$(call CHECK_STDCXX,$@)
 endif
 
-ifdef DTRACE_PROBE_OBJ
-EXTRA_DEPS += $(DTRACE_PROBE_OBJ)
-OBJS += $(DTRACE_PROBE_OBJ)
-endif
-
 $(filter %.$(LIB_SUFFIX),$(LIBRARY)): $(OBJS) $(STATIC_LIBS_DEPS) $(filter %.$(LIB_SUFFIX),$(EXTRA_LIBS)) $(EXTRA_DEPS) $(GLOBAL_DEPS)
 	$(REPORT_BUILD)
 # Always remove both library and library descriptor
 	$(RM) $(REAL_LIBRARY) $(REAL_LIBRARY).$(LIBS_DESC_SUFFIX)
 	$(EXPAND_AR) $(AR_FLAGS) $(OBJS) $(STATIC_LIBS) $(filter %.$(LIB_SUFFIX),$(EXTRA_LIBS))
 
 $(filter-out %.$(LIB_SUFFIX),$(LIBRARY)): $(filter %.$(LIB_SUFFIX),$(LIBRARY)) $(OBJS) $(STATIC_LIBS_DEPS) $(filter %.$(LIB_SUFFIX),$(EXTRA_LIBS)) $(EXTRA_DEPS) $(GLOBAL_DEPS)
 # When we only build a library descriptor, blow out any existing library
@@ -772,26 +767,16 @@ ifeq ($(OS_ARCH),WINNT)
 $(IMPORT_LIBRARY): $(SHARED_LIBRARY) ;
 endif
 
 $(HOST_LIBRARY): $(HOST_OBJS) Makefile
 	$(REPORT_BUILD)
 	$(RM) $@
 	$(EXPAND_LIBS_EXEC) --extract -- $(HOST_AR) $(HOST_AR_FLAGS) $(HOST_OBJS)
 
-ifdef HAVE_DTRACE
-ifndef XP_MACOSX
-ifdef DTRACE_PROBE_OBJ
-NON_DTRACE_OBJS := $(filter-out $(DTRACE_PROBE_OBJ),$(OBJS))
-$(DTRACE_PROBE_OBJ): $(NON_DTRACE_OBJS)
-	dtrace -x nolibs -G -C -s $(MOZILLA_DTRACE_SRC) -o $(DTRACE_PROBE_OBJ) $(NON_DTRACE_OBJS)
-endif
-endif
-endif
-
 # On Darwin (Mac OS X), dwarf2 debugging uses debug info left in .o files,
 # so instead of deleting .o files after repacking them into a dylib, we make
 # symlinks back to the originals. The symlinks are a no-op for stabs debugging,
 # so no need to conditionalize on OS version or debugging format.
 
 $(SHARED_LIBRARY): $(OBJS) $(RESFILE) $(RUST_STATIC_LIB_FOR_SHARED_LIB) $(STATIC_LIBS_DEPS) $(EXTRA_DEPS) $(GLOBAL_DEPS)
 	$(REPORT_BUILD)
 ifndef INCREMENTAL_LINKER
--- a/js/src/Makefile.in
+++ b/js/src/Makefile.in
@@ -13,23 +13,16 @@ ifneq ($(make_min_ver),$(firstword $(sor
 endif
 
 DASH_R		= -r
 
 # Define keyword generator before rules.mk, see bug 323979 comment 50
 
 USE_HOST_CXX = 1
 
-ifdef HAVE_DTRACE
-ifneq ($(OS_ARCH),Darwin)
-DTRACE_PROBE_OBJ = $(LIBRARY_NAME)-dtrace.$(OBJ_SUFFIX)
-endif
-MOZILLA_DTRACE_SRC = $(srcdir)/devtools/javascript-trace.d
-endif
-
 # Ensure symbol versions of shared library on Linux do not conflict
 # with those in libxul.
 ifeq (Linux,$(OS_TARGET))
 OS_LDFLAGS += -Wl,-version-script,symverscript
 
 symverscript: symverscript.in
 	$(call py_action,preprocessor, \
 		-DVERSION='$(subst -,_,$(LIBRARY_NAME))' $< -o $@)