| add_compile_options |
| ------------------- |
| |
| Add options to the compilation of source files. |
| |
| .. code-block:: cmake |
| |
| add_compile_options(<option> ...) |
| |
| Adds options to the :prop_dir:`COMPILE_OPTIONS` directory property. |
| These options are used when compiling targets from the current |
| directory and below. |
| |
| Arguments |
| ^^^^^^^^^ |
| |
| Arguments to ``add_compile_options`` may use "generator expressions" with |
| the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)` |
| manual for available expressions. See the :manual:`cmake-buildsystem(7)` |
| manual for more on defining buildsystem properties. |
| |
| .. include:: OPTIONS_SHELL.txt |
| |
| Example |
| ^^^^^^^ |
| |
| Since different compilers support different options, a typical use of |
| this command is in a compiler-specific conditional clause: |
| |
| .. code-block:: cmake |
| |
| if (MSVC) |
| # warning level 4 and all warnings as errors |
| add_compile_options(/W4 /WX) |
| else() |
| # lots of warnings and all warnings as errors |
| add_compile_options(-Wall -Wextra -pedantic -Werror) |
| endif() |
| |
| See Also |
| ^^^^^^^^ |
| |
| This command can be used to add any options. However, for |
| adding preprocessor definitions and include directories it is recommended |
| to use the more specific commands :command:`add_compile_definitions` |
| and :command:`include_directories`. |
| |
| The command :command:`target_compile_options` adds target-specific options. |
| |
| The source file property :prop_sf:`COMPILE_OPTIONS` adds options to one |
| source file. |