summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* cmake: Display error if generate step failsKyle Edwards2019-05-1329-28/+89
|
* Merge topic 'FindPython-module'Marc Chevrier2019-05-1021-88/+275
|\ | | | | | | | | | | | | | | 30b873c05d FindPython*: Manage weak link for Python modules Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !3291
| * FindPython*: Manage weak link for Python modulesMarc Chevrier2019-05-0721-88/+275
| | | | | | | | | | | | | | Add new target Python::Module which take care of platform requirements for Python module development. Fixes: #18100
* | CMake Nightly Date StampKitware Robot2019-05-101-1/+1
| |
* | CMake Nightly Date StampKitware Robot2019-05-091-1/+1
| |
* | Merge topic 'FindBoost-fphsa'Brad King2019-05-0849-223/+1157
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 634f6ea159 FindBoost: Add new unit tests a22dd5d8be FindBoost: Modernize module mode with FPHSA a315977595 FindBoost: Fix and modernize config mode with FPHSA 24342d5ef7 FindBoost: Add vars Boost_VERSION_MACRO/MAJOR/MINOR/PATCH/COUNT 26634752d0 FindBoost: Introduce new imported target Boost::headers d6c12f374d FindBoost: Compare versions consistently against Boost_VERSION_STRING Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3243
| * | FindBoost: Add new unit testsDennis Klein2019-05-0744-0/+974
| | |
| * | FindBoost: Modernize module mode with FPHSADennis Klein2019-05-073-131/+29
| | |
| * | FindBoost: Fix and modernize config mode with FPHSADennis Klein2019-05-074-13/+43
| | | | | | | | | | | | Fixes: #19186
| * | FindBoost: Add vars Boost_VERSION_MACRO/MAJOR/MINOR/PATCH/COUNTDennis Klein2019-05-072-21/+45
| | |
| * | FindBoost: Introduce new imported target Boost::headersDennis Klein2019-05-072-5/+20
| | |
| * | FindBoost: Compare versions consistently against Boost_VERSION_STRINGDennis Klein2019-05-071-55/+48
| |/
* | Merge topic 'autogen_cache'Brad King2019-05-089-1598/+2067
|\ \ | | | | | | | | | | | | | | | | | | 7d50e1c611 Autogen: Refactor AUTOMOC and AUTOUIC and add source file parse data caching Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3290
| * | Autogen: Refactor AUTOMOC and AUTOUIC and add source file parse data cachingSebastian Holtermann2019-05-079-1598/+2067
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | New features ------------ CMake's `AUTOMOC` and `AUTOUIC` now cache information extracted when parsing source files in `CMakeFiles/<ORIGIN>_autogen.dir/ParseCache.txt`. This leads to faster `<ORIGIN>_autogen` target rebuilds, because source files will be parsed again only if they're newer than the `ParseCache.txt` file. The parse cache will be recomputed if it is older than the CMake executable. `AUTOMOC` and `AUTOUIC` now check if `moc` or `uic` output files are older than the `moc` or `uic` executable. If an output file is older than the compiler, it will be regenerated. Therefore if a new `moc` or `uic` version is installed, all output files will be regenerated. `AUTOMOC` and `AUTOUIC` error and warning messages are more detailed. Internal changes ---------------- `moc` and `uic` output file names are not computed in the `_autogen` target anymore but in `cmQtAutoGenInitializer`. This makes the available at the configuration stage for improved dependency computations (to be done). In `AutogenInfo.cmake`, equally sized lists for "source file names", "source file flags" and "compiler output file names" are passed to the `_autogen` target. This replaces the separate file lists for `AUTOMOC` and `AUTOUIC`. Files times are read from the file system only once by using `cmFileTime` instances instead of `cmQtAutoGenerator::FileSystem::FileIsOlderThan` calls. All calls to not thread safe file system functions are moved to non concurrent fence jobs (see `cmWorkerPool::JobT::IsFence()`). This renders the `cmQtAutoGenerator::FileSystem` wrapper class obsolete and it is removed. Instead of composing a single large settings string that is fed to the `cmCryptoHash`, now all setting sub strings are fed one by one to the `cmCryptoHash` and the finalized result is stored. The `std::mutex` in `cmQtAutoGenerator::Logger` is tagged `mutable` and most `cmQtAutoGenerator::Logger` methods become `const`. Outlook ------- This patch provides the framework required to - extract dependencies from `.ui` files in `AUTOUIC`. These will help to address issue #15420 "AUTOUIC: Track uic external inputs". - generate adaptive `make` and `ninja` files in the `_autogen` target. These will help to address issue #16776 "AUTOUIC: Ninja needs two passes to correctly build Qt project". - generate (possibly empty) `moc` and `uic` files for all headers instead of a `mocs_compilation.cpp` file. This will help to address issue #17277 "AUTOMOC: Provide a option to allow AUTOMOC to compile individual " "moc_x.cxx instead of including all in mocs_compilation.cxx"
* | | Merge topic 'ctest-update-version-override'Craig Scott2019-05-0814-7/+80
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2a34d0ac36 ctest: Add new variable CTEST_UPDATE_VERSION_OVERRIDE 7ddac95121 Help: cross-ref and wording of docs related to ctest_update() a0d04d8810 testing: Update terminology in ctest_update tests Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Zack Galbreath <zack.galbreath@kitware.com> Merge-request: !3277
| * | | ctest: Add new variable CTEST_UPDATE_VERSION_OVERRIDEZack Galbreath2019-05-0711-0/+70
| | | | | | | | | | | | | | | | | | | | Set this in a CTest script to explicitly define what the current revision will be reported as in Update.xml.
| * | | Help: cross-ref and wording of docs related to ctest_update()Zack Galbreath2019-05-033-2/+5
| | | | | | | | | | | | | | | | Provide better motivation for users to click through to the CTest manual from the ctest_update command help page.
| * | | testing: Update terminology in ctest_update testsZack Galbreath2019-05-022-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the word "Update" instead of "Test" in ctest_update's RunCMake tests. This change was prompted because I noticed that UpdateChangeId-check.cmake was not actually getting called during the relevant test case. This file also had to be updated since its purpose is to detect an expected XML element (not an attribute).
* | | | CMake Nightly Date StampKitware Robot2019-05-081-1/+1
| | | |
* | | | Merge topic 'enforce-explicit-use-of-project'Brad King2019-05-073-7/+30
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1527defbfe cmMakefile: Enforce explicit use of project() command Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3245
| * | | | cmMakefile: Enforce explicit use of project() commandBartosz Kosiorek2019-05-063-7/+30
| | | | | | | | | | | | | | | | | | | | Fixes: 17714
* | | | | Merge topic 'findmpi-debug'Brad King2019-05-073-17/+30
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c499eccc5c FindMPI: Make tests valid C89 by returning 0 521ea77fc0 FindMPI: Correct documentaiton for library version c672a6a4b9 FindMPI: Add error logging Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3289
| * | | | | FindMPI: Make tests valid C89 by returning 0Christian Pfeiffer2019-05-062-0/+2
| | | | | |
| * | | | | FindMPI: Correct documentaiton for library versionChristian Pfeiffer2019-05-061-1/+1
| | | | | |
| * | | | | FindMPI: Add error loggingChristian Pfeiffer2019-05-061-16/+27
| | |_|/ / | |/| | |
* | | | | Merge topic 'CTestCoverageCollectGCOV-updates'Brad King2019-05-072-32/+29
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 41d262bd3d CTestCoverageCollectGCOV: run gcov with -x 911b97867b CTestCoverageCollectGCOV: run gcov only once Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3258
| * | | | | CTestCoverageCollectGCOV: run gcov with -xCristian Morales Vega2019-05-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using "-x" we avoid overwriting .gcov files from source files in different paths which happen to have the same name. It's similar to "-p", but it produces shorter file names, reducing the risk of reaching the file system limit.
| * | | | | CTestCoverageCollectGCOV: run gcov only onceCristian Morales Vega2019-05-032-31/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Running gcov once per .gcda file is not only inefficient, it also generates wrong data since .gcov files can get overwritten and in general gcov works with less information. fakegcov.cmake needs to be able to handle multiple .gcda files for the test to be meaningful.
* | | | | | Merge topic 'use_intel_mkl_blas_intface_on_osX'Brad King2019-05-071-1/+2
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8527dbbf44 FindBLAS: Use Intel fortran interface on OS X even with GNU Fortran Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3286
| * | | | | | FindBLAS: Use Intel fortran interface on OS X even with GNU FortranJakub Benda2019-05-041-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to Intel MKL Link Line Advisor, there is no GNU Fortran interface library provided for OS X variant of Intel MKL. Because of this missing library, FindBLAS was failing on OS X, looking for nonexistent library libmkl_gf_[i]lp64. To prevent this, FindBLAS will now always use Intel Fortran interface for MKL on OS X (libmkl_intel_[i]lp64), even with GNU Fortran.
* | | | | | | Merge branch 'release-3.14'Brad King2019-05-070-0/+0
|\ \ \ \ \ \ \
| * \ \ \ \ \ \ Merge branch 'touch-after-ranlib' into release-3.14Brad King2019-05-061-0/+14
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge-request: !3283
* | \ \ \ \ \ \ \ Merge topic 'touch-after-ranlib'Brad King2019-05-071-0/+14
|\ \ \ \ \ \ \ \ \ | | |/ / / / / / / | |/| | | | | | / | |_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | f83e4359f2 Apple: Preserve high resolution mtime for static libraries Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3283
| * | | | | | | Apple: Preserve high resolution mtime for static librariesGregor Jasny2019-05-051-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On macOS ranlib truncates the fractional part of the static achive file modification time. If the archive and at least one contained object file were created within the same second this will make look the archive older than the object file. On subsequent ninja runs this leads to re-achiving and updating dependent targets. As a work-around we touch the archive after ranlib. Closes: #19222
* | | | | | | | Merge topic 'docs-static-lib-link-options'Marc Chevrier2019-05-072-15/+26
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a6a543ced6 Help: Clarify that link options don't apply to static library targets Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3285
| * | | | | | | | Help: Clarify that link options don't apply to static library targetsCraig Scott2019-05-052-15/+26
| | | | | | | | |
* | | | | | | | | CMake Nightly Date StampKitware Robot2019-05-071-1/+1
| |_|_|_|_|/ / / |/| | | | | | |
* | | | | | | | Merge branch 'release-3.14'Brad King2019-05-060-0/+0
|\ \ \ \ \ \ \ \ | | |_|/ / / / / | |/| | | | | |
| * | | | | | | Merge branch 'FindPython-fix-Python_RUNTIME_LIBRARY_DIRS-variable' into ↵Brad King2019-05-061-3/+6
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | release-3.14 Merge-request: !3287
| * \ \ \ \ \ \ \ Merge branch 'fix_ios_try_compile' into release-3.14Brad King2019-05-061-1/+8
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge-request: !3272
* | \ \ \ \ \ \ \ \ Merge topic 'FindPython-fix-Python_RUNTIME_LIBRARY_DIRS-variable'Brad King2019-05-061-3/+6
|\ \ \ \ \ \ \ \ \ \ | | |_|/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 34c0293532 FindPython: ensure variable Python_RUNTIME_LIBRARY_DIRS is set correctly Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3287
| * | | | | | | | | FindPython: ensure variable Python_RUNTIME_LIBRARY_DIRS is set correctlyMarc Chevrier2019-05-051-3/+6
| |/ / / / / / / /
* | | | | | | | | Merge topic 'fix_ios_try_compile'Brad King2019-05-061-1/+8
|\ \ \ \ \ \ \ \ \ | | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 275b6b3194 iOS: Fix try_compile FILE_COPY not to fail Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3272
| * | | | | | | | iOS: Fix try_compile FILE_COPY not to failAlexandru Croitor2019-05-061-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When building for iOS, the compiled target is placed into a bundle. If a single-configuration generator is used, like Makefiles or Ninja, the try_compile FILE_COPY behavior fails to find the bundle, because it only looks for the bundle inside a Debug subfolder (presumably to support a multi-configuration generator like Xcode). Consider looking for the bundle in the root try_compile folder, as well as in the location specified by CMAKE_TRY_COMPILE_CONFIGURATION. Closes: #19211
* | | | | | | | | Merge topic 'SWIG'Brad King2019-05-064-1/+62
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e3919bae17 UseSWIG: Manage alternate library name Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3241
| * | | | | | | | | UseSWIG: Manage alternate library nameMarc Chevrier2019-05-034-1/+62
| | |_|/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Manage alternate library name by passing -interface <library_name> for python language or -dllimport <library_name> for CSharp language to the SWIG compiler. Fixes: #18771
* | | | | | | | | Merge topic 'findice-clang-cl'Brad King2019-05-061-2/+2
|\ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 541f079bd7 FindIce: Support clang-cl by checking CMAKE_CXX_SIMULATE_ID Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3284
| * | | | | | | | FindIce: Support clang-cl by checking CMAKE_CXX_SIMULATE_IDjspam2019-05-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | This applies commit d48bf97f, which does the same for FindBoost, to FindIce.
* | | | | | | | | CMake Nightly Date StampKitware Robot2019-05-061-1/+1
| | | | | | | | |
* | | | | | | | | CMake Nightly Date StampKitware Robot2019-05-051-1/+1
| |_|_|_|_|/ / / |/| | | | | | |