Summary: | sys-devel/clang-common: uses deprecated _LIBCPP_ENABLE_ASSERTIONS (breaks cmake: The C++ compiler does not support C++11 (e.g. std::unique_ptr)) | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Alfred Wingate <parona> |
Component: | Current packages | Assignee: | LLVM support project <llvm> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | herrtimson, sam |
Priority: | Normal | Keywords: | PullRequest |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
See Also: |
https://github.com/gentoo/gentoo/pull/32361 https://github.com/gentoo/gentoo/pull/32367 https://bugs.gentoo.org/show_bug.cgi?id=851111 https://reviews.llvm.org/D159171 |
||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
dev-util/cmake-3.27.2 build log
CMakeError.log showing the failing check |
Description
Alfred Wingate
2023-08-13 10:15:52 UTC
Created attachment 867779 [details]
dev-util/cmake-3.27.2 build log
Created attachment 867780 [details]
CMakeError.log showing the failing check
We need to update clang-common. Thanks! I'll change it to _LIBCPP_ENABLE_HARDENED_MODE later. Yep, workaround of course is -Wno-#warnings The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1dd3378347f15c27b82237443f3a4825b4e70b3d commit 1dd3378347f15c27b82237443f3a4825b4e70b3d Author: Sam James <sam@gentoo.org> AuthorDate: 2023-08-17 03:17:05 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2023-08-18 01:30:15 +0000 toolchain-funcs.eclass: tc-enables-fortify-source: update for newer libcxx Newer libcxx uses _LIBCPP_ENABLE_HARDENED_MODE instead of _LIBCPP_ENABLE_ASSERTIONS which is now deprecated. Bug: https://bugs.gentoo.org/912223 Signed-off-by: Sam James <sam@gentoo.org> eclass/toolchain-funcs.eclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=84bffb47c84bc57fbbd409a72e5ae3d1cdb8cf9e commit 84bffb47c84bc57fbbd409a72e5ae3d1cdb8cf9e Author: Sam James <sam@gentoo.org> AuthorDate: 2023-08-18 02:02:18 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2023-08-18 09:22:31 +0000 sys-devel/clang-common: update for newer libcxx Newer libcxx (>=17) uses _LIBCPP_ENABLE_HARDENED_MODE instead of _LIBCPP_ENABLE_ASSERTIONS which is now deprecated. Closes: https://bugs.gentoo.org/912223 Signed-off-by: Sam James <sam@gentoo.org> sys-devel/clang-common/clang-common-17.0.0.9999.ebuild | 3 ++- ...lang-common-17.0.0_rc2.ebuild => clang-common-17.0.0_rc2-r1.ebuild} | 3 ++- sys-devel/clang-common/clang-common-18.0.0.9999.ebuild | 3 ++- sys-devel/clang-common/clang-common-18.0.0_pre20230803.ebuild | 3 ++- sys-devel/clang-common/clang-common-18.0.0_pre20230810.ebuild | 3 ++- 5 files changed, 10 insertions(+), 5 deletions(-) Unfortunately, we have to roll this back. See https://reviews.llvm.org/D159171. The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=01362dba1be773ca4782e753a5e63d68da43787d commit 01362dba1be773ca4782e753a5e63d68da43787d Author: Sam James <sam@gentoo.org> AuthorDate: 2023-09-19 09:12:36 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2023-09-19 09:12:36 +0000 sys-devel/clang-common: adapt to 17 final (hardened mode); disable F_S for freestanding * In 84bffb47c84bc57fbbd409a72e5ae3d1cdb8cf9e, we changed from -D_LIBCPP_ENABLE_ASSERTIONS=1 to -D_LIBCPP_ENABLE_HARDENED_MODE=1. Unfortunately, LLVM upstream has reverted last minute back to _ENABLE_ASSERTIONS in https://reviews.llvm.org/D159171. This didn't land in any RCs. Go back for 17.x (but not 18.x). * Disable F_S for freestanding (thanks ceamac!) as it might emit calls to e.g. _memcpy_chk. Closes: https://bugs.gentoo.org/912223 Signed-off-by: Sam James <sam@gentoo.org> sys-devel/clang-common/clang-common-17.0.0.9999.ebuild | 11 +++++++++-- sys-devel/clang-common/clang-common-18.0.0.9999.ebuild | 9 ++++++++- 2 files changed, 17 insertions(+), 3 deletions(-) |