@@ -1,3 +1,4 @@
+
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -7,7 +8,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=libcxx
PKG_VERSION:=9.0.1
-PKG_RELEASE:=3
+PKG_RELEASE:=4
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://git.llvm.org/git/libcxx
@@ -38,6 +39,7 @@ endef
CMAKE_OPTIONS += \
-DLIBCXX_CXX_ABI="libsupc++" \
+ -DLIBCXX_CXX_ABI_INCLUDE_PATHS="$(TOOLCHAIN_DIR)/$(REAL_GNU_TARGET_NAME)/include/c++/$(CONFIG_GCC_VERSION);$(TOOLCHAIN_DIR)/$(REAL_GNU_TARGET_NAME)/include/c++/$(CONFIG_GCC_VERSION)/$(REAL_GNU_TARGET_NAME)" \
-DLIBCXX_ENABLE_ASSERTIONS=OFF \
-DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF \
-DLIBCXX_INCLUDE_BENCHMARKS=OFF \
@@ -47,7 +49,7 @@ CMAKE_OPTIONS += \
-DLIBCXX_HAS_MUSL_LIBC=$(if $(CONFIG_USE_MUSL),ON,OFF)
TARGET_CXXFLAGS += -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS -Wno-attributes -flto
-TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed -flto=jobserver
+TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed
define Build/InstallDev
$(call Build/InstallDev/cmake,$(1))
@@ -1,3 +1,14 @@
+--- a/include/cmath
++++ b/include/cmath
+@@ -615,7 +615,7 @@ _Fp __lerp(_Fp __a, _Fp __b, _Fp __t) noexcept {
+
+ if (__t == 1) return __b;
+ const _Fp __x = __a + __t * (__b - __a);
+- if (__t > 1 == __b > __a)
++ if ((__t > 1) == (__b > __a))
+ return __b < __x ? __x : __b;
+ else
+ return __x < __b ? __x : __b;
--- a/include/memory
+++ b/include/memory
@@ -1696,7 +1696,7 @@ struct _LIBCPP_TEMPLATE_VIS allocator_traits
It seems the buildbots can't handle it. Added a cmake option to find the cxxabi files as they are part of the toolchain and not in the normal path. It doesn't seem to make a difference, just gets rid of cmake warnings. Added another small GCC warning fix. It's fairly minor. This has no change in compiled size, and most likely no change in behavior. Bumped the PKG_RELEASE anyway. Signed-off-by: Rosen Penev <rosenp@gmail.com> --- package/libs/libcxx/Makefile | 6 ++++-- package/libs/libcxx/patches/020-fixes.patch | 11 +++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-)