2
0
mirror of https://github.com/boostorg/sync.git synced 2026-01-19 04:42:12 +00:00

223 Commits

Author SHA1 Message Date
Andrey Semashev
afe18948b4 Replaced macos-13 with macos-15 in GitHub Actions.
The macos-13 image is retired, macos-15 is now available.
2025-12-13 20:48:09 +03:00
Andrey Semashev
15b407950a Fix clang-win jobs in AppVeyor CI. 2025-08-27 18:17:46 +03:00
Andrey Semashev
0eb9dc689a Use more fine-grained includes from Boost.Atomic.
This avoids including headers with IPC atomics, which are not used in
Boost.Sync.
2025-08-27 18:10:19 +03:00
Andrey Semashev
f26e448703 Added support for modular b2.
This adds explicit specification of all library dependencies, which is
necessary for modular b2 builds and also for tracking usage requirements
from the dependencies.

This also introduces a new boost_sync_with_support target, which
provides a dependency on the main Boost.Sync library, as well as any
additional dependencies that are needed for support headers.
2025-08-27 18:05:46 +03:00
Andrey Semashev
135d2d1246 Further fix clang CI jobs for 32-bit targets.
Added missing cxxstd32 tags. Also other minor cleanups and additions.
Removed clang-15 with libc++ job as we already test libc++ with a more
recent clang.
2025-08-26 15:42:45 +03:00
Andrey Semashev
915289fad2 Switched clang jobs to Docker containers to fix support for 32-bit targets. 2025-08-26 15:30:13 +03:00
Andrey Semashev
c7a23ced73 Updated CI configs.
Removed older compilers that are no longer supported by the upstream
libraries, removed CI images that were removed from GitHub Actions,
added new compilers and ARM jobs.
2025-08-26 15:16:38 +03:00
Andrey Semashev
f5ad1abb7b Merge pull request #18 from Flamefire/test-link-update
Update Link to regression test matrix in README
2025-08-25 19:07:18 +03:00
Alexander Grund
ab4a5eb6ac Update Link to regression test matrix in README 2025-08-25 17:26:43 +02:00
Andrey Semashev
a75e8485cb Resolved duplicate shared_spin_mutex::try_lock method in Doxygen docs. 2024-08-17 23:06:27 +03:00
Andrey Semashev
5b5f31d556 Replaced macos-11 GHA image with 12, 13 and 14 since 11 is being removed. 2024-05-21 01:24:18 +03:00
Andrey Semashev
e3ba150d0b Removed MinGW32 AppVeyor job.
This compiler is no longer supported by Boost.System.

https://github.com/boostorg/system/issues/116
2024-02-07 00:02:12 +03:00
Andrey Semashev
5b2a89f3ff Added Windows jobs to GHA CI. 2024-02-06 01:46:40 +03:00
Andrey Semashev
22ca3789f8 Reduced CI job timeouts. 2024-02-06 01:44:51 +03:00
Andrey Semashev
c66e1ff5d6 Removed gcc 4.6 and 4.7 as Boost.System is incompatible with 4.7. 2024-02-06 01:43:22 +03:00
Andrey Semashev
ec17208ba2 Use gcc-11 toolchain with clang <= 15 as it is incompatible with libstdc++13 in C++23 mode. 2024-02-06 01:42:21 +03:00
Andrey Semashev
a123a22241 Replaced actions/checkout usage with manual download commands.
This fixes the deprecation warnings for actions/checkout@v3. actions/checkout@v4
is not functional because of the upstream bug:

https://github.com/actions/checkout/issues/1590
2024-02-06 01:10:16 +03:00
Andrey Semashev
a9420b9794 Removed gcc-4.4 and C++03 CI jobs. 2024-02-06 01:08:29 +03:00
Andrey Semashev
2e18595be7 Added gcc-13 and clang-17 GHA CI jobs. 2024-02-06 01:05:28 +03:00
Andrey Semashev
e3b397214f Add clang-16 CI jobs, switch to clang-15 from stock Ubuntu repos. 2023-06-05 03:25:13 +03:00
Andrey Semashev
af7c03b2c7 Updated include to a more recent location. boost-1.82.0.beta1 2023-02-03 20:59:52 +03:00
Andrey Semashev
11426a676f Updated to GHA checkout@v3 to avoid deprecation warnings. 2022-10-18 17:59:33 +03:00
Andrey Semashev
79427774fb GitHub Actions config update.
- Added gcc-12 and clang-13 through 15 jobs.
- Added C++23 testing for gcc and clang on Linux.
- Updated clang version for UBSAN job.
- Updated Ubuntu version for clang jobs to avoid having to use external APT
  repository.
- Updated python package installation for compatibility with Ubuntu 22.04.
2022-09-10 02:01:47 +03:00
Andrey Semashev
03a797c15b Use ubuntu-latest for GHA CI jobs that run in a container. 2022-08-14 14:17:30 +03:00
Andrey Semashev
b8972d95c0 Switch to macos-11 GHA image as macos-10.15 is deprecated. 2022-08-12 16:04:36 +03:00
Andrey Semashev
3cbb0f7fc9 Added VS2022 job and C++20 and C++latest jobs to AppVeyor CI. 2022-06-06 03:10:38 +03:00
Andrey Semashev
e690de2d30 Silenced b2 warning about unescaped character. 2021-11-19 18:35:10 +03:00
Andrey Semashev
cab1a6b810 Updated check for apt-add-repository capabilities.
In Ubuntu 20.04 there appeared an updated version of the
software-properties-common package in focal-updates, which ships a newer
apt-add-repository version that doesn't support -P/-S/-U command line arguments.

Since we cannot rely on package version checks to determine apt-add-repository
capabilities, we have to parse its --help output instead.

Also, made source list processing more protected against spaces.
2021-11-16 00:52:44 +03:00
Andrey Semashev
07ab2e5e48 Fixed git version check on Mac OS. 2021-09-26 20:43:08 +03:00
Andrey Semashev
641152b4ef Updated README.md to replace links to Travis CI with GHA and add more links. 2021-09-15 22:10:15 +03:00
Andrey Semashev
c26d2662d2 Added GitHub Actions config. 2021-09-15 22:07:17 +03:00
Andrey Semashev
90821ea265 Removed Travis CI config.
Since Travis CI no longer runs free jobs for open source projects,
we are migrating to GitHub Actions instead.
2021-09-15 22:06:08 +03:00
Andrey Semashev
dfdf317f63 Merge pull request #17 from fdetro/topic/deprecated_boost_headers
fix boost deprecated header warnings
2021-02-05 17:00:41 +03:00
Franz Detro
8a26db61ab fix boost deprecated header warnings 2021-02-05 14:18:41 +01:00
Andrey Semashev
47d9228fef Merge pull request #15 from boostorg/feature/remove-mach-event
events: remove mach's manual_reset_event
2020-08-14 14:29:03 +03:00
Tim Blechmann
4ef9fbbedb events: remove mach's manual_reset_event
there is the following race condition when `set` is called during
`wait`:

* thread A: wait() -> load the state value 0
* thread B: set() -> set state value to 1
* thread B: set() -> wake all waiters (semaphore_signal_all)
* thread A: wait() -> semaphore_wait

i didn't find a way to properly implement this without condition
variables (or futex-style APIs which are not available on macos).
so we should use the fallback emulation here
2020-08-14 13:37:50 +08:00
Andrey Semashev
efbf1f51b1 Added gcc 10 build jobs to Travis CI. 2020-05-22 18:45:08 +03:00
Andrey Semashev
c9e41b88cf Merge pull request #14 from eldiener/develop
Changes for Embarcadero C++ clang-based compilers, targeting Boost 1.74
2020-05-06 16:02:02 +03:00
Andrey Semashev
1ba0a372a9 Added clang-10 jobs to Travis CI. 2020-05-05 23:24:43 +03:00
Edward Diener
ea439bd74f The corrected DLL entry point for the Embarcadero clang-based compilers. 2020-04-18 17:20:55 -04:00
Edward Diener
a9911c755a Change __BORLANDC__ to BOOST_BORLANDC, which is defined in Boost config for the Embarcadero non-clang-based compilers. 2020-03-31 20:08:15 -04:00
Andrey Semashev
aa425df7c0 Updated boost::atomic uses to the new value() accessor. 2020-03-05 22:03:17 +03:00
Andrey Semashev
e0eb6c98fd Merge pull request #13 from boostorg/feature/mach-fixes
Feature/mach fixes
2020-01-22 12:55:07 +03:00
Tim Blechmann
16dd10ada5 semaphores: mach - gracefully handle KERN_ABORTED
KERN_ABORTED can happen on spurious wakeups, e.g. when running inside a
debugger. in this case, we should retry the wait
2020-01-02 22:01:04 +08:00
Andrey Semashev
fb1a307c89 Merge pull request #12 from boostorg/pr/source-location
Use throw_exception overload taking source_location
2019-11-27 20:01:52 +03:00
Peter Dimov
ec0c5cfd42 Add source_location #include 2019-11-27 18:50:16 +02:00
Peter Dimov
7f22a4b16e Use throw_exception overload taking source_location 2019-11-26 17:39:29 +02:00
Andrey Semashev
75c4bb0e5e [ci-skip] Disabled all but one OS X jobs because they are slow on Travis CI. 2019-10-22 15:08:23 +03:00
Andrey Semashev
4bd9c484b7 Reworked manual reset event to avoid unnecessary futex syscalls.
Use futex state to hold the number of waiters and avoid invoking futex wake
when there are no waiters blocked on the event. To improve efficiency of
atomic operations, switched to Boost.Atomic exclusively.

Also, documented that resetting the event has relaxed memory ordering
semantics.
2019-10-17 16:05:47 +03:00
Andrey Semashev
4d75adf846 Added a workaround for the case when std::time performs rounding. 2019-10-13 23:26:20 +03:00