-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
boost: fix with_stacktrace_backtrace for Macos & MinGW + bump dependencies #5577
boost: fix with_stacktrace_backtrace for Macos & MinGW + bump dependencies #5577
Conversation
don't add dependency to libunwind
I detected other pull requests that are modifying boost/all recipe:
This message is automatically generated by https://github.com/ericLemanissier/conan-center-conflicting-prs so don't hesitate to report issues/improvements there. |
dl is already added if Linux of FreeBSD to stacktrace_backtrace component
It still fails with MinGW on Windows out of the box because default value of |
This comment has been minimized.
This comment has been minimized.
Interesting, now we can see that |
Looks like this error got triggered before at #5420 (comment) but I didn't look into it because it went away. This is the culprit: https://github.com/boostorg/stacktrace/blob/b37e0d8e9f9613813534b6765559bdec693f34d5/include/boost/stacktrace/detail/libbacktrace_impls.hpp#L95-L101 The failed logs contain:
It looks like my fix at the top of the build method does not apply/work on older boost releases... |
Yes, tools.replace_in_file with strict=False is bad bad bad ;) |
No wait, the patch is ok, but is currently only applied for |
Oh I see, there are 2 successive patches, it's not obvious to understand what happen. The first 2 ones seem to be useless, these patterns don't exist. |
Don't know whether it would make it easier to understand, but a regex could do it in one line 😄 tools.replace_regex_in_file(r"(thread_local|static __thread)", r"/*\1*/") |
I mean, I didn't understand why there was first a patch to replace |
That was one of the comments on my earlier review. |
There should be a way to patch those lines in libbacktrace_impls.hpp with macros. |
There is |
Maybe this in tools.replace_in_file(os.path.join(self.source_folder, self._source_subfolder, "boost", "stacktrace", "detail", "libbacktrace_impls.hpp"),
"# ifndef BOOST_NO_CXX11_THREAD_LOCAL",
"# if defined(__APPLE__) || (defined(__clang__) && __clang_major__ < 6)\n# elif !defined(BOOST_NO_CXX11_THREAD_LOCAL)") |
This comment has been minimized.
This comment has been minimized.
off-topic: any reason why installation is done in |
I didn't investigate but I think because configuration + build + install is tightly coupled in boost.build (b2). It would be nice to have the boost recipe behaving normal. |
Seems to be properly split in https://github.com/msys2/MINGW-packages/blob/master/mingw-w64-boost/PKGBUILD, I'll try to split those steps. |
But first fix this issue in test_package on macOS:
|
This comment has been minimized.
This comment has been minimized.
Well, waiting for #5575. I'm surprised to see that CI uses |
This comment has been minimized.
This comment has been minimized.
All green in build 8 (
|
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.
The logs look fine.
Thanks for fixing this up.
Thanks 👍 |
…W + bump dependencies * bump zstd * no os.rename * allow to build on Macos out of the box don't add dependency to libunwind * remove duplicated dl system lib dl is already added if Linux of FreeBSD to stacktrace_backtrace component * no stacktrace_addr2line on Windows it requires POSIX system: https://www.boost.org/doc/libs/develop/doc/html/stacktrace/configuration_and_build.html * completly drop stacktrace_backtrace on Windows stacktrace_backtrace doesn't seem to be built with MinGW, even if requested with backtrace lib. * fix system libs for stacktrace components on Windows see https://www.boost.org/doc/libs/develop/doc/html/stacktrace/configuration_and_build.html * temporary hack for stacktrace with apple-clang * add interface definition for stacktrace on Macos
Specify library name and version: lib/1.0
closes #5556
closes #5571
conan-center hook activated.