Bug 961745 - Introduce b2g/dev application to build a mulet. r=mshal, r=fabrice
authorAlexandre Poirot <poirot.alex@gmail.com>
Mon, 28 Apr 2014 14:53:00 -0400
changeset 200235 1f9bd75bb71441ad1083c69b8e7c0804fcffce8b
parent 200234 47c97505bdb76eb6bcdf4040cdf7e5f9faf558a9
child 200236 c5d205aa662cb1203698587ecccb1bd2ca28154c
push id3741
push userasasaki@mozilla.com
push dateMon, 21 Jul 2014 20:25:18 +0000
treeherdermozilla-beta@4d6f46f5af68 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersmshal, fabrice
bugs961745
milestone32.0a1
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
Bug 961745 - Introduce b2g/dev application to build a mulet. r=mshal, r=fabrice
b2g/dev/app.mozbuild
b2g/dev/build.mk
b2g/dev/confvars.sh
browser/app/Makefile.in
browser/components/BrowserComponents.manifest
configure.in
new file mode 100644
--- /dev/null
+++ b/b2g/dev/app.mozbuild
@@ -0,0 +1,25 @@
+# vim: set filetype=python:
+# 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/.
+
+if not CONFIG['LIBXUL_SDK']:
+    app_libxul_dirs = []
+    app_libxul_static_dirs = []
+    include('/toolkit/toolkit.mozbuild')
+
+if CONFIG['MOZ_EXTENSIONS']:
+    add_tier_dir('app', 'extensions')
+
+add_tier_dir('app', [CONFIG['MOZ_BRANDING_DIRECTORY']])
+
+if CONFIG['MOZ_WEBAPP_RUNTIME']:
+    add_tier_dir('app', 'webapprt')
+
+add_tier_dir('app', 'b2g/chrome')
+add_tier_dir('app', 'b2g/components')
+
+# Never add tier dirs after browser because they apparently won't get
+# packaged properly on Mac.
+add_tier_dir('app', 'browser')
+
new file mode 100644
--- /dev/null
+++ b/b2g/dev/build.mk
@@ -0,0 +1,6 @@
+# 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/.
+
+include $(topsrcdir)/browser/build.mk
+
new file mode 100644
--- /dev/null
+++ b/b2g/dev/confvars.sh
@@ -0,0 +1,9 @@
+#! /bin/sh
+# 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/.
+
+MOZ_B2G=1
+MOZ_MULET=1
+
+. ${srcdir}/browser/confvars.sh
--- a/browser/app/Makefile.in
+++ b/browser/app/Makefile.in
@@ -2,16 +2,19 @@
 # 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/.
 
 dist_dest   = $(DIST)/$(MOZ_MACBUNDLE_NAME)
 
 PREF_JS_EXPORTS = $(srcdir)/profile/firefox.js \
 		  $(NULL)
 
+ifdef MOZ_MULET
+PREF_JS_EXPORTS += $(topsrcdir)/b2g/app/b2g.js
+endif
 
 # hardcode en-US for the moment
 AB_CD = en-US
 
 DEFINES += \
   -DAB_CD=$(AB_CD) \
   -DFIREFOX_ICO='"$(DIST)/branding/firefox.ico"' \
   -DDOCUMENT_ICO='"$(DIST)/branding/document.ico"' \
--- a/browser/components/BrowserComponents.manifest
+++ b/browser/components/BrowserComponents.manifest
@@ -37,9 +37,11 @@ category command-line-validator b-browse
 #
 # In theory we should do this for all these instructions, but in practice it is
 # sufficient to do it for the app-startup one, and the file is simpler that way.
 
 component {eab9012e-5f74-4cbc-b2b5-a590235513cc} nsBrowserGlue.js
 contract @mozilla.org/browser/browserglue;1 {eab9012e-5f74-4cbc-b2b5-a590235513cc}
 category app-startup nsBrowserGlue service,@mozilla.org/browser/browserglue;1 application={3c2e2abc-06d4-11e1-ac3b-374f68613e61} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} application={aa3c5121-dab2-40e2-81ca-7ea25febc110} application={a23983c0-fd0e-11dc-95ff-0800200c9a66}
 component {d8903bf6-68d5-4e97-bcd1-e4d3012f721a} nsBrowserGlue.js
+#ifndef MOZ_MULET
 contract @mozilla.org/content-permission/prompt;1 {d8903bf6-68d5-4e97-bcd1-e4d3012f721a}
+#endif
--- a/configure.in
+++ b/configure.in
@@ -4197,22 +4197,27 @@ browser)
   ;;
 
 xulrunner)
   AC_DEFINE(MOZ_XULRUNNER)
   ;;
 b2g)
   AC_DEFINE(MOZ_B2G)
   ;;
+b2g/dev)
+  AC_DEFINE(MOZ_B2G)
+  AC_DEFINE(MOZ_MULET)
+  ;;
 esac
 
 AC_SUBST(MOZ_BUILD_APP)
 AC_SUBST(MOZ_PHOENIX)
 AC_SUBST(MOZ_XULRUNNER)
 AC_SUBST(MOZ_B2G)
+AC_SUBST(MOZ_MULET)
 AC_SUBST(MOZ_B2G_VERSION)
 
 AC_DEFINE_UNQUOTED(MOZ_BUILD_APP,$MOZ_BUILD_APP)
 
 dnl ========================================================
 dnl Check android sdk version depending on mobile target
 dnl ========================================================