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 765224 09a3293b4d6f7ed1891227b4652fbf255a7025bf
parent 765223 2b44ea19f287a5f65acf41526d360d980c24f425
child 765225 5b67155a1e619edc81fefc72282199336e9aca83
push id102006
push userbmo:ken.vandine@canonical.com
push dateFri, 09 Mar 2018 10:57:30 +0000
bugs1298328
milestone60.0a1
backs out2d981ccf4c2e1f905698d0dcbecb0b52e0e49911
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"