-
Notifications
You must be signed in to change notification settings - Fork 164
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Boost.Build variants for UBSan-enabled builds #99
Conversation
a7c23fb
to
6761ee6
Compare
First build of this PR at https://travis-ci.org/boostorg/gil/builds/394728281 suggests that QuestionDo we really need to build both variants, |
what is the nature of the timeout ? Would it help to split builds up, so "release" and "debug" would be separate builds ? (Given that we discovered certain failures only with particular compiler flags (optimization, notably), I'd very much prefer to keep the coverage. If any, we should remove the debug builds. |
6761ee6
to
c5fc9b0
Compare
Not sure I get your question, but https://docs.travis-ci.com/user/customizing-the-build#Build-Timeouts
That is what we have been doing, and I proposed to merge the two variants into single build job.
No problem, I have reverted the merging of build variants and the build jobs coverage is back to the original, see https://travis-ci.org/boostorg/gil/builds/394879984
This is quite a curiosity. Also the latest build above shows that GCC 5 is blazing fast comparing to 6 and 7. Perhaps, with GCC 6 and 7 we generate more detailed warnings - I imagine, stdout/stderr I/O may slow things down. If I find a moment, I will look at the detailed logs and compare them. |
208614e
to
e0c188d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks great. Thanks for the effort !
14a7c20
to
8146981
Compare
Thanks for the review. To summary:
|
The build variants enable group of checks offered by clang UndefinedBehaviorSanitizer detector. Add sanitizers suppression file in .ci/blacklist.supp based on copy of the file from Boost.Beast. Update Travis CI: - Add .ci/build-and-test.sh script as handy proxy for b2 command. - Add build jobs for each of the three new UBSan variants. - Display COMPILER and VARIANT first as these two are most important details while inspecting the build matrix (TOOLSET can be derived from COMPILER).
8146981
to
4b46a48
Compare
(NOTE: Assigned to self - if accepted, I'd like to merge myself. Thanks.)
Description: what does this pull request do?
The build variants enable group of checks offered by clang
UndefinedBehaviorSanitizer detector.
Add sanitizers suppression file in
.ci/blacklist.supp
based on copy of the file from Boost.Beast.Update Travis CI:
details while inspecting the build matrix
(TOOLSET can be derived from COMPILER).
Tasklist
I've built the UBSan variants and there are issues - to be checked/fixed after this is merged.