summaryrefslogtreecommitdiffstats
path: root/b2g/graphene
diff options
context:
space:
mode:
Diffstat (limited to 'b2g/graphene')
-rw-r--r--b2g/graphene/app.mozbuild17
-rw-r--r--b2g/graphene/build.mk5
-rw-r--r--b2g/graphene/config/horizon-mozconfigs/common24
-rw-r--r--b2g/graphene/config/horizon-mozconfigs/common.override5
-rw-r--r--b2g/graphene/config/horizon-mozconfigs/linux32/debug25
-rw-r--r--b2g/graphene/config/horizon-mozconfigs/linux32/nightly25
-rw-r--r--b2g/graphene/config/horizon-mozconfigs/linux64/debug25
-rw-r--r--b2g/graphene/config/horizon-mozconfigs/linux64/nightly25
-rw-r--r--b2g/graphene/config/horizon-mozconfigs/macosx64/debug23
-rw-r--r--b2g/graphene/config/horizon-mozconfigs/macosx64/nightly23
-rw-r--r--b2g/graphene/config/horizon-mozconfigs/win32/debug19
-rw-r--r--b2g/graphene/config/horizon-mozconfigs/win32/nightly18
-rw-r--r--b2g/graphene/config/horizon-mozconfigs/win64/debug23
-rw-r--r--b2g/graphene/config/horizon-mozconfigs/win64/nightly26
-rw-r--r--b2g/graphene/config/mozconfigs/common24
-rw-r--r--b2g/graphene/config/mozconfigs/common.override5
-rw-r--r--b2g/graphene/config/mozconfigs/linux32/debug25
-rw-r--r--b2g/graphene/config/mozconfigs/linux32/nightly25
-rw-r--r--b2g/graphene/config/mozconfigs/linux64/debug25
-rw-r--r--b2g/graphene/config/mozconfigs/linux64/nightly25
-rw-r--r--b2g/graphene/config/mozconfigs/macosx64/debug23
-rw-r--r--b2g/graphene/config/mozconfigs/macosx64/nightly23
-rw-r--r--b2g/graphene/config/mozconfigs/win32/debug19
-rw-r--r--b2g/graphene/config/mozconfigs/win32/nightly18
-rw-r--r--b2g/graphene/config/mozconfigs/win64/debug23
-rw-r--r--b2g/graphene/config/mozconfigs/win64/nightly26
-rw-r--r--b2g/graphene/confvars.sh53
-rw-r--r--b2g/graphene/graphene.js59
-rw-r--r--b2g/graphene/moz.configure7
-rw-r--r--b2g/graphene/settings.json3
30 files changed, 666 insertions, 0 deletions
diff --git a/b2g/graphene/app.mozbuild b/b2g/graphene/app.mozbuild
new file mode 100644
index 000000000..fc3037c06
--- /dev/null
+++ b/b2g/graphene/app.mozbuild
@@ -0,0 +1,17 @@
+# 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/.
+
+include('/toolkit/toolkit.mozbuild')
+
+if CONFIG['MOZ_EXTENSIONS']:
+ DIRS += ['/extensions']
+
+DIRS += [
+ '/%s' % CONFIG['MOZ_BRANDING_DIRECTORY'],
+ '/b2g',
+]
+
+# Add the defaults settings.
+FINAL_TARGET_FILES.defaults += [ 'settings.json' ]
diff --git a/b2g/graphene/build.mk b/b2g/graphene/build.mk
new file mode 100644
index 000000000..5a3623e5a
--- /dev/null
+++ b/b2g/graphene/build.mk
@@ -0,0 +1,5 @@
+# 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)/b2g/build.mk
diff --git a/b2g/graphene/config/horizon-mozconfigs/common b/b2g/graphene/config/horizon-mozconfigs/common
new file mode 100644
index 000000000..9277d299f
--- /dev/null
+++ b/b2g/graphene/config/horizon-mozconfigs/common
@@ -0,0 +1,24 @@
+# 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/.
+
+# Disable the l10n-check target, which isn't relevant to b2g builds at all.
+# This needs to be set prior to the next include for it to take effect.
+MOZ_AUTOMATION_PACKAGE_TESTS=0
+MOZ_AUTOMATION_L10N_CHECK=0
+MOZ_AUTOMATION_SDK=0
+
+. "$topsrcdir/build/mozconfig.common"
+
+# Normally, we'd set this unconditionally, but this file is also used
+# for local builds and there is no other mozconfig in this tree that
+# is included on device builds.
+if test -d $topsrcdir/../gcc/bin; then
+ HOST_CC="$topsrcdir/../gcc/bin/gcc"
+ HOST_CXX="$topsrcdir/../gcc/bin/g++"
+ . "$topsrcdir/build/unix/mozconfig.stdcxx"
+fi
+
+MOZ_HORIZON=1
+ac_add_options --with-branding=b2g/branding/horizon
+ac_add_options --enable-application=b2g/graphene
diff --git a/b2g/graphene/config/horizon-mozconfigs/common.override b/b2g/graphene/config/horizon-mozconfigs/common.override
new file mode 100644
index 000000000..f17dadfe6
--- /dev/null
+++ b/b2g/graphene/config/horizon-mozconfigs/common.override
@@ -0,0 +1,5 @@
+# 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/.
+
+. "$topsrcdir/build/mozconfig.common.override"
diff --git a/b2g/graphene/config/horizon-mozconfigs/linux32/debug b/b2g/graphene/config/horizon-mozconfigs/linux32/debug
new file mode 100644
index 000000000..9758e72e4
--- /dev/null
+++ b/b2g/graphene/config/horizon-mozconfigs/linux32/debug
@@ -0,0 +1,25 @@
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common"
+. "$topsrcdir/build/unix/mozconfig.linux32"
+
+ac_add_options --enable-debug
+
+# Nightlies only since this has a cost in performance
+#ac_add_options --enable-js-diagnostics
+
+# This will overwrite the default of stripping everything and keep the symbol table.
+# This is useful for profiling and debugging and only increases the package size
+# by 2 MBs.
+STRIP_FLAGS="--strip-debug"
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+# Use sccache
+no_sccache=
+. "$topsrcdir/build/mozconfig.cache"
+
+# graphene options
+ENABLE_MARIONETTE=1
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common.override"
diff --git a/b2g/graphene/config/horizon-mozconfigs/linux32/nightly b/b2g/graphene/config/horizon-mozconfigs/linux32/nightly
new file mode 100644
index 000000000..ad36ce038
--- /dev/null
+++ b/b2g/graphene/config/horizon-mozconfigs/linux32/nightly
@@ -0,0 +1,25 @@
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common"
+. "$topsrcdir/build/unix/mozconfig.linux32"
+
+ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
+ac_add_options --enable-signmar
+
+# Nightlies only since this has a cost in performance
+#ac_add_options --enable-js-diagnostics
+
+# This will overwrite the default of stripping everything and keep the symbol table.
+# This is useful for profiling and debugging and only increases the package size
+# by 2 MBs.
+STRIP_FLAGS="--strip-debug"
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+# Use sccache
+no_sccache=
+. "$topsrcdir/build/mozconfig.cache"
+
+# graphene options
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common.override"
diff --git a/b2g/graphene/config/horizon-mozconfigs/linux64/debug b/b2g/graphene/config/horizon-mozconfigs/linux64/debug
new file mode 100644
index 000000000..c29fe6ebc
--- /dev/null
+++ b/b2g/graphene/config/horizon-mozconfigs/linux64/debug
@@ -0,0 +1,25 @@
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common"
+. "$topsrcdir/build/unix/mozconfig.linux"
+
+ac_add_options --enable-debug
+
+# Nightlies only since this has a cost in performance
+#ac_add_options --enable-js-diagnostics
+
+# This will overwrite the default of stripping everything and keep the symbol table.
+# This is useful for profiling and debugging and only increases the package size
+# by 2 MBs.
+STRIP_FLAGS="--strip-debug"
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+# Use sccache
+no_sccache=
+. "$topsrcdir/build/mozconfig.cache"
+
+# graphene options
+ENABLE_MARIONETTE=1
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common.override"
diff --git a/b2g/graphene/config/horizon-mozconfigs/linux64/nightly b/b2g/graphene/config/horizon-mozconfigs/linux64/nightly
new file mode 100644
index 000000000..0a695b081
--- /dev/null
+++ b/b2g/graphene/config/horizon-mozconfigs/linux64/nightly
@@ -0,0 +1,25 @@
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common"
+. "$topsrcdir/build/unix/mozconfig.linux"
+
+ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
+ac_add_options --enable-signmar
+
+# Nightlies only since this has a cost in performance
+#ac_add_options --enable-js-diagnostics
+
+# This will overwrite the default of stripping everything and keep the symbol table.
+# This is useful for profiling and debugging and only increases the package size
+# by 2 MBs.
+STRIP_FLAGS="--strip-debug"
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+# Use sccache
+no_sccache=
+. "$topsrcdir/build/mozconfig.cache"
+
+# graphene options
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common.override"
diff --git a/b2g/graphene/config/horizon-mozconfigs/macosx64/debug b/b2g/graphene/config/horizon-mozconfigs/macosx64/debug
new file mode 100644
index 000000000..b973fd24c
--- /dev/null
+++ b/b2g/graphene/config/horizon-mozconfigs/macosx64/debug
@@ -0,0 +1,23 @@
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common"
+
+# Use sccache
+no_sccache=
+
+. $topsrcdir/build/macosx/mozconfig.common
+
+# Nightlies only since this has a cost in performance
+ac_add_options --enable-js-diagnostics
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+#ac_add_options --with-macbundlename-prefix=Firefox
+
+# graphene Stuff
+ac_add_options --enable-debug-symbols
+ac_add_options --enable-debug
+ENABLE_MARIONETTE=1
+
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common.override"
diff --git a/b2g/graphene/config/horizon-mozconfigs/macosx64/nightly b/b2g/graphene/config/horizon-mozconfigs/macosx64/nightly
new file mode 100644
index 000000000..5125bb8f1
--- /dev/null
+++ b/b2g/graphene/config/horizon-mozconfigs/macosx64/nightly
@@ -0,0 +1,23 @@
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common"
+
+# Use sccache
+no_sccache=
+
+. $topsrcdir/build/macosx/mozconfig.common
+
+ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
+ac_add_options --enable-signmar
+
+# Nightlies only since this has a cost in performance
+ac_add_options --enable-js-diagnostics
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+#ac_add_options --with-macbundlename-prefix=Firefox
+
+# graphene Stuff
+ac_add_options --enable-debug-symbols
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common.override"
diff --git a/b2g/graphene/config/horizon-mozconfigs/win32/debug b/b2g/graphene/config/horizon-mozconfigs/win32/debug
new file mode 100644
index 000000000..89bcb7a5f
--- /dev/null
+++ b/b2g/graphene/config/horizon-mozconfigs/win32/debug
@@ -0,0 +1,19 @@
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common"
+
+ac_add_options --enable-jemalloc
+ac_add_options --enable-debug
+
+# Nightlies only since this has a cost in performance
+ac_add_options --enable-js-diagnostics
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+. $topsrcdir/build/win32/mozconfig.vs-latest
+
+# graphene Options
+ENABLE_MARIONETTE=1
+
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common.override"
diff --git a/b2g/graphene/config/horizon-mozconfigs/win32/nightly b/b2g/graphene/config/horizon-mozconfigs/win32/nightly
new file mode 100644
index 000000000..b9ab618e5
--- /dev/null
+++ b/b2g/graphene/config/horizon-mozconfigs/win32/nightly
@@ -0,0 +1,18 @@
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common"
+
+ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
+ac_add_options --enable-jemalloc
+ac_add_options --enable-signmar
+
+# Nightlies only since this has a cost in performance
+ac_add_options --enable-js-diagnostics
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+. $topsrcdir/build/win32/mozconfig.vs-latest
+
+# graphene Options
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common.override"
diff --git a/b2g/graphene/config/horizon-mozconfigs/win64/debug b/b2g/graphene/config/horizon-mozconfigs/win64/debug
new file mode 100644
index 000000000..3ab8e7820
--- /dev/null
+++ b/b2g/graphene/config/horizon-mozconfigs/win64/debug
@@ -0,0 +1,23 @@
+. "$topsrcdir/build/mozconfig.win-common"
+MOZ_AUTOMATION_L10N_CHECK=0
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common"
+
+ac_add_options --target=x86_64-pc-mingw32
+ac_add_options --host=x86_64-pc-mingw32
+
+ac_add_options --enable-debug
+ac_add_options --enable-dmd
+ac_add_options --enable-profiling # needed for --enable-dmd to work on Windows
+ac_add_options --enable-signmar
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+# Package js shell.
+export MOZ_PACKAGE_JSSHELL=1
+
+. $topsrcdir/build/win64/mozconfig.vs-latest
+
+. "$topsrcdir/build/mozconfig.cache"
+
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common.override"
diff --git a/b2g/graphene/config/horizon-mozconfigs/win64/nightly b/b2g/graphene/config/horizon-mozconfigs/win64/nightly
new file mode 100644
index 000000000..f8cbb69e7
--- /dev/null
+++ b/b2g/graphene/config/horizon-mozconfigs/win64/nightly
@@ -0,0 +1,26 @@
+if [ "x$IS_NIGHTLY" = "xyes" ]; then
+ MOZ_AUTOMATION_UPLOAD_SYMBOLS=1
+ MOZ_AUTOMATION_UPDATE_PACKAGING=1
+fi
+
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common"
+
+ac_add_options --target=x86_64-pc-mingw32
+ac_add_options --host=x86_64-pc-mingw32
+
+. $topsrcdir/build/win64/mozconfig.vs-latest
+
+ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
+ac_add_options --enable-jemalloc
+ac_add_options --enable-signmar
+
+# Nightlies only since this has a cost in performance
+ac_add_options --enable-js-diagnostics
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+# graphene Options
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/horizon-mozconfigs/common.override"
diff --git a/b2g/graphene/config/mozconfigs/common b/b2g/graphene/config/mozconfigs/common
new file mode 100644
index 000000000..807d5d958
--- /dev/null
+++ b/b2g/graphene/config/mozconfigs/common
@@ -0,0 +1,24 @@
+# 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/.
+
+# Disable the l10n-check target, which isn't relevant to b2g builds at all.
+# This needs to be set prior to the next include for it to take effect.
+MOZ_AUTOMATION_PACKAGE_TESTS=0
+MOZ_AUTOMATION_L10N_CHECK=0
+MOZ_AUTOMATION_SDK=0
+
+. "$topsrcdir/build/mozconfig.common"
+
+# Normally, we'd set this unconditionally, but this file is also used
+# for local builds and there is no other mozconfig in this tree that
+# is included on device builds.
+if test -d $topsrcdir/../gcc/bin; then
+ HOST_CC="$topsrcdir/../gcc/bin/gcc"
+ HOST_CXX="$topsrcdir/../gcc/bin/g++"
+ . "$topsrcdir/build/unix/mozconfig.stdcxx"
+fi
+
+ac_add_options --with-branding=b2g/branding/browserhtml
+ac_add_options --enable-application=b2g/graphene
+
diff --git a/b2g/graphene/config/mozconfigs/common.override b/b2g/graphene/config/mozconfigs/common.override
new file mode 100644
index 000000000..f17dadfe6
--- /dev/null
+++ b/b2g/graphene/config/mozconfigs/common.override
@@ -0,0 +1,5 @@
+# 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/.
+
+. "$topsrcdir/build/mozconfig.common.override"
diff --git a/b2g/graphene/config/mozconfigs/linux32/debug b/b2g/graphene/config/mozconfigs/linux32/debug
new file mode 100644
index 000000000..4be8bc478
--- /dev/null
+++ b/b2g/graphene/config/mozconfigs/linux32/debug
@@ -0,0 +1,25 @@
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common"
+. "$topsrcdir/build/unix/mozconfig.linux32"
+
+ac_add_options --enable-debug
+
+# Nightlies only since this has a cost in performance
+#ac_add_options --enable-js-diagnostics
+
+# This will overwrite the default of stripping everything and keep the symbol table.
+# This is useful for profiling and debugging and only increases the package size
+# by 2 MBs.
+STRIP_FLAGS="--strip-debug"
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+# Use sccache
+no_sccache=
+. "$topsrcdir/build/mozconfig.cache"
+
+# graphene options
+ENABLE_MARIONETTE=1
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common.override"
diff --git a/b2g/graphene/config/mozconfigs/linux32/nightly b/b2g/graphene/config/mozconfigs/linux32/nightly
new file mode 100644
index 000000000..0bbd85ac2
--- /dev/null
+++ b/b2g/graphene/config/mozconfigs/linux32/nightly
@@ -0,0 +1,25 @@
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common"
+. "$topsrcdir/build/unix/mozconfig.linux32"
+
+ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
+ac_add_options --enable-signmar
+
+# Nightlies only since this has a cost in performance
+#ac_add_options --enable-js-diagnostics
+
+# This will overwrite the default of stripping everything and keep the symbol table.
+# This is useful for profiling and debugging and only increases the package size
+# by 2 MBs.
+STRIP_FLAGS="--strip-debug"
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+# Use sccache
+no_sccache=
+. "$topsrcdir/build/mozconfig.cache"
+
+# graphene options
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common.override"
diff --git a/b2g/graphene/config/mozconfigs/linux64/debug b/b2g/graphene/config/mozconfigs/linux64/debug
new file mode 100644
index 000000000..ab1eece0b
--- /dev/null
+++ b/b2g/graphene/config/mozconfigs/linux64/debug
@@ -0,0 +1,25 @@
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common"
+. "$topsrcdir/build/unix/mozconfig.linux"
+
+ac_add_options --enable-debug
+
+# Nightlies only since this has a cost in performance
+#ac_add_options --enable-js-diagnostics
+
+# This will overwrite the default of stripping everything and keep the symbol table.
+# This is useful for profiling and debugging and only increases the package size
+# by 2 MBs.
+STRIP_FLAGS="--strip-debug"
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+# Use sccache
+no_sccache=
+. "$topsrcdir/build/mozconfig.cache"
+
+# graphene options
+ENABLE_MARIONETTE=1
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common.override"
diff --git a/b2g/graphene/config/mozconfigs/linux64/nightly b/b2g/graphene/config/mozconfigs/linux64/nightly
new file mode 100644
index 000000000..543ab8a4e
--- /dev/null
+++ b/b2g/graphene/config/mozconfigs/linux64/nightly
@@ -0,0 +1,25 @@
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common"
+. "$topsrcdir/build/unix/mozconfig.linux"
+
+ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
+ac_add_options --enable-signmar
+
+# Nightlies only since this has a cost in performance
+#ac_add_options --enable-js-diagnostics
+
+# This will overwrite the default of stripping everything and keep the symbol table.
+# This is useful for profiling and debugging and only increases the package size
+# by 2 MBs.
+STRIP_FLAGS="--strip-debug"
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+# Use sccache
+no_sccache=
+. "$topsrcdir/build/mozconfig.cache"
+
+# graphene options
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common.override"
diff --git a/b2g/graphene/config/mozconfigs/macosx64/debug b/b2g/graphene/config/mozconfigs/macosx64/debug
new file mode 100644
index 000000000..027632e1d
--- /dev/null
+++ b/b2g/graphene/config/mozconfigs/macosx64/debug
@@ -0,0 +1,23 @@
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common"
+
+# Use sccache
+no_sccache=
+
+. $topsrcdir/build/macosx/mozconfig.common
+
+# Nightlies only since this has a cost in performance
+ac_add_options --enable-js-diagnostics
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+#ac_add_options --with-macbundlename-prefix=Firefox
+
+# graphene Stuff
+ac_add_options --enable-debug-symbols
+ac_add_options --enable-debug
+ENABLE_MARIONETTE=1
+
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common.override"
diff --git a/b2g/graphene/config/mozconfigs/macosx64/nightly b/b2g/graphene/config/mozconfigs/macosx64/nightly
new file mode 100644
index 000000000..002fdeaf9
--- /dev/null
+++ b/b2g/graphene/config/mozconfigs/macosx64/nightly
@@ -0,0 +1,23 @@
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common"
+
+# Use sccache
+no_sccache=
+
+. $topsrcdir/build/macosx/mozconfig.common
+
+ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
+ac_add_options --enable-signmar
+
+# Nightlies only since this has a cost in performance
+ac_add_options --enable-js-diagnostics
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+#ac_add_options --with-macbundlename-prefix=Firefox
+
+# graphene Stuff
+ac_add_options --enable-debug-symbols
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common.override"
diff --git a/b2g/graphene/config/mozconfigs/win32/debug b/b2g/graphene/config/mozconfigs/win32/debug
new file mode 100644
index 000000000..246b82399
--- /dev/null
+++ b/b2g/graphene/config/mozconfigs/win32/debug
@@ -0,0 +1,19 @@
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common"
+
+ac_add_options --enable-jemalloc
+ac_add_options --enable-debug
+
+# Nightlies only since this has a cost in performance
+ac_add_options --enable-js-diagnostics
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+. $topsrcdir/build/win32/mozconfig.vs-latest
+
+# graphene Options
+ENABLE_MARIONETTE=1
+
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/grapheneconfig/mozconfigs/common.override"
diff --git a/b2g/graphene/config/mozconfigs/win32/nightly b/b2g/graphene/config/mozconfigs/win32/nightly
new file mode 100644
index 000000000..ed7668b64
--- /dev/null
+++ b/b2g/graphene/config/mozconfigs/win32/nightly
@@ -0,0 +1,18 @@
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common"
+
+ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
+ac_add_options --enable-jemalloc
+ac_add_options --enable-signmar
+
+# Nightlies only since this has a cost in performance
+ac_add_options --enable-js-diagnostics
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+. $topsrcdir/build/win32/mozconfig.vs-latest
+
+# graphene Options
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common.override"
diff --git a/b2g/graphene/config/mozconfigs/win64/debug b/b2g/graphene/config/mozconfigs/win64/debug
new file mode 100644
index 000000000..455ec1762
--- /dev/null
+++ b/b2g/graphene/config/mozconfigs/win64/debug
@@ -0,0 +1,23 @@
+. "$topsrcdir/build/mozconfig.win-common"
+MOZ_AUTOMATION_L10N_CHECK=0
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common"
+
+ac_add_options --target=x86_64-pc-mingw32
+ac_add_options --host=x86_64-pc-mingw32
+
+ac_add_options --enable-debug
+ac_add_options --enable-dmd
+ac_add_options --enable-profiling # needed for --enable-dmd to work on Windows
+ac_add_options --enable-signmar
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+# Package js shell.
+export MOZ_PACKAGE_JSSHELL=1
+
+. $topsrcdir/build/win64/mozconfig.vs-latest
+
+. "$topsrcdir/build/mozconfig.cache"
+
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common.override"
diff --git a/b2g/graphene/config/mozconfigs/win64/nightly b/b2g/graphene/config/mozconfigs/win64/nightly
new file mode 100644
index 000000000..73db616cc
--- /dev/null
+++ b/b2g/graphene/config/mozconfigs/win64/nightly
@@ -0,0 +1,26 @@
+if [ "x$IS_NIGHTLY" = "xyes" ]; then
+ MOZ_AUTOMATION_UPLOAD_SYMBOLS=1
+ MOZ_AUTOMATION_UPDATE_PACKAGING=1
+fi
+
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common"
+
+ac_add_options --target=x86_64-pc-mingw32
+ac_add_options --host=x86_64-pc-mingw32
+
+. $topsrcdir/build/win64/mozconfig.vs-latest
+
+ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
+ac_add_options --enable-jemalloc
+ac_add_options --enable-signmar
+
+# Nightlies only since this has a cost in performance
+ac_add_options --enable-js-diagnostics
+
+# Needed to enable breakpad in application.ini
+export MOZILLA_OFFICIAL=1
+
+# graphene Options
+export CXXFLAGS=-DMOZ_ENABLE_JS_DUMP
+
+. "$topsrcdir/b2g/graphene/config/mozconfigs/common.override"
diff --git a/b2g/graphene/confvars.sh b/b2g/graphene/confvars.sh
new file mode 100644
index 000000000..7db9a7ee6
--- /dev/null
+++ b/b2g/graphene/confvars.sh
@@ -0,0 +1,53 @@
+# 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 test "$MOZ_HORIZON"; then
+MOZ_APP_BASENAME=Horizon
+else
+MOZ_APP_BASENAME=Graphene
+fi
+
+MOZ_APP_VENDOR=Mozilla
+MOZ_UPDATER=1
+
+MOZ_B2G=1
+MOZ_GRAPHENE=1
+
+MOZ_APP_VERSION=$FIREFOX_VERSION
+MOZ_APP_UA_NAME=Firefox
+
+MOZ_B2G_VERSION=2.6.0.0-prerelease
+MOZ_B2G_OS_NAME=Boot2Gecko
+
+MOZ_BRANDING_DIRECTORY=b2g/branding/unofficial
+MOZ_OFFICIAL_BRANDING_DIRECTORY=b2g/branding/official
+# MOZ_APP_DISPLAYNAME is set by branding/configure.sh
+
+MOZ_CAPTIVEDETECT=1
+
+MOZ_NO_SMART_CARDS=1
+MOZ_APP_STATIC_INI=1
+NSS_NO_LIBPKIX=1
+
+if test "$OS_TARGET" = "Android"; then
+MOZ_CAPTURE=1
+MOZ_RAW=1
+MOZ_AUDIO_CHANNEL_MANAGER=1
+fi
+
+MOZ_APP_ID={d1bfe7d9-c01e-4237-998b-7b5f960a4314}
+MOZ_TIME_MANAGER=1
+
+MOZ_TOOLKIT_SEARCH=
+MOZ_PLACES=
+MOZ_B2G=1
+
+MOZ_JSDOWNLOADS=1
+
+MOZ_BUNDLED_FONTS=1
+
+export JS_GC_SMALL_CHUNK_SIZE=1
+
+# Include the DevTools client, not just the server (which is the default)
+MOZ_DEVTOOLS=all
diff --git a/b2g/graphene/graphene.js b/b2g/graphene/graphene.js
new file mode 100644
index 000000000..0c8abf42f
--- /dev/null
+++ b/b2g/graphene/graphene.js
@@ -0,0 +1,59 @@
+// See http://dxr.mozilla.org/mozilla-central/source/dom/webidl/KeyEvent.webidl
+// for keyCode values.
+// Default value is F5
+pref("b2g.reload_key", '{ "key": 116, "shift": false, "ctrl": false, "alt": false, "meta": false }');
+
+#ifdef MOZ_HORIZON
+pref("b2g.default.start_manifest_url", "https://mozvr.github.io/horizon/web/manifest.webapp");
+pref("dom.vr.enabled", true);
+pref("dom.ipc.tabs.disabled", true);
+#else
+pref("b2g.default.start_manifest_url", "https://mozilla.github.io/browser.html/manifest.webapp");
+pref("dom.ipc.tabs.disabled", false);
+#endif
+
+pref("javascript.options.discardSystemSource", false);
+pref("browser.dom.window.dump.enabled", true);
+pref("browser.ignoreNativeFrameTextSelection", false);
+pref("dom.meta-viewport.enabled", false);
+pref("full-screen-api.ignore-widgets", false);
+pref("image.high_quality_downscaling.enabled", true);
+pref("dom.w3c_touch_events.enabled", 0);
+pref("font.size.inflation.minTwips", 0);
+pref("browser.enable_click_image_resizing", true);
+pref("layout.css.scroll-snap.enabled", true);
+pref("dom.mozInputMethod.enabled", false);
+pref("browser.autofocus", true);
+pref("layers.async-pan-zoom.enabled", false);
+pref("network.predictor.enabled", true);
+
+// No AccessibleCaret
+pref("layout.accessiblecaret.enabled", false);
+
+// To be removed once bug 942756 is fixed.
+pref("devtools.debugger.unix-domain-socket", "6000");
+
+pref("devtools.debugger.forbid-certified-apps", false);
+pref("devtools.debugger.prompt-connection", false);
+
+// Update url.
+pref("app.update.url", "https://aus4.mozilla.org/update/3/%PRODUCT%/%VERSION%/%BUILD_ID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/update.xml");
+
+pref("b2g.nativeWindowGeometry.width", 700);
+pref("b2g.nativeWindowGeometry.height", 600);
+pref("b2g.nativeWindowGeometry.screenX", -1); // center
+pref("b2g.nativeWindowGeometry.screenY", -1); // center
+pref("b2g.nativeWindowGeometry.fullscreen", false);
+
+pref("media.useAudioChannelService", false);
+
+#ifdef ENABLE_MARIONETTE
+pref("b2g.is_mulet", true);
+#endif
+
+// Most DevTools prefs are set from the shared file
+// devtools/client/preferences/devtools.js, but this one is currently set
+// per-app or per-channel.
+// Number of usages of the web console or scratchpad. If this is less than 5,
+// then pasting code into the web console or scratchpad is disabled
+pref("devtools.selfxss.count", 5);
diff --git a/b2g/graphene/moz.configure b/b2g/graphene/moz.configure
new file mode 100644
index 000000000..e9533bbda
--- /dev/null
+++ b/b2g/graphene/moz.configure
@@ -0,0 +1,7 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# 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/.
+
+include('../common.configure')
diff --git a/b2g/graphene/settings.json b/b2g/graphene/settings.json
new file mode 100644
index 000000000..75bd243a4
--- /dev/null
+++ b/b2g/graphene/settings.json
@@ -0,0 +1,3 @@
+{
+ "apz.overscroll.enabled": false
+}