Add an additional include flag to PCH usage command line to fix programs
that rely on `compile_commands.json` file. Pass it to the preprocessor
directly to avoid compiler driver to change it to '-include-pch'.
When preprocessor is requested to preprocess a file, it tries to get
the original filename from '.pch' and uses that file for preprocessing.
CMake generates a '.pch' file from the '.hxx' file by passing an empty
'.cxx' source file to the compiler as a compilation unit and the header
file with the '-include' flag. After that, compiler puts compilation
unit filename in the '.pch' as the original filename.
However, CMake build system uses empty file as the source file and
passes the header file using '-include-pch' flag. As a result, Clang
uses the wrong file for preprocessing and produces the corrupted
preprocessed file.
Fixes: #20355
Signed-off-by: Sergey Larin <cerg2010cerg2010@mail.ru>
* Insert section and subsection headers (because this is a very long
doc page)
* In the Introduction, first say that module is included automatically
* Then start with operational definition of components
* Remove duplications
* Also reword the description of the command cpack_add_component
* In summary:
* we configure generators, not the generated installers
* we generate installers or source packages, not source package installers
* In Introduction:
* Make paragraph on binary installers more concise
* Remove example that refered to CMake source tree
* Add paragraph on source packages
* omit the parenthesis on graphical installers
e240371ab1 Help: CPackIFWGenerator: explain relation to CPackIWF
78779c6111 Help: Show external link only once per page; explain abbreviation QtIFW.
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4348
e240371ab1 Help: CPackIFWGenerator: explain relation to CPackIWF
78779c6111 Help: Show external link only once per page; explain abbreviation QtIFW.
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4348
ceb5ee4a7b FindOpenMP: Add support for Clang on Windows
2dbff623f9 FindOpenMP: Save flags/libs in cache entries each time they are detected
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4327
ceb5ee4a7b FindOpenMP: Add support for Clang on Windows
2dbff623f9 FindOpenMP: Save flags/libs in cache entries each time they are detected
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4327
b4d5ea8233 FindMPI: Preserve order of include directories on re-runs of CMake
8261ee3a9c FindMPI: Restore re-construction of include directories
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4341
b4d5ea8233 FindMPI: Preserve order of include directories on re-runs of CMake
8261ee3a9c FindMPI: Restore re-construction of include directories
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4341
In commit 5bc6230741 (ExternalProject: Option to turn off recursive
update of git submodules, 2019-10-16) we implemented the feature in the
clone script written by `_ep_write_gitclone_script` but not in the
update script written by `_ep_write_gitupdate_script`. Implement the
latter by factoring out a common helper to use in both places.
Fixes: #20335
The fix in commit 5861c6d450 (FindMPI: Preserve include order when
extracting component directories, 2019-12-19) only works on the first
run of CMake in which we find MPI. Extend the fix to save the compiler
wrapper's entire include path in our cache without splitting anything
out. That way we can preserve the order when CMake re-runs.
Fixes: #20338