1# Copyright (c) 2024 Tenstorrent AI ULC
2#
3# SPDX-License-Identifier: Apache-2.0
4
5# The following list of Kconfig options are based on standard POSIX Subprofiling Option Groups
6# and may be used to override Zephyr's internal POSIX implementations. This facility is mainly
7# for toolchain integrators, C library maintainers, etc, and is not intended for general users.
8#
9# Use these features with caution as doing so might introduce unwanted, unexpected, or undefined
10# behavior.
11#
12# POSIX Subprofiling Option Groups are defined at the link below:
13#
14# https://pubs.opengroup.org/onlinepubs/9699919799/xrat/V4_subprofiles.html
15
16config TC_PROVIDES_POSIX_ASYNCHRONOUS_IO
17	bool
18
19config TC_PROVIDES_POSIX_BARRIERS
20	bool
21
22config TC_PROVIDES_POSIX_C_LANG_JUMP
23	bool
24
25config TC_PROVIDES_POSIX_C_LANG_MATH
26	bool
27
28config TC_PROVIDES_POSIX_C_LANG_SUPPORT
29	bool
30
31config TC_PROVIDES_POSIX_C_LANG_SUPPORT_R
32	bool
33
34config TC_PROVIDES_POSIX_C_LANG_WIDE_CHAR
35	bool
36
37config TC_PROVIDES_POSIX_C_LANG_WIDE_CHAR_EXT
38	bool
39
40config TC_PROVIDES_POSIX_C_LIB_EXT
41	bool
42
43config TC_PROVIDES_POSIX_CLOCK_SELECTION
44	bool
45
46config TC_PROVIDES_POSIX_DEVICE_IO
47	bool
48
49config TC_PROVIDES_POSIX_DEVICE_IO_EXT
50	bool
51
52config TC_PROVIDES_POSIX_DEVICE_SPECIFIC
53	bool
54
55config TC_PROVIDES_POSIX_DEVICE_SPECIFIC_R
56	bool
57
58config TC_PROVIDES_POSIX_DYNAMIC_LINKING
59	bool
60
61config TC_PROVIDES_POSIX_FD_MGMT
62	bool
63
64config TC_PROVIDES_POSIX_FIFO
65	bool
66
67config TC_PROVIDES_POSIX_FIFO_FD
68	bool
69
70config TC_PROVIDES_POSIX_FILE_ATTRIBUTES
71	bool
72
73config TC_PROVIDES_POSIX_FILE_ATTRIBUTES_FD
74	bool
75
76config TC_PROVIDES_POSIX_FILE_LOCKING
77	bool
78
79config TC_PROVIDES_POSIX_FILE_SYSTEM
80	bool
81
82config TC_PROVIDES_POSIX_FILE_SYSTEM_EXT
83	bool
84
85config TC_PROVIDES_POSIX_FILE_SYSTEM_FD
86	bool
87
88config TC_PROVIDES_POSIX_FILE_SYSTEM_GLOB
89	bool
90
91config TC_PROVIDES_POSIX_FILE_SYSTEM_R
92	bool
93
94config TC_PROVIDES_POSIX_I18N
95	bool
96
97config TC_PROVIDES_POSIX_JOB_CONTROL
98	bool
99
100config TC_PROVIDES_POSIX_MAPPED_FILES
101	bool
102
103config TC_PROVIDES_POSIX_MEMORY_PROTECTION
104	bool
105
106config TC_PROVIDES_POSIX_MULTI_CONCURRENT_LOCALES
107	bool
108
109config TC_PROVIDES_POSIX_MULTI_PROCESS
110	bool
111
112config TC_PROVIDES_POSIX_MULTI_PROCESS_FD
113	bool
114
115config TC_PROVIDES_POSIX_NETWORKING
116	bool
117
118config TC_PROVIDES_POSIX_PIPE
119	bool
120
121config TC_PROVIDES_POSIX_ROBUST_MUTEXES
122	bool
123
124config TC_PROVIDES_POSIX_REALTIME_SIGNALS
125	bool
126
127config TC_PROVIDES_POSIX_REGEXP
128	bool
129
130# Note: the Option is _POSIX_READER_WRITER_LOCKS, while the Option Group is POSIX_RW_LOCKS
131# We have opted to use POSIX_READER_WRITER_LOCKS here to match the Option name.
132config TC_PROVIDES_POSIX_READER_WRITER_LOCKS
133	bool
134
135config TC_PROVIDES_POSIX_SEMAPHORES
136	bool
137
138config TC_PROVIDES_POSIX_SHARED_MEMORY_OBJECTS
139	bool
140
141config TC_PROVIDES_POSIX_SHELL_FUNC
142	bool
143
144config TC_PROVIDES_POSIX_SIGNAL_JUMP
145	bool
146
147config TC_PROVIDES_POSIX_SIGNALS
148	bool
149
150config TC_PROVIDES_POSIX_SIGNALS_EXT
151	bool
152
153config TC_PROVIDES_POSIX_SINGLE_PROCESS
154	bool
155
156config TC_PROVIDES_POSIX_SPIN_LOCKS
157	bool
158
159config TC_PROVIDES_POSIX_SYMBOLIC_LINKS
160	bool
161
162config TC_PROVIDES_POSIX_SYMBOLIC_LINKS_FD
163	bool
164
165config TC_PROVIDES_POSIX_SYSTEM_DATABASE
166	bool
167
168config TC_PROVIDES_POSIX_SYSTEM_DATABASE_R
169	bool
170
171# Note: the Option is _POSIX_THREADS, while the Option Group is POSIX_THREADS_BASE.
172# We have opted to use POSIX_THREADS here to match the Option name.
173config TC_PROVIDES_POSIX_THREADS
174	bool
175
176config TC_PROVIDES_POSIX_THREADS_EXT
177	bool
178
179config TC_PROVIDES_POSIX_TIMERS
180	bool
181
182config TC_PROVIDES_POSIX_USER_GROUPS
183	bool
184
185config TC_PROVIDES_POSIX_USER_GROUPS_R
186	bool
187
188config TC_PROVIDES_POSIX_WIDE_CHAR_DEVICE_IO
189	bool
190
191config TC_PROVIDES_XSI_C_LANG_SUPPORT
192	bool
193
194config TC_PROVIDES_XSI_DBM
195	bool
196
197config TC_PROVIDES_XSI_DEVICE_IO
198	bool
199
200config TC_PROVIDES_XSI_DEVICE_SPECIFIC
201	bool
202
203config TC_PROVIDES_XSI_FILE_SYSTEM
204	bool
205
206config TC_PROVIDES_XSI_IPC
207	bool
208
209config TC_PROVIDES_XSI_JUMP
210	bool
211
212config TC_PROVIDES_XSI_MATH
213	bool
214
215config TC_PROVIDES_XSI_MULTI_PROCESS
216	bool
217
218config TC_PROVIDES_XSI_SIGNALS
219	bool
220
221config TC_PROVIDES_XSI_SINGLE_PROCESS
222	bool
223
224config TC_PROVIDES_XSI_SYSTEM_DATABASE
225	bool
226
227config TC_PROVIDES_XSI_SYSTEM_LOGGING
228	bool
229
230config TC_PROVIDES_XSI_THREADS_EXT
231	bool
232
233config TC_PROVIDES_XSI_TIMERS
234	bool
235
236config TC_PROVIDES_XSI_USER_GROUPS
237	bool
238
239config TC_PROVIDES_XSI_WIDE_CHAR
240	bool
241