Skip to content

Commit bec8530

Browse files
stephanosiogalak
authored andcommitted
newlib: Enable multithread build
This commit sets `CT_LIBC_NEWLIB_MULTITHREAD=y` and `CT_LIBC_NEWLIB_NANO_MULTITHREAD=y` in order to enable multithread build of newlib (i.e. build without `__SINGLE_THREAD__` defined). This option must be specified to support newlib multithreading in the Zephyr RTOS. When these configs are not set to `y`, `--disable-newlib-multithread` is specified during newlib configuration. For more details, see #343. Signed-off-by: Stephanos Ioannidis <[email protected]>
1 parent aaa5f95 commit bec8530

19 files changed

+39
-36
lines changed

configs/arc.config

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ CT_LIBC_NEWLIB_IO_FLOAT=y
2121
CT_LIBC_NEWLIB_DISABLE_SUPPLIED_SYSCALLS=y
2222
CT_LIBC_NEWLIB_GLOBAL_ATEXIT=y
2323
CT_LIBC_NEWLIB_LITE_EXIT=y
24-
# CT_LIBC_NEWLIB_MULTITHREAD is not set
24+
CT_LIBC_NEWLIB_MULTITHREAD=y
2525
CT_LIBC_NEWLIB_RETARGETABLE_LOCKING=y
2626
# CT_LIBC_NEWLIB_WIDE_ORIENT is not set
2727
# CT_LIBC_NEWLIB_NANO_MALLOC is not set
@@ -54,7 +54,7 @@ CT_LIBC_NEWLIB_NANO_ATEXIT_DYNAMIC_ALLOC=y
5454
CT_LIBC_NEWLIB_NANO_GLOBAL_ATEXIT=y
5555
CT_LIBC_NEWLIB_NANO_LITE_EXIT=y
5656
CT_LIBC_NEWLIB_NANO_REENT_SMALL=y
57-
# CT_LIBC_NEWLIB_NANO_MULTITHREAD is not set
57+
CT_LIBC_NEWLIB_NANO_MULTITHREAD=y
5858
CT_LIBC_NEWLIB_NANO_RETARGETABLE_LOCKING=y
5959
CT_LIBC_NEWLIB_NANO_EXTRA_SECTIONS=y
6060
# CT_LIBC_NEWLIB_NANO_WIDE_ORIENT is not set

configs/arc64.config

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ CT_LIBC_NEWLIB_IO_FLOAT=y
2121
CT_LIBC_NEWLIB_DISABLE_SUPPLIED_SYSCALLS=y
2222
CT_LIBC_NEWLIB_GLOBAL_ATEXIT=y
2323
CT_LIBC_NEWLIB_LITE_EXIT=y
24-
# CT_LIBC_NEWLIB_MULTITHREAD is not set
24+
CT_LIBC_NEWLIB_MULTITHREAD=y
2525
CT_LIBC_NEWLIB_RETARGETABLE_LOCKING=y
2626
# CT_LIBC_NEWLIB_WIDE_ORIENT is not set
2727
# CT_LIBC_NEWLIB_NANO_MALLOC is not set
@@ -50,7 +50,7 @@ CT_LIBC_NEWLIB_NANO_ATEXIT_DYNAMIC_ALLOC=y
5050
CT_LIBC_NEWLIB_NANO_GLOBAL_ATEXIT=y
5151
CT_LIBC_NEWLIB_NANO_LITE_EXIT=y
5252
CT_LIBC_NEWLIB_NANO_REENT_SMALL=y
53-
# CT_LIBC_NEWLIB_NANO_MULTITHREAD is not set
53+
CT_LIBC_NEWLIB_NANO_MULTITHREAD=y
5454
CT_LIBC_NEWLIB_NANO_RETARGETABLE_LOCKING=y
5555
CT_LIBC_NEWLIB_NANO_EXTRA_SECTIONS=y
5656
# CT_LIBC_NEWLIB_NANO_WIDE_ORIENT is not set

configs/arm.config

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ CT_LIBC_NEWLIB_IO_FLOAT=y
2121
CT_LIBC_NEWLIB_DISABLE_SUPPLIED_SYSCALLS=y
2222
CT_LIBC_NEWLIB_GLOBAL_ATEXIT=y
2323
CT_LIBC_NEWLIB_LITE_EXIT=y
24-
# CT_LIBC_NEWLIB_MULTITHREAD is not set
24+
CT_LIBC_NEWLIB_MULTITHREAD=y
2525
CT_LIBC_NEWLIB_RETARGETABLE_LOCKING=y
2626
# CT_LIBC_NEWLIB_WIDE_ORIENT is not set
2727
# CT_LIBC_NEWLIB_NANO_MALLOC is not set
@@ -55,7 +55,7 @@ CT_LIBC_NEWLIB_NANO_ATEXIT_DYNAMIC_ALLOC=y
5555
CT_LIBC_NEWLIB_NANO_GLOBAL_ATEXIT=y
5656
CT_LIBC_NEWLIB_NANO_LITE_EXIT=y
5757
CT_LIBC_NEWLIB_NANO_REENT_SMALL=y
58-
# CT_LIBC_NEWLIB_NANO_MULTITHREAD is not set
58+
CT_LIBC_NEWLIB_NANO_MULTITHREAD=y
5959
CT_LIBC_NEWLIB_NANO_RETARGETABLE_LOCKING=y
6060
CT_LIBC_NEWLIB_NANO_EXTRA_SECTIONS=y
6161
# CT_LIBC_NEWLIB_NANO_WIDE_ORIENT is not set

configs/arm64.config

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ CT_LIBC_NEWLIB_IO_FLOAT=y
2121
CT_LIBC_NEWLIB_DISABLE_SUPPLIED_SYSCALLS=y
2222
CT_LIBC_NEWLIB_GLOBAL_ATEXIT=y
2323
CT_LIBC_NEWLIB_LITE_EXIT=y
24-
# CT_LIBC_NEWLIB_MULTITHREAD is not set
24+
CT_LIBC_NEWLIB_MULTITHREAD=y
2525
CT_LIBC_NEWLIB_RETARGETABLE_LOCKING=y
2626
# CT_LIBC_NEWLIB_WIDE_ORIENT is not set
2727
# CT_LIBC_NEWLIB_NANO_MALLOC is not set
@@ -55,7 +55,7 @@ CT_LIBC_NEWLIB_NANO_ATEXIT_DYNAMIC_ALLOC=y
5555
CT_LIBC_NEWLIB_NANO_GLOBAL_ATEXIT=y
5656
CT_LIBC_NEWLIB_NANO_LITE_EXIT=y
5757
CT_LIBC_NEWLIB_NANO_REENT_SMALL=y
58-
# CT_LIBC_NEWLIB_NANO_MULTITHREAD is not set
58+
CT_LIBC_NEWLIB_NANO_MULTITHREAD=y
5959
CT_LIBC_NEWLIB_NANO_RETARGETABLE_LOCKING=y
6060
CT_LIBC_NEWLIB_NANO_EXTRA_SECTIONS=y
6161
# CT_LIBC_NEWLIB_NANO_WIDE_ORIENT is not set

configs/i586.config

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ CT_LIBC_NEWLIB_IO_FLOAT=y
2222
CT_LIBC_NEWLIB_DISABLE_SUPPLIED_SYSCALLS=y
2323
CT_LIBC_NEWLIB_GLOBAL_ATEXIT=y
2424
CT_LIBC_NEWLIB_LITE_EXIT=y
25-
# CT_LIBC_NEWLIB_MULTITHREAD is not set
25+
CT_LIBC_NEWLIB_MULTITHREAD=y
2626
CT_LIBC_NEWLIB_RETARGETABLE_LOCKING=y
2727
# CT_LIBC_NEWLIB_WIDE_ORIENT is not set
2828
# CT_LIBC_NEWLIB_NANO_MALLOC is not set
@@ -55,7 +55,7 @@ CT_LIBC_NEWLIB_NANO_ATEXIT_DYNAMIC_ALLOC=y
5555
CT_LIBC_NEWLIB_NANO_GLOBAL_ATEXIT=y
5656
CT_LIBC_NEWLIB_NANO_LITE_EXIT=y
5757
CT_LIBC_NEWLIB_NANO_REENT_SMALL=y
58-
# CT_LIBC_NEWLIB_NANO_MULTITHREAD is not set
58+
CT_LIBC_NEWLIB_NANO_MULTITHREAD=y
5959
CT_LIBC_NEWLIB_NANO_RETARGETABLE_LOCKING=y
6060
CT_LIBC_NEWLIB_NANO_EXTRA_SECTIONS=y
6161
# CT_LIBC_NEWLIB_NANO_WIDE_ORIENT is not set

configs/iamcu.config

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ CT_LIBC_NEWLIB_IO_FLOAT=y
2222
CT_LIBC_NEWLIB_DISABLE_SUPPLIED_SYSCALLS=y
2323
CT_LIBC_NEWLIB_GLOBAL_ATEXIT=y
2424
CT_LIBC_NEWLIB_LITE_EXIT=y
25-
# CT_LIBC_NEWLIB_MULTITHREAD is not set
25+
CT_LIBC_NEWLIB_MULTITHREAD=y
2626
CT_LIBC_NEWLIB_RETARGETABLE_LOCKING=y
2727
# CT_LIBC_NEWLIB_WIDE_ORIENT is not set
2828
# CT_LIBC_NEWLIB_NANO_MALLOC is not set
@@ -55,7 +55,7 @@ CT_LIBC_NEWLIB_NANO_ATEXIT_DYNAMIC_ALLOC=y
5555
CT_LIBC_NEWLIB_NANO_GLOBAL_ATEXIT=y
5656
CT_LIBC_NEWLIB_NANO_LITE_EXIT=y
5757
CT_LIBC_NEWLIB_NANO_REENT_SMALL=y
58-
# CT_LIBC_NEWLIB_NANO_MULTITHREAD is not set
58+
CT_LIBC_NEWLIB_NANO_MULTITHREAD=y
5959
CT_LIBC_NEWLIB_NANO_RETARGETABLE_LOCKING=y
6060
CT_LIBC_NEWLIB_NANO_EXTRA_SECTIONS=y
6161
# CT_LIBC_NEWLIB_NANO_WIDE_ORIENT is not set

configs/mips.config

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ CT_LIBC_NEWLIB_IO_FLOAT=y
2020
CT_LIBC_NEWLIB_DISABLE_SUPPLIED_SYSCALLS=y
2121
CT_LIBC_NEWLIB_GLOBAL_ATEXIT=y
2222
CT_LIBC_NEWLIB_LITE_EXIT=y
23-
# CT_LIBC_NEWLIB_MULTITHREAD is not set
23+
CT_LIBC_NEWLIB_MULTITHREAD=y
2424
CT_LIBC_NEWLIB_RETARGETABLE_LOCKING=y
2525
# CT_LIBC_NEWLIB_WIDE_ORIENT is not set
2626
# CT_LIBC_NEWLIB_NANO_MALLOC is not set
@@ -53,7 +53,7 @@ CT_LIBC_NEWLIB_NANO_ATEXIT_DYNAMIC_ALLOC=y
5353
CT_LIBC_NEWLIB_NANO_GLOBAL_ATEXIT=y
5454
CT_LIBC_NEWLIB_NANO_LITE_EXIT=y
5555
CT_LIBC_NEWLIB_NANO_REENT_SMALL=y
56-
# CT_LIBC_NEWLIB_NANO_MULTITHREAD is not set
56+
CT_LIBC_NEWLIB_NANO_MULTITHREAD=y
5757
CT_LIBC_NEWLIB_NANO_RETARGETABLE_LOCKING=y
5858
CT_LIBC_NEWLIB_NANO_EXTRA_SECTIONS=y
5959
# CT_LIBC_NEWLIB_NANO_WIDE_ORIENT is not set

configs/nios2.config

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ CT_LIBC_NEWLIB_IO_FLOAT=y
2121
CT_LIBC_NEWLIB_DISABLE_SUPPLIED_SYSCALLS=y
2222
CT_LIBC_NEWLIB_GLOBAL_ATEXIT=y
2323
CT_LIBC_NEWLIB_LITE_EXIT=y
24-
# CT_LIBC_NEWLIB_MULTITHREAD is not set
24+
CT_LIBC_NEWLIB_MULTITHREAD=y
2525
CT_LIBC_NEWLIB_RETARGETABLE_LOCKING=y
2626
# CT_LIBC_NEWLIB_WIDE_ORIENT is not set
2727
# CT_LIBC_NEWLIB_NANO_MALLOC is not set
@@ -54,7 +54,7 @@ CT_LIBC_NEWLIB_NANO_ATEXIT_DYNAMIC_ALLOC=y
5454
CT_LIBC_NEWLIB_NANO_GLOBAL_ATEXIT=y
5555
CT_LIBC_NEWLIB_NANO_LITE_EXIT=y
5656
CT_LIBC_NEWLIB_NANO_REENT_SMALL=y
57-
# CT_LIBC_NEWLIB_NANO_MULTITHREAD is not set
57+
CT_LIBC_NEWLIB_NANO_MULTITHREAD=y
5858
CT_LIBC_NEWLIB_NANO_RETARGETABLE_LOCKING=y
5959
CT_LIBC_NEWLIB_NANO_EXTRA_SECTIONS=y
6060
# CT_LIBC_NEWLIB_NANO_WIDE_ORIENT is not set

configs/riscv64.config

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ CT_LIBC_NEWLIB_IO_FLOAT=y
2323
CT_LIBC_NEWLIB_DISABLE_SUPPLIED_SYSCALLS=y
2424
CT_LIBC_NEWLIB_GLOBAL_ATEXIT=y
2525
CT_LIBC_NEWLIB_LITE_EXIT=y
26-
# CT_LIBC_NEWLIB_MULTITHREAD is not set
26+
CT_LIBC_NEWLIB_MULTITHREAD=y
2727
CT_LIBC_NEWLIB_RETARGETABLE_LOCKING=y
2828
# CT_LIBC_NEWLIB_WIDE_ORIENT is not set
2929
# CT_LIBC_NEWLIB_NANO_MALLOC is not set
@@ -56,7 +56,7 @@ CT_LIBC_NEWLIB_NANO_ATEXIT_DYNAMIC_ALLOC=y
5656
CT_LIBC_NEWLIB_NANO_GLOBAL_ATEXIT=y
5757
CT_LIBC_NEWLIB_NANO_LITE_EXIT=y
5858
CT_LIBC_NEWLIB_NANO_REENT_SMALL=y
59-
# CT_LIBC_NEWLIB_NANO_MULTITHREAD is not set
59+
CT_LIBC_NEWLIB_NANO_MULTITHREAD=y
6060
CT_LIBC_NEWLIB_NANO_RETARGETABLE_LOCKING=y
6161
CT_LIBC_NEWLIB_NANO_EXTRA_SECTIONS=y
6262
# CT_LIBC_NEWLIB_NANO_WIDE_ORIENT is not set

configs/sparc.config

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ CT_LIBC_NEWLIB_IO_FLOAT=y
2020
CT_LIBC_NEWLIB_DISABLE_SUPPLIED_SYSCALLS=y
2121
CT_LIBC_NEWLIB_GLOBAL_ATEXIT=y
2222
CT_LIBC_NEWLIB_LITE_EXIT=y
23-
# CT_LIBC_NEWLIB_MULTITHREAD is not set
23+
CT_LIBC_NEWLIB_MULTITHREAD=y
2424
CT_LIBC_NEWLIB_RETARGETABLE_LOCKING=y
2525
# CT_LIBC_NEWLIB_WIDE_ORIENT is not set
2626
# CT_LIBC_NEWLIB_NANO_MALLOC is not set
@@ -53,7 +53,7 @@ CT_LIBC_NEWLIB_NANO_ATEXIT_DYNAMIC_ALLOC=y
5353
CT_LIBC_NEWLIB_NANO_GLOBAL_ATEXIT=y
5454
CT_LIBC_NEWLIB_NANO_LITE_EXIT=y
5555
CT_LIBC_NEWLIB_NANO_REENT_SMALL=y
56-
# CT_LIBC_NEWLIB_NANO_MULTITHREAD is not set
56+
CT_LIBC_NEWLIB_NANO_MULTITHREAD=y
5757
CT_LIBC_NEWLIB_NANO_RETARGETABLE_LOCKING=y
5858
CT_LIBC_NEWLIB_NANO_EXTRA_SECTIONS=y
5959
# CT_LIBC_NEWLIB_NANO_WIDE_ORIENT is not set

0 commit comments

Comments
 (0)