Bug 1021538 - Use mozmake to build comm-central. r=jcranmer,a=ryanvm
authorMike Hommey <mh+mozilla@glandium.org>
Wed, 11 Jun 2014 09:39:19 +0900
changeset 20318 9e17f6ef66201825449ab40323012e1e27399a4b
parent 20317 88b552f75896a05fa4cc43f9436182a913baa5ab
child 20319 e450747b5db5366a2144d8fd9a8caefacbd219c7
push id1209
push usermbanner@mozilla.com
push dateTue, 02 Sep 2014 16:59:36 +0000
treeherdercomm-beta@842e0fd167ee [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjcranmer, ryanvm
bugs1021538
Bug 1021538 - Use mozmake to build comm-central. r=jcranmer,a=ryanvm
Makefile.in
build/pymake/make.py
mail/config/tooltool-manifests/win32/releng.manifest
suite/config/tooltool-manifests/win32/releng.manifest
--- a/Makefile.in
+++ b/Makefile.in
@@ -76,17 +76,17 @@ endif
 include $(topsrcdir)/mozilla/toolkit/mozapps/installer/package-name.mk
 
 ifeq ($(OS_ARCH),WINNT)
   # PDB files don't get moved to dist, so we need to scan the whole objdir
   MAKE_SYM_STORE_PATH=..
 endif
 
 buildsymbols :: $(SUBMAKEFILES)
-	$(MAKE) -C mozilla MAKE_SYM_STORE_PATH=$(MAKE_SYM_STORE_PATH) SYM_STORE_SOURCE_DIRS="$(topsrcdir)/mozilla/extensions/inspector $(topsrcdir)/ldap/sdks $(topsrcdir)/mozilla $(topsrcdir)" $@
+	$(MAKE) -C mozilla MAKE_SYM_STORE_PATH=$(MAKE_SYM_STORE_PATH) SYM_STORE_SOURCE_DIRS='$(topsrcdir)/mozilla/extensions/inspector $(topsrcdir)/ldap/sdks $(topsrcdir)/mozilla $(topsrcdir)' $@
 
 # If we don't specify this, then we will end up trying to build as if we were a
 # regular directory in the build tree.
 SUPPRESS_DEFAULT_RULES := 1
 
 include $(topsrcdir)/config/rules.mk
 
 # defined in (mozilla/.../)package-name.mk
--- a/build/pymake/make.py
+++ b/build/pymake/make.py
@@ -15,16 +15,29 @@ def getpath(relpath):
     thisdir = os.path.dirname(__file__)
     return os.path.abspath(os.path.join(thisdir, *relpath))
 
 PYMAKE = getpath(["..", "..", "mozilla", "build", "pymake", "make.py"])
 CLIENT_PY = getpath(["..", "..", "client.py"])
 CLIENT_PY_ARGS = getpath(["..", "client.py-args"])
 
 def main(args):
+    if 'TINDERBOX_OUTPUT' in os.environ:
+        # When building on mozilla build slaves, execute mozmake instead. Until bug
+        # 978211, this is the easiest, albeit hackish, way to do this.
+        mozmake = os.path.join(os.path.dirname(__file__), '..', '..',
+            'mozmake.exe')
+        if os.path.exists(mozmake):
+            cmd = [mozmake]
+            cmd.extend(sys.argv[1:])
+            shell = os.environ.get('SHELL')
+            if shell and not shell.lower().endswith('.exe'):
+                cmd += ['SHELL=%s.exe' % shell]
+            sys.exit(subprocess.call(cmd))
+
     if not os.path.exists(PYMAKE):
         clientpyargs = open(CLIENT_PY_ARGS, "r").read().strip()
         clientpyargs = shlex.split(clientpyargs)
         subprocess.check_call([sys.executable, CLIENT_PY, "checkout"] +
                               clientpyargs)
 
         if not os.path.exists(PYMAKE):
             raise Exception("Pymake not found even after client.py was run")
new file mode 100644
--- /dev/null
+++ b/mail/config/tooltool-manifests/win32/releng.manifest
@@ -0,0 +1,20 @@
+[
+{
+"size": 266240,
+"digest": "bb345b0e700ffab4d09436981f14b5de84da55a3f18a7f09ebc4364a4488acdeab8d46f447b12ac70f2da1444a68b8ce8b8675f0dae2ccf845e966d1df0f0869",
+"algorithm": "sha512",
+"filename": "mozmake.exe"
+},
+{
+"size": 51,
+"digest": "c8e40edb314eeabfb92c77cf5ff9a7857033f15dd65a00349bcf9e3e5b75624afc71f733b2ff7e029c20a78313038409c2bd022bf7e5a7e0c487fc2c2d640986",
+"algorithm": "sha512",
+"filename": "setup.sh"
+},
+{
+"size": 165226,
+"digest": "79280f7595bc9e1613e05f8b2f0db3798ac739b96191e0f133e8ccd8ad149fedc84a1046e59863574189db28363a01712ae7b368ad1714e30ff88e7ebd5dad23",
+"algorithm": "sha512",
+"filename": "sccache.tar.bz2"
+}
+]
new file mode 100644
--- /dev/null
+++ b/suite/config/tooltool-manifests/win32/releng.manifest
@@ -0,0 +1,20 @@
+[
+{
+"size": 266240,
+"digest": "bb345b0e700ffab4d09436981f14b5de84da55a3f18a7f09ebc4364a4488acdeab8d46f447b12ac70f2da1444a68b8ce8b8675f0dae2ccf845e966d1df0f0869",
+"algorithm": "sha512",
+"filename": "mozmake.exe"
+},
+{
+"size": 51,
+"digest": "c8e40edb314eeabfb92c77cf5ff9a7857033f15dd65a00349bcf9e3e5b75624afc71f733b2ff7e029c20a78313038409c2bd022bf7e5a7e0c487fc2c2d640986",
+"algorithm": "sha512",
+"filename": "setup.sh"
+},
+{
+"size": 165226,
+"digest": "79280f7595bc9e1613e05f8b2f0db3798ac739b96191e0f133e8ccd8ad149fedc84a1046e59863574189db28363a01712ae7b368ad1714e30ff88e7ebd5dad23",
+"algorithm": "sha512",
+"filename": "sccache.tar.bz2"
+}
+]