From 55320abae06195457bf457255faaf2f044b0e001 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Thu, 2 May 2019 22:35:55 -0700 Subject: [PATCH] boost: Fix uClibc-ng compilation again Several math functions are not defined in math.h and therefore cannot be used. Signed-off-by: Rosen Penev --- libs/boost/Makefile | 2 +- libs/boost/patches/uclibc-ng-2.patch | 21 +++++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 libs/boost/patches/uclibc-ng-2.patch diff --git a/libs/boost/Makefile b/libs/boost/Makefile index 3a245119a..6a87228b2 100644 --- a/libs/boost/Makefile +++ b/libs/boost/Makefile @@ -13,7 +13,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=boost PKG_VERSION:=1.70.0 PKG_SOURCE_VERSION:=1_70_0 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)_$(PKG_SOURCE_VERSION).tar.bz2 PKG_SOURCE_URL:=@SF/$(PKG_NAME)/$(PKG_NAME)/$(PKG_VERSION) https://dl.bintray.com/boostorg/release/$(PKG_VERSION)/source/ diff --git a/libs/boost/patches/uclibc-ng-2.patch b/libs/boost/patches/uclibc-ng-2.patch new file mode 100644 index 000000000..0d1668602 --- /dev/null +++ b/libs/boost/patches/uclibc-ng-2.patch @@ -0,0 +1,21 @@ +--- a/boost/math/tools/roots.hpp ++++ b/boost/math/tools/roots.hpp +@@ -665,8 +665,8 @@ namespace detail + inline T discriminant(T const & a, T const & b, T const & c) + { + T w = 4*a*c; +- T e = std::fma(-c, 4*a, w); +- T f = std::fma(b, b, -w); ++ T e = fma(-c, 4*a, w); ++ T f = fma(b, b, -w); + return f + e; + } + } +@@ -674,7 +674,6 @@ namespace detail + template + auto quadratic_roots(T const& a, T const& b, T const& c) + { +- using std::copysign; + using std::sqrt; + if constexpr (std::is_integral::value) + {