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
Andrey Semashev
ae474ad1d5
Disabled 32-bit tests for clang with libc++ because of linking errors.
2019-10-13 23:12:27 +03:00
Andrey Semashev
cd91c032dd
Removed i386 package installs for libc++ and libc++abi.
2019-10-13 11:40:07 +03:00
Andrey Semashev
02663f40ca
Try re-enabling clang-win builds on VS2017 image.
2019-10-12 22:44:38 +03:00
Andrey Semashev
1e39a1ad1b
Re-disabled 32-bit clang UBSAN builds.
2019-10-12 20:59:12 +03:00
Andrey Semashev
62948cd18c
Downgraded clang builds to Xenial since there are no 32-bit packages for Bionic.
2019-10-12 19:01:14 +03:00
Andrey Semashev
c9c85555d3
Disabled 32-bit clang UBSAN builds due to linking errors.
2019-10-12 18:07:04 +03:00
Andrey Semashev
63b7ffeac9
Disabled clang-win because of linking problems.
2019-10-12 17:09:07 +03:00
Andrey Semashev
ce17f7bb8a
Updated CI configs, added new compilers.
2019-10-12 13:30:57 +03:00
Andrey Semashev
dde36a6ea6
Check event state on futex wakeups in manual_reset_event.
...
futex manpage[1] says that zero return code from a futex wait operation
may still indicate a spurious wakeup. Therefore we have to check the
event state before returning.
[1]: http://man7.org/linux/man-pages/man2/futex.2.html
2019-10-11 20:26:31 +03:00
Andrey Semashev
0ff2a08b40
Fixed incorrect old_state on first futex wait in auto_reset_event.
...
When futex_wait is first attempted, the old_state value did not account
for the waiter that was just added before entering the loop.
Also, some code cleanup and renaming.
2019-10-11 20:25:29 +03:00
Andrey Semashev
5e788fada7
Added Overview and Configuring sections in the docs.
2019-10-06 17:22:53 +03:00
Andrey Semashev
f8bc52a2c5
Removed unneeded empty line.
2019-10-06 17:21:46 +03:00
Andrey Semashev
6c2098d0de
Create libs/sync directory before copying the checkout into the Boost tree.
...
This is needed to run tests on Boost.Sync master since the superproject doesn't
have a supermodule for Boost.Sync in the master branch.
2019-01-15 21:47:41 +03:00
Andrey Semashev
9350bd93af
Enabled multiple git fetch jobs while executing depinst in CI. Increased the number of jobs to 8.
2019-01-15 13:58:29 +03:00
Andrey Semashev
7df0b2f16c
Removed linking with Boost.System.
...
Since Boost.System is now header-only, remove linking with the library.
2019-01-14 20:23:16 +03:00
Andrey Semashev
0631f0e507
Use inline namespaces even in C++03 mode with gcc >= 4.4.
...
Since gcc 7 deprecated strong using directives, we have to use a different
extension to implement inline namespaces in C++03. This silences gcc warnings.
2019-01-04 00:41:24 +03:00
Andrey Semashev
ffd2a86d5f
Ported tests to lightweight_test.hpp.
...
This will allow to work around compilation warnings and errors on
MinGW coming from Boost.Test.
2019-01-03 21:22:44 +03:00
Andrey Semashev
0adccdb976
Added workarounds for Cygwin, made cv and mutex ctors non-constexpr.
...
On Cygwin, pthread initializer macros are defined in a way incompatible
with C++ constexpr.
2019-01-03 15:55:04 +03:00
Andrey Semashev
898127aaa8
Fixed compilation errors and warnings on Windows.
2019-01-02 22:11:28 +03:00
Andrey Semashev
3c9d12442d
Use CPU count to run parallel build/test jobs in CI.
2019-01-02 21:19:53 +03:00