Skip to content

Commit 7e34a60

Browse files
committed
Patch LLVM Android backtrace config
1 parent 8f541ea commit 7e34a60

1 file changed

Lines changed: 43 additions & 0 deletions

File tree

scripts/patch_tfjava.py

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,48 @@ def patch_workspace(path: Path) -> None:
129129
"""
130130

131131

132+
LLVM_ANDROID_CONFIG_PATCH = """--- a/third_party/llvm/llvm.bzl
133+
+++ b/third_party/llvm/llvm.bzl
134+
@@ -248,6 +248,13 @@ linux_cmake_vars = {
135+
"HAVE_FUTIMENS": 1,
136+
}
137+
138+
+android_cmake_vars = {
139+
+ "HAVE_BACKTRACE": 0,
140+
+ "HAVE_EXECINFO_H": 0,
141+
+ "HAVE_LIBPTHREAD": 0,
142+
+ "HAVE__UNWIND_BACKTRACE": 0,
143+
+}
144+
+
145+
# CMake variables specific to the FreeBSD platform
146+
freebsd_cmake_vars = {
147+
"HAVE_MALLOC_H": 1,
148+
@@ -311,6 +319,14 @@ llvm_all_cmake_vars = select({
149+
darwin_cmake_vars,
150+
),
151+
),
152+
+ "@org_tensorflow//tensorflow:android": cmake_var_string(
153+
+ _dict_add(
154+
+ cmake_vars,
155+
+ llvm_target_cmake_vars("AArch64", "aarch64-unknown-linux-android"),
156+
+ posix_cmake_vars,
157+
+ android_cmake_vars,
158+
+ ),
159+
+ ),
160+
"@org_tensorflow//tensorflow:linux_ppc64le": cmake_var_string(
161+
_dict_add(
162+
cmake_vars,
163+
@@ -344,6 +360,7 @@ llvm_all_cmake_vars = select({
164+
165+
llvm_linkopts = select({
166+
"@org_tensorflow//tensorflow:windows": [],
167+
+ "@org_tensorflow//tensorflow:android": ["-ldl", "-lm"],
168+
"@org_tensorflow//tensorflow:freebsd": ["-ldl", "-lm", "-lpthread", "-lexecinfo"],
169+
"//conditions:default": ["-ldl", "-lm", "-lpthread"],
170+
})
171+
"""
172+
173+
132174
def write_tensorflow_android_absl_patch(path: Path) -> None:
133175
path.parent.mkdir(parents=True, exist_ok=True)
134176
absl_patch_text = (
@@ -145,6 +187,7 @@ def write_tensorflow_android_absl_patch(path: Path) -> None:
145187
)
146188
)
147189
text += BFLOAT16_CSTDINT_PATCH
190+
text += LLVM_ANDROID_CONFIG_PATCH
148191
if not text.endswith("\n"):
149192
text += "\n"
150193
path.write_text(text, encoding="utf-8")

0 commit comments

Comments
 (0)