summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Help: Explain meaning and limitations of CMAKE_CROSSCOMPILINGCraig Scott2018-01-181-4/+22
| | | | Fixes: #17653
* Merge branch 'release-3.10'Brad King2018-01-180-0/+0
|\
| * CMake 3.10.2v3.10.2Brad King2018-01-181-1/+1
| |
* | Merge topic 'autogen-parallel'Brad King2018-01-1864-2303/+4192
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9cfa213a Autogen: Rename cmQtAutogeneratorInitializer to cmQtAutoGenInitializer 79908ae4 Autogen: Add release notes for (CMAKE_)AUTOGEN_PARALLEL 45ee4979 Autogen: Add documentation for (CMAKE_)AUTOGEN_PARALLEL 6f4b6613 Autogen: Tests: Add AUTOGEN_PARALLEL tests a008578d Autogen: Process files concurrently in AUTOMOC and AUTOUIC 488baaf0 Autogen: Tests: Fix MocInclude test(s) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1632
| * | Autogen: Rename cmQtAutogeneratorInitializer to cmQtAutoGenInitializerSebastian Holtermann2018-01-175-30/+30
| | |
| * | Autogen: Add release notes for (CMAKE_)AUTOGEN_PARALLELSebastian Holtermann2018-01-171-0/+10
| | |
| * | Autogen: Add documentation for (CMAKE_)AUTOGEN_PARALLELSebastian Holtermann2018-01-177-2/+43
| | |
| * | Autogen: Tests: Add AUTOGEN_PARALLEL testsSebastian Holtermann2018-01-1731-0/+475
| | |
| * | Autogen: Process files concurrently in AUTOMOC and AUTOUICSebastian Holtermann2018-01-1713-2275/+3620
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This introduces concurrent thread processing in the `_autogen` target wich processes AUTOMOC and AUTOUIC. Source file parsing is distributed among the threads by using a job queue from which the threads pull new parse jobs. Each thread might start an independent ``moc`` or ``uic`` process. Altogether this roughly speeds up the AUTOMOC and AUTOUIC build process by the number of physical CPUs on the host system. The exact number of threads to start in the `_autogen` target is controlled by the new AUTOGEN_PARALLEL target property which is initialized by the new CMAKE_AUTOGEN_PARALLEL variable. If AUTOGEN_PARALLEL is empty or unset (which is the default) the thread count is set to the number of physical CPUs on the host system. The AUTOMOC/AUTOUIC generator and the AUTORCC generator are refactored to use a libuv loop internally. Closes #17422.
| * | Autogen: Tests: Fix MocInclude test(s)Sebastian Holtermann2018-01-179-0/+18
| | |
* | | Merge topic 'ctest-libuv-output-decode'Brad King2018-01-182-9/+15
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | a6e9b9c9 CTest: Fix process output read error cases c10119df CTest: Fix decoding of MBCS character split by buffering Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1667
| * | | CTest: Fix process output read error casesBrad King2018-01-171-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The libuv documentation states that the stream read callback may be called with `nread == 0` for EAGAIN. Handle this gracefully. It also states that the callee is responsible for closing the stream on error. Always close the stream for `nread < 0`.
| * | | CTest: Fix decoding of MBCS character split by bufferingBrad King2018-01-172-9/+10
| | | | | | | | | | | | | | | | | | | | | | | | Use a single `cmProcessOutput` instance persistently to decode all output of a test process so that partial character bytes can be buffered.
* | | | Merge topic 'FindTCL-thread-suffix'Brad King2018-01-181-2/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c9f66540 FindTCL: Find 8.6 libraries with 't' suffix Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1663
| * | | | FindTCL: Find 8.6 libraries with 't' suffixlorenz2018-01-161-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Building Tcl with `makefile.vc` produces library files with a `t` suffix to indicate threading support. Since threading support is on by default in 8.6 anyway, the libraries should be compatible. Issue: https://github.com/conda-forge/tk-feedstock/issues/12
* | | | | Merge topic 'fix_ninja_cuda'Brad King2018-01-181-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2bd232b5 Ninja: Fixes CUDA device link in Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1662
| * | | | | Ninja: Fixes CUDA device link in WindowsFrancisco Facioni2018-01-151-1/+1
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | nvcc in linker mode doesn't support response files Fixes: #17644
* | | | | Merge topic 'msvc_cuda_8_explicitly_specify_cuda_language'Brad King2018-01-183-9/+13
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 46abfedb CUDA: MSVC will now state files are cuda files when needed Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1658
| * | | | | CUDA: MSVC will now state files are cuda files when neededRobert Maynard2018-01-123-9/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The MSVC CUDA build customizations before CUDA 9 would not explicitly add the -x cu option when building. This caused .cpp and .c files invoked with CudaCompile to be compiled as host code and not cuda. Now when we detect CUDA < 9 we will explicitly add this option to correct this bug.
* | | | | | CMake Nightly Date StampKitware Robot2018-01-181-1/+1
| | | | | |
* | | | | | Merge topic 'FindDoxygen-macos-utils'Craig Scott2018-01-171-0/+5
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2489e5af FindDoxygen: On macOS search in '/Applications/Utilities' too Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1661
| * | | | | | FindDoxygen: On macOS search in '/Applications/Utilities' tooThomas Thielemann2018-01-161-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `FindDoxygen` already searches in hard-coded `/Applications/Doxygen.app` directories. Search in the `Utilities` subdirectory too in case users choose to put doxygen there.
* | | | | | | Merge topic 'cmSourceGroup-modern-cxx'Craig Scott2018-01-173-46/+24
|\ \ \ \ \ \ \ | |_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 969c1f94 cmSourceGroup: code improvements; use std::string and C++11 loops Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1656
| * | | | | | cmSourceGroup: code improvements; use std::string and C++11 loopsVitaly Stakhovsky2018-01-113-46/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Topic-rename: cmSourceGroup-modern-cxx
* | | | | | | Merge topic 'fix-documentation'Brad King2018-01-171-2/+4
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 60216e15 Help: Improved MAIN_DEPENDENCY documentation of add_custom_command() Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1665
| * | | | | | | Help: Improved MAIN_DEPENDENCY documentation of add_custom_command()Christoph Ruediger2018-01-161-2/+4
| | | | | | | |
* | | | | | | | CMake Nightly Date StampKitware Robot2018-01-171-1/+1
| |_|_|_|_|/ / |/| | | | | |
* | | | | | | Merge topic 'extend-compile-language-genex'Brad King2018-01-1633-247/+219
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 506fda1c Genex: Enable COMPILE_LANGUAGE for INCLUDE_DIRECTORIES with VS and Xcode c2f79c98 Genex: Enable COMPILE_LANGUAGE for COMPILE_DEFINITIONS with VS and Xcode 0795d25b cmVisualStudio10TargetGenerator: Factor out include dir computation 1ab4d186 cmLocalVisualStudio7Generator: Clarify variable name of compiled language 07e1a743 cmLocalVisualStudio7Generator: Clarify condition for target that compiles Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1657
| * | | | | | | Genex: Enable COMPILE_LANGUAGE for INCLUDE_DIRECTORIES with VS and XcodeBrad King2018-01-1221-144/+112
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The set of compile flags used for a target's C and C++ sources is based on the linker language. By default this is always the C++ flags if any C++ sources appear in the target, and otherwise the C flags. Therefore we can define the `COMPILE_LANGUAGE` generator expression in `INCLUDE_DIRECTORIES` to match the selected language. This is not exactly the same as for other generators, but is the best VS and Xcode can do. It is also sufficient for many use cases since the set of include directories for C and C++ is frequently similar but may be distinct from those for other languages like CUDA. Fixes: #17435
| * | | | | | | Genex: Enable COMPILE_LANGUAGE for COMPILE_DEFINITIONS with VS and XcodeBrad King2018-01-1224-115/+107
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The set of compile flags used for a target's C and C++ sources is based on the linker language. By default this is always the C++ flags if any C++ sources appear in the target, and otherwise the C flags. Therefore we can define the `COMPILE_LANGUAGE` generator expression in `COMPILE_DEFINITIONS` to match the selected language. This is not exactly the same as for other generators, but is the best VS and Xcode can do. It is also sufficient for many use cases since the set of definitions for C and C++ is frequently similar but may be distinct from those for other languages like CUDA. Issue: #17435
| * | | | | | | cmVisualStudio10TargetGenerator: Factor out include dir computationBrad King2018-01-112-6/+16
| | | | | | | |
| * | | | | | | cmLocalVisualStudio7Generator: Clarify variable name of compiled languageBrad King2018-01-111-4/+6
| | | | | | | |
| * | | | | | | cmLocalVisualStudio7Generator: Clarify condition for target that compilesBrad King2018-01-111-1/+1
| | | | | | | |
* | | | | | | | Merge topic 'CheckIncludeFile-required-libs'Brad King2018-01-164-0/+20
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f74c2580 CheckIncludeFiles: Honor CMAKE_REQUIRED_LIBRARIES Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1620
| * | | | | | | | CheckIncludeFiles: Honor CMAKE_REQUIRED_LIBRARIESDon Hinton2018-01-104-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is needed when cross compiling and the compiler requires a specific linker different from the default, e.g., when cross compiling from Darwin to Linux and passing `-fuse-ld=lld` to clang. Fixes: #9514
* | | | | | | | | Merge topic 'gnu-visibility-aix'Brad King2018-01-164-6/+13
|\ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e1f0518d GNU: Use -fvisibility on AIX when supported eae0a85d Tests: Remove redundant code from RunCMake.GenerateExportHeader case Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1659
| * | | | | | | | GNU: Use -fvisibility on AIX when supportedBrad King2018-01-122-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revise the logic from commit v3.7.0-rc1~173^2~2 (GNU: Do not use -fvisibility on AIX or HP-UX, 2016-09-03) to add a version check. The GCC 7 release notes [1] state that visibility support has been added for AIX 7.1 and above. [1] https://gcc.gnu.org/gcc-7/changes.html
| * | | | | | | | Tests: Remove redundant code from RunCMake.GenerateExportHeader caseBrad King2018-01-122-4/+0
| | |_|_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drop extra `add_compiler_export_flags` calls from subdirectories because it is already called in the top-level directory before entering them.
* | | | | | | | CMake Nightly Date StampKitware Robot2018-01-161-1/+1
| |_|_|_|_|/ / |/| | | | | |
* | | | | | | CMake Nightly Date StampKitware Robot2018-01-151-1/+1
| |_|_|_|/ / |/| | | | |
* | | | | | CMake Nightly Date StampKitware Robot2018-01-141-1/+1
| | | | | |
* | | | | | CMake Nightly Date StampKitware Robot2018-01-131-1/+1
|/ / / / /
* | | | | Merge topic 'cuda_allow_G_to_device_debugging_on_msvc'Brad King2018-01-124-1/+97
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dcc606ad CUDA: Allow -G to control device debuging on MSVC. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1619
| * | | | | CUDA: Allow -G to control device debuging on MSVC.Robert Maynard2018-01-114-1/+97
| | | | | | | | | | | | | | | | | | | | | | | | Fixes #17551
* | | | | | Merge topic 'avoid-ambiguous-extension-logic-for-known-paths'Brad King2018-01-129-25/+70
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d6dfde3c cmSourceFile: mark known locations as such b0716fbc cmSourceFileLocation: allow skipping ambiguous extensions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1646
| * | | | | | cmSourceFile: mark known locations as suchBen Boeckel2018-01-103-7/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Primarily, this includes: - the rule files generated for custom targets; - source files representing custom targets directly; - outputs of custom commands; - byproducts of custom commands; and - dependencies of custom commands.
| * | | | | | cmSourceFileLocation: allow skipping ambiguous extensionsBen Boeckel2018-01-109-18/+56
| | |_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ambiguous extension logic is an old behavior that ends up taking lots of extra compute cycles to execute. This is triggered by various CMake codepaths which pass extension-less paths down when CMake actually knows that they are not ambiguous. These codepaths will be indicated in upcoming changes. Various APIs have gained a cmSourceFileLocationKind parameter, but they are all optional and default to the existing behavior.
* | | | | | CMake Nightly Date StampKitware Robot2018-01-121-1/+1
| | | | | |
* | | | | | Merge topic 'ctest-libuv'Brad King2018-01-119-412/+882
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b5e21d7d CTest: Re-implement test process handling using libuv fcebff75 cmProcess: Use explicit enum for process exit exception 3dd2edf4 cmProcess: Use explicit enum for process state 5238e6db cmProcess: Remove unused ReportStatus method c13b68e6 cmCTestRunTest: Modernize constructor and destructor decls 4d6b0903 cmCTestRunTest: Drop unused members 05da65bc cmCTestMultiProcessHandler: Factor out duplicate test finish logic dd945345 cmCTestMultiProcessHandler: Add helper to make libuv use SA_RESTART ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1455
| * | | | | CTest: Re-implement test process handling using libuvBryon Bean2018-01-106-195/+695
| | | | | | | | | | | | | | | | | | | | | | | | Co-Author: Brad King <brad.king@kitware.com>