Toggle navigation
Documentation
The friendly Operating System for the Internet of Things
Loading...
Searching...
No Matches
features.h
Go to the documentation of this file.
1
/*
2
* SPDX-FileCopyrightText: 2022 Gunar Schorcht
3
* SPDX-License-Identifier: LGPL-2.1-only
4
*/
5
6
#pragma once
7
20
21
#ifndef DOXYGEN
22
23
#ifdef __cplusplus
24
extern
"C"
{
25
#endif
26
27
#include_next <sys/features.h>
28
29
/*
30
* When using a GCC version with POSIX thread support enabled, as is the
31
* case with Espressif's precompiled toolchains, the `_POSIX_THREAD`
32
* definition has to be reverted to prevent the inclusion of newlib's
33
* POXIS header files in system headers to avoid compilation errors.
34
* The reason is that RIOT uses its own `pthread` implementation, but
35
* its type declarations are not fully compatible with those in
36
* `sys/_pthreadtypes.h`.
37
*/
38
#undef _POSIX_THREADS
39
40
/*
41
* To avoid type conflicts between the `pthread_rwlockattr_t` definition
42
* in RIOT's `pthread` implementation and newlibc's `sys/_pthreadtypes.h`,
43
* the macro `_POSIX_READER_WRITER_LOCKS` must be undefined.
44
*/
45
#undef _POSIX_READER_WRITER_LOCKS
46
47
#ifdef __cplusplus
48
}
49
#endif
50
51
#endif
/* DOXYGEN */
Generated on Mon Sep 15 2025 13:46:10 by
1.13.2