Update cmake prebuilts for Linux

Built at:
http://fusion/3d5e3c86-bef7-4ff8-b77f-41627b326f0f

Contains cherry-picks from upstream:
https://android-review.git.corp.google.com/c/platform/external/cmake/+/1514904

Change-Id: I5531e5f213f75a5a970797c15d72a840c4535c56
diff --git a/bin/ccmake b/bin/ccmake
index e942e5f..acf532f 100755
--- a/bin/ccmake
+++ b/bin/ccmake
Binary files differ
diff --git a/bin/cmake b/bin/cmake
index 02c6b3c..4b16f13 100755
--- a/bin/cmake
+++ b/bin/cmake
Binary files differ
diff --git a/bin/cpack b/bin/cpack
index b2b31cf..1a82d38 100755
--- a/bin/cpack
+++ b/bin/cpack
Binary files differ
diff --git a/bin/ctest b/bin/ctest
index 8420a8e..c2ddb64 100755
--- a/bin/ctest
+++ b/bin/ctest
Binary files differ
diff --git a/share/cmake-3.18/Help/manual/cmake-variables.7.rst b/share/cmake-3.18/Help/manual/cmake-variables.7.rst
index 4ce8365..6480db1 100644
--- a/share/cmake-3.18/Help/manual/cmake-variables.7.rst
+++ b/share/cmake-3.18/Help/manual/cmake-variables.7.rst
@@ -332,6 +332,7 @@
    /variable/CMAKE_ANDROID_ARM_MODE
    /variable/CMAKE_ANDROID_ARM_NEON
    /variable/CMAKE_ANDROID_ASSETS_DIRECTORIES
+   /variable/CMAKE_ANDROID_EXCEPTIONS
    /variable/CMAKE_ANDROID_GUI
    /variable/CMAKE_ANDROID_JAR_DEPENDENCIES
    /variable/CMAKE_ANDROID_JAR_DIRECTORIES
@@ -345,6 +346,7 @@
    /variable/CMAKE_ANDROID_PROCESS_MAX
    /variable/CMAKE_ANDROID_PROGUARD
    /variable/CMAKE_ANDROID_PROGUARD_CONFIG_PATH
+   /variable/CMAKE_ANDROID_RTTI
    /variable/CMAKE_ANDROID_SECURE_PROPS_PATH
    /variable/CMAKE_ANDROID_SKIP_ANT_STEP
    /variable/CMAKE_ANDROID_STANDALONE_TOOLCHAIN
diff --git a/share/cmake-3.18/Help/variable/CMAKE_ANDROID_EXCEPTIONS.rst b/share/cmake-3.18/Help/variable/CMAKE_ANDROID_EXCEPTIONS.rst
new file mode 100644
index 0000000..6dd44f8
--- /dev/null
+++ b/share/cmake-3.18/Help/variable/CMAKE_ANDROID_EXCEPTIONS.rst
@@ -0,0 +1,7 @@
+CMAKE_ANDROID_EXCEPTIONS
+------------------------
+
+.. versionadded:: 3.20
+
+When :ref:`Cross Compiling for Android with the NDK`, this variable may be set
+to specify whether exceptions are enabled.
diff --git a/share/cmake-3.18/Help/variable/CMAKE_ANDROID_RTTI.rst b/share/cmake-3.18/Help/variable/CMAKE_ANDROID_RTTI.rst
new file mode 100644
index 0000000..0e98206
--- /dev/null
+++ b/share/cmake-3.18/Help/variable/CMAKE_ANDROID_RTTI.rst
@@ -0,0 +1,7 @@
+CMAKE_ANDROID_RTTI
+------------------
+
+.. versionadded:: 3.20
+
+When :ref:`Cross Compiling for Android with the NDK`, this variable may be set
+to specify whether RTTI is enabled.
diff --git a/share/cmake-3.18/Modules/Platform/Android-Clang.cmake b/share/cmake-3.18/Modules/Platform/Android-Clang.cmake
index 759448b..25c4b25 100644
--- a/share/cmake-3.18/Modules/Platform/Android-Clang.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android-Clang.cmake
@@ -7,6 +7,23 @@
 endif()
 set(__ANDROID_COMPILER_CLANG 1)
 
+# Include the NDK hook.
+# It can be used by NDK to inject necessary fixes for an earlier cmake.
+if(CMAKE_ANDROID_NDK)
+  include(${CMAKE_ANDROID_NDK}/build/cmake/hooks/pre/Android-Clang.cmake OPTIONAL)
+endif()
+
+# Load flags from NDK. This file may provides the following variables:
+#   _ANDROID_NDK_INIT_CFLAGS
+#   _ANDROID_NDK_INIT_CFLAGS_DEBUG
+#   _ANDROID_NDK_INIT_CFLAGS_RELEASE
+#   _ANDROID_NDK_INIT_LDFLAGS
+#   _ANDROID_NDK_INIT_LDFLAGS_EXE
+if(CMAKE_ANDROID_NDK)
+  include(${CMAKE_ANDROID_NDK}/build/cmake/flags.cmake OPTIONAL
+          RESULT_VARIABLE _INCLUDED_FLAGS)
+endif()
+
 # Support for NVIDIA Nsight Tegra Visual Studio Edition was previously
 # implemented in the CMake VS IDE generators.  Avoid interfering with
 # that functionality for now.  Later we may try to integrate this.
@@ -34,23 +51,38 @@
 
 include(Platform/Android-Common)
 
-# The NDK toolchain configuration files at:
-#
-#   <ndk>/[build/core/]toolchains/*-clang*/setup.mk
-#
-# contain logic to set LLVM_TRIPLE for Clang-based toolchains for each target.
-# We need to produce the same target here to produce compatible binaries.
-include(Platform/Android/abi-${CMAKE_ANDROID_ARCH_ABI}-Clang)
+if(_INCLUDED_FLAGS)
+  # NDK provides the flags.
+  set(_ANDROID_ABI_INIT_CFLAGS "${_ANDROID_NDK_INIT_CFLAGS}")
+  set(_ANDROID_ABI_INIT_CFLAGS_DEBUG "${_ANDROID_NDK_INIT_CFLAGS_DEBUG}")
+  set(_ANDROID_ABI_INIT_CFLAGS_RELEASE "${_ANDROID_NDK_INIT_CFLAGS_RELEASE}")
+  set(_ANDROID_ABI_INIT_LDFLAGS "${_ANDROID_NDK_INIT_LDFLAGS}")
+  set(_ANDROID_ABI_INIT_EXE_LDFLAGS "${_ANDROID_NDK_INIT_LDFLAGS_EXE}")
+else()
+  # The NDK toolchain configuration files at:
+  #
+  #   <ndk>/[build/core/]toolchains/*-clang*/setup.mk
+  #
+  # contain logic to set LLVM_TRIPLE for Clang-based toolchains for each target.
+  # We need to produce the same target here to produce compatible binaries.
+  include(Platform/Android/abi-${CMAKE_ANDROID_ARCH_ABI}-Clang)
+endif()
 
 macro(__android_compiler_clang lang)
   if(NOT "x${lang}" STREQUAL "xASM")
     __android_compiler_common(${lang})
   endif()
   if(NOT CMAKE_${lang}_COMPILER_TARGET)
-    set(CMAKE_${lang}_COMPILER_TARGET "${_ANDROID_ABI_CLANG_TARGET}")
+    set(CMAKE_${lang}_COMPILER_TARGET "${CMAKE_ANDROID_ARCH_LLVM_TRIPLE}")
     if(CMAKE_ANDROID_NDK_TOOLCHAIN_UNIFIED)
       string(APPEND CMAKE_${lang}_COMPILER_TARGET "${CMAKE_SYSTEM_VERSION}")
     endif()
     list(APPEND CMAKE_${lang}_COMPILER_PREDEFINES_COMMAND "--target=${CMAKE_${lang}_COMPILER_TARGET}")
   endif()
 endmacro()
+
+# Include the NDK hook.
+# It can be used by NDK to inject necessary fixes for an earlier cmake.
+if(CMAKE_ANDROID_NDK)
+  include(${CMAKE_ANDROID_NDK}/build/cmake/hooks/post/Android-Clang.cmake OPTIONAL)
+endif()
diff --git a/share/cmake-3.18/Modules/Platform/Android-Common.cmake b/share/cmake-3.18/Modules/Platform/Android-Common.cmake
index 581fde4..39da933 100644
--- a/share/cmake-3.18/Modules/Platform/Android-Common.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android-Common.cmake
@@ -53,6 +53,12 @@
       set(_ANDROID_STL_RTTI 0)
       macro(__android_stl lang)
         string(APPEND CMAKE_${lang}_FLAGS_INIT " -stdlib=libstdc++")
+        if(_ANDROID_STL_EXCEPTIONS OR _ANDROID_STL_RTTI)
+          string(APPEND CMAKE_${lang}_STANDARD_LIBRARIES " -lc++abi")
+          if(CMAKE_SYSTEM_VERSION LESS 21)
+            list(APPEND CMAKE_${lang}_STANDARD_LIBRARIES "-landroid_support")
+          endif()
+        endif()
       endmacro()
     elseif(CMAKE_ANDROID_STL_TYPE STREQUAL "c++_static")
       set(_ANDROID_STL_EXCEPTIONS 1)
@@ -81,6 +87,12 @@
         "Android: STL '${CMAKE_ANDROID_STL_TYPE}' not supported by this NDK."
         )
     endif()
+    if(DEFINED CMAKE_ANDROID_RTTI)
+      set(_ANDROID_STL_RTTI ${CMAKE_ANDROID_RTTI})
+    endif()
+    if(DEFINED CMAKE_ANDROID_EXCEPTIONS)
+      set(_ANDROID_STL_EXCEPTIONS ${CMAKE_ANDROID_EXCEPTIONS})
+    endif()
   elseif(CMAKE_ANDROID_NDK)
 
     macro(__android_stl_inc lang dir req)
diff --git a/share/cmake-3.18/Modules/Platform/Android-Determine.cmake b/share/cmake-3.18/Modules/Platform/Android-Determine.cmake
index 2225897..4ba3601 100644
--- a/share/cmake-3.18/Modules/Platform/Android-Determine.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android-Determine.cmake
@@ -5,6 +5,12 @@
 # This module detects platform-wide information about the Android target
 # in order to store it in "CMakeSystem.cmake".
 
+# Include the NDK hook.
+# It can be used by NDK to inject necessary fixes for an earlier cmake.
+if(CMAKE_ANDROID_NDK)
+  include(${CMAKE_ANDROID_NDK}/build/cmake/hooks/pre/Android-Determine.cmake OPTIONAL)
+endif()
+
 # Support for NVIDIA Nsight Tegra Visual Studio Edition was previously
 # implemented in the CMake VS IDE generators.  Avoid interfering with
 # that functionality for now.  Later we may try to integrate this.
@@ -144,64 +150,23 @@
   message(FATAL_ERROR "Android: Neither the NDK or a standalone toolchain was found.")
 endif()
 
-# Select an API.
-if(CMAKE_SYSTEM_VERSION)
-  set(_ANDROID_API_VAR CMAKE_SYSTEM_VERSION)
-elseif(CMAKE_ANDROID_API)
-  set(CMAKE_SYSTEM_VERSION "${CMAKE_ANDROID_API}")
-  set(_ANDROID_API_VAR CMAKE_ANDROID_API)
-elseif(_ANDROID_SYSROOT_API)
-  set(CMAKE_SYSTEM_VERSION "${_ANDROID_SYSROOT_API}")
-  set(_ANDROID_API_VAR CMAKE_SYSROOT)
-elseif(_ANDROID_STANDALONE_TOOLCHAIN_API)
-  set(CMAKE_SYSTEM_VERSION "${_ANDROID_STANDALONE_TOOLCHAIN_API}")
-endif()
-if(CMAKE_SYSTEM_VERSION)
-  if(CMAKE_ANDROID_API AND NOT "x${CMAKE_ANDROID_API}" STREQUAL "x${CMAKE_SYSTEM_VERSION}")
-    message(FATAL_ERROR
-      "Android: The API specified by CMAKE_ANDROID_API='${CMAKE_ANDROID_API}' is not consistent with CMAKE_SYSTEM_VERSION='${CMAKE_SYSTEM_VERSION}'."
-      )
-  endif()
-  if(_ANDROID_SYSROOT_API)
-    foreach(v CMAKE_ANDROID_API CMAKE_SYSTEM_VERSION)
-      if(${v} AND NOT "x${_ANDROID_SYSROOT_API}" STREQUAL "x${${v}}")
-        message(FATAL_ERROR
-          "Android: The API specified by ${v}='${${v}}' is not consistent with CMAKE_SYSROOT:\n"
-          "  ${CMAKE_SYSROOT}"
-          )
-      endif()
-    endforeach()
-  endif()
-  if(CMAKE_ANDROID_NDK AND NOT IS_DIRECTORY "${CMAKE_ANDROID_NDK}/platforms/android-${CMAKE_SYSTEM_VERSION}")
-    message(FATAL_ERROR
-      "Android: The API specified by ${_ANDROID_API_VAR}='${${_ANDROID_API_VAR}}' does not exist in the NDK.  "
-      "The directory:\n"
-      "  ${CMAKE_ANDROID_NDK}/platforms/android-${CMAKE_SYSTEM_VERSION}\n"
-      "does not exist."
-      )
-  endif()
-elseif(CMAKE_ANDROID_NDK)
-  file(GLOB _ANDROID_APIS_1 RELATIVE "${CMAKE_ANDROID_NDK}/platforms" "${CMAKE_ANDROID_NDK}/platforms/android-[0-9]")
-  file(GLOB _ANDROID_APIS_2 RELATIVE "${CMAKE_ANDROID_NDK}/platforms" "${CMAKE_ANDROID_NDK}/platforms/android-[0-9][0-9]")
-  list(SORT _ANDROID_APIS_1)
-  list(SORT _ANDROID_APIS_2)
-  set(_ANDROID_APIS ${_ANDROID_APIS_1} ${_ANDROID_APIS_2})
-  unset(_ANDROID_APIS_1)
-  unset(_ANDROID_APIS_2)
-  if(_ANDROID_APIS STREQUAL "")
-    message(FATAL_ERROR
-      "Android: No APIs found in the NDK.  No\n"
-      "  ${CMAKE_ANDROID_NDK}/platforms/android-*\n"
-      "directories exist."
-      )
-  endif()
-  string(REPLACE "android-" "" _ANDROID_APIS "${_ANDROID_APIS}")
-  list(REVERSE _ANDROID_APIS)
-  list(GET _ANDROID_APIS 0 CMAKE_SYSTEM_VERSION)
-  unset(_ANDROID_APIS)
-endif()
-if(NOT CMAKE_SYSTEM_VERSION MATCHES "^[0-9]+$")
-  message(FATAL_ERROR "Android: The API specified by CMAKE_SYSTEM_VERSION='${CMAKE_SYSTEM_VERSION}' is not an integer.")
+if(CMAKE_ANDROID_NDK)
+  # NDK >= 18 has platforms.cmake. It provides:
+  #   NDK_MIN_PLATFORM_LEVEL
+  #   NDK_MAX_PLATFORM_LEVEL
+  include("${CMAKE_ANDROID_NDK}/build/cmake/platforms.cmake" OPTIONAL RESULT_VARIABLE _INCLUDED_PLATFORMS)
+  # NDK >= 18 has abis.cmake. It provides:
+  #   NDK_KNOWN_DEVICE_ABI32S
+  #   NDK_KNOWN_DEVICE_ABI64S
+  # NDK >= 23 also provides:
+  #   NDK_KNOWN_DEVICE_ABIS
+  #   NDK_ABI_<abi>_PROC
+  #   NDK_ABI_<abi>_ARCH
+  #   NDK_ABI_<abi>_TRIPLE
+  #   NDK_ABI_<abi>_LLVM_TRIPLE
+  #   NDK_PROC_<processor>_ABI
+  #   NDK_ARCH_<arch>_ABI
+  include("${CMAKE_ANDROID_NDK}/build/cmake/abis.cmake" OPTIONAL RESULT_VARIABLE _INCLUDED_ABIS)
 endif()
 
 if(CMAKE_ANDROID_NDK)
@@ -238,57 +203,76 @@
   set(CMAKE_ANDROID_NDK_TOOLCHAIN_UNIFIED "")
 endif()
 
-# https://developer.android.com/ndk/guides/abis.html
+if(_INCLUDED_ABIS)
+  if(NDK_KNOWN_DEVICE_ABIS)
+    set(_ANDROID_KNOWN_ABIS ${NDK_KNOWN_DEVICE_ABIS})
+  else()
+    set(_ANDROID_KNOWN_ABIS ${NDK_KNOWN_DEVICE_ABI32S} ${NDK_KNOWN_DEVICE_ABI64S})
+  endif()
+endif()
 
-set(_ANDROID_ABI_arm64-v8a_PROC     "aarch64")
-set(_ANDROID_ABI_arm64-v8a_ARCH     "arm64")
-set(_ANDROID_ABI_arm64-v8a_TRIPLE   "aarch64-linux-android")
-set(_ANDROID_ABI_armeabi-v7a_PROC   "armv7-a")
-set(_ANDROID_ABI_armeabi-v7a_ARCH   "arm")
-set(_ANDROID_ABI_armeabi-v7a_TRIPLE "arm-linux-androideabi")
-set(_ANDROID_ABI_armeabi-v6_PROC    "armv6")
-set(_ANDROID_ABI_armeabi-v6_ARCH    "arm")
-set(_ANDROID_ABI_armeabi-v6_TRIPLE  "arm-linux-androideabi")
-set(_ANDROID_ABI_armeabi_PROC       "armv5te")
-set(_ANDROID_ABI_armeabi_ARCH       "arm")
-set(_ANDROID_ABI_armeabi_TRIPLE     "arm-linux-androideabi")
-set(_ANDROID_ABI_mips_PROC          "mips")
-set(_ANDROID_ABI_mips_ARCH          "mips")
-set(_ANDROID_ABI_mips_TRIPLE        "mipsel-linux-android")
-set(_ANDROID_ABI_mips64_PROC        "mips64")
-set(_ANDROID_ABI_mips64_ARCH        "mips64")
-set(_ANDROID_ABI_mips64_TRIPLE      "mips64el-linux-android")
-set(_ANDROID_ABI_x86_PROC           "i686")
-set(_ANDROID_ABI_x86_ARCH           "x86")
-set(_ANDROID_ABI_x86_TRIPLE         "i686-linux-android")
-set(_ANDROID_ABI_x86_64_PROC        "x86_64")
-set(_ANDROID_ABI_x86_64_ARCH        "x86_64")
-set(_ANDROID_ABI_x86_64_TRIPLE      "x86_64-linux-android")
+if(NOT DEFINED NDK_KNOWN_DEVICE_ABIS)
+  # The NDK is not new enough to provide ABI information.
+  # https://developer.android.com/ndk/guides/abis.html
 
-set(_ANDROID_PROC_aarch64_ARCH_ABI "arm64-v8a")
-set(_ANDROID_PROC_armv7-a_ARCH_ABI "armeabi-v7a")
-set(_ANDROID_PROC_armv6_ARCH_ABI   "armeabi-v6")
-set(_ANDROID_PROC_armv5te_ARCH_ABI "armeabi")
-set(_ANDROID_PROC_i686_ARCH_ABI    "x86")
-set(_ANDROID_PROC_mips_ARCH_ABI    "mips")
-set(_ANDROID_PROC_mips64_ARCH_ABI  "mips64")
-set(_ANDROID_PROC_x86_64_ARCH_ABI  "x86_64")
+  set(NDK_ABI_arm64-v8a_PROC           "aarch64")
+  set(NDK_ABI_arm64-v8a_ARCH           "arm64")
+  set(NDK_ABI_arm64-v8a_TRIPLE         "aarch64-linux-android")
+  set(NDK_ABI_arm64-v8a_LLVM_TRIPLE    "aarch64-none-linux-android")
+  set(NDK_ABI_armeabi-v7a_PROC         "armv7-a")
+  set(NDK_ABI_armeabi-v7a_ARCH         "arm")
+  set(NDK_ABI_armeabi-v7a_TRIPLE       "arm-linux-androideabi")
+  set(NDK_ABI_armeabi-v7a_LLVM_TRIPLE  "armv7-none-linux-androideabi")
+  set(NDK_ABI_armeabi-v6_PROC          "armv6")
+  set(NDK_ABI_armeabi-v6_ARCH          "arm")
+  set(NDK_ABI_armeabi-v6_TRIPLE        "arm-linux-androideabi")
+  set(NDK_ABI_armeabi-v6_LLVM_TRIPLE   "armv6-none-linux-androideabi")
+  set(NDK_ABI_armeabi_PROC             "armv5te")
+  set(NDK_ABI_armeabi_ARCH             "arm")
+  set(NDK_ABI_armeabi_TRIPLE           "arm-linux-androideabi")
+  set(NDK_ABI_armeabi_LLVM_TRIPLE      "armv5te-none-linux-androideabi")
+  set(NDK_ABI_mips_PROC                "mips")
+  set(NDK_ABI_mips_ARCH                "mips")
+  set(NDK_ABI_mips_TRIPLE              "mipsel-linux-android")
+  set(NDK_ABI_mips_LLVM_TRIPLE         "mipsel-none-linux-android")
+  set(NDK_ABI_mips64_PROC              "mips64")
+  set(NDK_ABI_mips64_ARCH              "mips64")
+  set(NDK_ABI_mips64_TRIPLE            "mips64el-linux-android")
+  set(NDK_ABI_mips64_LLVM_TRIPLE       "mips64el-none-linux-android")
+  set(NDK_ABI_x86_PROC                 "i686")
+  set(NDK_ABI_x86_ARCH                 "x86")
+  set(NDK_ABI_x86_TRIPLE               "i686-linux-android")
+  set(NDK_ABI_x86_LLVM_TRIPLE          "i686-none-linux-android")
+  set(NDK_ABI_x86_64_PROC              "x86_64")
+  set(NDK_ABI_x86_64_ARCH              "x86_64")
+  set(NDK_ABI_x86_64_TRIPLE            "x86_64-linux-android")
+  set(NDK_ABI_x86_64_LLVM_TRIPLE       "x86_64-none-linux-android")
 
-set(_ANDROID_ARCH_arm64_ABI  "arm64-v8a")
-set(_ANDROID_ARCH_arm_ABI    "armeabi")
-set(_ANDROID_ARCH_mips_ABI   "mips")
-set(_ANDROID_ARCH_mips64_ABI "mips64")
-set(_ANDROID_ARCH_x86_ABI    "x86")
-set(_ANDROID_ARCH_x86_64_ABI "x86_64")
+  set(NDK_PROC_aarch64_ABI "arm64-v8a")
+  set(NDK_PROC_armv7-a_ABI "armeabi-v7a")
+  set(NDK_PROC_armv6_ABI   "armeabi-v6")
+  set(NDK_PROC_armv5te_ABI "armeabi")
+  set(NDK_PROC_i686_ABI    "x86")
+  set(NDK_PROC_mips_ABI    "mips")
+  set(NDK_PROC_mips64_ABI  "mips64")
+  set(NDK_PROC_x86_64_ABI  "x86_64")
+
+  set(NDK_ARCH_arm64_ABI  "arm64-v8a")
+  set(NDK_ARCH_arm_ABI    "armeabi")
+  set(NDK_ARCH_mips_ABI   "mips")
+  set(NDK_ARCH_mips64_ABI "mips64")
+  set(NDK_ARCH_x86_ABI    "x86")
+  set(NDK_ARCH_x86_64_ABI "x86_64")
+endif()
 
 # Validate inputs.
-if(CMAKE_ANDROID_ARCH_ABI AND NOT DEFINED "_ANDROID_ABI_${CMAKE_ANDROID_ARCH_ABI}_PROC")
+if(CMAKE_ANDROID_ARCH_ABI AND NOT DEFINED "NDK_ABI_${CMAKE_ANDROID_ARCH_ABI}_PROC")
   message(FATAL_ERROR "Android: Unknown ABI CMAKE_ANDROID_ARCH_ABI='${CMAKE_ANDROID_ARCH_ABI}'.")
 endif()
-if(CMAKE_SYSTEM_PROCESSOR AND NOT DEFINED "_ANDROID_PROC_${CMAKE_SYSTEM_PROCESSOR}_ARCH_ABI")
+if(CMAKE_SYSTEM_PROCESSOR AND NOT DEFINED "NDK_PROC_${CMAKE_SYSTEM_PROCESSOR}_ABI")
   message(FATAL_ERROR "Android: Unknown processor CMAKE_SYSTEM_PROCESSOR='${CMAKE_SYSTEM_PROCESSOR}'.")
 endif()
-if(_ANDROID_SYSROOT_ARCH AND NOT DEFINED "_ANDROID_ARCH_${_ANDROID_SYSROOT_ARCH}_ABI")
+if(_ANDROID_SYSROOT_ARCH AND NOT DEFINED "NDK_ARCH_${_ANDROID_SYSROOT_ARCH}_ABI")
   message(FATAL_ERROR
     "Android: Unknown architecture '${_ANDROID_SYSROOT_ARCH}' specified in CMAKE_SYSROOT:\n"
     "  ${CMAKE_SYSROOT}"
@@ -298,9 +282,22 @@
 # Select an ABI.
 if(NOT CMAKE_ANDROID_ARCH_ABI)
   if(CMAKE_SYSTEM_PROCESSOR)
-    set(CMAKE_ANDROID_ARCH_ABI "${_ANDROID_PROC_${CMAKE_SYSTEM_PROCESSOR}_ARCH_ABI}")
+    set(CMAKE_ANDROID_ARCH_ABI "${NDK_PROC_${CMAKE_SYSTEM_PROCESSOR}_ABI}")
   elseif(_ANDROID_SYSROOT_ARCH)
-    set(CMAKE_ANDROID_ARCH_ABI "${_ANDROID_ARCH_${_ANDROID_SYSROOT_ARCH}_ABI}")
+    set(CMAKE_ANDROID_ARCH_ABI "${NDK_ARCH_${_ANDROID_SYSROOT_ARCH}_ABI}")
+  elseif(_INCLUDED_ABIS)
+    # Default to the oldest ARM ABI.
+    foreach(abi armeabi armeabi-v7a arm64-v8a)
+      if("${abi}" IN_LIST _ANDROID_KNOWN_ABIS)
+        set(CMAKE_ANDROID_ARCH_ABI "${abi}")
+        break()
+      endif()
+    endforeach()
+    if(NOT CMAKE_ANDROID_ARCH_ABI)
+      message(FATAL_ERROR
+        "Android: Can not determine the default ABI. Please set CMAKE_ANDROID_ARCH_ABI."
+      )
+    endif()
   else()
     # https://developer.android.com/ndk/guides/application_mk.html
     # Default is the oldest ARM ABI.
@@ -323,15 +320,12 @@
     # Choose the oldest among the available arm ABIs.
     if(_ANDROID_ABIS)
       list(REMOVE_DUPLICATES _ANDROID_ABIS)
-      cmake_policy(PUSH)
-      cmake_policy(SET CMP0057 NEW)
       foreach(abi armeabi armeabi-v7a arm64-v8a)
         if("${abi}" IN_LIST _ANDROID_ABIS)
           set(CMAKE_ANDROID_ARCH_ABI "${abi}")
           break()
         endif()
       endforeach()
-      cmake_policy(POP)
     endif()
     unset(_ANDROID_ABIS)
 
@@ -340,7 +334,13 @@
     endif()
   endif()
 endif()
-set(CMAKE_ANDROID_ARCH "${_ANDROID_ABI_${CMAKE_ANDROID_ARCH_ABI}_ARCH}")
+if(_INCLUDED_ABIS AND NOT CMAKE_ANDROID_ARCH_ABI IN_LIST _ANDROID_KNOWN_ABIS)
+  message(FATAL_ERROR
+    "Android: ABI '${CMAKE_ANDROID_ARCH_ABI}' is not supported by the NDK.\n"
+    "Supported ABIS: ${_ANDROID_KNOWN_ABIS}."
+  )
+endif()
+set(CMAKE_ANDROID_ARCH "${NDK_ABI_${CMAKE_ANDROID_ARCH_ABI}_ARCH}")
 if(_ANDROID_SYSROOT_ARCH AND NOT "x${_ANDROID_SYSROOT_ARCH}" STREQUAL "x${CMAKE_ANDROID_ARCH}")
   message(FATAL_ERROR
     "Android: Architecture '${_ANDROID_SYSROOT_ARCH}' specified in CMAKE_SYSROOT:\n"
@@ -348,18 +348,102 @@
     "does not match architecture '${CMAKE_ANDROID_ARCH}' for the ABI '${CMAKE_ANDROID_ARCH_ABI}'."
     )
 endif()
-set(CMAKE_ANDROID_ARCH_TRIPLE "${_ANDROID_ABI_${CMAKE_ANDROID_ARCH_ABI}_TRIPLE}")
+set(CMAKE_ANDROID_ARCH_TRIPLE "${NDK_ABI_${CMAKE_ANDROID_ARCH_ABI}_TRIPLE}")
+set(CMAKE_ANDROID_ARCH_LLVM_TRIPLE
+    "${NDK_ABI_${CMAKE_ANDROID_ARCH_ABI}_LLVM_TRIPLE}")
 
 # Select a processor.
 if(NOT CMAKE_SYSTEM_PROCESSOR)
-  set(CMAKE_SYSTEM_PROCESSOR "${_ANDROID_ABI_${CMAKE_ANDROID_ARCH_ABI}_PROC}")
+  set(CMAKE_SYSTEM_PROCESSOR "${NDK_ABI_${CMAKE_ANDROID_ARCH_ABI}_PROC}")
 endif()
 
 # If the user specified both an ABI and a processor then they might not match.
-if(NOT _ANDROID_ABI_${CMAKE_ANDROID_ARCH_ABI}_PROC STREQUAL CMAKE_SYSTEM_PROCESSOR)
+if(NOT NDK_ABI_${CMAKE_ANDROID_ARCH_ABI}_PROC STREQUAL CMAKE_SYSTEM_PROCESSOR)
   message(FATAL_ERROR "Android: The specified CMAKE_ANDROID_ARCH_ABI='${CMAKE_ANDROID_ARCH_ABI}' and CMAKE_SYSTEM_PROCESSOR='${CMAKE_SYSTEM_PROCESSOR}' is not a valid combination.")
 endif()
 
+# Select an API.
+if(CMAKE_SYSTEM_VERSION)
+  set(_ANDROID_API_VAR CMAKE_SYSTEM_VERSION)
+elseif(CMAKE_ANDROID_API)
+  set(CMAKE_SYSTEM_VERSION "${CMAKE_ANDROID_API}")
+  set(_ANDROID_API_VAR CMAKE_ANDROID_API)
+elseif(_ANDROID_SYSROOT_API)
+  set(CMAKE_SYSTEM_VERSION "${_ANDROID_SYSROOT_API}")
+  set(_ANDROID_API_VAR CMAKE_SYSROOT)
+elseif(_ANDROID_STANDALONE_TOOLCHAIN_API)
+  set(CMAKE_SYSTEM_VERSION "${_ANDROID_STANDALONE_TOOLCHAIN_API}")
+endif()
+if(CMAKE_SYSTEM_VERSION)
+  if(CMAKE_ANDROID_API AND NOT "x${CMAKE_ANDROID_API}" STREQUAL "x${CMAKE_SYSTEM_VERSION}")
+    message(FATAL_ERROR
+      "Android: The API specified by CMAKE_ANDROID_API='${CMAKE_ANDROID_API}' is not consistent with CMAKE_SYSTEM_VERSION='${CMAKE_SYSTEM_VERSION}'."
+      )
+  endif()
+  if(_ANDROID_SYSROOT_API)
+    foreach(v CMAKE_ANDROID_API CMAKE_SYSTEM_VERSION)
+      if(${v} AND NOT "x${_ANDROID_SYSROOT_API}" STREQUAL "x${${v}}")
+        message(FATAL_ERROR
+          "Android: The API specified by ${v}='${${v}}' is not consistent with CMAKE_SYSROOT:\n"
+          "  ${CMAKE_SYSROOT}"
+          )
+      endif()
+    endforeach()
+  endif()
+  if(CMAKE_ANDROID_NDK)
+    if (_INCLUDED_PLATFORMS)
+      if(CMAKE_SYSTEM_VERSION GREATER NDK_MAX_PLATFORM_LEVEL OR
+         CMAKE_SYSTEM_VERSION LESS NDK_MIN_PLATFORM_LEVEL)
+        message(FATAL_ERROR
+          "Android: The API level ${CMAKE_SYSTEM_VERSION} is not supported by the NDK.\n"
+          "Choose one in the range of [${NDK_MIN_PLATFORM_LEVEL}, ${NDK_MAX_PLATFORM_LEVEL}]."
+        )
+      endif()
+    else()
+      if(NOT IS_DIRECTORY "${CMAKE_ANDROID_NDK}/platforms/android-${CMAKE_SYSTEM_VERSION}")
+        message(FATAL_ERROR
+          "Android: The API specified by ${_ANDROID_API_VAR}='${${_ANDROID_API_VAR}}' does not exist in the NDK.  "
+          "The directory:\n"
+          "  ${CMAKE_ANDROID_NDK}/platforms/android-${CMAKE_SYSTEM_VERSION}\n"
+          "does not exist."
+          )
+      endif()
+    endif()
+  endif()
+elseif(CMAKE_ANDROID_NDK)
+  if (_INCLUDED_PLATFORMS)
+    set(CMAKE_SYSTEM_VERSION ${NDK_MIN_PLATFORM_LEVEL})
+    # And for LP64 we need to pull up to 21. No diagnostic is provided here because
+    # minSdkVersion < 21 is valid for the project even though it may not be for this
+    # ABI.
+    if(CMAKE_ANDROID_ARCH_ABI MATCHES "64(-v8a)?$" AND CMAKE_SYSTEM_VERSION LESS 21)
+      set(CMAKE_SYSTEM_VERSION 21)
+    endif()
+  else()
+    file(GLOB _ANDROID_APIS_1 RELATIVE "${CMAKE_ANDROID_NDK}/platforms" "${CMAKE_ANDROID_NDK}/platforms/android-[0-9]")
+    file(GLOB _ANDROID_APIS_2 RELATIVE "${CMAKE_ANDROID_NDK}/platforms" "${CMAKE_ANDROID_NDK}/platforms/android-[0-9][0-9]")
+    list(SORT _ANDROID_APIS_1)
+    list(SORT _ANDROID_APIS_2)
+    set(_ANDROID_APIS ${_ANDROID_APIS_1} ${_ANDROID_APIS_2})
+    unset(_ANDROID_APIS_1)
+    unset(_ANDROID_APIS_2)
+    if(_ANDROID_APIS STREQUAL "")
+      message(FATAL_ERROR
+        "Android: No APIs found in the NDK.  No\n"
+        "  ${CMAKE_ANDROID_NDK}/platforms/android-*\n"
+        "directories exist."
+        )
+    endif()
+    string(REPLACE "android-" "" _ANDROID_APIS "${_ANDROID_APIS}")
+    list(REVERSE _ANDROID_APIS)
+    list(GET _ANDROID_APIS 0 CMAKE_SYSTEM_VERSION)
+    unset(_ANDROID_APIS)
+  endif()
+endif()
+if(NOT CMAKE_SYSTEM_VERSION MATCHES "^[0-9]+$")
+  message(FATAL_ERROR "Android: The API specified by CMAKE_SYSTEM_VERSION='${CMAKE_SYSTEM_VERSION}' is not an integer.")
+endif()
+
 if(CMAKE_ANDROID_NDK AND NOT DEFINED CMAKE_ANDROID_NDK_DEPRECATED_HEADERS)
   if(IS_DIRECTORY "${CMAKE_ANDROID_NDK}/sysroot/usr/include/${CMAKE_ANDROID_ARCH_TRIPLE}")
     # Unified headers exist so we use them by default.
@@ -381,6 +465,7 @@
 if(CMAKE_ANDROID_NDK)
   string(APPEND CMAKE_SYSTEM_CUSTOM_CODE
     "set(CMAKE_ANDROID_ARCH_TRIPLE \"${CMAKE_ANDROID_ARCH_TRIPLE}\")\n"
+    "set(CMAKE_ANDROID_ARCH_LLVM_TRIPLE \"${CMAKE_ANDROID_ARCH_LLVM_TRIPLE}\")\n"
     "set(CMAKE_ANDROID_NDK_DEPRECATED_HEADERS \"${CMAKE_ANDROID_NDK_DEPRECATED_HEADERS}\")\n"
     "set(CMAKE_ANDROID_NDK_TOOLCHAIN_HOST_TAG \"${CMAKE_ANDROID_NDK_TOOLCHAIN_HOST_TAG}\")\n"
     "set(CMAKE_ANDROID_NDK_TOOLCHAIN_UNIFIED \"${CMAKE_ANDROID_NDK_TOOLCHAIN_UNIFIED}\")\n"
@@ -418,3 +503,9 @@
 message(STATUS "Android: Targeting API '${CMAKE_SYSTEM_VERSION}' with architecture '${CMAKE_ANDROID_ARCH}', ABI '${CMAKE_ANDROID_ARCH_ABI}', and processor '${CMAKE_SYSTEM_PROCESSOR}'")
 
 cmake_policy(POP)
+
+# Include the NDK hook.
+# It can be used by NDK to inject necessary fixes for an earlier cmake.
+if(CMAKE_ANDROID_NDK)
+  include(${CMAKE_ANDROID_NDK}/build/cmake/hooks/post/Android-Determine.cmake OPTIONAL)
+endif()
diff --git a/share/cmake-3.18/Modules/Platform/Android-Initialize.cmake b/share/cmake-3.18/Modules/Platform/Android-Initialize.cmake
index b90dd7a..96228cc 100644
--- a/share/cmake-3.18/Modules/Platform/Android-Initialize.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android-Initialize.cmake
@@ -4,6 +4,12 @@
 # When CMAKE_SYSTEM_NAME is "Android", CMakeSystemSpecificInitialize loads this
 # module.
 
+# Include the NDK hook.
+# It can be used by NDK to inject necessary fixes for an earlier cmake.
+if(CMAKE_ANDROID_NDK)
+  include(${CMAKE_ANDROID_NDK}/build/cmake/hooks/pre/Android-Initialize.cmake OPTIONAL)
+endif()
+
 # Support for NVIDIA Nsight Tegra Visual Studio Edition was previously
 # implemented in the CMake VS IDE generators.  Avoid interfering with
 # that functionality for now.  Later we may try to integrate this.
@@ -17,7 +23,7 @@
   return()
 endif()
 
-set(CMAKE_BUILD_TYPE_INIT Debug)
+set(CMAKE_BUILD_TYPE_INIT "RelWithDebInfo")
 
 # Skip sysroot selection if the NDK has a unified toolchain.
 if(CMAKE_ANDROID_NDK_TOOLCHAIN_UNIFIED)
@@ -53,3 +59,9 @@
     "Android: No CMAKE_SYSROOT was selected."
     )
 endif()
+
+# Include the NDK hook.
+# It can be used by NDK to inject necessary fixes for an earlier cmake.
+if(CMAKE_ANDROID_NDK)
+  include(${CMAKE_ANDROID_NDK}/build/cmake/hooks/post/Android-Initialize.cmake OPTIONAL)
+endif()
diff --git a/share/cmake-3.18/Modules/Platform/Android.cmake b/share/cmake-3.18/Modules/Platform/Android.cmake
index 8ffa1b2..e4b9a09 100644
--- a/share/cmake-3.18/Modules/Platform/Android.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android.cmake
@@ -1,3 +1,9 @@
+# Include the NDK hook.
+# It can be used by NDK to inject necessary fixes for an earlier cmake.
+if(CMAKE_ANDROID_NDK)
+  include(${CMAKE_ANDROID_NDK}/build/cmake/hooks/pre/Android.cmake OPTIONAL)
+endif()
+
 include(Platform/Linux)
 
 set(ANDROID 1)
@@ -22,3 +28,65 @@
 if(CMAKE_VS_PLATFORM_NAME STREQUAL "Tegra-Android")
   set(CMAKE_LINK_LIBRARY_FLAG "")
 endif()
+
+# Commonly used Android toolchain files that pre-date CMake upstream support
+# set CMAKE_SYSTEM_VERSION to 1.  Avoid interfering with them.
+if(CMAKE_SYSTEM_VERSION EQUAL 1)
+  return()
+endif()
+
+if(CMAKE_ANDROID_NDK_TOOLCHAIN_UNIFIED)
+  # Tell CMake not to search host sysroots for headers/libraries.
+
+  # All paths added to CMAKE_SYSTEM_*_PATH below will be rerooted under
+  # CMAKE_FIND_ROOT_PATH. This is set because:
+  # 1. Users may structure their libraries in a way similar to NDK. When they do that,
+  #    they can simply append another path to CMAKE_FIND_ROOT_PATH.
+  # 2. CMAKE_FIND_ROOT_PATH must be non-empty for CMAKE_FIND_ROOT_PATH_MODE_* == ONLY
+  #    to be meaningful. https://github.com/android-ndk/ndk/issues/890
+  list(APPEND CMAKE_FIND_ROOT_PATH "${CMAKE_ANDROID_NDK_TOOLCHAIN_UNIFIED}/sysroot")
+
+  # Allow users to override these values in case they want more strict behaviors.
+  # For example, they may want to prevent the NDK's libz from being picked up so
+  # they can use their own.
+  # https://github.com/android-ndk/ndk/issues/517
+  if(NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_PROGRAM)
+    set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
+  endif()
+
+  if(NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_LIBRARY)
+    set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
+  endif()
+
+  if(NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_INCLUDE)
+    set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
+  endif()
+
+  if(NOT DEFINED CMAKE_FIND_ROOT_PATH_MODE_PACKAGE)
+    set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
+  endif()
+
+  # Don't search paths in PATH environment variable.
+  if(NOT DEFINED CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH)
+    set(CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH OFF)
+  endif()
+
+  # Allows CMake to find headers in the architecture-specific include directories.
+  set(CMAKE_LIBRARY_ARCHITECTURE "${CMAKE_ANDROID_ARCH_TRIPLE}")
+
+  # Instructs CMake to search the correct API level for libraries.
+  # Besides the paths like <root>/<prefix>/lib/<arch>, cmake also searches <root>/<prefix>.
+  # So we can add the API level specific directory directly.
+  # https://github.com/android/ndk/issues/929
+  list(PREPEND CMAKE_SYSTEM_PREFIX_PATH
+    "/usr/lib/${CMAKE_LIBRARY_ARCHITECTURE}/${CMAKE_SYSTEM_VERSION}"
+    )
+
+  list(APPEND CMAKE_SYSTEM_PROGRAM_PATH "${CMAKE_ANDROID_NDK_TOOLCHAIN_UNIFIED}/bin")
+endif()
+
+# Include the NDK hook.
+# It can be used by NDK to inject necessary fixes for an earlier cmake.
+if(CMAKE_ANDROID_NDK)
+  include(${CMAKE_ANDROID_NDK}/build/cmake/hooks/post/Android.cmake OPTIONAL)
+endif()
diff --git a/share/cmake-3.18/Modules/Platform/Android/Determine-Compiler.cmake b/share/cmake-3.18/Modules/Platform/Android/Determine-Compiler.cmake
index f9c2d89..f8eae62 100644
--- a/share/cmake-3.18/Modules/Platform/Android/Determine-Compiler.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android/Determine-Compiler.cmake
@@ -7,6 +7,12 @@
 endif()
 set(__ANDROID_DETERMINE_COMPILER 1)
 
+# Include the NDK hook.
+# It can be used by NDK to inject necessary fixes for an earlier cmake.
+if(CMAKE_ANDROID_NDK)
+  include(${CMAKE_ANDROID_NDK}/build/cmake/hooks/pre/Determine-Compiler.cmake OPTIONAL)
+endif()
+
 # Support for NVIDIA Nsight Tegra Visual Studio Edition was previously
 # implemented in the CMake VS IDE generators.  Avoid interfering with
 # that functionality for now.  Later we may try to integrate this.
@@ -83,3 +89,9 @@
 ")
   endif()
 endmacro()
+
+# Include the NDK hook.
+# It can be used by NDK to inject necessary fixes for an earlier cmake.
+if(CMAKE_ANDROID_NDK)
+  include(${CMAKE_ANDROID_NDK}/build/cmake/hooks/post/Determine-Compiler.cmake OPTIONAL)
+endif()
diff --git a/share/cmake-3.18/Modules/Platform/Android/abi-arm64-v8a-Clang.cmake b/share/cmake-3.18/Modules/Platform/Android/abi-arm64-v8a-Clang.cmake
index f4717d5..c18c0a2 100644
--- a/share/cmake-3.18/Modules/Platform/Android/abi-arm64-v8a-Clang.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android/abi-arm64-v8a-Clang.cmake
@@ -1,6 +1,3 @@
-# <ndk>/build/core/toolchains/aarch64-linux-android-clang/setup.mk
-set(_ANDROID_ABI_CLANG_TARGET "aarch64-none-linux-android")
-
 # Suppress -Wl,-z,nocopyreloc flag on arm64-v8a
 set(_ANDROID_ABI_INIT_EXE_LDFLAGS_NO_nocopyreloc 1)
 
diff --git a/share/cmake-3.18/Modules/Platform/Android/abi-armeabi-Clang.cmake b/share/cmake-3.18/Modules/Platform/Android/abi-armeabi-Clang.cmake
index b857bd3..2b1de03 100644
--- a/share/cmake-3.18/Modules/Platform/Android/abi-armeabi-Clang.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android/abi-armeabi-Clang.cmake
@@ -1,6 +1,3 @@
-# <ndk>/build/core/toolchains/arm-linux-androideabi-clang/setup.mk
-set(_ANDROID_ABI_CLANG_TARGET "armv5te-none-linux-androideabi")
-
 string(APPEND _ANDROID_ABI_INIT_CFLAGS
   " -march=armv5te"
   )
diff --git a/share/cmake-3.18/Modules/Platform/Android/abi-armeabi-v6-Clang.cmake b/share/cmake-3.18/Modules/Platform/Android/abi-armeabi-v6-Clang.cmake
index a7412f5..bb176ae 100644
--- a/share/cmake-3.18/Modules/Platform/Android/abi-armeabi-v6-Clang.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android/abi-armeabi-v6-Clang.cmake
@@ -1,6 +1,3 @@
-# <ndk>/build/core/toolchains/arm-linux-androideabi-clang/setup.mk
-set(_ANDROID_ABI_CLANG_TARGET "armv6-none-linux-androideabi")
-
 string(APPEND _ANDROID_ABI_INIT_CFLAGS
   " -march=armv6"
   )
diff --git a/share/cmake-3.18/Modules/Platform/Android/abi-armeabi-v7a-Clang.cmake b/share/cmake-3.18/Modules/Platform/Android/abi-armeabi-v7a-Clang.cmake
index e2ab58b..6feeef6 100644
--- a/share/cmake-3.18/Modules/Platform/Android/abi-armeabi-v7a-Clang.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android/abi-armeabi-v7a-Clang.cmake
@@ -1,6 +1,3 @@
-# <ndk>/build/core/toolchains/arm-linux-androideabi-clang/setup.mk
-set(_ANDROID_ABI_CLANG_TARGET "armv7-none-linux-androideabi")
-
 string(APPEND _ANDROID_ABI_INIT_CFLAGS
   " -march=armv7-a"
   )
diff --git a/share/cmake-3.18/Modules/Platform/Android/abi-mips-Clang.cmake b/share/cmake-3.18/Modules/Platform/Android/abi-mips-Clang.cmake
index 73addde..7df6a36 100644
--- a/share/cmake-3.18/Modules/Platform/Android/abi-mips-Clang.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android/abi-mips-Clang.cmake
@@ -1,4 +1 @@
-# <ndk>/build/core/toolchains/mipsel-linux-android-clang/setup.mk
-set(_ANDROID_ABI_CLANG_TARGET "mipsel-none-linux-android")
-
 include(Platform/Android/abi-common-Clang)
diff --git a/share/cmake-3.18/Modules/Platform/Android/abi-mips64-Clang.cmake b/share/cmake-3.18/Modules/Platform/Android/abi-mips64-Clang.cmake
index 603f1b2..7df6a36 100644
--- a/share/cmake-3.18/Modules/Platform/Android/abi-mips64-Clang.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android/abi-mips64-Clang.cmake
@@ -1,4 +1 @@
-# <ndk>/build/core/toolchains/mips64el-linux-android-clang/setup.mk
-set(_ANDROID_ABI_CLANG_TARGET "mips64el-none-linux-android")
-
 include(Platform/Android/abi-common-Clang)
diff --git a/share/cmake-3.18/Modules/Platform/Android/abi-x86-Clang.cmake b/share/cmake-3.18/Modules/Platform/Android/abi-x86-Clang.cmake
index fe7eace..7df6a36 100644
--- a/share/cmake-3.18/Modules/Platform/Android/abi-x86-Clang.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android/abi-x86-Clang.cmake
@@ -1,4 +1 @@
-# <ndk>/build/core/toolchains/x86-clang/setup.mk
-set(_ANDROID_ABI_CLANG_TARGET "i686-none-linux-android")
-
 include(Platform/Android/abi-common-Clang)
diff --git a/share/cmake-3.18/Modules/Platform/Android/abi-x86_64-Clang.cmake b/share/cmake-3.18/Modules/Platform/Android/abi-x86_64-Clang.cmake
index 3cbcd49..7df6a36 100644
--- a/share/cmake-3.18/Modules/Platform/Android/abi-x86_64-Clang.cmake
+++ b/share/cmake-3.18/Modules/Platform/Android/abi-x86_64-Clang.cmake
@@ -1,4 +1 @@
-# <ndk>/build/core/toolchains/x86_64-clang/setup.mk
-set(_ANDROID_ABI_CLANG_TARGET "x86_64-none-linux-android")
-
 include(Platform/Android/abi-common-Clang)