summaryrefslogtreecommitdiffstats
path: root/Help/policy/CMP0098.rst
diff options
context:
space:
mode:
authorJannick <thirdedition@gmx.net>2019-11-07 00:13:27 (GMT)
committerBrad King <brad.king@kitware.com>2019-11-15 16:46:06 (GMT)
commitc5fb36a4cb8bd3272e2e0b54e3947886ad7eb778 (patch)
treed67a021cd11e8a7dba8c1cee1e252ffb0e429fc8 /Help/policy/CMP0098.rst
parent5695b0464b411746b207da2ee23b8e2d9f8ffec2 (diff)
downloadCMake-c5fb36a4cb8bd3272e2e0b54e3947886ad7eb778.zip
CMake-c5fb36a4cb8bd3272e2e0b54e3947886ad7eb778.tar.gz
CMake-c5fb36a4cb8bd3272e2e0b54e3947886ad7eb778.tar.bz2
FindFLEX: Add policy CMP0098 to run flex in build tree
Diffstat (limited to 'Help/policy/CMP0098.rst')
-rw-r--r--Help/policy/CMP0098.rst30
1 files changed, 30 insertions, 0 deletions
diff --git a/Help/policy/CMP0098.rst b/Help/policy/CMP0098.rst
new file mode 100644
index 0000000..6d1443b
--- /dev/null
+++ b/Help/policy/CMP0098.rst
@@ -0,0 +1,30 @@
+CMP0098
+-------
+
+:module:`FindFLEX` runs ``flex`` in directory
+:variable:`CMAKE_CURRENT_BINARY_DIR` when executing.
+
+The module provides a ``FLEX_TARGET`` macro which generates FLEX output.
+In CMake 3.16 and below the macro would generate a custom command that runs
+``flex`` in the current source directory. CMake 3.17 and later prefer to
+run it in the build directory and use :variable:`CMAKE_CURRENT_BINARY_DIR`
+as the ``WORKING_DIRECTORY`` of its :command:`add_custom_command` invocation.
+This ensures that any implicitly generated file is written relative to the
+build tree rather than the source tree, unless the generated file is
+provided as absolute path.
+
+This policy provides compatibility for projects that have not been updated
+to expect the new behavior.
+
+The ``OLD`` behavior for this policy is for ``FLEX_TARGET`` to use
+the current source directory for the ``WORKING_DIRECTORY`` and where
+to generate implicit files. The ``NEW`` behavior of this policy is to
+use the current binary directory for the ``WORKING_DIRECTORY`` relative to
+which implicit files are generated unless provided as absolute path.
+
+This policy was introduced in CMake version 3.17. Use the
+:command:`cmake_policy` command to set it to ``OLD`` or ``NEW`` explicitly.
+Unlike many policies, CMake version |release| does *not* warn
+when this policy is not set and simply uses ``OLD`` behavior.
+
+.. include:: DEPRECATED.txt