diff options
Diffstat (limited to 'mobile/android/config/mozconfigs/common')
-rw-r--r-- | mobile/android/config/mozconfigs/common | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/mobile/android/config/mozconfigs/common b/mobile/android/config/mozconfigs/common new file mode 100644 index 000000000..1acb91ebb --- /dev/null +++ b/mobile/android/config/mozconfigs/common @@ -0,0 +1,83 @@ +# 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/. + +# This file is included at the top of all native android mozconfigs +if [ "x$IS_NIGHTLY" = "xyes" ]; then + MOZ_AUTOMATION_UPLOAD_SYMBOLS=${MOZ_AUTOMATION_UPLOAD_SYMBOLS-1} +fi + +MOZ_AUTOMATION_L10N_CHECK=0 +. "$topsrcdir/build/mozconfig.common" + +# In TaskCluster, the Java JRE/JDK are installed from tooltool, but that +# install doesn't work on the old Buildbot mock builders (CentOS 6.2), so +# the relevant env vars are not set up in that case, leaving the build to +# run from the JRE/JDK in /usr/lib/jvm. +if [ ! -f /etc/redhat-release ] || [ "$(< /etc/redhat-release)" != "CentOS release 6.2 (Final)" ]; then + # set JAVA_HOME to find the JRE/JDK from tooltool. Several scripts in the JDK + # assume `java` is in PATH, so set that too. To see how this tarball is built, + # see taskcluster/scripts/misc/repackage-jdk.sh + export JAVA_HOME="$topsrcdir/java_home" + export PATH="$PATH:$topsrcdir/java_home/bin" + + mk_add_options "export JAVA_HOME=$topsrcdir/java_home" + mk_add_options "export PATH=$PATH:$topsrcdir/java_home/bin" +fi + +ac_add_options --enable-elf-hack + +ANDROID_NDK_VERSION="r10e" +ANDROID_NDK_VERSION_32BIT="r8c" + +# Build Fennec +ac_add_options --enable-application=mobile/android +ac_add_options --with-android-sdk="$topsrcdir/android-sdk-linux" + +if [ -z "$NO_NDK" ]; then + ac_add_options --with-android-ndk="$topsrcdir/android-ndk" + ac_add_options --with-android-gnu-compiler-version=4.9 +fi + +ac_add_options --with-system-zlib +ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL} + +ac_add_options --with-mozilla-api-keyfile=/builds/mozilla-fennec-geoloc-api.key + +# MOZ_INSTALL_TRACKING does not guarantee MOZ_UPDATE_CHANNEL will be set so we +# provide a default state. Currently, the default state provides a default +# keyfile because an assertion will be thrown if MOZ_INSTALL_TRACKING is +# specified but a keyfile is not. This assertion can catch if we misconfigure a +# release or beta build and it does not have a valid keyfile. +# +# However, by providing a default keyfile, if we misconfigure beta or release, +# the default keyfile may be used instead and the assertion won't catch the +# error. Therefore, it would be ideal to have MOZ_INSTALL_TRACKING guarantee +# MOZ_UPDATE_CHANNEL was set so we can remove the default case. This may occur +# when release promotion is implemented on Android. +# +# In all cases, we don't upload Adjust pings in automation. +if test "$MOZ_UPDATE_CHANNEL" = "release" ; then + ac_add_options --with-adjust-sdk-keyfile=/builds/adjust-sdk.token +elif test "$MOZ_UPDATE_CHANNEL" = "beta" ; then + ac_add_options --with-adjust-sdk-keyfile=/builds/adjust-sdk-beta.token +else + ac_add_options --with-adjust-sdk-keyfile="$topsrcdir/mobile/android/base/adjust-sdk-sandbox.token" +fi +export SOCORRO_SYMBOL_UPLOAD_TOKEN_FILE=/builds/crash-stats-api.token + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 + +# Use ccache +. "$topsrcdir/build/mozconfig.cache" + +HOST_CC="$topsrcdir/gcc/bin/gcc" +HOST_CXX="$topsrcdir/gcc/bin/g++" + +. "$topsrcdir/build/unix/mozconfig.stdcxx" + +# Use libc++ as our C++ standard library +ac_add_options --with-android-cxx-stl=libc++ + +JS_BINARY="$topsrcdir/mobile/android/config/js_wrapper.sh" |