591 Commits

Author SHA1 Message Date
43238b75ce Added AppVeyor CI config.
AppVeyor CI is useful for testing older MSVC versions that are no longer
supported by GitHub Actions.
2025-06-13 15:43:18 +03:00
8651f245fe Added new gcc and clang jobs to GitHub Actions. 2025-06-13 15:43:18 +03:00
5628638ade Added a workaround for MSVC 14.0 for BOOST_BITMASK.
Apparently, MSVC 14.0 does not import type aliases into namespaces via
a using-declaration. Work around the problem by enabling the use of
a compiler intrinsic for deducing the underlyng type of the enum.
2025-06-12 23:56:02 +03:00
d3a556f694 Removed gcc 4.6 GitHub Action job.
The compiler doesn't support std::underlying_type trait,
which is needed by BOOST_BITMASK.
2025-06-12 19:01:48 +03:00
d533b69b87 Removed windows-2019 GitHub Actions jobs.
The windows-2019 image is deprecated and will soon be removevd.
2025-06-12 18:41:01 +03:00
1a28d9d60f Mark bitmask_set generated by BOOST_BITMASK as deprecated.
This function is not really needed and can be replaced with double
negation (!!) or comparison with an enum value of zero. We should
prefer to minimize polluting the user's namespace with new names.
2025-06-12 18:41:01 +03:00
002caaa54f Added tests for BOOST_BITMASK. 2025-06-12 18:41:01 +03:00
f7fdaf08a3 Use C++11 underlying_type trait in BOOST_BITMASK.
This bumps the language requirement to C++11, although for compilers
that support the __underlying_type intrinsic this may work even in C++03
mode.

The operators generated by BOOST_BITMASK now use proper underlying types
for casts, which means the operators will no longer truncate bits from
large enums.

Also mark the operators as noexcept and constexpr (since C++14).
2025-06-12 18:40:55 +03:00
5b10a0b9b5 Removed outdated GHA images, added new compilers. 2025-04-19 19:19:12 +03:00
a54b2619f8 Add support for modular build structure. (#24)
* Make the library modular usable.

* Switch to library requirements instead of source. As source puts extra source in install targets.

* Add missing b2 testing module import.

* Add missing import-search for cconfig/predef checks.

* Add requires-b2 check to top-level build file.

* Bump B2 require to 5.2

* Update copyright dates.

* Move inter-lib dependencies to a project variable and into the build targets.

* Update build deps.
boost-1.88.0.beta1 boost-1.88.0 boost-1.87.0.beta1 boost-1.87.0
2024-08-19 01:25:34 +03:00
804767983f Added macos-12 and 13 testing in addition to latest (which is 14). boost-1.86.0.beta1 boost-1.86.0 2024-05-21 01:18:57 +03:00
a8a43b4778 Use macos-latest image as macos-11 is being removed. 2024-05-21 00:59:59 +03:00
080df0554b Added a missing trailing newline. 2024-04-27 19:35:02 +03:00
9c3a0022b2 Added gcc-13 and clang-17 CI jobs. boost-1.85.0.beta1 boost-1.85.0 2024-02-06 00:44:24 +03:00
6488652b08 Reduced CI job timeouts. 2024-02-05 23:43:39 +03:00
8a0d14a862 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 23:39:59 +03:00
845567f026 Remove C++03 CI jobs, use gcc-11 libstdc++ in clang-12 through 15. boost-1.84.0 2023-11-17 20:07:56 +03:00
b75c261492 Add clang-16 CI jobs, switch to clang-15 from stock Ubuntu repos. boost-1.83.0 boost-1.84.0.beta1 boost-1.83.0.beta1 2023-06-05 15:36:30 +03:00
c6dac76110 Updated to GHA checkout@v3 to avoid deprecation warnings. boost-1.82.0 boost-1.82.0.beta1 boost-1.81.0.beta1 boost-1.81.0 2022-10-18 17:56:52 +03:00
15cc27d2bd 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 01:09:35 +03:00
f9888ad051 Use ubuntu-latest for GHA CI jobs that run in a container. 2022-08-14 14:05:52 +03:00
00efa0a0fb Removed compiler options that are not supported by clang-cl. 2022-08-14 11:36:17 +03:00
c22d18ee32 Updated GHA config to resolve CI failures. 2022-08-14 11:01:16 +03:00
0583b51d35 Updated GHA CI config to remove deprecated Windows and Ubuntu images. 2022-08-14 02:06:31 +03:00
90d5395868 Switch to macos-11 GHA image as macos-10.15 is deprecated. 2022-08-12 15:56:52 +03:00
8c603a1894 Fixed copyright character encoding in css.
Replaced ISO-8859-1 copyright character with (c) and changed the order
of date and name to be consistent with other copyrights.

Closes https://github.com/boostorg/detail/pull/22.
boost-1.80.0.beta1 boost-1.80.0 boost-1.79.0.beta1 boost-1.79.0
2022-02-03 11:58:40 +03:00
fc31e65e0d 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.
boost-1.78.0
2021-11-16 00:38:41 +03:00
c5de1e6848 Another fix in git version check. boost-1.78.0.beta1 2021-09-26 20:36:43 +03:00
ab84a1cb11 Fixed git version check on Mac OS. 2021-09-26 20:34:00 +03:00
2ca25f118d Fix running multiple configs of test_utf8_codecvt in parallel.
When running multiple different configurations of test_utf8_codecvt, e.g.
debug/release or different C++ versions, the test used to spuriously fail
because the test processes would conflict through the files the test creates.

To work around this, the test now creates the files in the same directory
where the test executable is located. With Boost.Build, that means the files
will be created in different directories for different configs.

This should fix spurious test failures in CI.
2021-09-16 01:26:08 +03:00
399a7a65b8 Added GHA CI timeout. 2021-09-15 21:30:44 +03:00
3986d6b7e6 Updated test_utf8_codecvt to show data differences on test failures. 2021-09-12 20:57:37 +03:00
b9f29ff43a Added GitHub Actions config. 2021-09-12 19:34:54 +03:00
3ec1c642f0 Removed Travis CI config file.
Since Travis CI no longer runs free jobs for open source projects,
we are switching to GitHub Actions.
2021-09-12 19:24:52 +03:00
87489a4346 Fixed inconsistent linkage specification on MSVC. Code cleanup.
cc32906071 introduced inconsistent
BOOST_UTF8_DECL markup between function declarations and definitions,
which caused MSVC build errors. This commit fixes this.

Also, replaced unneeded BOOST_UTF8_DECL markup with inline for functions
that are only used internally. Made get_cont_octet_out_count static.

Additionally, removed duplicate octet1_modifier_table definitions
and moved it to a function-local static.

Whitespace and formatting cleanup.

Closes https://github.com/boostorg/filesystem/issues/204.
2021-08-18 00:47:12 +03:00
db4c8248c0 Merge commit 'a01fe6d57b906edf0400daebfb5ea88bb4582f44' into develop
* commit 'a01fe6d57b906edf0400daebfb5ea88bb4582f44':
  Update CMakeLists.txt
  Fixed out-of-bounds access in utf8_codecvt_facet::do_length.
  Update maintainer list
  Disabled libstdc++ debug mode to work around gcc 10.1 bug.
  Added a workaround for removed nested typedefs in std::allocator.
  Added a workaround for C++20 ostream having deleted operator<< for wchar_t.
  Added gcc 10 build jobs to Travis CI.
  Use more up-to-date location of lightweight_test.hpp
  Converted binary_search_test to lightweight_test.hpp
  Converted allocator_utilities_test to lightweight_test.hpp
  Converted blank_test to lightweight_test.hpp.
  Removed use of deprecated header boost/detail/iterator.hpp.
  Reordered includes.
  Added boost/config.hpp.
  Changed because config.hpp is not being included
  Added clang-10 jobs to Travis CI.
  Change __BORLANDC__ to BOOST_BORLANDC, which is defined in Boost config for the Embarcadero non-clang-based compilers.
  Disabled OS X builds because they are slow on Travis CI.
  Updated CI configs, added compilers.
2021-08-14 11:08:29 -07:00
cc32906071 adjustments to visibiity 2021-08-14 11:08:14 -07:00
a01fe6d57b Update CMakeLists.txt boost-1.77.0.beta1 boost-1.77.0 2021-06-10 01:15:48 +03:00
131208d8cc Fixed out-of-bounds access in utf8_codecvt_facet::do_length.
The loop in do_length used to dereference from_end pointer, which
could point to an out-of-bounds memory. Rewritten the loop to
avoid this and also make the logic a bit more clear.

Closes https://github.com/boostorg/detail/pull/21.
boost-1.76.0
2021-03-17 14:12:36 +03:00
99fc546b78 Update maintainer list boost-1.76.0.beta1 2021-01-26 15:53:19 -05:00
5d285a2d5a Disabled libstdc++ debug mode to work around gcc 10.1 bug.
The debug mode fails to compile in C++11 mode because of
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95289.
boost-1.74.0 boost-1.75.0.beta1 boost-1.75.0 boost-1.74.0.beta1
2020-05-23 19:02:45 +03:00
d3da3ed070 Added a workaround for removed nested typedefs in std::allocator. 2020-05-23 18:45:20 +03:00
4bb5ef3b38 Added a workaround for C++20 ostream having deleted operator<< for wchar_t. 2020-05-23 18:36:02 +03:00
e539c056f6 Added gcc 10 build jobs to Travis CI. 2020-05-22 18:39:16 +03:00
01c1bf1906 Use more up-to-date location of lightweight_test.hpp 2020-05-10 23:27:22 +03:00
be1294c8a8 Converted binary_search_test to lightweight_test.hpp 2020-05-10 23:24:58 +03:00
f26a04df65 Converted allocator_utilities_test to lightweight_test.hpp 2020-05-10 23:20:53 +03:00
5f456ffe33 Converted blank_test to lightweight_test.hpp. 2020-05-10 23:20:22 +03:00
63f2e170cb Removed use of deprecated header boost/detail/iterator.hpp. 2020-05-10 23:14:19 +03:00
c281caa89f Reordered includes. 2020-05-06 20:31:14 +03:00