diff --git a/Help/command/remove_definitions.rst b/Help/command/remove_definitions.rst index faad16dcbe..74730e5d32 100644 --- a/Help/command/remove_definitions.rst +++ b/Help/command/remove_definitions.rst @@ -1,11 +1,32 @@ remove_definitions ------------------ -Remove -D define flags added by :command:`add_definitions`. +Removes compile definitions added by :command:`add_compile_definitions`, or +:command:`add_definitions`: .. code-block:: cmake - remove_definitions(-DFOO -DBAR ...) + remove_definitions([...]) -Removes flags (added by :command:`add_definitions`) from the compiler -command line for sources in the current directory and below. +The arguments are: + +``...`` + Zero or more compile definitions. + +This command can be also used to remove any flags added by +:command:`add_definitions`, but it is intended to remove preprocessor +definitions passed with ``-D``, or ``/D``. + +Examples +^^^^^^^^ + +In the following example targets of the current directory scope will have +only ``BAZ`` and ``QUUX`` compile definitions: + +.. code-block:: cmake + + add_compile_definitions(FOO BAR BAZ -DQUUX) + + # ... + + remove_definitions(-DFOO -DBAR)