Since armv8-m now uses arm_fullcontextrestore instead of up_fullcontextrestore, _exit
should call arm_fullcontextrestore for armv8-m accordingly.
Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
Same as syslog/Make.defs to use #ifdef CONFIG_SYSLOG_RPMSG to build syslog_rpmsg.c
in which syslog_rpmsg_init defined.
Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
There is case as below:
When do testbuild under Linux host, such as './tools/configure.sh stmf4discovery:nsh',
arch/arm/src/board is a symlink to boards/arm/stm32/stm32f3discovery/src. Then do
'./tools/refresh.sh --silent stmf4discovery:nsh' after build, it would break the board
symlink with copydir.sh instead of link.sh since defconfig with Windows host config.
So call sethost.sh to restore BOARD_DIR. Or it results in 'make distclean' not correctly.
Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
Align the generated files name, so make distclean could also remove all nxfonts_bitmaps_*.c files, no
need to add one more extra DELFILE for nxfonts_tom-thumb-4x6.c.
Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
Sockets are created in two steps:
1. The socket is allocated, then
2. The socket is initialized.
In SMP mode, there is a possibility that a pthread executing one CPU may create a new task while a pthread on another CPU has allocated the socket but not yet initialized it. This commit updates the socket clone test to assure that the socket is both allocated and initailized.
Without the change, it is possible that uninitialized sockets could be cloned, leading to errors later in the newly started task.
In an older PR, the standard kconfig-tweak calls were replaced with sed edit. This is an incorrect change and results in invalid configurations. This change restores the use of kconfig-tweak and always generates correct configurations.
This change resolves issue #386
sed edits do not handle all of the dependencies correct and generates invalid configurations. Most defconfig files specify Linux by default, so you will only see the effect of the corruped configuration when sethost changes changes to a different configuration. Then, when 'make olddefconfig' is subsequentyly run, the corruption in the defconfig file is reflected by warnings such as:
$ tools/configure.sh -c stm32f4discovery:nsh
Copy files
Select CONFIG_HOST_WINDOWS=y
Select CONFIG_WINDOWS_CYGWIN=y
Refreshing...
.config:62:warning: override: reassigning to symbol HOST_WINDOWS
.config:62:warning: override: HOST_WINDOWS changes choice state
Those warnings are eliminated by this changed.
Tested by repeatedly doing:
tools/configure.sh -c stm32f4discovery:nsh
Commit 3b9efc95a2 introduced an error in the generation of include file paths. The logic that determined if cygpath should be called to create a Windows native path for the case of Cygwin using a native toolchain was incorrect. This corrects this warning:
./tools/configure.sh -c sim:nsh
$ make
<CUT>
make[1]: Entering directory '/home/btashton/apache/apps'
make[2]: Entering directory '/home/btashton/apache/apps/builtin'
./exec_builtin.c:54:10: fatal error: builtin/builtin.h: No such file or directory
54 | #include "builtin/builtin.h"
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
ERROR: cc failed: 1
command: cc -MT ./exec_builtin.home.btashton.apache.apps.builtin.o -M -Wall -Wstrict-prototypes -Wshadow -Wundef -g -fno-builtin -fno-common -I. -isystem /home/btashton/apache/nuttx/include -D__KERNEL__ -pipe -I C:\cygwin64\home\btashton\apache\apps\include ./exec_builtin.c
make[2]: *** [/home/btashton/apache/apps/Application.mk:224: .depend] Error 1
make[2]: Leaving directory '/home/btashton/apache/apps/builtin'
make[1]: *** [Makefile:67: /home/btashton/apache/apps/builtin_depend] Error 2
In this case a Cygwin POSIX toolchain is being used by the path in the CFLAGS to apps/include is incorrectly a Windows native path. This error is corrected by this change to tools/incdir.sh