Skip to content

Commit 93019c8

Browse files
pillo79soburi
authored andcommitted
loader: additional fixes for Arduino_JSON
Minor fixes for Arduino_JSON library compatibility: - '__assert_no_args' and 'exit' are actually libc symbols, so the guards prevented their export in certain situations. - _exit, stdin, stdout, stderr symbols are also exported to cover the dynamic link case. - an 'undefined reference to _ctype_' error occurred because the libc is compiled with -Os, while the sketches are NOT - this creates an issue because the size optimization auto-selects a different version of ctype functions in picolibc. -D_PICOLIBC_CTYPE_SMALL=1 forces the small version to be used. Note by committer: Only under the `loader` was picked. Signed-off-by: Luca Burelli <l.burelli@arduino.cc> Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
1 parent 1ad0eb9 commit 93019c8

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

loader/llext_exports.c

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,6 @@ FORCE_EXPORT_SYM(close);
195195
FORCE_EXPORT_SYM(accept);
196196
FORCE_EXPORT_SYM(bind);
197197
FORCE_EXPORT_SYM(listen);
198-
EXPORT_SYMBOL(exit);
199198
FORCE_EXPORT_SYM(inet_pton);
200199
FORCE_EXPORT_SYM(sendto);
201200
FORCE_EXPORT_SYM(recvfrom);
@@ -241,6 +240,12 @@ EXPORT_SYMBOL(cbvprintf);
241240
EXPORT_SYMBOL(vsnprintf);
242241
FORCE_EXPORT_SYM(abort);
243242
EXPORT_SYMBOL(sscanf);
243+
EXPORT_SYMBOL(exit);
244+
FORCE_EXPORT_SYM(_exit);
245+
FORCE_EXPORT_SYM(__assert_no_args);
246+
EXPORT_SYMBOL(stdin);
247+
EXPORT_SYMBOL(stdout);
248+
EXPORT_SYMBOL(stderr);
244249

245250
#if defined(CONFIG_RING_BUFFER)
246251
EXPORT_SYMBOL(ring_buf_get);
@@ -283,7 +288,6 @@ FORCE_EXPORT_SYM(__aeabi_dcmpge);
283288

284289
#if defined (CONFIG_CPP)
285290
FORCE_EXPORT_SYM(__cxa_pure_virtual);
286-
FORCE_EXPORT_SYM(__assert_no_args);
287291
#endif
288292

289293
#if defined(CONFIG_BOARD_ARDUINO_UNO_Q)

0 commit comments

Comments
 (0)