| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| | |
Merge-request: !2010
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Internally we mark `file(GENERATE)` outputs as `GENERATED` in order
to tell custom command dependency tracing logic not to expect the
files to exist on disk yet. This is because we do not generate the
files until after that tracing is done.
The Ninja generator also interprets the `GENERATED` property to mean
that it is expected that some build rule will generate the file if
another build rule depends on it. If the generator does not know of a
custom command that generates the file then it adds an empty one so that
the `ninja` build tool does not complain about a dependency on a file
that does not exist and has no rule to generate it. However, this step
is not necessary for `file(GENERATE)` outputs because there is no build
rule to generate them and they will exist before `ninja` runs.
Add an additional `__CMAKE_GENERATED_BY_CMAKE` property internally to
tell the Ninja generator that a `GENERATED` file will exist before the
build starts and is not expected to have a build rule producing it.
Fixes: #17942
|
|\ \
| | |
| | |
| | | |
Merge-request: !2007
|
| |/
| |
| |
| |
| |
| |
| | |
* new version format
* new registry layout on Windows
Fixes: #17938
|
|\ \
| | |
| | |
| | | |
Merge-request: !2006
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since commit v3.11.0-rc1~177^2 (FindBLAS: optionally query pkg-config
for a library, 2017-12-15) the `BLAS_LIBRARIES` result variable may
incorrectly contain the name of an imported target. Instead store the
list of libraries in the variable. Unfortunately pkg_check_modules does
not provide a way to get this so we need to use a (temporary) hack of
reading `INTERFACE_LINK_LIBRARIES` from the interface library target.
Fixes: #17934
|
| |/
| |
| |
| | |
_props is never used, it was a leftover from a development step.
|
|\ \
| | |
| | |
| | | |
Merge-request: !2001
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The change in commit v3.11.0-rc1~480^2 (UseJava: add_jar OUTPUT_DIR
option used only for jar generation, 2017-10-12) added code of the form
`file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR})`. This exposed an existing
bug in `CMAKE_DISABLE_SOURCE_CHANGES` in which it does not recognize
that the top of the build tree itself is in the build tree. Fix that
now.
Fixes: #17933
|
|\ \
| |/
|/|
| | |
Merge-request: !1980
|
|/
|
|
|
|
|
|
|
| |
Previously, only existence of `mfc${v}.dll` and `mfc${v}d.dll` variants
was checked and it was assumed that the managed variants `mfcm*.dll`
also existed. This assumption doesn't hold with Visual Studio 2017.
Check each file separately.
Fixes: #17913
|
| |
|
|\
| |
| |
| | |
Merge-request: !1971
|
| | |
|
|\ \
| | |
| | |
| | | |
Merge-request: !1957
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The change in commit v3.11.0-rc1~334^2 (FindOpenMP: Use NO_DEFAULT_PATH
where appropriate, 2017-11-15) broke partial support for Intel on Windows.
Since `OpenMP_${LANG}_IMPLICIT_LINK_DIRS` is empty for this compiler
the `find_library` call without `NO_DEFAULT_PATH` worked accidentally
in environments with the needed libraries in the search path already.
Fix support for Intel on Windows by simply removing our explicit search
for the `libiomp5md` library. In cases that it is needed, the compiler
already inserts metadata in `.obj` files to tell the MSVC linker to use
the library.
Suggested-by: Christian Pfeiffer <cpfeiffer@live.de>
Fixes: #17910
|
|\ \
| | |
| | |
| | | |
Merge-request: !1967
|
| |/
| |
| |
| |
| |
| |
| |
| | |
Extend the fix in commit v3.9.6~1^2 (Restore exclusion of "gcc_eh" from
implicit link libraries, 2017-11-07) to also exclude `gcc_eh` libraries
referenced by absolute path to the library file.
Issue: #17436
|
|\ \
| | |
| | |
| | | |
Merge-request: !1966
|
| |/
| |
| |
| | |
CMake 3.11 now uses `uv_translate_sys_error` introduced in LibUV 1.10.
|
|\ \
| | |
| | |
| | | |
Merge-request: !1959
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since commit v3.11.0-rc1~467^2 (VS,Xcode: Add CMakeLists.txt sources
without mutating targets, 2017-10-18) we do not add `CMakeLists.txt` to
target sources but instead generate references to them directly. This
broke projects that explicitly specify their `CMakeLists.txt` file as a
source file because the explicit entry is no longer consolidated with
the generated one.
Teach the relevant generators to avoid duplicating `CMakeLists.txt`
source references and add test cases.
Fixes: #17828
|
|\ \
| | |
| | |
| | | |
Merge-request: !1903
|
| |/
| |
| |
| |
| |
| |
| | |
VS 15.3 has more features than we recorded in commit v3.7.0-rc1~156^2~2
(Features: Record features for VS 15 Preview 4, 2016-09-05).
While at it, update comments and simplify some cases.
|
|\ \
| | |
| | |
| | | |
Merge-request: !1950
|
| |/
| |
| |
| |
| |
| |
| |
| | |
In commit v3.11.0-rc1~68^2 (CPack: accept --trace and --trace-expand,
2017-12-09) a nullptr dereference was added that occurs when
`cpack -G NotAGenerator` is invoked. Add the needed condition.
Fixes: #17900
|
|\ \
| | |
| | |
| | | |
Merge-request: !1944
|
| |/
| |
| |
| |
| |
| |
| |
| | |
Some code paths in `ExpandVariablesInString{New,Old}` were not checking
the `filename` parameter for a null pointer, but this can happen when
using the above flags together. Add the checks and a test case.
Fixes: #17896
|
|\ \
| | |
| | |
| | | |
Merge-request: !1931
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This reverts commit v3.11.0-rc1~108^2 (CheckIncludeFiles: Honor
CMAKE_REQUIRED_LIBRARIES, 2017-12-24). The behavior change can
affect checks in existing projects that don't expect the behavior.
Introducing the behavior again will require a policy.
Fixes: #17874
Issue: #9514
|
|\ \
| |/
|/|
| | |
Merge-request: !1918
|
| |
| |
| |
| |
| |
| |
| |
| | |
The output of moc/uic/rcc used to be discarded unless
the program failed. This lets moc/uic/rcc print their
output to stdout even on success.
Closes #17860
|
| |
| |
| |
| |
| |
| |
| | |
This adds a dedicated mutex for file reading and writing to
cmQtAutoGenerator::FileSystem. The purpose of the change is
to avoid that long files reads block cmsys based path computations,
which are protected by an other mutex.
|
| |
| |
| |
| |
| | |
Closes #17861
Closes #17862
|
| | |
|
| | |
|
| | |
|
|/ |
|
| |
|
|\
| |
| |
| | |
Merge-request: !1893
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Refactoring in commit v3.9.0-rc1~156^2 (c++: prefer vectors over lists,
2017-05-04) switched `cmCTestSVN::Repositories` from `std::list` to
`std::vector`. This can cause re-allocation when svn externals are
processed and break the `RootInfo` pointer that is supposed to point at
the first repository element. Switch back to `std::list` so that the
address remains stable.
Fixes: #17854
|
| |
| |
| |
| |
| |
| |
| | |
When checking for a Windows-style leading path, do not read past the
null terminator.
Issue: #17854
|
|\ \
| | |
| | |
| | | |
Merge-request: !1887
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Revert commit v3.8.0-rc1~305^2 (Remove CTestTestfile.cmake when BUILD_TESTING
is OFF, 2016-11-14) again. We reverted it once in commit v3.8.0-rc3~22^2
(Revert "Remove CTestTestfile.cmake when BUILD_TESTING is OFF", 2017-03-06) but
it was accidentally restored by commit v3.11.0-rc1~387^2 (server: add
"ctestInfo" request to get test info, 2017-10-25), perhaps due to conflict
resolution during rebase.
We cannot remove `CTestTestfile.cmake` when testing is off because it breaks
projects that never enable testing but create their own `CTestTestfile.cmake`
manually instead. Revert the change again and add a test case.
|
|\ \
| | |
| | |
| | | |
Merge-request: !1865
|
| |/
| |
| |
| | |
Fixes: #16612, #16335, #16391, #12955
|
|\ \
| |/
|/|
| | |
Merge-request: !1875
|
|/
|
|
| |
Oracle Developer Studio 12.6 adds support for more C++ 11 features.
|
| |
|
|\
| |
| |
| | |
Merge-request: !1867
|