# General configuration options

# Copyright (c) 2017 Intel Corporation
# SPDX-License-Identifier: Apache-2.0

menu "Native (POSIX) Architecture Options"
	depends on ARCH_POSIX

config ARCH
	default "posix"

config ARCH_POSIX_RECOMMENDED_STACK_SIZE
	int
	default 44 if 64BIT && STACK_SENTINEL
	default 40 if 64BIT
	default 28 if STACK_SENTINEL
	default 24
	help
	  In bytes, stack size for Zephyr threads meant only for the POSIX
	  architecture.
	  (In this architecture only part of the thread status is kept in the Zephyr
	  thread stack, the real stack is the native underlying pthread stack.
	  Therefore the allocated stack can be limited to this size)

config ARCH_POSIX_LIBFUZZER
	bool "Build fuzz test target"
	help
	  Build as an LLVM libfuzzer target. Requires
	  support from the toolchain (currently only clang works, and
	  only on native_sim[//64]), and should normally be used in
	  concert with some of CONFIG_ASAN/UBSAN/MSAN for validation.
	  The application needs to implement the
	  LLVMFuzzerTestOneInput() entry point, which runs in the host
	  environment "outside" the OS.  See Zephyr documentation and
	  sample and https://llvm.org/docs/LibFuzzer.html for more
	  information.

config ARCH_POSIX_TRAP_ON_FATAL
	bool "Raise a SIGTRAP on fatal error"
	help
	  Raise a SIGTRAP signal on fatal error before exiting.
	  This automatically suspends the target if a debugger is attached.

rsource "Kconfig.natsim_optional"

endmenu
