Toggle navigation
Documentation
The friendly Operating System for the Internet of Things
features.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2022 Gunar Schorcht
3
*
4
* This file is subject to the terms and conditions of the GNU Lesser
5
* General Public License v2.1. See the file LICENSE in the top level
6
* directory for more details.
7
*/
8
9
#pragma once
10
24
#ifndef DOXYGEN
25
26
#ifdef __cplusplus
27
extern
"C"
{
28
#endif
29
30
#include_next <sys/features.h>
31
32
/*
33
* When using a GCC version with POSIX thread support enabled, as is the
34
* case with Espressif's precompiled toolchains, the `_POSIX_THREAD`
35
* definition has to be reverted to prevent the inclusion of newlib's
36
* POXIS header files in system headers to avoid compilation errors.
37
* The reason is that RIOT uses its own `pthread` implementation, but
38
* its type declarations are not fully compatible with those in
39
* `sys/_pthreadtypes.h`.
40
*/
41
#undef _POSIX_THREADS
42
43
/*
44
* To avoid type conflicts between the `pthread_rwlockattr_t` definition
45
* in RIOT's `pthread` implementation and newlibc's `sys/_pthreadtypes.h`,
46
* the macro `_POSIX_READER_WRITER_LOCKS` must be undefined.
47
*/
48
#undef _POSIX_READER_WRITER_LOCKS
49
50
#ifdef __cplusplus
51
}
52
#endif
53
54
#endif
/* DOXYGEN */
Generated on Fri Jun 20 2025 21:02:35 by
1.9.1