aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorthegeorg <thegeorg@yandex-team.com>2025-01-08 21:18:36 +0300
committerthegeorg <thegeorg@yandex-team.com>2025-01-08 21:32:52 +0300
commitbd0a6cfde3290e646613dba27e457cdada3b4501 (patch)
tree8748dafc753b6761bb19d19f980d9621c7fa0cf9
parent9b668f4d12c7d6fc709ffc4ab3b87a7e8aef8e2f (diff)
downloadydb-bd0a6cfde3290e646613dba27e457cdada3b4501.tar.gz
libcxx: Identify libcxxrt by -DLIBCXXRT, just as the upstream does
commit_hash:77f8b13c7ed5331b212f0c1b6c3cf9f856a168e4
-rw-r--r--contrib/libs/cxxsupp/libcxx/.yandex_meta/build.ym8
-rw-r--r--contrib/libs/cxxsupp/libcxx/patches/52-libcxxrt.patch69
-rw-r--r--contrib/libs/cxxsupp/libcxx/src/exception.cpp5
-rw-r--r--contrib/libs/cxxsupp/libcxx/src/support/runtime/exception_libcxxrt.ipp2
-rw-r--r--contrib/libs/cxxsupp/libcxx/src/support/runtime/stdexcept_default.ipp3
-rw-r--r--contrib/libs/cxxsupp/libcxx/src/typeinfo.cpp2
-rw-r--r--contrib/libs/cxxsupp/libcxx/ya.make8
7 files changed, 8 insertions, 89 deletions
diff --git a/contrib/libs/cxxsupp/libcxx/.yandex_meta/build.ym b/contrib/libs/cxxsupp/libcxx/.yandex_meta/build.ym
index e8515db970..d3b0d5a9d0 100644
--- a/contrib/libs/cxxsupp/libcxx/.yandex_meta/build.ym
+++ b/contrib/libs/cxxsupp/libcxx/.yandex_meta/build.ym
@@ -200,7 +200,7 @@ IF (CXX_RT == "libcxxrt")
GLOBAL contrib/libs/cxxsupp/libcxxrt/include
)
CFLAGS(
- -DLIBCXX_BUILDING_LIBCXXRT
+ -DLIBCXXRT
)
# These builtins are equivalent to clang -rtlib=compiler_rt and
# are needed by potentially any code generated by clang.
@@ -216,18 +216,12 @@ ELSEIF (CXX_RT == "glibcxx_static")
CXXFLAGS(-D__GLIBCXX__=1)
ENABLE(NEED_GLIBCXX_CXX17_SHIMS)
ENABLE(NEED_CXX_RT_ADDINCL)
- CFLAGS(
- -DLIBCXX_BUILDING_LIBGCC
- )
ELSEIF (CXX_RT == "glibcxx_dynamic")
LDFLAGS(
-lgcc_s
-lstdc++
)
CXXFLAGS(-D__GLIBCXX__=1)
- CFLAGS(
- -DLIBCXX_BUILDING_LIBGCC
- )
ENABLE(NEED_GLIBCXX_CXX17_SHIMS)
ENABLE(NEED_CXX_RT_ADDINCL)
ELSEIF (CXX_RT == "libcxxabi")
diff --git a/contrib/libs/cxxsupp/libcxx/patches/52-libcxxrt.patch b/contrib/libs/cxxsupp/libcxx/patches/52-libcxxrt.patch
deleted file mode 100644
index 65bb20cd9b..0000000000
--- a/contrib/libs/cxxsupp/libcxx/patches/52-libcxxrt.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-diff --git a/src/exception.cpp b/src/exception.cpp
-index ddb186b..6fdf211 100644
---- a/src/exception.cpp
-+++ b/src/exception.cpp
-@@ -10,7 +10,7 @@
- #include <new>
- #include <typeinfo>
-
--#if defined(LIBCXXRT) || defined(LIBCXX_BUILDING_LIBCXXABI)
-+#if defined(LIBCXX_BUILDING_LIBCXXRT) || defined(LIBCXX_BUILDING_LIBCXXABI)
- # include <cxxabi.h>
- using namespace __cxxabiv1;
- # define HAVE_DEPENDENT_EH_ABI 1
-@@ -22,14 +22,13 @@ using namespace __cxxabiv1;
- #elif defined(_LIBCPPABI_VERSION)
- # include "support/runtime/exception_libcxxabi.ipp"
- # include "support/runtime/exception_pointer_cxxabi.ipp"
--#elif defined(LIBCXXRT)
-+#elif defined(LIBCXX_BUILDING_LIBCXXRT)
- # include "support/runtime/exception_libcxxrt.ipp"
- # include "support/runtime/exception_pointer_cxxabi.ipp"
- #elif defined(__GLIBCXX__)
- # include "support/runtime/exception_glibcxx.ipp"
- # include "support/runtime/exception_pointer_glibcxx.ipp"
- #else
--# include "include/atomic_support.h"
- # include "support/runtime/exception_fallback.ipp"
- # include "support/runtime/exception_pointer_unimplemented.ipp"
- #endif
-diff --git a/src/support/runtime/exception_libcxxrt.ipp b/src/support/runtime/exception_libcxxrt.ipp
-index f17fecc..82f60f5 100644
---- a/src/support/runtime/exception_libcxxrt.ipp
-+++ b/src/support/runtime/exception_libcxxrt.ipp
-@@ -7,7 +7,7 @@
- //
- //===----------------------------------------------------------------------===//
-
--#ifndef LIBCXXRT
-+#ifndef LIBCXX_BUILDING_LIBCXXRT
- # error this header may only be used when targeting libcxxrt
- #endif
-
-diff --git a/src/support/runtime/stdexcept_default.ipp b/src/support/runtime/stdexcept_default.ipp
-index 1f47a03..f2bb2ea 100644
---- a/src/support/runtime/stdexcept_default.ipp
-+++ b/src/support/runtime/stdexcept_default.ipp
-@@ -9,7 +9,8 @@
- #include "../../include/refstring.h"
-
- /* For _LIBCPPABI_VERSION */
--#if !defined(_LIBCPP_BUILDING_HAS_NO_ABI_LIBRARY) && (defined(LIBCXX_BUILDING_LIBCXXABI) || defined(LIBCXXRT))
-+#if !defined(_LIBCPP_BUILDING_HAS_NO_ABI_LIBRARY) && \
-+ (defined(LIBCXX_BUILDING_LIBCXXABI) || defined(LIBCXX_BUILDING_LIBCXXRT))
- # include <cxxabi.h>
- #endif
-
-diff --git a/src/typeinfo.cpp b/src/typeinfo.cpp
-index e5f59da..60230a6 100644
---- a/src/typeinfo.cpp
-+++ b/src/typeinfo.cpp
-@@ -47,7 +47,7 @@ size_t std::type_info::hash_code() const noexcept {
- #endif // _LIBCPP_ABI_MICROSOFT
-
- // FIXME: Remove the _LIBCPP_BUILDING_HAS_NO_ABI_LIBRARY configuration.
--#if (!defined(LIBCXX_BUILDING_LIBCXXABI) && !defined(LIBCXXRT) && !defined(__GLIBCXX__) && \
-+#if (!defined(LIBCXX_BUILDING_LIBCXXABI) && !defined(LIBCXX_BUILDING_LIBCXXRT) && !defined(__GLIBCXX__) && \
- !defined(_LIBCPP_ABI_VCRUNTIME)) || \
- defined(_LIBCPP_BUILDING_HAS_NO_ABI_LIBRARY)
- std::type_info::~type_info() {}
diff --git a/contrib/libs/cxxsupp/libcxx/src/exception.cpp b/contrib/libs/cxxsupp/libcxx/src/exception.cpp
index 6fdf211a2b..ddb186bf80 100644
--- a/contrib/libs/cxxsupp/libcxx/src/exception.cpp
+++ b/contrib/libs/cxxsupp/libcxx/src/exception.cpp
@@ -10,7 +10,7 @@
#include <new>
#include <typeinfo>
-#if defined(LIBCXX_BUILDING_LIBCXXRT) || defined(LIBCXX_BUILDING_LIBCXXABI)
+#if defined(LIBCXXRT) || defined(LIBCXX_BUILDING_LIBCXXABI)
# include <cxxabi.h>
using namespace __cxxabiv1;
# define HAVE_DEPENDENT_EH_ABI 1
@@ -22,13 +22,14 @@ using namespace __cxxabiv1;
#elif defined(_LIBCPPABI_VERSION)
# include "support/runtime/exception_libcxxabi.ipp"
# include "support/runtime/exception_pointer_cxxabi.ipp"
-#elif defined(LIBCXX_BUILDING_LIBCXXRT)
+#elif defined(LIBCXXRT)
# include "support/runtime/exception_libcxxrt.ipp"
# include "support/runtime/exception_pointer_cxxabi.ipp"
#elif defined(__GLIBCXX__)
# include "support/runtime/exception_glibcxx.ipp"
# include "support/runtime/exception_pointer_glibcxx.ipp"
#else
+# include "include/atomic_support.h"
# include "support/runtime/exception_fallback.ipp"
# include "support/runtime/exception_pointer_unimplemented.ipp"
#endif
diff --git a/contrib/libs/cxxsupp/libcxx/src/support/runtime/exception_libcxxrt.ipp b/contrib/libs/cxxsupp/libcxx/src/support/runtime/exception_libcxxrt.ipp
index 82f60f5048..f17fecc71e 100644
--- a/contrib/libs/cxxsupp/libcxx/src/support/runtime/exception_libcxxrt.ipp
+++ b/contrib/libs/cxxsupp/libcxx/src/support/runtime/exception_libcxxrt.ipp
@@ -7,7 +7,7 @@
//
//===----------------------------------------------------------------------===//
-#ifndef LIBCXX_BUILDING_LIBCXXRT
+#ifndef LIBCXXRT
# error this header may only be used when targeting libcxxrt
#endif
diff --git a/contrib/libs/cxxsupp/libcxx/src/support/runtime/stdexcept_default.ipp b/contrib/libs/cxxsupp/libcxx/src/support/runtime/stdexcept_default.ipp
index f2bb2ea3e7..1f47a0325d 100644
--- a/contrib/libs/cxxsupp/libcxx/src/support/runtime/stdexcept_default.ipp
+++ b/contrib/libs/cxxsupp/libcxx/src/support/runtime/stdexcept_default.ipp
@@ -9,8 +9,7 @@
#include "../../include/refstring.h"
/* For _LIBCPPABI_VERSION */
-#if !defined(_LIBCPP_BUILDING_HAS_NO_ABI_LIBRARY) && \
- (defined(LIBCXX_BUILDING_LIBCXXABI) || defined(LIBCXX_BUILDING_LIBCXXRT))
+#if !defined(_LIBCPP_BUILDING_HAS_NO_ABI_LIBRARY) && (defined(LIBCXX_BUILDING_LIBCXXABI) || defined(LIBCXXRT))
# include <cxxabi.h>
#endif
diff --git a/contrib/libs/cxxsupp/libcxx/src/typeinfo.cpp b/contrib/libs/cxxsupp/libcxx/src/typeinfo.cpp
index 60230a6c38..e5f59da31c 100644
--- a/contrib/libs/cxxsupp/libcxx/src/typeinfo.cpp
+++ b/contrib/libs/cxxsupp/libcxx/src/typeinfo.cpp
@@ -47,7 +47,7 @@ size_t std::type_info::hash_code() const noexcept {
#endif // _LIBCPP_ABI_MICROSOFT
// FIXME: Remove the _LIBCPP_BUILDING_HAS_NO_ABI_LIBRARY configuration.
-#if (!defined(LIBCXX_BUILDING_LIBCXXABI) && !defined(LIBCXX_BUILDING_LIBCXXRT) && !defined(__GLIBCXX__) && \
+#if (!defined(LIBCXX_BUILDING_LIBCXXABI) && !defined(LIBCXXRT) && !defined(__GLIBCXX__) && \
!defined(_LIBCPP_ABI_VCRUNTIME)) || \
defined(_LIBCPP_BUILDING_HAS_NO_ABI_LIBRARY)
std::type_info::~type_info() {}
diff --git a/contrib/libs/cxxsupp/libcxx/ya.make b/contrib/libs/cxxsupp/libcxx/ya.make
index 9038236259..7b42dc7e51 100644
--- a/contrib/libs/cxxsupp/libcxx/ya.make
+++ b/contrib/libs/cxxsupp/libcxx/ya.make
@@ -120,7 +120,7 @@ IF (CXX_RT == "libcxxrt")
GLOBAL contrib/libs/cxxsupp/libcxxrt/include
)
CFLAGS(
- -DLIBCXX_BUILDING_LIBCXXRT
+ -DLIBCXXRT
)
# These builtins are equivalent to clang -rtlib=compiler_rt and
# are needed by potentially any code generated by clang.
@@ -136,18 +136,12 @@ ELSEIF (CXX_RT == "glibcxx_static")
CXXFLAGS(-D__GLIBCXX__=1)
ENABLE(NEED_GLIBCXX_CXX17_SHIMS)
ENABLE(NEED_CXX_RT_ADDINCL)
- CFLAGS(
- -DLIBCXX_BUILDING_LIBGCC
- )
ELSEIF (CXX_RT == "glibcxx_dynamic")
LDFLAGS(
-lgcc_s
-lstdc++
)
CXXFLAGS(-D__GLIBCXX__=1)
- CFLAGS(
- -DLIBCXX_BUILDING_LIBGCC
- )
ENABLE(NEED_GLIBCXX_CXX17_SHIMS)
ENABLE(NEED_CXX_RT_ADDINCL)
ELSEIF (CXX_RT == "libcxxabi")