mirror of
https://gitlab.kitware.com/cmake/cmake.git
synced 2026-09-25 04:09:36 +03:00
Introduce `CMD_STRICT` to act as a parent for warnings about allowed but disrecommended usage. Introduce a warning that discourages use of non-target directives (which modify the build environment for the entire [sub]tree). Add notes to the official documentation recommending use of target-specific alternatives. This has been accepted wisdom for quite some time, but only some of the affected commands made any mention of this in the documentation.
45 lines
1.5 KiB
ReStructuredText
45 lines
1.5 KiB
ReStructuredText
add_definitions
|
|
---------------
|
|
|
|
Add ``-D`` define flags to the compilation of source files.
|
|
|
|
.. code-block:: cmake
|
|
|
|
add_definitions(-DFOO -DBAR ...)
|
|
|
|
Adds definitions to the compiler command line for targets in the current
|
|
directory, whether added before or after this command is invoked, and for
|
|
the ones in sub-directories added after. This command can be used to add any
|
|
flags, but it is intended to add preprocessor definitions.
|
|
|
|
.. note::
|
|
|
|
This command has been superseded by alternatives:
|
|
|
|
* Use :command:`add_compile_definitions`
|
|
or :command:`target_compile_definitions`
|
|
to add preprocessor definitions.
|
|
* Use :command:`add_compile_options`
|
|
or :command:`target_compile_options`
|
|
to add other options.
|
|
* Use :command:`include_directories`
|
|
or :command:`target_include_directories`
|
|
to add include directories.
|
|
|
|
Flags beginning in ``-D`` or ``/D`` that look like preprocessor definitions are
|
|
automatically added to the :prop_dir:`COMPILE_DEFINITIONS` directory
|
|
property for the current directory. Definitions with non-trivial values
|
|
may be left in the set of flags instead of being converted for reasons of
|
|
backwards compatibility. See documentation of the
|
|
:prop_dir:`directory <COMPILE_DEFINITIONS>`,
|
|
:prop_tgt:`target <COMPILE_DEFINITIONS>`,
|
|
:prop_sf:`source file <COMPILE_DEFINITIONS>` ``COMPILE_DEFINITIONS``
|
|
properties for details on adding preprocessor definitions to specific
|
|
scopes and configurations.
|
|
|
|
See Also
|
|
^^^^^^^^
|
|
|
|
* The :manual:`cmake-buildsystem(7)` manual for more on defining
|
|
buildsystem properties.
|