summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'autogen-improve-multi-config'Brad King2018-02-052-39/+0
|\ | | | | | | | | | | | | a8ee7406 Autogen: Improved multi-config include scheme Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1735
| * Autogen: Improved multi-config include schemeSebastian Holtermann2018-02-022-39/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For multi configuration generators AUTOMOC generates the moc files that are included in `mocs_compilation.cpp` in `AUTOGEN_BUILD_DIR/include_$<CONFIG>/`. By doing so each configuration reads different moc files when compiling `mocs_compilation.cpp`. Since we do not (need to) rewrite `mocs_compilation.cpp` on a configuration change anymore, the files also does not need to be recompiled anymore. Not having to rewrite and recompile `mocs_compilation.cpp` on a configuration change anymore was the main objective of this patch. In a similar fashion AUTORCC generates a `qrc_BASE_CMAKE.cpp` file below `AUTOGEN_BUILD_DIR/include_$<CONFIG>/` and `qrc_BASE.cpp` becomes a mere wrapper that includes this actuall rcc output file (when using multi configuration generators). The template files `Modules/AutoRccInfo.cmake.in` and `Modules/AutogenInfo.cmake.in` were removed in favor of writing the info `.cmake` files manually. Closes #17230
* | UseSWIG: Restore support for like-named .i files in different modulesMarc Chevrier2018-02-021-2/+4
|/ | | | | | | | | | | Fix logic added by commit 2ee10119ea (swig: fix incremental build in case of removed interface files, 2017-11-06). Name the extra targets added for Makefile generators using both the module name and .i base name to avoid collisions across modules. Also make sure the extra targets added for all .i files in a module are added as dependencies instead of just the last one. Fixes: #17704
* Merge topic 'UseSWIG-doc-clarify'Brad King2018-02-011-52/+64
|\ | | | | | | | | | | | | | | | | b844a414 UseSWIG: Clarify documentation of SWIG_OUTFILE_DIR 315b0927 UseSWIG: Improve documentation markup ce130c7a UseSWIG: Convert docs to a bracket comment Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1733
| * UseSWIG: Clarify documentation of SWIG_OUTFILE_DIRNoel Eck2018-01-311-2/+2
| | | | | | | | | | | | | | | | | | The `SWIG_OUTFILE_DIR` variable provides the option to specify an output directory location. This commit removes portion stating that this is equal to the `swig -o` option since it does not set the output filename. Fixes: #17703 Signed-off-by: Noel Eck <noel.eck@intel.com>
| * UseSWIG: Improve documentation markupBrad King2018-01-311-31/+42
| |
| * UseSWIG: Convert docs to a bracket commentBrad King2018-01-311-52/+53
| |
* | Merge topic 'findmpi-linker-parsing-enh'Brad King2018-02-011-92/+281
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | 0def3604 FindMPI: Discard IMPI boilerplate text 9ecbec5e FindMPI: Support for IMPI's compiler check 76755367 FindMPI: Set up environment variables for wrapper e7c0298d FindMPI: Retain unused link paths 8cddc899 FindMPI: Use more CMake variables 8b79107a FindMPI: Improve link information parsing Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1694
| * FindMPI: Discard IMPI boilerplate textChristian Pfeiffer2018-01-311-0/+4
| | | | | | | | | | | | Intel MPI on Windows prefixes all outputs with some boilerplate copyright text. By discarding it, we should prevent any potential clashes with our regex parsing.
| * FindMPI: Support for IMPI's compiler checkChristian Pfeiffer2018-01-311-0/+27
| | | | | | | | | | | | Intel MPI has an optional feature to check compatibility with the compiler, given by I_MPI_CHECK_COMPILER. This commit adds support for executing that check.
| * FindMPI: Set up environment variables for wrapperChristian Pfeiffer2018-01-311-5/+80
| | | | | | | | | | | | For MPICH derivates and Intel MPI, we can improve the compiler wrapper behavior and accuracy by defining certain environment variables if they haven't been set otherwise.
| * FindMPI: Retain unused link pathsChristian Pfeiffer2018-01-301-6/+18
| | | | | | | | | | | | If our ``find_library`` step hasn't used a particular link directory at all, it's best to retain it in order to prevent issues from secondary dependencies not being found.
| * FindMPI: Use more CMake variablesChristian Pfeiffer2018-01-301-59/+118
| | | | | | | | | | | | | | | | This replaces hardcoded expectations of flags like -l and -L with a dynamical solution based on CMake platform variables. Furthermore, the linker flag parsing is dynamified to support more forms and given linker paths are now removed properly from the linker flags.
| * FindMPI: Improve link information parsingChristian Pfeiffer2018-01-251-53/+65
| | | | | | | | | | | | | | | | | | The parsing of link information coming from the compiler wrapper has been improved: - Support MSVC /link argument separation properly and add support for potential VC++ link flags - Rely on the global import/static/shared library suffixes instead of hardcoded special values. This should improve compatibility with Cygwin and MinGW should any MPI implementation there need this behavior. - Don't use ``find_library`` if the full path of a library is known anyways.
* | Merge topic 'CheckIPOSupported-doc-Fortran'Brad King2018-01-311-1/+1
|\ \ | | | | | | | | | | | | | | | | | | 9e341f05 CheckIPOSupported: Document existing Fortran support Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1727
| * | CheckIPOSupported: Document existing Fortran supportBrad King2018-01-301-1/+1
| | | | | | | | | | | | | | | Support was added by commit v3.9.0-rc1~318^2 (CheckIPOSupported: Add Fortran support, 2017-04-02) but the documentation was not updated.
* | | Merge topic 'adsp-asmembler-identification'Brad King2018-01-311-0/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | f83330ed ASM: ADSP assembler identification Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1723
| * | | ASM: ADSP assembler identificationAnton Danielsson2018-01-301-0/+4
| |/ / | | | | | | | | | | | | | | | | | | Add support to identify the ADSP (Analog Devices) assembler in CMakeDetermineASMCompiler. Fixes: #17695
* | | FindCUDA: Fix regression in per-config flagsBrad King2018-01-301-0/+12
|/ / | | | | | | | | | | | | | | | | Changes in commit 48f7e2d300 (Unhardcode the CMAKE_CONFIGURATION_TYPES values, 2017-11-27) accidentally left `CUDA_configuration_types` undefined, but this is used in a few places to handle per-config flags. Restore it. Fixes: #17671
* | Merge topic 'intel-cxx17-flags'Brad King2018-01-292-1/+13
|\ \ | | | | | | | | | | | | | | | | | | | | | c3d576f5 Intel: Add C++17 compiler options 4a5727d3 Intel: Correct the C11 ext flag Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1711
| * | Intel: Add C++17 compiler optionsChristian Pfeiffer2018-01-271-0/+11
| | | | | | | | | | | | | | | | | | | | | Since Intel C++ 18.0, some C++17 features are supported if the flags -std=c++17, respectively /Qstd=c++17 are given. Fixes: #17687
| * | Intel: Correct the C11 ext flagChristian Pfeiffer2018-01-271-1/+2
| | | | | | | | | | | | Intel does not support a 'gnu11' standard flag, only 'c11'.
* | | Merge topic 'CPackDeb-help-typo'Brad King2018-01-251-2/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 99ba188c CPackDeb: Fix typo in documentation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1697
| * | | CPackDeb: Fix typo in documentationTobias Svehagen2018-01-241-2/+2
| | | |
* | | | Merge topic 'xl-qoptfile'Brad King2018-01-251-0/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c4dc6485 XL: Enable use of response files for includes and objects e342e410 Makefile,Ninja: Use tool-specific response file flag for include dirs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1691
| * | | | XL: Enable use of response files for includes and objectsBrad King2018-01-241-0/+2
| |/ / / | | | | | | | | | | | | | | | | The IBM XL compiler supports response files via `-qoptfile=<file>` instead of `@<file>`.
* | | | Merge topic 'fix-cray-pic'Brad King2018-01-255-6/+15
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b886b46c Cray: Add common PIC flags Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1692
| * | | | Cray: Add common PIC flagsChuck Atkins2018-01-245-7/+16
| | | | | | | | | | | | | | | | | | | | Fixes #17208
* | | | | Merge topic 'RemoveKDevelop3'Brad King2018-01-251-13/+0
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 551bd0b3 Generators: adjust error message for the removed KDevelop3 generator 9198e6a2 Generators: remove KDevelop3 generator Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1688
| * | | | Generators: remove KDevelop3 generatorAlex Neundorf2018-01-241-13/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The last KDevelop3 release was many years ago, in 2008 I think. I haven't seen or read about anybody using KDevelop 3 since a long time, so I think it can safely be removed from CMake. KDevelop 4 (first released in 2010) has its own proper CMake support now, independent from this generator. Alex
* | | | | Merge topic 'GenerateExportHeader-include-guard'Brad King2018-01-242-3/+8
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b1ae9aaf GenerateExportHeader: add release notes, tests for include guard changes f4082b0e GenerateExportHeader: add INCLUDE_GUARD_NAME option Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1643
| * | | | | GenerateExportHeader: add INCLUDE_GUARD_NAME optionKyle Edwards2018-01-232-3/+8
| |/ / / / | | | | | | | | | | | | | | | Fixes #16968.
* | | | | Merge topic 'UseJava-native-headers-generation'Brad King2018-01-241-1/+73
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4829ea23 add_jar: add option GENERATE_NATIVE_HEADERS Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1675
| * | | | | add_jar: add option GENERATE_NATIVE_HEADERSMarc Chevrier2018-01-221-1/+73
| | |_|/ / | |/| | |
* | | | | Merge topic 'generic-inc-sep-typo-remove'Brad King2018-01-243-9/+0
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | cd3e1600 GenericSystem: Remove misspelled flag default Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Brad King <brad.king@kitware.com> Merge-request: !1683
| * | | | GenericSystem: Remove misspelled flag defaultChristian Pfeiffer2018-01-233-9/+0
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | In CMakeGenericSystem, it should be ``CMAKE_INCLUDE_SEP_<LANG>`` and not ``CMAKE_INCLUDE_<LANG>_SEP``. However, if the flag is defined, include behavior changes to Java-style non-repeating flags, which isn't intended. Therefore, removing the (misspelled) default initialization should help remove confusion and unintended side effects.
* | | | Merge topic 'boost-optional-components'Brad King2018-01-221-3/+5
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2557cad5 FindBoost: support OPTIONAL_COMPONENTS Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Paul "TBBle" Hampson <paul.hampson@pobox.com> Merge-request: !1660
| * | | | FindBoost: support OPTIONAL_COMPONENTSSergiu Deitsch2018-01-191-3/+5
| | | | |
* | | | | Merge topic 'FindJava-jdk-10'Brad King2018-01-221-9/+25
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3c08d207 FindJava: ignore javah for JDK 10, it has been removed Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1637
| * | | | | FindJava: ignore javah for JDK 10, it has been removedStefan BrĂ¼ns2018-01-191-9/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The standalone javah tool has been removed, header generation happens during execution of javac. `javac -h` allows generation of headers only. See http://openjdk.java.net/projects/jdk/10/ and http://openjdk.java.net/jeps/313 for details. Fixes: #17613
* | | | | | Merge topic 'FindPythonInterp-windows-current-user'Brad King2018-01-221-0/+3
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a7d344be FindPythonInterp: support single-user installs on Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1674
| * | | | | | FindPythonInterp: support single-user installs on WindowsWerner Palfinger2018-01-191-0/+3
| | |_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | CMake currently searches in HKEY_LOCAL_MACHINE. According to PEP 514, single-user installs are registered in HKEY_CURRENT_USER See also FindPythonLibs.cmake
* | | | | | Merge topic 'findopenmp-genex'Christian Pfeiffer2018-01-221-1/+1
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | ffa6f875 FindOpenMP: Employ genex where possible Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1676
| * | | | | FindOpenMP: Employ genex where possibleChristian Pfeiffer2018-01-191-1/+1
| |/ / / / | | | | | | | | | | | | | | | Fixes: #17610
* | | | | Merge topic 'FindOpenGL-fix-typo'Brad King2018-01-191-1/+0
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | c2aec683 FindOpenGL: remove duplicate OpenGL::GL reference Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1668
| * | | | FindOpenGL: remove duplicate OpenGL::GL referenceBen Boeckel2018-01-181-1/+0
| | | | |
* | | | | Merge topic 'autogen-parallel'Brad King2018-01-182-4/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: Process files concurrently in AUTOMOC and AUTOUICSebastian Holtermann2018-01-172-4/+1
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | | 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