[patches] Cherry pick CLS for: API-level fix for tsan .so

Bug: http://b/214080353

Replace local copy with cherry-pick of corresponding upstream change.

c0f9592daae add tsan shared library

Test: N/A
Change-Id: I182deefc7459ec01456f361e8bedf086213e6778
diff --git a/patches/PATCHES.json b/patches/PATCHES.json
index a759228..d2d0995 100644
--- a/patches/PATCHES.json
+++ b/patches/PATCHES.json
@@ -308,6 +308,18 @@
         "start_version": 445002
     },
     {
+        "end_version": 449689,
+        "metadata": {
+            "info": [],
+            "title": "[UPSTREAM] add tsan shared library"
+        },
+        "platforms": [
+            "android"
+        ],
+        "rel_patch_path": "cherry/c0f9592daae3be17e5fd1528a8f6067cb0c3bd91.patch",
+        "start_version": 445002
+    },
+    {
         "end_version": 451237,
         "metadata": {
             "info": [],
@@ -404,17 +416,5 @@
         ],
         "rel_patch_path": "Undef-FS-macro-for-Android-x86_64.patch",
         "start_version": 412851
-    },
-    {
-        "end_version": null,
-        "metadata": {
-            "info": [],
-            "title": "Fix undefined symbols on Android side issues"
-        },
-        "platforms": [
-            "android"
-        ],
-        "rel_patch_path": "TSAN-Fix-undefined-symbols-on-Android-side-issues.patch",
-        "start_version": 443803
     }
 ]
diff --git a/patches/TSAN-Fix-undefined-symbols-on-Android-side-issues.patch b/patches/TSAN-Fix-undefined-symbols-on-Android-side-issues.patch
deleted file mode 100644
index 9e74a9f..0000000
--- a/patches/TSAN-Fix-undefined-symbols-on-Android-side-issues.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From: ZijunZhao <zijunzhao@google.com>
-Subject: [PATCH] Fix undefined symbols on Android side issues
-
----
- compiler-rt/cmake/config-ix.cmake | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/compiler-rt/cmake/config-ix.cmake
-b/compiler-rt/cmake/config-ix.cmake
---- a/compiler-rt/cmake/config-ix.cmake
-+++ b/compiler-rt/cmake/config-ix.cmake
-@@ -749,9 +749,14 @@
-   set(COMPILER_RT_HAS_PROFILE FALSE)
- endif()
-
--if (COMPILER_RT_HAS_SANITIZER_COMMON AND TSAN_SUPPORTED_ARCH AND
--    OS_NAME MATCHES "Darwin|Linux|FreeBSD|Android|NetBSD")
--  set(COMPILER_RT_HAS_TSAN TRUE)
-+if (COMPILER_RT_HAS_SANITIZER_COMMON AND TSAN_SUPPORTED_ARCH)
-+    if (OS_NAME MATCHES "Linux|Darwin|FreeBSD|NetBSD")
-+      set(COMPILER_RT_HAS_TSAN TRUE)
-+    elseif (OS_NAME MATCHES "Android" AND ANDROID_PLATFORM_LEVEL GREATER 23)
-+      set(COMPILER_RT_HAS_TSAN TRUE)
-+    else()
-+      set(COMPILER_RT_HAS_TSAN FALSE)
-+    endif()
- else()
-   set(COMPILER_RT_HAS_TSAN FALSE)
- endif()
-
diff --git a/patches/cherry/c0f9592daae3be17e5fd1528a8f6067cb0c3bd91.patch b/patches/cherry/c0f9592daae3be17e5fd1528a8f6067cb0c3bd91.patch
new file mode 100644
index 0000000..ffb737d
--- /dev/null
+++ b/patches/cherry/c0f9592daae3be17e5fd1528a8f6067cb0c3bd91.patch
@@ -0,0 +1,39 @@
+From c0f9592daae3be17e5fd1528a8f6067cb0c3bd91 Mon Sep 17 00:00:00 2001
+From: zijunzhao <zijunzhao@google.com>
+Date: Thu, 20 Jan 2022 09:30:51 +0000
+Subject: [PATCH] add tsan shared library
+
+Add tsan shared library on Android. Only build tsan when minSdkVersion is above 23.
+
+Reviewed By: danalbert, vitalybuka
+
+Differential Revision: https://reviews.llvm.org/D108394
+---
+ compiler-rt/cmake/config-ix.cmake | 11 ++++++++---
+ 1 file changed, 8 insertions(+), 3 deletions(-)
+
+diff --git a/compiler-rt/cmake/config-ix.cmake b/compiler-rt/cmake/config-ix.cmake
+index d196deff5dc1..33693ce60321 100644
+--- a/compiler-rt/cmake/config-ix.cmake
++++ b/compiler-rt/cmake/config-ix.cmake
+@@ -749,9 +749,14 @@ else()
+   set(COMPILER_RT_HAS_PROFILE FALSE)
+ endif()
+ 
+-if (COMPILER_RT_HAS_SANITIZER_COMMON AND TSAN_SUPPORTED_ARCH AND
+-    OS_NAME MATCHES "Darwin|Linux|FreeBSD|Android|NetBSD")
+-  set(COMPILER_RT_HAS_TSAN TRUE)
++if (COMPILER_RT_HAS_SANITIZER_COMMON AND TSAN_SUPPORTED_ARCH)
++  if (OS_NAME MATCHES "Linux|Darwin|FreeBSD|NetBSD")
++    set(COMPILER_RT_HAS_TSAN TRUE)
++  elseif (OS_NAME MATCHES "Android" AND ANDROID_PLATFORM_LEVEL GREATER 23)
++    set(COMPILER_RT_HAS_TSAN TRUE)
++  else()
++    set(COMPILER_RT_HAS_TSAN FALSE)
++  endif()
+ else()
+   set(COMPILER_RT_HAS_TSAN FALSE)
+ endif()
+-- 
+2.35.0.263.gb82422642f-goog
+