From 6193636f9b38769e2d63fc1071a28e851cb4be5a Mon Sep 17 00:00:00 2001 From: serge-sans-paille Date: Tue, 4 Jun 2024 09:42:11 +0000 Subject: [PATCH] Bug 1897978 - Move MOZ_ANDROID_NDK from old-configure to moz.configure r=glandium Also remove the rustc < 1.68 hack, as we no longer support that version. Differential Revision: https://phabricator.services.mozilla.com/D211091 --- aclocal.m4 | 1 - build/android/libgcc.a | 1 - build/autoconf/android.m4 | 20 ----------------- build/moz.configure/android-ndk.configure | 26 ++++++++++++++++++++++- js/src/aclocal.m4 | 1 - js/src/old-configure.in | 14 ++++++++++-- old-configure.in | 17 +++++++++++---- 7 files changed, 50 insertions(+), 30 deletions(-) delete mode 100644 build/android/libgcc.a delete mode 100644 build/autoconf/android.m4 diff --git a/aclocal.m4 b/aclocal.m4 index 15805084b24c..90fa81ae6552 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -11,7 +11,6 @@ builtin(include, build/autoconf/mozprog.m4)dnl builtin(include, build/autoconf/mozheader.m4)dnl builtin(include, build/autoconf/compiler-opts.m4)dnl builtin(include, build/autoconf/arch.m4)dnl -builtin(include, build/autoconf/android.m4)dnl builtin(include, build/autoconf/clang-plugin.m4)dnl builtin(include, build/autoconf/sanitize.m4)dnl diff --git a/build/android/libgcc.a b/build/android/libgcc.a deleted file mode 100644 index d8349075d726..000000000000 --- a/build/android/libgcc.a +++ /dev/null @@ -1 +0,0 @@ -INPUT(-lunwind) diff --git a/build/autoconf/android.m4 b/build/autoconf/android.m4 deleted file mode 100644 index 95027ded9de1..000000000000 --- a/build/autoconf/android.m4 +++ /dev/null @@ -1,20 +0,0 @@ -dnl This Source Code Form is subject to the terms of the Mozilla Public -dnl License, v. 2.0. If a copy of the MPL was not distributed with this -dnl file, You can obtain one at http://mozilla.org/MPL/2.0/. - -AC_DEFUN([MOZ_ANDROID_NDK], -[ - -case "$target" in -*-android*|*-linuxandroid*) - dnl $extra_android_flags will be set for us by Python configure. - dnl $_topsrcdir/build/android is a hack for versions of rustc < 1.68 - LDFLAGS="$extra_android_flags -L$_topsrcdir/build/android $LDFLAGS" - CPPFLAGS="$extra_android_flags $CPPFLAGS" - CFLAGS="-fno-short-enums $CFLAGS" - CXXFLAGS="-fno-short-enums $CXXFLAGS" - ASFLAGS="$extra_android_flags -DANDROID $ASFLAGS" - ;; -esac - -]) diff --git a/build/moz.configure/android-ndk.configure b/build/moz.configure/android-ndk.configure index dd09142e4bd5..3d2115e92073 100644 --- a/build/moz.configure/android-ndk.configure +++ b/build/moz.configure/android-ndk.configure @@ -262,7 +262,31 @@ def extra_toolchain_flags(android_sysroot, toolchain_dir): return flags -add_old_configure_assignment("extra_android_flags", extra_toolchain_flags) +@depends(extra_toolchain_flags) +def android_flags(extra_toolchain_flags): + return namespace( + cflags=extra_toolchain_flags + ["-fno-short-enums"], + cxxflags=extra_toolchain_flags + ["-fno-short-enums"], + ldflags=extra_toolchain_flags, + asflags=extra_toolchain_flags + ["-DANDROID"], + ) + + +add_old_configure_assignment( + "ANDROID_CFLAGS", depends(android_flags)(lambda f: f.cflags) +) + +add_old_configure_assignment( + "ANDROID_CXXFLAGS", depends(android_flags)(lambda f: f.cxxflags) +) + +add_old_configure_assignment( + "ANDROID_LDFLAGS", depends(android_flags)(lambda f: f.ldflags) +) + +add_old_configure_assignment( + "ANDROID_ASFLAGS", depends(android_flags)(lambda f: f.asflags) +) @depends(extra_toolchain_flags) diff --git a/js/src/aclocal.m4 b/js/src/aclocal.m4 index 6369a28282ad..e105de9c8cef 100644 --- a/js/src/aclocal.m4 +++ b/js/src/aclocal.m4 @@ -11,7 +11,6 @@ builtin(include, ../../build/autoconf/mozprog.m4)dnl builtin(include, ../../build/autoconf/mozheader.m4)dnl builtin(include, ../../build/autoconf/compiler-opts.m4)dnl builtin(include, ../../build/autoconf/arch.m4)dnl -builtin(include, ../../build/autoconf/android.m4)dnl builtin(include, ../../build/autoconf/clang-plugin.m4)dnl builtin(include, ../../build/autoconf/sanitize.m4)dnl diff --git a/js/src/old-configure.in b/js/src/old-configure.in index 385eac08f9da..a7398fcd4ab5 100644 --- a/js/src/old-configure.in +++ b/js/src/old-configure.in @@ -26,6 +26,18 @@ HOST_CFLAGS="${HOST_CFLAGS=}" HOST_CXXFLAGS="${HOST_CXXFLAGS=}" HOST_LDFLAGS="${HOST_LDFLAGS=}" +dnl Propagate extra android flags +dnl ============================= +case "$target" in +*-android*|*-linuxandroid*) + LDFLAGS="$ANDROID_LDFLAGS $LDFLAGS" + CFLAGS="$ANDROID_CFLAGS $CFLAGS" + CXXFLAGS="$ANDROID_CXXFLAGS $CXXFLAGS" + ASFLAGS="$ANDROID_ASFLAGS -DANDROID $ASFLAGS" + ;; +esac + + dnl Set the minimum version of toolkit libs used by mozilla dnl ======================================================== W32API_VERSION=3.14 @@ -40,8 +52,6 @@ AC_SUBST(autoconfmk) jsconfdefs=$_objdir/js/src/js-confdefs.h -MOZ_ANDROID_NDK - dnl ======================================================== dnl Checks for compilers. dnl ======================================================== diff --git a/old-configure.in b/old-configure.in index 29a313c05582..512b06415794 100644 --- a/old-configure.in +++ b/old-configure.in @@ -26,6 +26,19 @@ HOST_CFLAGS="${HOST_CFLAGS=}" HOST_CXXFLAGS="${HOST_CXXFLAGS=}" HOST_LDFLAGS="${HOST_LDFLAGS=}" + +dnl Propagate extra android flags +dnl ============================= +case "$target" in +*-android*|*-linuxandroid*) + LDFLAGS="$ANDROID_LDFLAGS $LDFLAGS" + CFLAGS="$ANDROID_CFLAGS $CFLAGS" + CXXFLAGS="$ANDROID_CXXFLAGS $CXXFLAGS" + ASFLAGS="$ANDROID_ASFLAGS -DANDROID $ASFLAGS" + ;; +esac + + dnl Set the minimum version of toolkit libs used by mozilla dnl ======================================================== W32API_VERSION=3.14 @@ -34,10 +47,6 @@ W32API_VERSION=3.14 LDFLAGS="$LDFLAGS $LINKER_LDFLAGS $PACK_REL_RELOC_FLAGS" HOST_LDFLAGS="$HOST_LDFLAGS $HOST_LINKER_LDFLAGS" -if test "$COMPILE_ENVIRONMENT"; then - MOZ_ANDROID_NDK -fi # COMPILE_ENVIRONMENT - dnl ======================================================== dnl Checks for compilers. dnl ========================================================