Skip to content

Commit

Permalink
thrift: Define module-wide _POSIX_C_SOURCE feature test macro
Browse files Browse the repository at this point in the history
The Thrift library makes use of POSIX C functions such as ctime_r(), which
are not part of the ISO C standard.

This commit adds a Thrift module-wide `_POSIX_C_SOURCE` feature test macro
definition in order to ensure that the required POSIX C functions are
available when compiling the Thrift library.

Note that this was not caught earlier because Newlib and older versions of
Picolibc did not properly fence off some POSIX functions behind the feature
test macros.

Signed-off-by: Stephanos Ioannidis <[email protected]>
  • Loading branch information
stephanosio committed Oct 15, 2024
1 parent 210d2fa commit a97c4a5
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions modules/thrift/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -39,4 +39,7 @@ zephyr_library_sources_ifdef(CONFIG_THRIFT_SSL_SOCKET
# needed because std::iterator was deprecated with -std=c++17
zephyr_library_compile_options(-Wno-deprecated-declarations)

# needed for ctime_r
zephyr_library_compile_definitions(_POSIX_C_SOURCE=200809L)

endif(CONFIG_THRIFT)

0 comments on commit a97c4a5

Please sign in to comment.