Skip to content

Boost 1.87.0 for iOS

Latest

Choose a tag to compare

@github-actions github-actions released this 03 Sep 10:55
· 0 commits to 567215d2c7a8ca971e6c7996606a691d00f68413 since this release

Boost is a large, peer-reviewed collection of portable C++ libraries that both fills gaps in the standard library and serves as a proving ground for features—many of which (like smart pointers, regex, and filesystem) later get adopted into the C++ standard itself.

Precompiled Boost 1.87.0 XCFramework for arm64 iOS devices and arm64/x86_64 iOS Simulator. Includes all headers, compiled-component inventories, CMake and pkg-config metadata.

Included compiled libraries

  • boost_chrono — Compiled date and time duration support.
  • boost_date_time — Compiled date/time library retained for build compatibility.
  • boost_filesystem — Compiled Filesystem v4 support.
  • boost_graph — Compiled Graph algorithms.
  • boost_locale — Compiled localization backends without optional ICU packaging.
  • boost_random — Compiled random_device implementation.
  • boost_system — Error-code support required by several compiled libraries.
  • boost_thread — Portable threading primitives.
  • boost_context — Architecture-specific fcontext implementation.
  • boost_nowide — Compiled UTF-8 adapters.
  • boost_json — Compiled parser and DOM support.
  • boost_serialization — Compiled archive support.
  • boost_url — Compiled URL parser.
  • boost_container — Compiled polymorphic memory resources.
  • boost_log — Compiled logging core and setup support.
  • boost_stacktrace — Compiled portable basic backend only.
  • boost_timer — Compiled CPU timer.
  • boost_type_erasure — Compiled dynamic binding support.
  • boost_cobalt — Compiled C++20 coroutine library carried forward from Boost 1.84.
  • boost_charconv — Compiled locale-independent numeric conversion library required by Boost.MySQL.

All Boost headers are included. Header-only facilities remain available even
when their related compiled library is not part of the combined static binary.

Release features and exclusions

Boost 1.87.0 was released on December 12, 2024. This package remains on C++20
with an iOS 12.0 deployment target.

New library

Boost.Parser is new in 1.87. Upstream defines it as a header-only interface
target, so its headers are packaged without adding a libboost_parser.a archive.
A dedicated deterministic test parses a comma-separated integer grammar and
verifies its generated attributes.

Packaged libraries

The Boost 1.86 compiled set carries forward, including Charconv, Cobalt, and
the portable basic Stacktrace backend. Redis retains its separate-compilation
consumer model. Process v2 remains excluded pending dedicated iOS
process-spawning validation.

Validation

The complete earlier regression suite is retained. Release-specific coverage
starts with Boost.Parser, and the carried Asio callback test now uses
io_context because 1.87 removes the deprecated io_service.hpp header.
Boost.SmartPtr also deprecates BOOST_SP_USE_SPINLOCK; the compatibility define
still builds in 1.87 but must be removed before upstream deletes it.
The complete runtime suite passes on an arm64 iOS Simulator and physical arm64
iOS device.

Device and Simulator validation

Current target status:

  • official source SHA-256 verification: passed;
  • Boost 1.87 compatibility patch dry-run: passed;
  • Boost.Parser upstream build-model audit: passed (header-only interface target);
  • three-slice compile/link validation: passed (device arm64, Simulator arm64 and x86_64);
  • Charconv archive and three-slice symbol validation: passed;
  • Apple-slice libquadmath absence check: passed;
  • standalone XCFramework example validation: passed for all three slices;
  • SwiftPM packaging validation: passed for arm64 and x86_64 Simulator;
  • local CocoaPods consumer-project validation: passed;
  • generic arm64/x86_64 Simulator and arm64 device Xcode builds: passed;
  • arm64 iOS Simulator runtime suite: passed with ALL TESTS PASSED, including
    Boost 1.87 Parser grammar;
  • physical arm64 iOS device runtime suite: passed with ALL TESTS PASSED, as
    reported by the maintainer.

Only checks observed locally, reported by the maintainer, or proven in CI are
recorded as passed.