diff options
author | borman <[email protected]> | 2025-09-30 00:06:38 +0300 |
---|---|---|
committer | borman <[email protected]> | 2025-09-30 00:35:26 +0300 |
commit | c9620a377011f8ec46fb9f5de07472d2c692a0b7 (patch) | |
tree | 15fa1ecafdaefd5129ba725090a6b6330dc97f13 | |
parent | 8e7253fa1a512fedfdb2b726b7ac0cf2603e7eec (diff) |
Unconditionally use our static libcxxabi on Android (v2, fixed)
commit_hash:e0c11c03eedea1e4def6ace301e75a7eb81e57c6
-rwxr-xr-x | build/ymake_conf.py | 3 | ||||
-rw-r--r-- | contrib/libs/cxxsupp/builtins/.yandex_meta/build.ym | 8 | ||||
-rw-r--r-- | contrib/libs/cxxsupp/builtins/ya.make | 8 | ||||
-rw-r--r-- | contrib/libs/cxxsupp/libcxx/.yandex_meta/build.ym | 2 | ||||
-rw-r--r-- | contrib/libs/cxxsupp/libcxx/ya.make | 2 |
5 files changed, 18 insertions, 5 deletions
diff --git a/build/ymake_conf.py b/build/ymake_conf.py index 325c80327ba..e57d6cae493 100755 --- a/build/ymake_conf.py +++ b/build/ymake_conf.py @@ -1260,9 +1260,6 @@ class GnuToolchain(Toolchain): for root in list(self.tc.isystem): self.c_flags_platform.extend(['-isystem', root]) - if target.is_android: - self.c_flags_platform.extend(['-isystem', '{}/sources/cxx-stl/llvm-libc++abi/include'.format(self.tc.name_marker)]) - if target.is_cortex_a9: self.c_flags_platform.append('-mcpu=cortex-a9') diff --git a/contrib/libs/cxxsupp/builtins/.yandex_meta/build.ym b/contrib/libs/cxxsupp/builtins/.yandex_meta/build.ym index c9e76124555..812c41f99ea 100644 --- a/contrib/libs/cxxsupp/builtins/.yandex_meta/build.ym +++ b/contrib/libs/cxxsupp/builtins/.yandex_meta/build.ym @@ -69,6 +69,14 @@ IF (GCC OR CLANG) # Just generate native code from the beginning. NO_LTO() ENDIF() + +IF (OS_ANDROID AND ARCH_ARM7) + # For some reason, some intrinsincs fail to compile under Thumb mode restrictions + # Disable it, since it's not used in upstream NDK anyway + CFLAGS( + -mno-thumb + ) +ENDIF() {% endblock %} {% block gen_ya_make %} diff --git a/contrib/libs/cxxsupp/builtins/ya.make b/contrib/libs/cxxsupp/builtins/ya.make index 383d34b214a..62b7661b738 100644 --- a/contrib/libs/cxxsupp/builtins/ya.make +++ b/contrib/libs/cxxsupp/builtins/ya.make @@ -60,6 +60,14 @@ IF (GCC OR CLANG) NO_LTO() ENDIF() +IF (OS_ANDROID AND ARCH_ARM7) + # For some reason, some intrinsincs fail to compile under Thumb mode restrictions + # Disable it, since it's not used in upstream NDK anyway + CFLAGS( + -mno-thumb + ) +ENDIF() + IF (OS_DARWIN OR OS_IOS) SRCS( atomic_flag_clear.c diff --git a/contrib/libs/cxxsupp/libcxx/.yandex_meta/build.ym b/contrib/libs/cxxsupp/libcxx/.yandex_meta/build.ym index 44e7693fb5a..c22b21665d2 100644 --- a/contrib/libs/cxxsupp/libcxx/.yandex_meta/build.ym +++ b/contrib/libs/cxxsupp/libcxx/.yandex_meta/build.ym @@ -106,7 +106,7 @@ ADDINCL( CXXFLAGS(-D_LIBCPP_BUILDING_LIBRARY) IF (OS_ANDROID) - SET(CXX_RT "libcxxabi_dynamic") + SET(CXX_RT "libcxxabi") ELSEIF (OS_IOS) SET(CXX_RT "libcxxabi_dynamic") # Yet take builtins library from Arcadia diff --git a/contrib/libs/cxxsupp/libcxx/ya.make b/contrib/libs/cxxsupp/libcxx/ya.make index 8346845c4df..04f1572810c 100644 --- a/contrib/libs/cxxsupp/libcxx/ya.make +++ b/contrib/libs/cxxsupp/libcxx/ya.make @@ -29,7 +29,7 @@ ADDINCL( CXXFLAGS(-D_LIBCPP_BUILDING_LIBRARY) IF (OS_ANDROID) - SET(CXX_RT "libcxxabi_dynamic") + SET(CXX_RT "libcxxabi") ELSEIF (OS_IOS) SET(CXX_RT "libcxxabi_dynamic") # Yet take builtins library from Arcadia |