Change SIM boards that uses libcxx to use Clang.#17850
Change SIM boards that uses libcxx to use Clang.#17850Barto22 wants to merge 8 commits intoapache:masterfrom
Conversation
This commit will change toolchain in SIM boards that uses Libcxx to use clang because GCC < 15 have lack of features needed for latest LLVM libcxx and libcxxabi. Signed-off-by: Bartosz <bartol2205@gmail.com>
raiden00pl
left a comment
There was a problem hiding this comment.
this way you break the test env for all users who have gcc-15 support on their hosts and don't use clang which I think is the default behavior for nuttx users. If you want to fix errors in CI, you should change the compiler in tools/ci/testlist/sim-XX.dat like its done for example here:
nuttx/tools/ci/testlist/arm-04.dat
Line 11 in a938926
This commit will add clang toolchain only for CI builds. Signed-off-by: Bartosz <bartol2205@gmail.com>
Done |
Revert changes in scripts. Signed-off-by: Bartosz <bartol2205@gmail.com>
Revert formatting. Signed-off-by: Bartosz <bartol2205@gmail.com>
|
@Barto22 please sqaush your intermediate patch. |
Style fixes. Signed-off-by: Bartosz <bartol2205@gmail.com>
Revert formatting. Signed-off-by: Bartosz <bartol2205@gmail.com>
Signed-off-by: Bartosz <bartol2205@gmail.com>
Revert formatting. Signed-off-by: Bartosz <bartol2205@gmail.com>
This commit switches SIM board builds from GCC to Clang and migrates
the C++ runtime to LLVM's libc++ and libc++abi. This PR is related to: #17826 and #17849
Summary
Recent C++ code additions require features provided by modern C++ runtimes
and standard libraries. The GNU toolchain versions currently available in CI
and common Linux distributions (GCC < 15) lack several required C++ standard
library capabilities needed by the latest libc++/libc++abi.
To ensure continued progress on C++ support in NuttX, this change:
This brings the SIM toolchain in line with modern C++ requirements and avoids
blocking future features on GCC version availability.
Impact
locally may need Clang + libc++ installed
Testing
Test matrix executed across Linux CI:
ostestexecuted successfully under the SIM targetHost: GitHub Actions CI (Ubuntu Linux)
Compiler: Clang
21(LLVM libc++21.1.8)Prior GCC versions tested (< 15) confirmed incompatibility with modern libc++
No regressions observed in SIM functionality.