2
0
mirror of https://github.com/boostorg/atomic.git synced 2026-01-19 04:02:09 +00:00

49 Commits

Author SHA1 Message Date
Andrey Semashev
bf58085780 Replaced macos-13 with macos-15 in GitHub Actions.
The macos-13 image is retired, macos-15 is now available.
2025-12-13 20:07:57 +03:00
Andrey Semashev
11537e688c Removed clang-15 and libc++ GHA CI job.
We already test libc++ with a more recent clang.
2025-08-26 15:44:42 +03:00
Andrey Semashev
870fbffe04 Downgrade FreeBSD to 14.3 to work around CI failures.
FreeBSD 15.0 is currently failing because of the image issues.

Refs: https://github.com/vmactions/freebsd-vm/issues/108
2025-08-26 03:44:00 +03:00
Andrey Semashev
cbe50fe500 Restore compatibility with older gcc versions.
Added is_trivially_copyable and is_trivially_default_constructible type
traits that rely on the non-standard type traits available in libstdc++
from gcc 4.8 and 4.9.

Rather than requiring cxx11_hdr_type_traits in the library and test
requirements, use a more limited test that checks only the type traits
we use in Boost.Atomic.

Similarly, downgrade the requirement of C++ unrestricted unions to
unions with members that have non-trivial default constructors.

Remove the requirements of alignas and alignof, since those are not
mandatory for now.

Closes https://github.com/boostorg/atomic/issues/74.
2025-06-18 19:09:03 +03:00
Andrey Semashev
fdc15d4d9b Fixed GHA config. 2025-06-13 02:43:20 +03:00
Andrey Semashev
583a894b0b Added new gcc and clang jobs to GitHub Actions. 2025-06-13 02:42:31 +03:00
Andrey Semashev
9ab7eb0c57 Added Linux and Windows GitHub Actions jobs on ARM. 2025-06-11 04:00:51 +03:00
Andrey Semashev
66db4447cf Switch windows-2019 GHA images to windows-2022.
windows-2019 is being deprecated and will be removed. This means msvc-14.0
and msvc-14.2 toolsets are no longer available.
2025-06-08 15:58:24 +03:00
Andrey Semashev
bafa2665aa Require more C++11 support from the compiler.
We are going to use more C++11 features unconditionally, so add more
requirements in the build files. Don't straight require cxx11 in the
Jamfile as this eliminates all versions of MSVC from the builds.

Also remove older compilers that don't support enough of C++11 from CI.
2025-06-08 04:35:46 +03:00
Andrey Semashev
c30f8843c8 Added ISO C++26 testing on gcc 14 and clang 18 and 19. 2025-06-02 20:11:36 +03:00
Andrey Semashev
8d450c716d Added GitHub Actions CI on Solaris VM.
This uses vmactions/solaris-vm project that creates a Solaris virtual
machine and runs the CI job in it.

This CI job is mainly useful for testing fallback POSIX implementation
of waiting/notifying operations.
2025-06-02 20:05:07 +03:00
Andrey Semashev
0a93af8c9d Added GitHub Actions CI on DragonFlyBSD VM.
This uses vmactions/dragonflybsd-vm project that creates a DragonFlyBSD
virtual machine and runs the CI job in it.
2025-06-02 19:54:36 +03:00
Andrey Semashev
9cad48a07f Added GitHub Actions CI on NetBSD VM.
This uses vmactions/netbsd-vm project that creates a NetBSD virtual
machine and runs the CI job in it.
2025-06-02 19:54:36 +03:00
Andrey Semashev
3a799c56a7 Added GitHub Actions CI on OpenBSD VM.
This uses vmactions/openbsd-vm project that creates an OpenBSD virtual
machine and runs the CI job in it.
2025-06-02 19:54:36 +03:00
Andrey Semashev
fb43fd1a35 Added GitHub Actions CI on FreeBSD VM.
This uses vmactions/freebsd-vm project that creates a FreeBSD virtual
machine and runs the CI job in it.
2025-06-02 19:54:36 +03:00
Andrey Semashev
a1fede9103 Use Azure APT mirrors in containers.
This mitigates majority of spurious job failures caused by HTTP errors from
Ubuntu APT servers. Presumably, this is caused by DDoS filters triggered by
a multitude of CI jobs started at once.

Some jobs that access Launchpad repositories may still occasionally fail.
2025-06-02 19:53:11 +03:00
Andrey Semashev
a8a43a8b6d Remove _WIN32_WINNT defines in CI configs.
This is to verify that Boost.Atomic and tests build on MinGW-w64
with default settings despute the too-low default value of _WIN32_WINNT.
2025-05-31 02:09:03 +03:00
Andrey Semashev
411f6f65ab Removed support for Windows versions prior to Windows 10.
This makes WaitOnAddress/WakeByAddressSingle/WakeByAddressAll a mandatory
requirement. Thus, runtime detection of these APIs is now removed.

Also, linking with synchronization lib on Windows is now mandatory. The
library provides WaitOnAddress & co. which are now mandatory.
2025-05-29 18:06:10 +03:00
Andrey Semashev
58b713112b Don't set instruction-set on Mac OS CI jobs.
The CI jobs are running on ARM CPUs, so setting instruction-set=sandy-bridge
doesn't make sense, even if currently harmless.
2025-05-23 12:09:29 +03:00
Andrey Semashev
fb96eeec40 Added TSAN jobs to GitHub Actions CI. 2025-02-23 00:30:12 +03:00
Andrey Semashev
037f686d36 Added more compilers to GitHub Actions CI, removed macos-12 job.
Added more recent gcc and clang versions, reduced usage of external package
repositories. macos-12 image is now removed from GitHub Actions, so removed
the CI job based on it.
2024-12-15 23:28:59 +03:00
Andrey Semashev
b202228311 Added support for running tests in CMake.
Related to https://github.com/boostorg/atomic/issues/71.
2024-10-19 17:29:55 +03:00
Andrey Semashev
fbdb5f44d4 Replaced macos-11 GHA image with 12, 13 and 14 since 11 is being removed. 2024-05-21 01:14:22 +03:00
Andrey Semashev
5bbcce0f6e Reduced CI job timeouts. 2024-02-06 00:39:32 +03:00
Andrey Semashev
6594779edc Added gcc-13 CI job. 2024-02-06 00:36:58 +03:00
Andrey Semashev
d875b255fb 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-05 18:34:02 +03:00
Andrey Semashev
faec57c701 Fixed clang-17 package name. 2024-01-14 23:25:59 +03:00
Andrey Semashev
5332620643 Added clang-17 GHA jobs. 2024-01-14 22:39:50 +03:00
Andrey Semashev
607c57bdce Moved Windows shell option to defaults in GHA config. 2023-11-07 14:56:53 +03:00
Andrey Semashev
a9588809b4 Added GitHub Actions job for CMake on Windows. 2023-11-05 19:40:39 +03:00
Andrey Semashev
d36a1285a0 Added Windows CI to GitHub Actions. 2023-11-05 19:25:20 +03:00
Andrey Semashev
aebe9d585c Switched tests to std::thread and std::chrono.
This removes dependencies on Boost.Thread and Boost.Chrono, as well as
their dependencies and potentially allows to test more compilers. In particular,
this removes the dependency on Boost.Lexical cast, which no longer compiles
with gcc 4.6 and 4.7.
2023-09-03 22:11:23 +03:00
Andrey Semashev
4a9078a7b8 Dropping support for C++03 compilers.
As a result of dependent libraries dropping support for C++03, Boost.Atomic
is no longer able to support C++03 and now requires C++11 as a minimum.

Drop C++03 compilers from the CI and update docs accordingly. No code changes
at this time.
2023-09-02 19:31:10 +03:00
Andrey Semashev
001c1d96a8 Added clang-16 CI jobs. 2023-06-05 03:09:41 +03:00
Andrey Semashev
7b26230274 Use AVX instruction set in CI.
Enabling AVX will allow to test future updates that will use these
instructions.

Since MSVC doesn't allow to enable instruction sets for the current CPU,
we enable AVX unconditionally there, in hope that AppVeyor CI runners
support AVX.

Also, different clang versions exhibit various issues in GitHub Actions
when "native" instruction set is enabled, so we also explicitly specify
the instruction set we want for GHA.
2022-12-21 18:24:39 +03:00
Andrey Semashev
561fc75391 Updated to GHA checkout@v3 to avoid deprecation warnings. 2022-10-18 17:54:41 +03:00
Andrey Semashev
456d3c5ce5 Updated python package installation in GHA. 2022-09-09 03:44:11 +03:00
Andrey Semashev
b4ec62ed4e Added gcc-12 and clang-13 through 15 jobs to GHA config. 2022-09-09 02:24:31 +03:00
Andrey Semashev
581dd7953f Updated copyright years. 2022-08-14 14:03:03 +03:00
Andrey Semashev
5104a274e2 Use ubuntu-latest host image for GHA CI jobs that run in a container. 2022-08-14 13:44:36 +03:00
Andrey Semashev
74a4b37cce Fixed a typo in the comment in GHA config. 2022-08-14 13:20:38 +03:00
Andrey Semashev
f72bef98e0 Switch to macos-11 GHA image as macos-10.15 is deprecated. 2022-08-12 15:55:32 +03:00
Andrey Semashev
2069feeb79 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-15 22:15:08 +03:00
Andrey Semashev
265a92a2c3 Added Mac OS 11 test job. 2021-09-26 19:53:54 +03:00
Andrey Semashev
ee3257378b Added a timeout for GHA CI. 2021-09-15 20:47:27 +03:00
Andrey Semashev
11c45c654b Removed unused reference to extra_tests. 2021-09-12 19:23:00 +03:00
Andrey Semashev
6f3e4271d3 Removed installation of unnecessary packages in GHA CI. 2021-09-12 18:26:23 +03:00
Andrey Semashev
571f9096dd Don't build b2 and create headers tree for CMake tests. 2021-09-12 18:04:19 +03:00
Andrey Semashev
5f4847de74 Added GitHub Actions CI config. 2021-09-12 16:00:35 +03:00