Backed out changeset 2d981ccf4c2e (bug 1298328) for failing X tests on /experiments/test/xpcshell/test_conditions.js on a CLOSED TREE
authorGurzau Raul <rgurzau@mozilla.com>
Fri, 09 Mar 2018 01:53:26 +0200
changeset 407293 09a3293b4d6f7ed1891227b4652fbf255a7025bf
parent 407292 2b44ea19f287a5f65acf41526d360d980c24f425
child 407294 5b67155a1e619edc81fefc72282199336e9aca83
push id100638
push userdluca@mozilla.com
push dateFri, 09 Mar 2018 10:02:36 +0000
treeherdermozilla-inbound@94ce243faf62 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs1298328
milestone60.0a1
backs out2d981ccf4c2e1f905698d0dcbecb0b52e0e49911
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Backed out changeset 2d981ccf4c2e (bug 1298328) for failing X tests on /experiments/test/xpcshell/test_conditions.js on a CLOSED TREE
Makefile.in
toolkit/xre/Makefile.in
toolkit/xre/nsAppRunner.cpp
--- a/Makefile.in
+++ b/Makefile.in
@@ -26,23 +26,18 @@ include $(topsrcdir)/config/config.mk
 GARBAGE_DIRS += _javagen _profile staticlib
 DIST_GARBAGE = config.cache config.log config.status* config-defs.h \
    config/autoconf.mk \
    mozilla-config.h \
    netwerk/necko-config.h xpcom/xpcom-config.h xpcom/xpcom-private.h \
    .mozconfig.mk
 
 ifndef MOZ_PROFILE_USE
-# Automation builds should always have a new buildid, but for the sake of not
-# re-linking libxul on every incremental build we do not enforce this for
-# developer builds.
-ifneq (,$(MOZ_AUTOMATION)$(MOZ_BUILD_DATE))
 buildid.h source-repo.h: FORCE
 endif
-endif
 
 ifdef JS_STANDALONE
 configure_dir = $(topsrcdir)/js/src
 else
 configure_dir = $(topsrcdir)
 endif
 
 BUILD_BACKEND_FILES := $(addprefix backend.,$(addsuffix Backend,$(BUILD_BACKENDS)))
new file mode 100644
--- /dev/null
+++ b/toolkit/xre/Makefile.in
@@ -0,0 +1,21 @@
+# -*- makefile -*-
+# vim:set ts=8 sw=8 sts=8 noet:
+
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+milestone_txt = $(topsrcdir)/config/milestone.txt
+
+include $(topsrcdir)/config/rules.mk
+
+MOZ_BUILDID   := $(shell awk '{print $$3}' $(DEPTH)/buildid.h)
+$(call errorIfEmpty,GRE_MILESTONE MOZ_BUILDID)
+
+MK_COMPILE_DEFINES = -DMOZ_BUILDID=$(MOZ_BUILDID)
+
+# Note these dependencies are broken because the target is *not* the cpp file.
+# BUT, actually fixing it would make libxul rebuilt on every single incremental
+# build because of the automatic buildid change. This is why we can't actually
+# include buildid.h there, because it would add the dependency.
+$(srcdir)/nsAppRunner.cpp: $(DEPTH)/buildid.h $(milestone_txt)
--- a/toolkit/xre/nsAppRunner.cpp
+++ b/toolkit/xre/nsAppRunner.cpp
@@ -266,17 +266,22 @@ nsString gAbsoluteArgv0Path;
 #endif
 #ifdef MOZ_X11
 #include <gdk/gdkx.h>
 #endif /* MOZ_X11 */
 #include "nsGTKToolkit.h"
 #include <fontconfig/fontconfig.h>
 #endif
 #include "BinaryPath.h"
+#ifndef MOZ_BUILDID
+// See comment in Makefile.in why we want to avoid including buildid.h.
+// Still include it when MOZ_BUILDID is not set, which can happen with some
+// build backends.
 #include "buildid.h"
+#endif
 
 #ifdef MOZ_LINKER
 extern "C" MFBT_API bool IsSignalHandlingBroken();
 #endif
 
 #ifdef FUZZING
 #include "FuzzerRunner.h"