【力扣 018】cmake_dependent_option
155. 最小栈
cmake_dependent_option(<option> "<help_text>" <value> <depends> <force>)
说明:
- 如果<depends>中以分号分割的条件列表全部为true,则使<option>对用户可用。否则,名为<option>的局部变量将设置为<force>。
- 当<option>可用时,使用给定的<help_text>和初始<value>;否则,用户设置的任何值都会被保留,以备将来满足<depends>时使用。
CMAKE_DEPENDENT_OPTION(WITH_LIBURING "Enable io_uring bluestore backend" ON "WITH_BLUESTORE;HAVE_LIBAIO" OFF)
-
WITH_LIBURING
:- 这是被定义的选项名称。
- 用于控制是否启用
io_uring
(Linux 的高性能异步 I/O API)作为 Bluestore 的后端支持。
-
"Enable io_uring bluestore backend"
:- 此选项的描述文本,用于在 CMake 工具中展示给用户。
- 描述了
WITH_LIBURING
的功能,即启用基于io_uring
的 Bluestore 后端。
-
ON
(value_if_cond_true
):- 如果条件
WITH_BLUESTORE;HAVE_LIBAIO
为TRUE
,则WITH_LIBURING
的默认值为ON
。 - 表示满足条件时,默认启用
WITH_LIBURING
。
- 如果条件
-
"WITH_BLUESTORE;HAVE_LIBAIO"
(<condition>
):- 控制
WITH_LIBURING
启用的条件。 - 是一个逻辑 "与" 的组合,表示只有当
WITH_BLUESTORE=TRUE
且HAVE_LIBAIO=TRUE
时,WITH_LIBURING
才会显示为可配置。 - 这是一个依赖链,确保
WITH_LIBURING
仅在满足前置条件时才有意义。
- 控制
-
OFF
(value_if_cond_false
):- 如果条件
WITH_BLUESTORE;HAVE_LIBAIO
为FALSE
,则WITH_LIBURING
的默认值为OFF
并且被禁用。
- 如果条件