summaryrefslogtreecommitdiffstats
path: root/Help
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2019-01-11 12:51:57 (GMT)
committerKitware Robot <kwrobot@kitware.com>2019-01-11 12:52:05 (GMT)
commit9e8f2e509f61c4478f2176a03e45c1fd35537d82 (patch)
tree5d09596346d10b8948474787c7f4aea17f003393 /Help
parent60666e2cd38d4c2922cc4fdc2e062fec975bc5f3 (diff)
parent5000fed5af6925a7d57083c8806ea0537e97bdda (diff)
downloadCMake-9e8f2e509f61c4478f2176a03e45c1fd35537d82.zip
CMake-9e8f2e509f61c4478f2176a03e45c1fd35537d82.tar.gz
CMake-9e8f2e509f61c4478f2176a03e45c1fd35537d82.tar.bz2
Merge topic 'bison_target_policy'
5000fed5af FindBISON: Add policy CMP0088 to run bison in build tree Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2774
Diffstat (limited to 'Help')
-rw-r--r--Help/manual/cmake-policies.7.rst1
-rw-r--r--Help/policy/CMP0088.rst29
-rw-r--r--Help/release/dev/bison_target_policy.rst6
3 files changed, 36 insertions, 0 deletions
diff --git a/Help/manual/cmake-policies.7.rst b/Help/manual/cmake-policies.7.rst
index 40ec1ef..409b5b1 100644
--- a/Help/manual/cmake-policies.7.rst
+++ b/Help/manual/cmake-policies.7.rst
@@ -57,6 +57,7 @@ Policies Introduced by CMake 3.14
.. toctree::
:maxdepth: 1
+ CMP0088: FindBISON runs bison in CMAKE_CURRENT_BINARY_DIR when executing. </policy/CMP0088>
CMP0087: install(SCRIPT | CODE) supports generator expressions. </policy/CMP0087>
CMP0086: UseSWIG honors SWIG_MODULE_NAME via -module flag. </policy/CMP0086>
CMP0085: IN_LIST generator expression handles empty list items. </policy/CMP0085>
diff --git a/Help/policy/CMP0088.rst b/Help/policy/CMP0088.rst
new file mode 100644
index 0000000..82c04ef
--- /dev/null
+++ b/Help/policy/CMP0088.rst
@@ -0,0 +1,29 @@
+CMP0088
+-------
+
+:module:`FindBISON` runs bison in :variable:`CMAKE_CURRENT_BINARY_DIR`
+when executing.
+
+The module provides a ``BISON_TARGET`` macro which generates BISON output.
+In CMake 3.13 and below the macro would generate a custom command that runs
+``bison`` in the source directory. CMake 3.14 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 to the build
+tree rather than the source.
+
+This policy provides compatibility for projects that have not been updated
+to expect the new behavior.
+
+The ``OLD`` behavior for this policy is for ``BISON_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`` and where
+to generate implicit files.
+
+This policy was introduced in CMake version 3.14. Use the
+:command:`cmake_policy` command to set it to ``OLD`` or ``NEW`` explicitly.
+Unlike most policies, CMake version |release| does *not* warn
+when this policy is not set and simply uses ``OLD`` behavior.
+
+.. include:: DEPRECATED.txt
diff --git a/Help/release/dev/bison_target_policy.rst b/Help/release/dev/bison_target_policy.rst
new file mode 100644
index 0000000..3240318
--- /dev/null
+++ b/Help/release/dev/bison_target_policy.rst
@@ -0,0 +1,6 @@
+bison_target_policy
+-------------------
+
+* The :module:`FindBISON` module's ``BISON_TARGET`` command now runs ``bison``
+ with :variable:`CMAKE_CURRENT_BINARY_DIR` as the working directory.
+ See policy :policy:`CMP0088`.