Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/third_party/chromium/build/config/android/   (Android Betriebssystem Version 17©)  Datei vom 27.6.2026 mit Größe 4 kB image not shown  

Quelle  abi.gni   Sprache: unbekannt

 
Spracherkennung für: .gni vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

# Copyright 2017 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Logic separated out from config.gni so that it can be used by compiler.gni
# without introducing a circular dependency.

# NOTE: Because Chrome OS builds may depend on targets built with the Android
# toolchain, this GNI file may be read and processed from within Chrome OS
# toolchains. Checking |is_android| here would therefore be too restrictive.
assert(is_android || is_chromeos || is_robolectric)

declare_args() {
  # Adds intrumentation to each function. Writes a file with the order that
  # functions are called at startup.
  use_order_profiling = false

  # Only effective if use_order_profiling = true. When this is true,
  # instrumentation switches from startup profiling after a delay, and
  # then waits for a devtools memory dump request to dump all
  # profiling information. When false, the same delay is used to switch from
  # startup, and then after a second delay all profiling information is dumped.
  # See base::android::orderfile::StartDelayedDump for more information.
  devtools_instrumentation_dumping = false

  # Build additional browser splits with HWASAN instrumentation enabled.
  build_hwasan_splits = false

  # Enable (webview) APKs that support multiple architectures. Generally
  # needed only for release builds or for webview testing. Slows down "gn gen"
  # and ninja parse time due to having to write rules for most native targets
  # a second time. Applicable only when target_cpu is 64-bit.
  enable_android_secondary_abi = is_official_build
}

assert(!devtools_instrumentation_dumping || use_order_profiling,
       "devtools_instrumentation_dumping requires use_order_profiling")

if (target_cpu == "x86") {
  android_app_abi = "x86"
  android_abi_target = "i686-linux-android"
  sanitizer_arch = "i686"
} else if (target_cpu == "arm") {
  import("//chromium/build/config/arm.gni")
  if (arm_version < 7) {
    android_app_abi = "armeabi"
  } else {
    android_app_abi = "armeabi-v7a"
  }
  android_abi_target = "arm-linux-androideabi"
  sanitizer_arch = "arm"
} else if (target_cpu == "mipsel") {
  android_app_abi = "mips"
  android_abi_target = "mipsel-linux-android"
} else if (target_cpu == "x64") {
  android_app_abi = "x86_64"
  android_abi_target = "x86_64-linux-android"
  sanitizer_arch = "x86_64"
} else if (target_cpu == "arm64") {
  android_app_abi = "arm64-v8a"
  android_abi_target = "aarch64-linux-android"
  sanitizer_arch = "aarch64"
} else if (target_cpu == "mips64el") {
  android_app_abi = "mips64"

  # Place holder for mips64 support, not tested.
  android_abi_target = "mips64el-linux-android"
} else if (target_cpu == "riscv64") {
  android_app_abi = "riscv64"

  # Place holder for riscv64 support, not tested.
  android_abi_target = "riscv64-linux-android"
  sanitizer_arch = "riscv64"
} else {
  assert(false, "Unknown Android ABI: " + target_cpu)
}

if (target_cpu == "arm64" || target_cpu == "x64" || target_cpu == "mips64el" ||
    target_cpu == "riscv64") {
  android_64bit_target_cpu = true
} else if (target_cpu == "arm" || target_cpu == "x86" ||
           target_cpu == "mipsel") {
  android_64bit_target_cpu = false
} else {
  assert(false, "Unknown target CPU: $target_cpu")
}

android_64bit_target_cpu =
    target_cpu == "arm64" || target_cpu == "x64" ||
    target_cpu == "mips64el" || target_cpu == "riscv64"

# Do not define android_secondary_abi_cpu or android_app_secondary_abi for
# target_cpu's that are 32-bit-only or 64-bit-only, as they are not used. The
# presence of this variable may be used in conjunction with android_64bit_target_cpu
# to identify target_cpu's that are 32-bit-only or 64-bit-only.
if (enable_android_secondary_abi) {
  if (target_cpu == "arm64") {
    android_secondary_abi_cpu = "arm"
    android_app_secondary_abi = "armeabi-v7a"
  } else if (target_cpu == "x64") {
    android_secondary_abi_cpu = "x86"
    android_app_secondary_abi = "x86"
  } else if (target_cpu == "mips64el") {
    android_secondary_abi_cpu = "mipsel"
    android_app_secondary_abi = "mips"
  }

  if (defined(android_secondary_abi_cpu)) {
    android_secondary_abi_toolchain =
        "//chromium/build/toolchain/android:android_clang_${android_secondary_abi_cpu}"
  }
}

[Dauer der Verarbeitung: 0.40 Sekunden]