Skip to content

Commit ea77dd8

Browse files
authored
[libc] Include locale support in baremetal configuration (#127103)
Having locale is a requirement for C++ streams.
1 parent 8252e0e commit ea77dd8

File tree

6 files changed

+117
-0
lines changed

6 files changed

+117
-0
lines changed

libc/config/baremetal/aarch64/entrypoints.txt

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,50 @@ set(TARGET_LIBC_ENTRYPOINTS
2020
libc.src.ctype.tolower
2121
libc.src.ctype.toupper
2222

23+
# ctype.h entrypoints
24+
libc.src.ctype.isalnum_l
25+
libc.src.ctype.isalpha_l
26+
libc.src.ctype.isblank_l
27+
libc.src.ctype.iscntrl_l
28+
libc.src.ctype.isdigit_l
29+
libc.src.ctype.isgraph_l
30+
libc.src.ctype.islower_l
31+
libc.src.ctype.isprint_l
32+
libc.src.ctype.ispunct_l
33+
libc.src.ctype.isspace_l
34+
libc.src.ctype.isupper_l
35+
libc.src.ctype.isxdigit_l
36+
libc.src.ctype.tolower_l
37+
libc.src.ctype.toupper_l
38+
39+
# stdlib.h entrypoints
40+
libc.src.stdlib.strtod_l
41+
libc.src.stdlib.strtof_l
42+
libc.src.stdlib.strtol_l
43+
libc.src.stdlib.strtold_l
44+
libc.src.stdlib.strtoll_l
45+
libc.src.stdlib.strtoul_l
46+
libc.src.stdlib.strtoull_l
47+
48+
# string.h entrypoints
49+
libc.src.string.strcoll_l
50+
libc.src.string.strxfrm_l
51+
2352
# compiler entrypoints (no corresponding header)
2453
libc.src.compiler.__stack_chk_fail
2554

2655
# errno.h entrypoints
2756
libc.src.errno.errno
2857

58+
# locale.h entrypoints
59+
libc.src.locale.localeconv
60+
libc.src.locale.duplocale
61+
libc.src.locale.freelocale
62+
libc.src.locale.localeconv
63+
libc.src.locale.newlocale
64+
libc.src.locale.setlocale
65+
libc.src.locale.uselocale
66+
2967
# setjmp.h entrypoints
3068
libc.src.setjmp.longjmp
3169
libc.src.setjmp.setjmp

libc/config/baremetal/aarch64/headers.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ set(TARGET_PUBLIC_HEADERS
66
libc.include.fenv
77
libc.include.float
88
libc.include.inttypes
9+
libc.include.locale
910
libc.include.math
1011
libc.include.setjmp
1112
libc.include.stdfix

libc/config/baremetal/arm/entrypoints.txt

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,50 @@ set(TARGET_LIBC_ENTRYPOINTS
2020
libc.src.ctype.tolower
2121
libc.src.ctype.toupper
2222

23+
# ctype.h entrypoints
24+
libc.src.ctype.isalnum_l
25+
libc.src.ctype.isalpha_l
26+
libc.src.ctype.isblank_l
27+
libc.src.ctype.iscntrl_l
28+
libc.src.ctype.isdigit_l
29+
libc.src.ctype.isgraph_l
30+
libc.src.ctype.islower_l
31+
libc.src.ctype.isprint_l
32+
libc.src.ctype.ispunct_l
33+
libc.src.ctype.isspace_l
34+
libc.src.ctype.isupper_l
35+
libc.src.ctype.isxdigit_l
36+
libc.src.ctype.tolower_l
37+
libc.src.ctype.toupper_l
38+
39+
# stdlib.h entrypoints
40+
libc.src.stdlib.strtod_l
41+
libc.src.stdlib.strtof_l
42+
libc.src.stdlib.strtol_l
43+
libc.src.stdlib.strtold_l
44+
libc.src.stdlib.strtoll_l
45+
libc.src.stdlib.strtoul_l
46+
libc.src.stdlib.strtoull_l
47+
48+
# string.h entrypoints
49+
libc.src.string.strcoll_l
50+
libc.src.string.strxfrm_l
51+
2352
# compiler entrypoints (no corresponding header)
2453
libc.src.compiler.__stack_chk_fail
2554

2655
# errno.h entrypoints
2756
libc.src.errno.errno
2857

58+
# locale.h entrypoints
59+
libc.src.locale.localeconv
60+
libc.src.locale.duplocale
61+
libc.src.locale.freelocale
62+
libc.src.locale.localeconv
63+
libc.src.locale.newlocale
64+
libc.src.locale.setlocale
65+
libc.src.locale.uselocale
66+
2967
# setjmp.h entrypoints
3068
libc.src.setjmp.longjmp
3169
libc.src.setjmp.setjmp

libc/config/baremetal/arm/headers.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ set(TARGET_PUBLIC_HEADERS
66
libc.include.fenv
77
libc.include.float
88
libc.include.inttypes
9+
libc.include.locale
910
libc.include.math
1011
libc.include.setjmp
1112
libc.include.stdfix

libc/config/baremetal/riscv/entrypoints.txt

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,50 @@ set(TARGET_LIBC_ENTRYPOINTS
2020
libc.src.ctype.tolower
2121
libc.src.ctype.toupper
2222

23+
# ctype.h entrypoints
24+
libc.src.ctype.isalnum_l
25+
libc.src.ctype.isalpha_l
26+
libc.src.ctype.isblank_l
27+
libc.src.ctype.iscntrl_l
28+
libc.src.ctype.isdigit_l
29+
libc.src.ctype.isgraph_l
30+
libc.src.ctype.islower_l
31+
libc.src.ctype.isprint_l
32+
libc.src.ctype.ispunct_l
33+
libc.src.ctype.isspace_l
34+
libc.src.ctype.isupper_l
35+
libc.src.ctype.isxdigit_l
36+
libc.src.ctype.tolower_l
37+
libc.src.ctype.toupper_l
38+
39+
# stdlib.h entrypoints
40+
libc.src.stdlib.strtod_l
41+
libc.src.stdlib.strtof_l
42+
libc.src.stdlib.strtol_l
43+
libc.src.stdlib.strtold_l
44+
libc.src.stdlib.strtoll_l
45+
libc.src.stdlib.strtoul_l
46+
libc.src.stdlib.strtoull_l
47+
48+
# string.h entrypoints
49+
libc.src.string.strcoll_l
50+
libc.src.string.strxfrm_l
51+
2352
# compiler entrypoints (no corresponding header)
2453
libc.src.compiler.__stack_chk_fail
2554

2655
# errno.h entrypoints
2756
libc.src.errno.errno
2857

58+
# locale.h entrypoints
59+
libc.src.locale.localeconv
60+
libc.src.locale.duplocale
61+
libc.src.locale.freelocale
62+
libc.src.locale.localeconv
63+
libc.src.locale.newlocale
64+
libc.src.locale.setlocale
65+
libc.src.locale.uselocale
66+
2967
# string.h entrypoints
3068
libc.src.string.memccpy
3169
libc.src.string.memchr

libc/config/baremetal/riscv/headers.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ set(TARGET_PUBLIC_HEADERS
66
libc.include.fenv
77
libc.include.float
88
libc.include.inttypes
9+
libc.include.locale
910
libc.include.math
1011
libc.include.stdfix
1112
libc.include.stdint

0 commit comments

Comments
 (0)