OXIESEC PANEL
- Current Dir:
/
/
usr
/
local
/
doc
/
cmake
/
html
/
_sources
/
command
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
04/04/2023 07:10:48 PM
rwxr-xr-x
📄
add_compile_definitions.rst.txt
1.04 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
add_compile_options.rst.txt
1.31 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
add_custom_command.rst.txt
20.78 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
add_custom_target.rst.txt
7.4 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
add_definitions.rst.txt
1.38 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
add_dependencies.rst.txt
1 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
add_executable.rst.txt
4.3 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
add_library.rst.txt
11.08 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
add_link_options.rst.txt
1.08 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
add_subdirectory.rst.txt
2.06 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
add_test.rst.txt
3.25 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
aux_source_directory.rst.txt
1.06 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
block.rst.txt
1.81 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
break.rst.txt
208 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
build_command.rst.txt
1.86 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
build_name.rst.txt
430 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
cmake_host_system_information.rst.txt
11.36 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
cmake_language.rst.txt
18.83 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
cmake_minimum_required.rst.txt
3.19 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
cmake_parse_arguments.rst.txt
4.82 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
cmake_path.rst.txt
25.13 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
cmake_policy.rst.txt
5.56 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
configure_file.rst.txt
5.26 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
continue.rst.txt
362 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
create_test_sourcelist.rst.txt
1.52 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
ctest_build.rst.txt
3.23 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
ctest_configure.rst.txt
1.66 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
ctest_coverage.rst.txt
1.62 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
ctest_empty_binary_directory.rst.txt
323 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
ctest_memcheck.rst.txt
1.49 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
ctest_read_custom_files.rst.txt
332 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
ctest_run_script.rst.txt
577 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
ctest_sleep.rst.txt
265 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
ctest_start.rst.txt
3.12 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
ctest_submit.rst.txt
4.01 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
ctest_test.rst.txt
10.23 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
ctest_update.rst.txt
1.34 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
ctest_upload.rst.txt
678 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
define_property.rst.txt
3.3 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
else.rst.txt
129 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
elseif.rst.txt
194 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
enable_language.rst.txt
1.06 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
enable_testing.rst.txt
474 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
endblock.rst.txt
190 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
endforeach.rst.txt
342 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
endfunction.rst.txt
337 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
endif.rst.txt
300 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
endmacro.rst.txt
319 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
endwhile.rst.txt
317 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
exec_program.rst.txt
958 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
execute_process.rst.txt
6.04 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
export.rst.txt
5.6 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
export_library_dependencies.rst.txt
1.13 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
file.rst.txt
45.8 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
find_file.rst.txt
1.55 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
find_library.rst.txt
3.85 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
find_package.rst.txt
32.47 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
find_path.rst.txt
1.84 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
find_program.rst.txt
1.44 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
fltk_wrap_ui.rst.txt
380 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
foreach.rst.txt
3.57 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
function.rst.txt
2.32 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
get_cmake_property.rst.txt
766 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
get_directory_property.rst.txt
1.28 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
get_filename_component.rst.txt
2.54 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
get_property.rst.txt
3.46 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
get_source_file_property.rst.txt
1.96 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
get_target_property.rst.txt
1.15 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
get_test_property.rst.txt
831 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
if.rst.txt
14.6 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
include.rst.txt
1.06 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
include_directories.rst.txt
1.57 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
include_external_msproject.rst.txt
1.09 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
include_guard.rst.txt
1.8 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
include_regular_expression.rst.txt
571 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
install.rst.txt
43.13 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
install_files.rst.txt
1.39 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
install_programs.rst.txt
1.26 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
install_targets.rst.txt
664 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
link_directories.rst.txt
2.53 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
link_libraries.rst.txt
669 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
list.rst.txt
10.1 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
load_cache.rst.txt
1001 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
load_command.rst.txt
686 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
macro.rst.txt
4.77 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
make_directory.rst.txt
306 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
mark_as_advanced.rst.txt
867 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
math.rst.txt
1.19 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
message.rst.txt
8.12 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
option.rst.txt
615 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
output_required_files.rst.txt
680 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
project.rst.txt
6.16 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
qt_wrap_cpp.rst.txt
829 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
qt_wrap_ui.rst.txt
981 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
remove.rst.txt
306 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
remove_definitions.rst.txt
293 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
return.rst.txt
3.21 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
separate_arguments.rst.txt
2.53 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
set.rst.txt
4.39 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
set_directory_properties.rst.txt
630 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
set_property.rst.txt
4.38 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
set_source_files_properties.rst.txt
1.68 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
set_target_properties.rst.txt
758 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
set_tests_properties.rst.txt
624 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
site_name.rst.txt
304 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
source_group.rst.txt
2.18 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
string.rst.txt
18.51 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
subdir_depends.rst.txt
306 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
subdirs.rst.txt
1.05 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
target_compile_definitions.rst.txt
2.15 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
target_compile_features.rst.txt
1.82 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
target_compile_options.rst.txt
2.13 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
target_include_directories.rst.txt
3.57 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
target_link_directories.rst.txt
2.77 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
target_link_libraries.rst.txt
16.66 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
target_link_options.rst.txt
2.14 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
target_precompile_headers.rst.txt
5.6 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
target_sources.rst.txt
7.99 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
try_compile.rst.txt
13.25 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
try_run.rst.txt
5.71 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
unset.rst.txt
1.54 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
use_mangled_mesa.rst.txt
475 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
utility_source.rst.txt
977 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
variable_requires.rst.txt
784 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
variable_watch.rst.txt
1.76 KB
04/04/2023 07:03:28 PM
rw-r--r--
📄
while.rst.txt
891 bytes
04/04/2023 07:03:28 PM
rw-r--r--
📄
write_file.rst.txt
705 bytes
04/04/2023 07:03:28 PM
rw-r--r--
Editing: cmake_policy.rst.txt
Close
cmake_policy ------------ Manage CMake Policy settings. See the :manual:`cmake-policies(7)` manual for defined policies. As CMake evolves it is sometimes necessary to change existing behavior in order to fix bugs or improve implementations of existing features. The CMake Policy mechanism is designed to help keep existing projects building as new versions of CMake introduce changes in behavior. Each new policy (behavioral change) is given an identifier of the form ``CMP<NNNN>`` where ``<NNNN>`` is an integer index. Documentation associated with each policy describes the ``OLD`` and ``NEW`` behavior and the reason the policy was introduced. Projects may set each policy to select the desired behavior. When CMake needs to know which behavior to use it checks for a setting specified by the project. If no setting is available the ``OLD`` behavior is assumed and a warning is produced requesting that the policy be set. Setting Policies by CMake Version ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The ``cmake_policy`` command is used to set policies to ``OLD`` or ``NEW`` behavior. While setting policies individually is supported, we encourage projects to set policies based on CMake versions: .. code-block:: cmake cmake_policy(VERSION <min>[...<max>]) .. versionadded:: 3.12 The optional ``<max>`` version. ``<min>`` and the optional ``<max>`` are each CMake versions of the form ``major.minor[.patch[.tweak]]``, and the ``...`` is literal. The ``<min>`` version must be at least ``2.4`` and at most the running version of CMake. The ``<max>`` version, if specified, must be at least the ``<min>`` version but may exceed the running version of CMake. If the running version of CMake is older than 3.12, the extra ``...`` dots will be seen as version component separators, resulting in the ``...<max>`` part being ignored and preserving the pre-3.12 behavior of basing policies on ``<min>``. This specifies that the current CMake code is written for the given range of CMake versions. All policies known to the running version of CMake and introduced in the ``<min>`` (or ``<max>``, if specified) version or earlier will be set to use ``NEW`` behavior. All policies introduced in later versions will be unset (unless the :variable:`CMAKE_POLICY_DEFAULT_CMP<NNNN>` variable sets a default). This effectively requests behavior preferred as of a given CMake version and tells newer CMake versions to warn about their new policies. Note that the :command:`cmake_minimum_required(VERSION)` command implicitly calls ``cmake_policy(VERSION)`` too. Setting Policies Explicitly ^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. code-block:: cmake cmake_policy(SET CMP<NNNN> NEW) cmake_policy(SET CMP<NNNN> OLD) Tell CMake to use the ``OLD`` or ``NEW`` behavior for a given policy. Projects depending on the old behavior of a given policy may silence a policy warning by setting the policy state to ``OLD``. Alternatively one may fix the project to work with the new behavior and set the policy state to ``NEW``. .. include:: ../policy/DEPRECATED.txt Checking Policy Settings ^^^^^^^^^^^^^^^^^^^^^^^^ .. code-block:: cmake cmake_policy(GET CMP<NNNN> <variable>) Check whether a given policy is set to ``OLD`` or ``NEW`` behavior. The output ``<variable>`` value will be ``OLD`` or ``NEW`` if the policy is set, and empty otherwise. CMake Policy Stack ^^^^^^^^^^^^^^^^^^ CMake keeps policy settings on a stack, so changes made by the ``cmake_policy`` command affect only the top of the stack. A new entry on the policy stack is managed automatically for each subdirectory to protect its parents and siblings. CMake also manages a new entry for scripts loaded by :command:`include` and :command:`find_package` commands except when invoked with the ``NO_POLICY_SCOPE`` option (see also policy :policy:`CMP0011`). The ``cmake_policy`` command provides an interface to manage custom entries on the policy stack: .. code-block:: cmake cmake_policy(PUSH) cmake_policy(POP) Each ``PUSH`` must have a matching ``POP`` to erase any changes. This is useful to make temporary changes to policy settings. Calls to the :command:`cmake_minimum_required(VERSION)`, ``cmake_policy(VERSION)``, or ``cmake_policy(SET)`` commands influence only the current top of the policy stack. .. versionadded:: 3.25 The :command:`block` and :command:`endblock` commands offer a more flexible and more secure way to manage the policy stack. The pop action is done automatically when the :command:`endblock` command is executed, so it avoid to call the :command:`cmake_policy(POP)` command before each :command:`return` command. .. code-block:: cmake # stack management with cmake_policy() function(my_func) cmake_policy(PUSH) cmake_policy(SET ...) if (<cond1>) ... cmake_policy(POP) return() elseif(<cond2>) ... cmake_policy(POP) return() endif() ... cmake_policy(POP) endfunction() # stack management with block()/endblock() function(my_func) block(SCOPE_FOR POLICIES) cmake_policy(SET ...) if (<cond1>) ... return() elseif(<cond2>) ... return() endif() ... endblock() endfunction() Commands created by the :command:`function` and :command:`macro` commands record policy settings when they are created and use the pre-record policies when they are invoked. If the function or macro implementation sets policies, the changes automatically propagate up through callers until they reach the closest nested policy stack entry. See Also ^^^^^^^^ * :command:`cmake_minimum_required`