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

config POSIX_CLOCK
	bool "clock and sleep APIs"
	default y if POSIX_API
	imply TIMER
	depends on !NATIVE_LIBC
	help
	  This enables POSIX clock\_\*() and \*sleep() functions.
