Boost provides free peer-reviewed portable C++ source libraries.
The emphasis is on libraries that work well with the C++ Standard
Library. Boost libraries are intended to be widely useful, and usable
across a broad spectrum of applications. The Boost license encourages
both commercial and non-commercial use.
The goal is to establish "existing practice" and provide reference
implementations so that Boost libraries are suitable for eventual
standardization. Ten Boost libraries are already included in the C++
Standards Committee's Library Technical Report (TR1) and will be in
the new C++0x Standard now being finalized. C++0x will also include
several more Boost libraries in addition to those from TR1. More Boost
libraries are proposed for TR2.
NOTE: This package does not contain Boost.Python, it's in
devel/boost-python-libs.
===> The following configuration options are available for boost-libs-1.92.0:
COBALT=off: Build Boost.Cobalt, force C++20 usage
DEBUG=off: Build with debugging support
GIL_EXT=off: Extra file-formats for Generic Image Library component
LLVM_FROM_PORTS=off: Use LLVM from ports to build
OPTIMIZED_CFLAGS=off: Use extra compiler optimizations
SBT=off: Support stacktrace.backtrace via devel/libbacktrace
SFE=on: Support stacktrace.from_exception (amd64 only)
ZSTD=on: Zstandard compression support
====> Options available for the multi LOCALE: you have to choose at least one of them
ICONV=on: Boost.Locale with iconv encoding support
ICU=on: Boost.Regex/Locale with ICU unicode support
===> Use 'make config' to modify these settings
devel/boost*: update to 1.92.0 release (+)
Include corresponding update for boost_build to 5.5.2
Introduce new library, Cobalt, which forces C++20 standart (option OFF by
default)
Release notes: https://www.boost.org/releases/1.92.0/
devel/boost-libs: fix build on armv7
A file was moved, causing an armv7-specific instance of REINPLACE_CMD
to fail. As this fix up became a no-op in a recent version anyway,
just get rid of the whole thing.
Reported by: Mark Millard <marklmi@yahoo.com>
Approved by: portmgr (build fix blanket)
devel/boost-libs: fix build on powerpc64le/CURRENT
After powerpc64le's switch to 128-bit long double, this port fails
to build. The reason is that boost expects 128-bit long double to be
the same type as __float128. Clang doesn't enable __float128 by default.
It does so after passing -mfloat128, but even then treats long double
and __float128 as distinct types.
Upstream issue opened at https://github.com/boostorg/charconv/issues/299
all: drop support for FreeBSD 13, mips and risc64sf
Reviewed by: many (*)
Differential Revision: https://reviews.freebsd.org/D55624
Differential Revision: https://reviews.freebsd.org/D55642 (merged in from bofh)
many (*)
acm arrowd brooks cmt dch decke dinoex eduardo fluffy fuz gahr garga
jbeich joerg jrm kai kenrap martymac matthew mfechner michaelo mizhka
nobutaka pkubaj se tagattie thj
Anton Saietskii
GenericRikka
Gert Doering
Jan Bramkamp
Oleh Hushchenkov
Oleksandr Kryvulia
Ralf van der Enden
Yamagi
desktop kde python tcltk office
boost-libs: make boost type_traits build with clang 21
Recent versions of clang made -Wenum-constexpr-conversion errors into a
hard error, as was announced several versions ago.
Boost type_traits has two instances where it attempts to convert
out-of-range enum values, leading to errors similar to:
In file included from ../src/lib/dhcpsrv/csv_lease_file6.cc:9:
In file included from ../src/lib/dhcpsrv/dhcpsrv_log.h:11:
In file included from ../src/lib/log/macros.h:10:
In file included from ../src/lib/log/logger.h:19:
In file included from ../src/lib/log/log_formatter.h:19:
In file included from /usr/local/include/boost/lexical_cast.hpp:33:
In file included from
/usr/local/include/boost/lexical_cast/try_lexical_convert.hpp:31:
(Only the first 15 lines of the commit message are shown above )
devel/boost-libs: unbreak build if outdated devel/libbacktrace found (+)
Prevent hook up broken and outdated libbacktrace.so from devel/libbacktrace
which caused build errors with ZSTD or GIL options enabled
While here, do not link uncondifionally with zstd, follow option selection
TODO: port it to libexecinfo from base
devel/boost: update to 1.89.0 release (+)
Major change:
Boost::system component which converted to header-only since 1.70.0,
stops providing an empty stub library libboost_system.so for compatibe reasons
and goes as pure header-only since 1.89.0.
All consumers must be adjusted.
Release notes: https://www.boost.org/releases/1.89.0/
devel/boost: improve port (+)
1. Convert ZSTD support to option, default on.
2. Support for additional image formats in the Generic Image Library (adds raw,
PNG, TIFF, and JPEG formats). Added as an option, default off.
3. Resolve the problem preventing our *at() functions (like statat() and
openat()) from being detected, it'a Linux-only feature.
4. do-test target provided -- it is of limited utility, because it takes
multiple days and reports a lot of seemingly false problems.
5. Only extract the docs subdirectory, when building boost-docs -- saves some
diskspace during builds. Likewise, when building jam (b2) don't extract other
code.
6. Plist sort, .CURDIR usage optimization.
7. Backport a proper fix for broken function program_location_impl in Boost.DLL
PR: 286403, 287204 (based on), 287514 (fix previous version)
devel/boost-libs: Fix broken function program_location_impl
... in include/boost/dll/detail/posix/program_location_impl.hpp
This function is FreeBSD-specific.
Fixed error:
error: use of undeclared identifier 'buf'
Approved by: office@FreeBSD.org (maintainer's timeout; 14 days)
PR: 287514
devel/boost: update to 1.88.0 release (+)
This release include two new libraries, Hash2, and MQTT5
Allow to use Boost.iostream with ZSTD compression [requested in 1]
Release Notes: https://www.boost.org/releases/1.88.0/
PR: 286403 [1]
devel/boost-libs: fix on armv7
@progbits is spelled %progbits on armv7. This error caused dependent
port lang/emilua to fail to build, but does not directly affect this
port as the affected header files are not part of any translation unit
built with this package.
Approved by: portmgr (build fix blanket)
MFH: 2025Q1
devel/boost-libs: do not try to build boost.stacktrace.from_exceptions on !amd64
(+)
Recently added Boost.Stacktrace.from_exceptions library is ready only for amd64
yet.
Exclude it from the build on any other ARCHes now.
While here, backport fix for interface change in Boost.UUID
Reported by: fallout
Sponsored by: Future Crew, LLC
all: drop support for expired FreeBSD 14.0
Simplify expressions for FreeBSD 13.X
Reviewed by: many
Differential Revision: https://reviews.freebsd.org/D46601
devel/boost-{all,libs}: Adjust range of OSVERSION to use LLVM from ports
The reason to use LLVM from ports is that there is bug in Clang/LLVM
of base system that causes assertion failure while building
devel/boost-libs. The bug is already fixed with main, stable/14 and
stable/13 branches of src repository. So we need to use LLVM from
ports only with following ranges of OSVERSION.
1. 1500000 <= OSVERSION < 1500017
2. 1400000 <= OSVERSION < 1400509
3. 1300000 <= OSVERSION < 1303502
And commit 3b8c51bd37b0 adjusts the range as above.
But there is a pitfall about it. The assertion failure happens only if
(Only the first 15 lines of the commit message are shown above )
*/*: Sunset 12.4-RELEASE/12-STABLE from ports tree
- Remove all references to defunct ARCH arm
- Remove all references to defunct ARCH sparc64
- Remove x11-drivers/xf86-video-sunffb which requires defunct sparc64
ARCH
- Remove sysutils/afbinit requires defunct sparc64 ARCH
- Remove all references to bktr driver
- Remove all references to defunct FreeBSD_12
- Remove all references to OSVERSION/OSREL corresponding to 12
- Remove conditionals in Mk/Uses/cabal.mk
- Remove sparc reference from Mk/Uses/qt-dist.mk
- Remove BROKEN_sparc64/NOT_FOR_ARCH=sparc64
- Remove BROKEN_FreeBSD_12* from:
- Remove OpenSSL patches from:
- Remove conditional flags for OSVERSION >= 1300000 to fixed flags.
Also move conditional flags for non sparc64/arm ARCH to fixed flags.
Reviewed by: brooks, jbeich, rene, salvadore
Differential Revision: https://reviews.freebsd.org/D42068
devel/boost-libs: apply upstream patch for C++17 support
Since clang 16 (and gcc 11) the default C++ standard is now gnu++17.
Several ports that use boost/functional.hpp now complain with (for
example print/libmspub01):
In file included from MSPUBCollector.cpp:17:
In file included from /usr/local/include/boost/multi_array.hpp:34:
In file included from
/usr/local/include/boost/multi_array/multi_array_ref.hpp:32:
/usr/local/include/boost/functional.hpp:45:24: error: no member named
'unary_function' in namespace 'std'; did you mean '__unary_function'?
using std::unary_function;
~~~~~^~~~~~~~~~~~~~
__unary_function
/usr/include/c++/v1/__functional/unary_function.h:46:1: note:
'__unary_function' declared here
using __unary_function = __unary_function_keep_layout_base<_Arg, _Result>;
(Only the first 15 lines of the commit message are shown above )
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
devel: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* "Waitman Gobble" <uzimac@da3m0n8t3r.com>
* <jkoshy@FreeBSD.org>
* Aaron Dalton <aaron@FreeBSD.org>
* Aaron Dalton <aaron@daltons.ca>
* Aaron H. K. Diep <ahkdiep@gmail.com>
* Aaron Hurt <ahurt@anbcs.com>
* Abel Chow <abel_chow@yahoo.com>
* Adam McLaurin
* Adam Saponara <as@php.net>
* Adam Weinberger <adamw@FreeBSD.org>
* Ade Lovett <ade@FreeBSD.org>
(Only the first 15 lines of the commit message are shown above )
devel/boost-libs: backport upstream commit to add support to c++20 concepts
Until newer boost is ported, this fixes compilation of client code with errors
like
async_result.hpp: error: concept cannot have associated constraints
See https://github.com/boostorg/asio/issues/312 for details.
PR: 255016
Submitted by: amdmi3
MFH: 2021Q2
Fix use of iconv in Boost Locale. On FreeBSD it used __ICONV_F_HIDE_INVALID
which hides invalid sequences, but what Boost really wants is that iconv
returns an error on invalid sequences like GNU libiconv does by default.
On FreeBSD ICONV_SET_ILSEQ_INVALID can be used for this. It has to be set
via iconvctl.
PR: 215393
devel/boost-libs: unbreak some C++14 consumers with GCC after r479222
Boost 1.68 changed System ABI[1] for C++14 but due to a GCC bug it's
disabled for C++ >= 17. As our Boost package is built in C++17
consumers cannot use C++14. So, disable the new ABI for the affected
GCC versions regardless of C++ standard.
[1] https://github.com/boostorg/system/commit/7b6dcf6ac668
PR: 231447
Reported by: Piotr Kubaj
Remove compatibility code for FreeBSD < 11.2 from all ports.
Simplify some ports where DragonFlyBSD no longer needs to be special-cased.
Submitted by: rene
Reviewed by: bapt, jbeich
Differential Revision: https://reviews.freebsd.org/D17724
devel/boost-libs: backport minor regression fix
/usr/local/include/boost/lockfree/spsc_queue.hpp:140:43: error: no member named
'next' in namespace 'boost'
const ConstIterator last = boost::next(begin, input_count);
~~~~~~~^
/usr/local/include/boost/lockfree/spsc_queue.hpp:145:51: error: no member named
'next' in namespace 'boost'
const ConstIterator midpoint = boost::next(begin, count0);
~~~~~~~^
Obtained from: upstream (via Homebrew)
devel/boost-python-libs got forgotten in the python flavorization, fix
this oversight.
Reviewed by: antoine
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D14368
devel/boost-libs: oops, don't use NOT_FOR_ARCHS here
NOT_FOR_ARCHS only works if _REASON can be applied to all affected
architectures. If any other architecture doesn't share it one'd have to
add BROKEN_${ARCH}, anyway.
devel/boost-libs: oops, work around ${CC} usage after r430247
$ make -V '${MAKE_ARGS:M--toolset*}'
/bin/sh: clang39: not found
make: "/usr/ports/Mk/Uses/compiler.mk" line 69: warning: "clang39 --version"
returned non-zero status
make: "/usr/ports/Mk/Uses/compiler.mk" line 120: warning: "clang++39 -###
/dev/null 2>&1" returned non-zero status
--toolset=gcc
PR: 213867
MFH: 2016Q4 (r430247 followup)
devel/boost-libs: unblock aarch64 and sparc64 builds
- aarch64 requires Clang with new enough integrated assembler
- sparc64 is no longer supported since we don't split context library
into a separate package (unlike Debian)
PR: 213867214942
MFH: 2016Q4
devel/boost-libs: unbreak consumers with libressl
$ make WITH=ASIO -C www/nghttp2
[...]
In file included from asio_common.cc:25:
In file included from ./asio_common.h:32:
In file included from ../src/includes/nghttp2/asio_http2.h:37:
In file included from /usr/local/include/boost/asio/ssl.hpp:19:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:786:
/usr/local/include/boost/asio/ssl/impl/context.ipp:232:27: error: no member
named 'SSL_CTX_get_default_passwd_cb_userdata' in the global namespace; did you
mean 'SSL_CTX_set_default_passwd_cb_userdata'?
void* cb_userdata = ::SSL_CTX_get_default_passwd_cb_userdata(handle_);
~~^
/usr/local/include/openssl/ssl.h:1640:6: note:
'SSL_CTX_set_default_passwd_cb_userdata' declared here
void SSL_CTX_set_default_passwd_cb_userdata(SSL_CTX *ctx, void *u);
^
PR: 214793
Submitted by: matthew@reztek.cz
Obtained from: upstream (via Gentoo)
Approved by: portmgr blanket
- Update devel/icu to 57.1.
- Clean up the Makefile.
- Follow some upstream recommendations (--with-data-packaging=archive,
--disable-renaming, -DICU_NO_USER_DATA_OVERRIDE).
- Patch makefiles to install static libraries with INSTALL_DATA so they
aren't stripped.
- Patch config/mh-bsd-gcc to sync with config/mh-linux-gcc.
- Fix endianness detection in ICU. The code wanted to use BYTE_ORDER
defined in machine/endian.h, but this isn't visible because ICU is
compiled with _XOPEN_SOURCE. Patch the code to use _BYTE_ORDER instead.
- Compile ICU with C++11 compiler to enable move constructors.
- Patch ICU to fix a problem with atomics in the case of a C++11 compiler
without C++11 header <atomic> (like Clang on FreeBSD 9).
- Bump all ports that depend on it due to library version change.
- Add USES=compiler:c++0x to some ports that pick up -std=c++0x from ICU
pkgconfig files.
- Add USES=compiler:c++11-lib to graphics/libcdr01 because it also needs
a C++11 runtime library now. Add this to all ports that depend on it
so their executables load the right libstdc++.so on FreeBSD 9.
PR: 205120
Exp-run by: antoine
Approved by: portmgr (antoine)
Number of commits found: 153 (showing only 100 on this page)