Open
Description
This issue describes the future plans for the C++ support in the Zephyr RTOS.
Tasks
- Unify C++ source and header file extensions (Unify C++ source and header file extensions #44196)
- Establish C++ coding guidelines (Establish C++ coding guidelines #45195)
- Refactor C++ support in Zephyr (Toolchain C++ headers can be included when libstdc++ is not selected #36644 (comment))
- Add native Zephyr support in the libstdc++ (Add Zephyr-specific target for toolchain components sdk-ng#350)
- Add comprehensive C++ library testsuite
- shall test the functional requirements of all supported C++ libraries (mainly libstdc++ for now) to ensure that the C++ library meets the Zephyr expectations.
- shall have common codebase for testing different C++ libraries (focus on testing standard C++ features).
- Add
std::mutex
,std::condition_variable
,std::counting_semaphore
, andstd::binary_semaphore
support (via gthr-posix.h, see below) - Add
std::thread
support (via gthr-posix.h, cpp: thread: support for std::thread, std::mutex, std::condition_variable, etc #43729) - Add
std::async
andstd::future
support C++ std::async and std::future support #31559
Resources
- Issue describing the status quo of the C++ support in Zephyr: C++ support in Zephyr #31281