Bug 1397776 - Removing armv6 config support for Android. r?Build draft
authorMakoto Kato <m_kato@ga2.so-net.ne.jp>
Fri, 15 Dec 2017 16:32:54 -0600
changeset 714500 97cc90d072c72011be9dc785f2b75fa62cdb79cc
parent 714464 10aa75f277afb22af26e5d153d2f0e555c4f0626
child 744602 569184dab739d5ffff69c89408b0da76dc47c1e2
push id93935
push userbmo:m_kato@ga2.so-net.ne.jp
push dateSat, 23 Dec 2017 21:13:07 +0000
reviewersBuild
bugs1397776
milestone59.0a1
Bug 1397776 - Removing armv6 config support for Android. r?Build We no longer support Android/armv6 and we requires NEON for Android/arm, so we can remove armv6 support for Android. MozReview-Commit-ID: Hh17BTyE0wR
build/autoconf/android.m4
build/autoconf/arch.m4
python/mozbuild/mozbuild/android_version_code.py
tools/profiler/moz.build
--- a/build/autoconf/android.m4
+++ b/build/autoconf/android.m4
@@ -35,30 +35,27 @@ case "$target" in
 esac
 
 ])
 
 AC_DEFUN([MOZ_ANDROID_CPU_ARCH],
 [
 
 if test "$OS_TARGET" = "Android"; then
-    case "${CPU_ARCH}-${MOZ_ARCH}" in
-    arm-armv7*)
+    case "${CPU_ARCH}" in
+    arm)
         ANDROID_CPU_ARCH=armeabi-v7a
         ;;
-    arm-*)
-        ANDROID_CPU_ARCH=armeabi
-        ;;
-    x86-*)
+    x86)
         ANDROID_CPU_ARCH=x86
         ;;
-    mips32-*) # When target_cpu is mipsel, CPU_ARCH is mips32
+    mips32) # When target_cpu is mipsel, CPU_ARCH is mips32
         ANDROID_CPU_ARCH=mips
         ;;
-    aarch64-*)
+    aarch64)
         ANDROID_CPU_ARCH=arm64-v8a
         ;;
     esac
 
     AC_SUBST(ANDROID_CPU_ARCH)
 fi
 ])
 
--- a/build/autoconf/arch.m4
+++ b/build/autoconf/arch.m4
@@ -37,18 +37,17 @@ if test -z "$MOZ_ARCH"; then
         ;;
     arm-Darwin)
         MOZ_ARCH=toolchain-default
         ;;
     esac
 fi
 
 if test "$MOZ_ARCH" = "armv6" -a "$OS_TARGET" = "Android"; then
-   MOZ_FPU=vfp
-   MOZ_FLOAT_ABI=softfp
+    AC_MSG_ERROR([Android/armv6 is not supported])
 fi
 
 MOZ_ARG_WITH_STRING(thumb,
 [  --with-thumb[[=yes|no|toolchain-default]]]
 [                          Use Thumb instruction set (-mthumb)],
     if test -z "$GNU_CC"; then
         AC_MSG_ERROR([--with-thumb is not supported on non-GNU toolchains])
     fi
--- a/python/mozbuild/mozbuild/android_version_code.py
+++ b/python/mozbuild/mozbuild/android_version_code.py
@@ -11,17 +11,17 @@ import time
 
 # Builds before this build ID use the v0 version scheme.  Builds after this
 # build ID use the v1 version scheme.
 V1_CUTOFF = 20150801000000 # YYYYmmddHHMMSS
 
 def android_version_code_v0(buildid, cpu_arch=None, min_sdk=0, max_sdk=0):
     base = int(str(buildid)[:10])
     # None is interpreted as arm.
-    if not cpu_arch or cpu_arch in ['armeabi', 'armeabi-v7a']:
+    if not cpu_arch or cpu_arch == 'armeabi-v7a':
         # Increment by MIN_SDK_VERSION -- this adds 9 to every build ID as a
         # minimum.  Our split APK starts at 15.
         return base + min_sdk + 0
     elif cpu_arch in ['x86']:
         # Increment the version code by 3 for x86 builds so they are offered to
         # x86 phones that have ARM emulators, beating the 2-point advantage that
         # the v15+ ARMv7 APK has.  If we change our splits in the future, we'll
         # need to do this further still.
@@ -109,17 +109,17 @@ def android_version_code_v1(buildid, cpu
                          "; YOU HAVE ONE YEAR TO UPDATE THE VERSION SCHEME." % buildid)
 
     version = 0b1111000001000000000000000000000
     # We reserve 1 "middle" high order bit for the future, and 3 low order bits
     # for architecture and APK splits.
     version |= base << 3
 
     # None is interpreted as arm.
-    if not cpu_arch or cpu_arch in ['armeabi', 'armeabi-v7a']:
+    if not cpu_arch or cpu_arch == 'armeabi-v7a':
         # 0 is interpreted as SDK 9.
         if not min_sdk or min_sdk == 9:
             pass
         # This used to compare to 11. The 16+ APK directly supersedes 11+, so
         # we reuse this check.
         elif min_sdk == 16:
             version |= 1 << 0
         else:
--- a/tools/profiler/moz.build
+++ b/tools/profiler/moz.build
@@ -98,19 +98,16 @@ if CONFIG['MOZ_GECKO_PROFILER']:
         LOCAL_INCLUDES += [
             # We need access to Breakpad's getcontext(3) which is suitable for Android
             '/toolkit/crashreporter/google-breakpad/src/common/android/include',
         ]
 
     if not CONFIG['MOZ_CRASHREPORTER'] and CONFIG['OS_TARGET'] == 'Android':
         SOURCES += ['/toolkit/crashreporter/google-breakpad/src/common/android/breakpad_getcontext.S']
 
-    if CONFIG['ANDROID_CPU_ARCH'] == 'armeabi':
-        DEFINES['ARCH_ARMV6'] = True
-
     if CONFIG['ENABLE_TESTS']:
         DIRS += ['tests/gtest']
 
     FINAL_LIBRARY = 'xul'
 
 IPDL_SOURCES += [
     'gecko/PProfiler.ipdl',
     'gecko/ProfilerTypes.ipdlh',