mirror of
https://github.com/coolsnowwolf/packages.git
synced 2025-04-30 14:50:21 +08:00
boost: bump to v1.7.5
This commit is contained in:
parent
b1eec3e73b
commit
41544f0156
@ -11,13 +11,13 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=boost
|
||||
PKG_VERSION:=1.73.0
|
||||
PKG_SOURCE_VERSION:=1_73_0
|
||||
PKG_RELEASE:=1
|
||||
PKG_VERSION:=1.75.0
|
||||
PKG_SOURCE_VERSION:=1_75_0
|
||||
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/
|
||||
PKG_HASH:=4eb3b8d442b426dc35346235c8733b5ae35ba431690e38c6a8263dce9fcbb402
|
||||
PKG_HASH:=953db31e016db7bb207f11432bef7df100516eeb746843fa0486a222e3fd49cb
|
||||
|
||||
PKG_MAINTAINER:=Carlos M. Ferreira <carlosmf.pt@gmail.com>
|
||||
PKG_LICENSE:=BSL-1.0
|
||||
@ -32,7 +32,6 @@ PKG_BUILD_PARALLEL:=1
|
||||
PKG_USE_MIPS16:=0
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(INCLUDE_DIR)/nls.mk
|
||||
|
||||
define Package/boost/Default
|
||||
SECTION:=libs
|
||||
@ -43,7 +42,7 @@ define Package/boost/Default
|
||||
endef
|
||||
|
||||
define Package/boost/description
|
||||
This package provides the Boost v1.73.0 libraries.
|
||||
This package provides the Boost v1.75.0 libraries.
|
||||
Boost is a set of free, peer-reviewed, portable C++ source libraries.
|
||||
|
||||
This package provides the following run-time libraries:
|
||||
@ -60,9 +59,11 @@ This package provides the following run-time libraries:
|
||||
- graph
|
||||
- - graph-parallel
|
||||
- iostreams
|
||||
- locale (Requires kernel being compiled with full language support)
|
||||
- json
|
||||
- locale
|
||||
- log
|
||||
- math
|
||||
- nowide
|
||||
- program_options
|
||||
- python3
|
||||
- random
|
||||
@ -76,10 +77,10 @@ This package provides the following run-time libraries:
|
||||
- wave
|
||||
|
||||
There are many more header-only libraries supported by Boost.
|
||||
See more at http://www.boost.org/doc/libs/1_72_0/
|
||||
See more at http://www.boost.org/doc/libs/1_75_0/
|
||||
endef
|
||||
|
||||
PKG_BUILD_DEPENDS:=boost/host PACKAGE_python3:python3
|
||||
PKG_BUILD_DEPENDS:=boost/host
|
||||
|
||||
include ../../lang/python/python3-version.mk
|
||||
BOOST_PYTHON3_VER=$(PYTHON3_VERSION)
|
||||
@ -116,7 +117,7 @@ define Package/boost/config
|
||||
# Invisible config dependency
|
||||
config boost-context-exclude
|
||||
bool
|
||||
default y if (TARGET_arc770 || TARGET_archs38 || TARGET_octeon || TARGET_octeontx)
|
||||
default y if (TARGET_arc770 || TARGET_archs38)
|
||||
default n
|
||||
|
||||
config boost-coroutine-exclude
|
||||
@ -277,12 +278,10 @@ define Package/boost/config
|
||||
select PACKAGE_boost-graph
|
||||
default m if ALL
|
||||
|
||||
$(foreach lib,$(BOOST_LIBS), \
|
||||
config PACKAGE_boost-$(lib)
|
||||
$(foreach lib,$(BOOST_LIBS),
|
||||
config PACKAGE_boost-$(lib)
|
||||
prompt "Boost $(lib) $(if $(findstring python3,$(lib)),$(paren_left)v$(BOOST_PYTHON3_VER)$(paren_right) ,)library."
|
||||
default m if ALL
|
||||
$(if $(findstring locale,$(lib)),depends on BUILD_NLS,)\
|
||||
$(if $(findstring python3,$(lib)),depends on PACKAGE_python3,)\
|
||||
$(if $(findstring fiber,$(lib)),depends on !boost-fiber-exclude,)\
|
||||
$(if $(findstring context,$(lib)),depends on !boost-context-exclude,)
|
||||
$(if $(findstring coroutine,$(lib)),depends on !boost-coroutine-exclude,)
|
||||
@ -302,12 +301,17 @@ endef
|
||||
define Build/Configure
|
||||
endef
|
||||
|
||||
define Package/boost/Default/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib
|
||||
$(CP) $(PKG_INSTALL_DIR)/lib/libboost_$(2)*.so* $(1)/usr/lib/
|
||||
endef
|
||||
|
||||
# 1: short name
|
||||
# 2: dependencies on other boost libraries (short name)
|
||||
# 3: dependencies on other packages
|
||||
# 4: conditional/inward dependencies
|
||||
# 5: dependencies compiled only when this package has been selected
|
||||
define DefineBoostLibrary
|
||||
|
||||
BOOST_DEPENDS+= +$(if $(4),$(4):boost-$(1),boost-$(1))
|
||||
PKG_CONFIG_DEPENDS+= CONFIG_PACKAGE_boost-$(1)
|
||||
|
||||
@ -316,13 +320,17 @@ define DefineBoostLibrary
|
||||
define Package/boost-$(1)
|
||||
$(call Package/boost/Default)
|
||||
TITLE+= ($(1))
|
||||
DEPENDS+= $$(foreach lib,$(2),+boost-$$(lib)) $(3) $(if $(4),@$(4),)
|
||||
DEPENDS+= $(foreach lib,$(2),+boost-$(lib)) $(3) $(if $(4),@$(4),) $(patsubst %,+PACKAGE_boost-$(1):%,$(5))
|
||||
HIDDEN:=1
|
||||
endef
|
||||
|
||||
define Package/boost-$(1)/description
|
||||
This package contains the Boost $(1) library.
|
||||
endef
|
||||
|
||||
define Package/boost-$(1)/install
|
||||
$(if $(CONFIG_boost-static-libs),true,$(call Package/boost/Default/install,$$(1),$(1)))
|
||||
endef
|
||||
endef
|
||||
|
||||
$(eval $(call DefineBoostLibrary,atomic,system))
|
||||
@ -336,15 +344,17 @@ $(eval $(call DefineBoostLibrary,date_time))
|
||||
$(eval $(call DefineBoostLibrary,fiber,coroutine filesystem,,!boost-fiber-exclude))
|
||||
$(eval $(call DefineBoostLibrary,filesystem,system))
|
||||
$(eval $(call DefineBoostLibrary,graph,regex))
|
||||
$(eval $(call DefineBoostLibrary,iostreams,,+zlib +liblzma +libbz2 +zstd))
|
||||
$(eval $(call DefineBoostLibrary,locale,system,$(ICONV_DEPENDS),BUILD_NLS))
|
||||
$(eval $(call DefineBoostLibrary,iostreams,,,,zlib liblzma libbz2 libzstd))
|
||||
$(eval $(call DefineBoostLibrary,json,container))
|
||||
$(eval $(call DefineBoostLibrary,locale,system chrono thread,,,icu))
|
||||
$(eval $(call DefineBoostLibrary,log,system chrono date_time thread filesystem regex))
|
||||
$(eval $(call DefineBoostLibrary,math))
|
||||
#$(eval $(call DefineBoostLibrary,mpi,,)) # OpenMPI does no exist in OpenWRT at this time.
|
||||
$(eval $(call DefineBoostLibrary,nowide))
|
||||
$(eval $(call DefineBoostLibrary,program_options))
|
||||
$(eval $(call DefineBoostLibrary,python3,,,PACKAGE_python3))
|
||||
$(eval $(call DefineBoostLibrary,python3,,,,python3-base))
|
||||
$(eval $(call DefineBoostLibrary,random,system))
|
||||
$(eval $(call DefineBoostLibrary,regex))
|
||||
$(eval $(call DefineBoostLibrary,regex,,,,icu))
|
||||
$(eval $(call DefineBoostLibrary,serialization))
|
||||
$(eval $(call DefineBoostLibrary,wserialization,serialization))
|
||||
$(eval $(call DefineBoostLibrary,stacktrace))
|
||||
@ -367,17 +377,17 @@ define Host/Compile
|
||||
endef
|
||||
|
||||
CONFIGURE_PREFIX:=$(PKG_INSTALL_DIR)
|
||||
TARGET_LDFLAGS += -pthread -lrt
|
||||
TARGET_LDFLAGS += -pthread -lrt -lstdc++ -Wl,--gc-sections,--as-needed,--print-gc-sections
|
||||
|
||||
TARGET_CFLAGS += \
|
||||
$(if $(CONFIG_SOFT_FLOAT),-DBOOST_NO_FENV_H) -fPIC
|
||||
$(if $(CONFIG_SOFT_FLOAT),-DBOOST_NO_FENV_H) -fPIC -ffunction-sections -fdata-sections -flto
|
||||
|
||||
EXTRA_CXXFLAGS += $(if $(CONFIG_GCC_USE_VERSION_5),-std=gnu++14,-std=gnu++17)
|
||||
EXTRA_CXXFLAGS += $(if $(CONFIG_GCC_USE_VERSION_10),-std=gnu++20,$(if $(CONFIG_GCC_USE_VERSION_5),-std=gnu++14,-std=gnu++17))
|
||||
|
||||
ifneq ($(findstring mips,$(ARCH)),)
|
||||
BOOST_ABI = o32
|
||||
ifneq ($(findstring 64,$(ARCH)),)
|
||||
BOOST_ABI = o64
|
||||
BOOST_ABI = n64
|
||||
endif
|
||||
else ifneq ($(findstring arm,$(ARCH)),)
|
||||
BOOST_ABI = aapcs
|
||||
@ -426,8 +436,7 @@ define Build/Compile
|
||||
) \
|
||||
) \
|
||||
) \
|
||||
$(if $(CONFIG_PACKAGE_boost-locale),boost.locale.iconv=on -sICONV_PATH=$(ICONV_PREFIX) boost.locale.posix=$(if $(USE_MUSL),on,off), \
|
||||
boost.locale.iconv=off) \
|
||||
$(if $(CONFIG_PACKAGE_boost-locale),boost.locale.std=off boost.locale.posix=off) \
|
||||
\
|
||||
$(if $(CONFIG_PACKAGE_boost-iostreams),-sNO_BZIP2=1 -sZLIB_INCLUDE=$(STAGING_DIR)/usr/include \
|
||||
-sZLIB_LIBPATH=$(STAGING_DIR)/usr/lib) \
|
||||
@ -480,28 +489,16 @@ define Host/Install
|
||||
$(CP) $(HOST_BUILD_DIR)/tools/build/src/engine/b2 $(STAGING_DIR_HOSTPKG)/bin/
|
||||
endef
|
||||
|
||||
define Package/boost/Default/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib
|
||||
$(CP) $(PKG_INSTALL_DIR)/lib/libboost_$(2)*.so* $(1)/usr/lib/
|
||||
endef
|
||||
|
||||
define Package/boost-test/install
|
||||
$(if $(CONFIG_boost-static-libs),true,
|
||||
$(INSTALL_DIR) $(1)/usr/lib
|
||||
$(CP) $(PKG_INSTALL_DIR)/lib/libboost_unit_test_framework*.so* $(1)/usr/lib/
|
||||
$(CP) $(PKG_INSTALL_DIR)/lib/libboost_prg_exec_monitor*.so* $(1)/usr/lib/
|
||||
endef
|
||||
|
||||
define BuildBoostLibrary
|
||||
define Package/boost-$(1)/install
|
||||
$(call Package/boost/Default/install,$$(1),$(1))
|
||||
endef
|
||||
|
||||
$$(eval $$(call BuildPackage,boost-$(1)))
|
||||
$(CP) $(PKG_INSTALL_DIR)/lib/libboost_{unit_test_framework,prg_exec_monitor}*.so* $(1)/usr/lib/
|
||||
)
|
||||
endef
|
||||
|
||||
$(eval $(call HostBuild))
|
||||
|
||||
$(foreach lib,$(BOOST_LIBS),$(eval $(call BuildBoostLibrary,$(lib))))
|
||||
$(foreach lib,$(BOOST_LIBS),$(eval $(call BuildPackage,boost-$(lib))))
|
||||
$(eval $(call BuildPackage,boost-test))
|
||||
$(eval $(call BuildPackage,boost-libs))
|
||||
$(eval $(call BuildPackage,boost))
|
||||
|
@ -1,68 +0,0 @@
|
||||
From 95d82acc57bb7d8bae431f7a6ce0707aac3ef33f Mon Sep 17 00:00:00 2001
|
||||
From: Rosen Penev <rosenp@gmail.com>
|
||||
Date: Thu, 5 Sep 2019 19:41:13 -0700
|
||||
Subject: [PATCH] Use eventfd() function with uClibc
|
||||
|
||||
The Boost eventfd code either directly makes the eventfd system call
|
||||
using __NR_eventfd (when __GLIBC_MINOR is less than 8), or otherwise
|
||||
uses the eventfd() function provided by the C library.
|
||||
|
||||
However, since uClibc pretends to be glibc 2.2, the Boost eventfd code
|
||||
directly uses the system call. While it works fine on most
|
||||
architectures, it doesn't on ARC since __NR_eventfd is not defined on
|
||||
this architecture. However, eventfd() is properly implemented.
|
||||
|
||||
So, this patch adjusts the logic used by Boost to consider uClibc as a
|
||||
C library providing the eventfd() function.
|
||||
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||
Signed-off-by: Rosen Penev <rosenp@gmail.com>
|
||||
---
|
||||
a/boost/asio/detail/impl/eventfd_select_interrupter.ipp | 12 ++++++------
|
||||
1 file changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/boost/asio/detail/impl/eventfd_select_interrupter.ipp b/boost/asio/detail/impl/eventfd_select_interrupter.ipp
|
||||
index 38d4b2a61..e16cc8b00 100644
|
||||
--- a/boost/asio/detail/impl/eventfd_select_interrupter.ipp
|
||||
+++ b/boost/asio/detail/impl/eventfd_select_interrupter.ipp
|
||||
@@ -23,11 +23,11 @@
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
#include <fcntl.h>
|
||||
-#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 8
|
||||
+#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 2
|
||||
# include <asm/unistd.h>
|
||||
-#else // __GLIBC__ == 2 && __GLIBC_MINOR__ < 8
|
||||
+#else // __GLIBC__ == 2 && __GLIBC_MINOR__ < 2
|
||||
# include <sys/eventfd.h>
|
||||
-#endif // __GLIBC__ == 2 && __GLIBC_MINOR__ < 8
|
||||
+#endif // __GLIBC__ == 2 && __GLIBC_MINOR__ < 2
|
||||
#include <boost/asio/detail/cstdint.hpp>
|
||||
#include <boost/asio/detail/eventfd_select_interrupter.hpp>
|
||||
#include <boost/asio/detail/throw_error.hpp>
|
||||
@@ -46,14 +46,14 @@ eventfd_select_interrupter::eventfd_select_interrupter()
|
||||
|
||||
void eventfd_select_interrupter::open_descriptors()
|
||||
{
|
||||
-#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 8
|
||||
+#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 2
|
||||
write_descriptor_ = read_descriptor_ = syscall(__NR_eventfd, 0);
|
||||
if (read_descriptor_ != -1)
|
||||
{
|
||||
::fcntl(read_descriptor_, F_SETFL, O_NONBLOCK);
|
||||
::fcntl(read_descriptor_, F_SETFD, FD_CLOEXEC);
|
||||
}
|
||||
-#else // __GLIBC__ == 2 && __GLIBC_MINOR__ < 8
|
||||
+#else // __GLIBC__ == 2 && __GLIBC_MINOR__ < 2
|
||||
# if defined(EFD_CLOEXEC) && defined(EFD_NONBLOCK)
|
||||
write_descriptor_ = read_descriptor_ =
|
||||
::eventfd(0, EFD_CLOEXEC | EFD_NONBLOCK);
|
||||
@@ -70,7 +70,7 @@ void eventfd_select_interrupter::open_descriptors()
|
||||
::fcntl(read_descriptor_, F_SETFD, FD_CLOEXEC);
|
||||
}
|
||||
}
|
||||
-#endif // __GLIBC__ == 2 && __GLIBC_MINOR__ < 8
|
||||
+#endif // __GLIBC__ == 2 && __GLIBC_MINOR__ < 2
|
||||
|
||||
if (read_descriptor_ == -1)
|
||||
{
|
@ -1,11 +0,0 @@
|
||||
--- a/boost/outcome/experimental/status-code/status_code_ptr.hpp 2020-04-28 09:23:14.792565200 +0100
|
||||
+++ b/boost/outcome/experimental/status-code/status_code_ptr.hpp 2020-04-28 09:24:34.311741000 +0100
|
||||
@@ -103,7 +103,7 @@
|
||||
#endif
|
||||
virtual void _do_erased_copy(status_code<void> &dst, const status_code<void> &src, size_t /*unused*/) const override // NOLINT
|
||||
{
|
||||
- assert(dst.domain() == *this);
|
||||
+ // Note that dst will not have its domain set
|
||||
assert(src.domain() == *this);
|
||||
auto &d = static_cast<_mycode &>(dst); // NOLINT
|
||||
const auto &_s = static_cast<const _mycode &>(src); // NOLINT
|
File diff suppressed because it is too large
Load Diff
70
libs/boost/patches/010-mips64.patch
Normal file
70
libs/boost/patches/010-mips64.patch
Normal file
@ -0,0 +1,70 @@
|
||||
--- a/libs/context/src/asm/jump_mips64_n64_elf_gas.S
|
||||
+++ b/libs/context/src/asm/jump_mips64_n64_elf_gas.S
|
||||
@@ -67,7 +67,7 @@ jump_fcontext:
|
||||
sd $ra, 144($sp) # save RA
|
||||
sd $ra, 152($sp) # save RA as PC
|
||||
|
||||
-
|
||||
+#if defined(__mips_hard_float)
|
||||
s.d $f24, 0($sp) # save F24
|
||||
s.d $f25, 8($sp) # save F25
|
||||
s.d $f26, 16($sp) # save F26
|
||||
@@ -76,6 +76,7 @@ jump_fcontext:
|
||||
s.d $f29, 40($sp) # save F29
|
||||
s.d $f30, 48($sp) # save F30
|
||||
s.d $f31, 56($sp) # save F31
|
||||
+#endif
|
||||
|
||||
# store SP (pointing to old context-data) in v0 as return
|
||||
move $v0, $sp
|
||||
@@ -83,6 +84,7 @@ jump_fcontext:
|
||||
# get SP (pointing to new context-data) from a0 param
|
||||
move $sp, $a0
|
||||
|
||||
+#if defined(__mips_hard_float)
|
||||
l.d $f24, 0($sp) # restore F24
|
||||
l.d $f25, 8($sp) # restore F25
|
||||
l.d $f26, 16($sp) # restore F26
|
||||
@@ -91,6 +93,7 @@ jump_fcontext:
|
||||
l.d $f29, 40($sp) # restore F29
|
||||
l.d $f30, 48($sp) # restore F30
|
||||
l.d $f31, 56($sp) # restore F31
|
||||
+#endif
|
||||
|
||||
ld $s0, 64($sp) # restore S0
|
||||
ld $s1, 72($sp) # restore S1
|
||||
--- a/libs/context/src/asm/ontop_mips64_n64_elf_gas.S
|
||||
+++ b/libs/context/src/asm/ontop_mips64_n64_elf_gas.S
|
||||
@@ -67,7 +67,7 @@ ontop_fcontext:
|
||||
sd $ra, 144($sp) # save RA
|
||||
sd $ra, 152($sp) # save RA as PC
|
||||
|
||||
-
|
||||
+#if defined(__mips_hard_float)
|
||||
s.d $f24, 0($sp) # save F24
|
||||
s.d $f25, 8($sp) # save F25
|
||||
s.d $f26, 16($sp) # save F26
|
||||
@@ -76,6 +76,7 @@ ontop_fcontext:
|
||||
s.d $f29, 40($sp) # save F29
|
||||
s.d $f30, 48($sp) # save F30
|
||||
s.d $f31, 56($sp) # save F31
|
||||
+#endif
|
||||
|
||||
# store SP (pointing to context-data) in t0
|
||||
move $t0, $sp
|
||||
@@ -83,6 +84,7 @@ ontop_fcontext:
|
||||
# restore SP (pointing to context-data) from a0
|
||||
move $sp, $a0
|
||||
|
||||
+#if defined(__mips_hard_float)
|
||||
l.d $f24, 0($sp) # restore F24
|
||||
l.d $f25, 8($sp) # restore F25
|
||||
l.d $f26, 16($sp) # restore F26
|
||||
@@ -91,6 +93,7 @@ ontop_fcontext:
|
||||
l.d $f29, 40($sp) # restore F29
|
||||
l.d $f30, 48($sp) # restore F30
|
||||
l.d $f31, 56($sp) # restore F31
|
||||
+#endif
|
||||
|
||||
ld $s0, 64($sp) # restore S0
|
||||
ld $s1, 72($sp) # restore S1
|
11
libs/boost/patches/020-mips64-fiber.patch
Normal file
11
libs/boost/patches/020-mips64-fiber.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- a/boost/fiber/detail/cpu_relax.hpp
|
||||
+++ b/boost/fiber/detail/cpu_relax.hpp
|
||||
@@ -47,7 +47,7 @@ namespace detail {
|
||||
# else
|
||||
# define cpu_relax() asm volatile ("nop" ::: "memory");
|
||||
# endif
|
||||
-#elif BOOST_ARCH_MIPS && (__mips_isa_rev > 1)
|
||||
+#elif BOOST_ARCH_MIPS && (((__mips_isa_rev > 1) && defined(__mips32)) || ((__mips_isa_rev > 2) && defined(__mips64)))
|
||||
# define cpu_relax() asm volatile ("pause" ::: "memory");
|
||||
#elif BOOST_ARCH_PPC
|
||||
// http://code.metager.de/source/xref/gnu/glibc/sysdeps/powerpc/sys/platform/ppc.h
|
Loading…
Reference in New Issue
Block a user