Commit Graph

350 Commits

Author SHA1 Message Date
Alexander Grund
e2b773cfa6 DO NOT MERGE - Disable irrelevant jobs 2022-10-12 12:02:10 +02:00
Alexander Grund
cb6642d890 Speedup coverage collection on Windows
Run B2 2 times: First only building binaries without running the tests, then with the OpenCppCoverage wrapper which now skips over building the already existing binaries.
2022-10-12 12:01:12 +02:00
sdarwin
4ed2aa3e9c update readme 2022-10-11 22:13:47 +02:00
sdarwin
22339faf4c replace apt-key command 2022-10-11 19:50:28 +02:00
Sam Darwin
f21fc1832d Drone: Add FreeBSD (#182) 2022-10-11 11:07:24 -06:00
Alexander Grund
c6e37f0307 Add name to OSX job
Make it easier to recognize in the list of checks run for a commit/PR
2022-09-12 10:44:29 +02:00
Sam Darwin
52be389326 drone: replace apt-key command (#180) 2022-08-23 17:21:33 -06:00
Sam Darwin
449a1d4f7c Drone updates (#179)
* Drone containers "pull": "if-not-exists"

* Drone: Use curl. Add Web-Invoke retries.
2022-08-23 09:55:28 -06:00
Alexander Grund
42c162c87e Handle multiple entries in B2_DEFINES
As pointed out by @sdarwin multiple values in `B2_DEFINES` led to a failing build as the scripts only supported a single value for the "new" var usages.
This is a regression from the old usage where `B2_DEFINES: define=FOO=1 define=BAR=2` could be used.
This is now fixed by a small parser function which generates multiple `define=*` entries and additionally now also supports spaces in the define values.
Same is done for `B2_INCLUDE` which has the same issue.

Also includes the change to the CI script from #177 and an additional test in test.cpp to verify that this works.
2022-08-12 19:36:20 +02:00
Alexander Grund
fe8e9c1a1d Put the search for Python into a function invoked only when required
This allows to run `enforce.sh` also when Python is not installed for
the cases where it is not used.
2022-08-11 18:09:10 +02:00
Baoshuo Ren
a9a2ac2d1e chore: bump macos runner version
GitHub Action is sunsetting the macOS 10.15 Actions runner. It will stop working intermittently until being completely removed by 2022-8-30: https://github.blog/changelog/2022-07-20-github-actions-the-macos-10-15-actions-runner-image-is-being-deprecated-and-will-be-removed-by-8-30-22
2022-07-25 15:21:25 +02:00
Alexander Grund
dee2f7a607 Merge pull request #174 from sdarwin/python
pythonexecutable variable
2022-06-24 09:50:49 +02:00
Sam Darwin
a3db91bd95 Add Mac OSX 12.4 Monterey drone runners (#175) 2022-06-23 13:41:34 -06:00
sdarwin
22da9557b2 pythonexecutable variable - update 2022-06-23 09:20:20 -06:00
Alexander Grund
883d1f414d Handle B2_INCLUDE in build.bat
Allow passing of additional include paths the same way as the non-Windows builds. See `enforce.sh`
2022-06-23 16:37:01 +02:00
sdarwin
7bd78305cf pythonexecutable variable 2022-06-22 17:17:50 -06:00
Alexander Grund
a5712f1268 Add instructions on how to enabled Codecov on Drone 2022-06-10 19:46:30 +02:00
Alexander Grund
95797a44fc Fix links in readme template
- GHA CI had `boost-ci` instead of `template`
- Documentation links were outdated (missing sub-path)
2022-06-09 10:36:31 +02:00
Alexander Grund
005665a607 Add a full msvc-14.3 and reduce the windows coverage variants
Collecting coverage data on Windows is VERY expensive (takes long).
So only do a 64-bit build with latest standard on msvc-14.3 by default.
Library authors can change that if required.
2022-06-08 18:18:33 +02:00
Alexander Grund
2553b19f34 Add more tests using clang-win
Use C++latest standard and 32 bit builds using the "Visual Studio 2019" image
This also requires using the linker for the manifest.
2022-06-08 18:13:16 +02:00
Alexander Grund
fb621d3b5e Merge pull request #169 from boostorg/windows_jobs
Add msvc-14.0 and clang-win to GHA Windows jobs
2022-06-08 14:38:19 +02:00
Alexander Grund
0c220523d1 Fix clang-win builds on GHA
Add embed-manifest-via=linker to B2_FLAGS when clang-win is used on
Github actions
2022-06-08 13:58:03 +02:00
Alexander Grund
bcb941749a Add msvc-14.0 and clang-win to GHA Windows jobs 2022-06-08 10:04:05 +02:00
Alexander Grund
376479c2a4 Merge pull request #168 from Flamefire/clang_asan_fix
Workaround Clang 14 ASAN false positive on throwing exceptions
2022-06-06 15:58:38 +02:00
Alexander Grund
23c7493aea Revert to Clang 12 for libc++ & Sanitizers
A false positiv starting with Clang 13 prevents us from upgrading.
2022-06-06 09:53:20 +02:00
Alexander Grund
3736e32861 Workaround Clang 14 ASAN false positive on throwing exceptions
Fix the `AddressSanitizer: alloc-dealloc-mismatch (operator new vs free)` false positive reported by recent Clang with libc++ by reverting to Clang 13.
Fixes #167
2022-06-05 20:09:55 +02:00
Alexander Grund
ad98a10a48 Add some example throwing and catching an exception
In other repos Clang 14 with libc++ reports an ASAN failure:
> AddressSanitizer: alloc-dealloc-mismatch

- `free` in std::range_error::~range_error() (/lib/x86_64-linux-gnu/libc++abi.so.1...)
- Allocated by `new` in std::runtime_error::runtime_error(std::__1::basic_string<...> const&) (/lib/x86_64-linux-gnu/libc++.so.1...)
2022-06-05 19:52:23 +02:00
Alexander Grund
699bb3b786 Fix ccache saving on cache hit
When a cache with the key exists it is NOT saved even when changed.
Hence make the key unique to a commit (SHA) and restore the most recent
cache with a key prefixed by the part without the SHA.
2022-06-04 12:56:48 +02:00
Alexander Grund
9398571fbe Sort Appveyor compilers ascending
[skip actions]
2022-06-03 22:59:23 +02:00
Alexander Grund
b297a81f36 Sort AzP compilers ascending
Also a bit reformatting
2022-06-03 22:59:23 +02:00
Alexander Grund
a60085a43e Add GCC 12 & Clang 13/14 to GHA 2022-06-03 12:38:34 +02:00
Sam Darwin
819ffccdec Update Drone - clang-14 and gcc-12 (#163) 2022-05-24 08:31:29 -06:00
Alexander Grund
76211c3ab7 Improve comment on disabling CCache 2022-05-23 15:29:08 +02:00
Dirk Stolle
8fa856d82c GHA: update actions/cache + actions/checkout to v3 2022-05-20 15:31:40 +02:00
Alexander Grund
9739853319 Merge pull request #161 from Flamefire/cmake_improvements
Enable parallel CMake builds
2022-05-20 10:58:03 +02:00
Alexander Grund
e88a34f9b5 Enable parallel CMake builds
Use B2_JOBS to run the CMake build jobs in parallel to reduce CI time.
2022-05-20 09:36:35 +02:00
Alexander Grund
30c73f38dc Persist B2_JOBS on GHA 2022-05-19 12:04:14 +02:00
Alexander Grund
52226555f4 Merge pull request #125 from boostorg/remove-appveyor-codecov-workaround
Remove codecov workarounds
2022-05-06 20:05:03 +02:00
Alexander Grund
815b0a13c6 Make gpg write log output to stdout in PowerShell
gpg by default writes to stderr which is treated as "an error occurred"
by PowerShell. Hence write log output to stdout (FD 1) too.
2022-05-06 17:20:39 +02:00
Alexander Grund
69fc160797 Remove codecov workaround for GHA
No longer required after https://github.com/codecov/uploader/pull/545
2022-05-06 11:35:06 +02:00
Alexander Grund
d67937bfd6 Remove codecov workaround for appveyor
No longer required after https://github.com/codecov/uploader/pull/545
2022-05-06 11:34:53 +02:00
James E. King III
5b22d1dcff use a universal UBSAN_OPTIONS suppression=.ubsan-ignorelist 2022-04-24 21:34:55 -04:00
James E. King III
e8640b8cf0 allow ci workflow to add more ubsan options 2022-04-24 20:47:45 -04:00
James E. King III
fdc0df0a06 fix mingw builds - pacman archive 5.2.1 was removed upstream 2022-04-24 14:00:19 -04:00
Alexander Grund
4de9b2d68d Merge pull request #149 from boostorg/add-newer-cygwin
Add CI job using a newer Cygwin
2022-04-16 09:00:06 +02:00
sdarwin
a0fbe61dec Run hostname command in Drone/MacOSX job 2022-03-21 15:40:18 -05:00
Alexander Grund
b1e260f9ce Merge "Add suggested strategy for working with topic branches." 2022-03-11 15:33:13 +01:00
Alexander Grund
2c4a39b421 Add comment showing extension of setup step 2022-03-11 15:31:33 +01:00
Alexander Grund
f24edb29a9 GHA: Persist all env variables supported in B2_ARGS
This allows library maintainers to pass additional env-keys to the
"Setup Boost" step.
Order matches the one in enforce.sh
2022-03-11 15:31:33 +01:00
Sam Darwin
4041b7d9d7 test linkflags (#150)
* test linkflags

* Fix B2_ARGS for old CI configs

Revert construction of B2_ARGS for unset B2_CI_VERSION to what it was
before the deduplication efforts in #48

* Fix coverage args for old CI configs

Add the prefixes again

* Add multiple define= entries to B2_DEFINES and rename the test job

The error to be reproduced happens only for multiple values, e.g. to B2_LINKFLAGS or B2_DEFINES.

Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
2022-03-10 09:18:36 -06:00