summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* Add rudimentary support for the Apple Swift language with XcodeBrad King2015-07-065-0/+115
| | | | | | | Allow the `Swift` language to be enabled with the Xcode generator for Xcode >= 6.1. Reject it on other generators and with older Xcode versions. Since Apple is the only vendor implementing the language right now, the compiler id can be just `Apple`.
* Merge topic 'ctest-test-load'Brad King2015-07-021-0/+4
|\ | | | | | | | | | | | | | | f62d301b ctest: Optionally avoid starting tests that may exceed a given CPU load 07c550ca cmCTestMultiProcessHandler: Refactor RUN_SERIAL implementation 8bf5a80b cmSystemTools: Add StringToULong helper dffc307c Tests: Teach RunCMake infrastructure to optionally timeout
| * ctest: Optionally avoid starting tests that may exceed a given CPU loadBetsy McPhail2015-06-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a TestLoad setting to CTest that can be set via a new --test-load command-line option, CTEST_TEST_LOAD variable, or TEST_LOAD option to the ctest_test command. Teach cmCTestMultiProcessHandler to measure the CPU load and avoid starting tests that may take more than the spare load currently available. The expression <current_load> + <test_processors> <= <max-load> must be true to start a new test. Co-Author: Zack Galbreath <zack.galbreath@kitware.com>
* | CMakeDetermineCompilerId: Use per-language regex to match Xcode compiler toolBrad King2015-06-304-9/+30
| | | | | | | | | | | | Move the Ld invocation match expression from CMakeDetermineCompilerId into CMakeDetermine{C,CXX,Fortran}Compiler so that it can be specified on a per-language basis.
* | Merge topic 'compiler-id-simplify-ide-src'Brad King2015-06-291-2/+2
|\ \ | | | | | | | | | | | | 8306108f CMakeDetermineCompilerId: Simplify src reference in IDE projects
| * | CMakeDetermineCompilerId: Simplify src reference in IDE projectsBrad King2015-06-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | When constructing the "id_src" value for substitution into VS or Xcode compiler id projects, the input "src" variable already contains the file name with no path so we do not need get_filename_component. We know this because CMAKE_DETERMINE_COMPILER_ID_WRITE already references "${src}" with this assumption.
* | | Merge topic 'vs-librarian-machine-flag-default'Brad King2015-06-291-0/+1
|\ \ \ | | | | | | | | | | | | | | | | 806609c7 VS: Add /machine: flag to Librarian tool (#11240)
| * | | VS: Add /machine: flag to Librarian tool (#11240)Brad King2015-06-261-0/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | If a Windows resource (.rc) source file is included in a STATIC library, the VS "link" tool will process the compiled ".res" file and needs to know the target architecture. Without it, we may get a LNK4068 warning and possibly a LNK1112 error. Add /machine: to the default static library flags to give the link tool the information it needs.
* | | Merge topic 'FindMatlab-doc-section-headers'Brad King2015-06-291-8/+8
|\ \ \ | |/ / |/| | | | | | | | 6524ed5e FindMatlab: Fix documentation section header underline style
| * | FindMatlab: Fix documentation section header underline styleTamas Kenez2015-06-291-8/+8
| | | | | | | | | | | | | | | | | | Replace caret-headers with double-quote-headers and replace dash-headers with caret-headers. This makes the headers match their level of nesting according to our documentation style guide in cmake-developers(7).
* | | Merge topic 'doc-CheckIncludeFile-distinction'Brad King2015-06-253-48/+56
|\ \ \ | | | | | | | | | | | | | | | | 81d58b0d Help: Revise CheckIncludeFile* documentation
| * | | Help: Revise CheckIncludeFile* documentationBrad King2015-06-253-48/+56
| |/ / | | | | | | | | | | | | Improve formatting. Link from each module to the other two. Explain the command signatures in more detail.
* | | FindIce: Find all Ice executablesRoger Leigh2015-06-231-3/+111
| | |
* | | FindIce: Update for Ice version 3.6.0Roger Leigh2015-06-231-0/+5
| |/ |/|
* | Merge topic 'GNUInstallDirs-special-prefixes'Brad King2015-06-191-3/+70
|\ \ | | | | | | | | | | | | | | | | | | 8bcec4d2 Help: Add notes for topic 'GNUInstallDirs-special-prefixes' c8bd37ec GNUInstallDirs: Add special cases for certain prefixes 5f30f175 GNUInstallDirs: Add test cases
| * | GNUInstallDirs: Add special cases for certain prefixesAlex Turbov2015-06-181-3/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | Teach the module to handle SYSCONFDIR and LOCALSTATEDIR properly if CMAKE_INSTALL_PREFIX is set to `/` or `/usr` -- i.e. as expected by GNU Coding Standard (i.e. set SYSCONFDIR to `/etc` and `LOCALSTATEDIR` to `/var`). Also if CMAKE_INSTALL_PREFIX is set to /opt/pkg, `SYSCONFDIR` must be set to `/etc/opt/pkg` and `LOCALSTATEDIR` to `/var/opt/pkg` according to FHS.
* | | Merge topic 'ConcurrentFortran-compiler-id'Brad King2015-06-196-6/+40
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 54676a0e Help: Add notes for topic 'ConcurrentFortran-compiler-id' 7cd539b1 Add support for Concurrent Fortran 77 Compiler 0d204c1c CMakeDetermineCompilerId: Try matching compiler output to detect id 5f0dad75 CMakeDetermineCompilerId: Refactor id build/check loop logic c65a060e CMakeDetermineCompilerId: Optionally try some flags before no flags
| * | | Add support for Concurrent Fortran 77 CompilerBrad King2015-06-183-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Concurrent Fortran compiler (ccur.com) is available on Linux and can be used much like the GNU Fortran compiler. Currently it has no preprocessor symbols to identify it so we need to detect it by matching compiler output. Suggested-by: Anthony Ette <Anthony.R.Ette@controlsdata.com>
| * | | CMakeDetermineCompilerId: Try matching compiler output to detect idBrad King2015-06-181-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | Some compilers can only be distinguished by their compilation output rather than preprocessor symbols or special flags. Add infrastructure to determine the compiler id by matching output.
| * | | CMakeDetermineCompilerId: Refactor id build/check loop logicBrad King2015-06-181-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Callers of CMAKE_DETERMINE_COMPILER_ID initialize the CMAKE_${lang}_COMPILER_ID to unset so we can check it at the end of each loop iteration instead of the beginning. This approach allows us to break out of the loop as soon as we succeed. It will also allow checks to be added in more places within the loop later.
| * | | CMakeDetermineCompilerId: Optionally try some flags before no flagsBrad King2015-06-184-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach CMAKE_DETERMINE_COMPILER_ID to optionally try detecting the compiler id using some given flags before trying to detect it with no special flags. This will be useful for Fortran detection to distinguish some compilers that use the preprocessors of others but have no macro of their own by getting verbose output.
* | | | Embarcadero: Run at most one linker invocation at a time (#15620)James Johnston2015-06-181-0/+6
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At least some versions (e.g. C++ Builder 5) of the bcc32 linker are known to write temporary files with a constant name to the current directory (e.g. "turboc.$ln"). (This can be verified by using Process Monitor to watch the file writes that bcc32 / ilink32 / implib make). This causes problems with some generators that keep a constant current directory and run concurrent linkers. For example, the Ninja generator, by default, always has the current directory set to the top of the build tree - resulting in conflicts between the linkers that are simultaneously trying to write to "turboc.$ln". Symptoms include direct errors regarding the "turboc.$ln" file, or later build steps failing due to corrupted output from previous links that happened to link "successfully." This is not a problem for the Borland Makefiles generator which does not run jobs in parallel. For the Ninja generator, work around this problem by using a link job pool of size 1.
* | | Merge topic 'linux-GNU-Fortran-no-rdynamic'Brad King2015-06-181-0/+1
|\ \ \ | | | | | | | | | | | | | | | | f43defae GNU: Drop -rdynamic flag from Fortran
| * | | GNU: Drop -rdynamic flag from FortranBrad King2015-06-161-0/+1
| | | | | | | | | | | | | | | | | | | | The GNU Fortran compiler does not document support for this flag as the GNU C and C++ compilers do.
* | | | Merge topic 'GNUInstallDirs-doc-format'Brad King2015-06-181-27/+32
|\ \ \ \ | |/ / / |/| / / | |/ / | | | 1199ebf1 GNUInstallDirs: Improve documentation formatting
| * | GNUInstallDirs: Improve documentation formattingBrad King2015-06-161-27/+32
| | | | | | | | | | | | Also consolidate the description of each variable.
* | | FindCUDA: Resolve a host compiler symlink only if it is Apple cc -> clangBill Hoffman2015-06-151-9/+23
|/ / | | | | | | | | | | | | | | Otherwise using a "cc -> ccache" or similar symlink as the compiler causes FindCUDA to select ccache as the host compiler. Update the logic added by commit v3.1.0-rc1~354^2 (FindCUDA: Fix OSX Clang & no C language enabled, 2014-06-12) to apply only in the specific case it is needed.
* | FindBISON: Add DEFINES_FILE option to pass --defines=FILEEon Jeong2015-06-091-8/+26
| |
* | FindBISON: Use CMAKE_PARSE_ARGUMENTS to parse argumentsEon Jeong2015-06-091-18/+23
| |
* | FindBISON: Use BISON_TARGET macro argument names internallyEon Jeong2015-06-091-5/+5
| | | | | | | | The macro argument names are much clearer than ${ARGV#} references.
* | FindBISON: Improve documentation formattingBrad King2015-06-091-33/+43
| |
* | Merge topic 'revert-mingw-no-find_library-dll'Brad King2015-06-091-1/+1
|\ \ | | | | | | | | | | | | f5dbf00d Windows-GNU: Restore find_library treatment of '.dll' as linkable (#15409)
| * | Windows-GNU: Restore find_library treatment of '.dll' as linkable (#15409)Brad King2015-06-081-1/+1
| | | | | | | | | | | | | | | | | | | | | Revert commit v3.3.0-rc1~435^2 (Windows-GNU: Do not tell find_library to treat '.dll' as linkable, 2015-02-18). MinGW tools support linking to '.dll' files directly and many non-CMake build systems still do not provide a separate '.dll.a' file.
* | | Merge topic 'FindwxWidgets-versioned-executable'Brad King2015-06-091-1/+2
|\ \ \ | | | | | | | | | | | | | | | | 2c969743 FindwxWidgets: Fix find_program call for versioned names
| * | | FindwxWidgets: Fix find_program call for versioned namesBrad King2015-06-081-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit v3.3.0-rc1~132^2 (FindwxWidgets: Search for wx-config-3.0 in addition to wx-config, 2015-04-29) we added a second (versioned) name to the find_program call. Specifying multiple names requires use of the NAMES option. Add it now. While at it, also add versioned names for 2.9 and 2.8.
* | | | Merge topic 'ExternalProject_init_selected_submodules'Brad King2015-06-081-1/+1
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | 77ee6db5 Help: Add notes for topic 'ExternalProject_init_selected_submodules' 124243c0 ExternalProject: Add unit tests for GIT_SUBMODULES argument 14e2c3ad ExternalProject: Initialize only selected git submodules (#15590)
| * | | ExternalProject: Initialize only selected git submodules (#15590)Silvio Traversaro2015-06-021-1/+1
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | Honor the GIT_SUBMODULES option added by commit v3.0.0-rc1~92^2 (ExternalProject: Add option GIT_SUBMODULES, 2014-01-09) during the 'git submodule init' step to avoid initalizing all modules since we are only going to update the specified subset anyway. This will be useful for project repositories that have many submodules (e.g. https://github.com/boostorg/boost). Reviewed-by: Daniele E. Domenichelli <daniele.domenichelli@iit.it>
* | | CPackDeb: Check dpkg-shlibdeps --ignore-missing-info flagBrad King2015-06-031-3/+6
| | | | | | | | | | | | | | | | | | Check for this flag explicitly in the --help output before using it. It turns out there are some versions of the tool that support --version but not --ignore-missing-info.
* | | CPackDeb: Check dpkg-shlibdeps version more robustlyBrad King2015-06-031-4/+5
|/ / | | | | | | | | Use if(MATCHES) to verify that a match exists before using the match group variable.
* | Merge topic 'FindPostgreSQL-updates'Brad King2015-06-021-19/+25
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | d4fd30d8 FindPostgreSQL: Search some more common packaging locations 8bd95059 FindPostgreSQL: Add help text for PostgreSQL_LIBRARY cache entry a68e9b7c FindPostgreSQL: Document PostgreSQL_LIBRARY_DIRS result variable cc3aee04 FindPostgreSQL: Search for versions 9.2, 9.3, and 9.4 6a2851a1 FindPostgreSQL: Remove extra whitespace after command open parens b7ca6f90 FindPostgreSQL: Remove unused lines
| * | FindPostgreSQL: Search some more common packaging locationsTamar Kranenburg2015-06-011-9/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use PATH_SUFFIXES to search more common packaging locations. On Windows, we can use suffixes to search in the standard Program Files locations without hard-coding the C:/ path. On Ubuntu/Debian, starting with PostgreSQL 9.3 the header file pg_type.h is moved to a separate package (from libpq-dev to postgresql-server-dev) and consequently the file pg_type.h is moved to a new location: /usr/include/postgresql/<version>/server/catalog/pg_type.h While at it, use separate PATH_SUFFIXES variables for library, type and include (this is merely an optimization).
| * | FindPostgreSQL: Add help text for PostgreSQL_LIBRARY cache entryTamar Kranenburg2015-06-011-0/+2
| | | | | | | | | | | | | | | The PostgreSQL_LIBRARY_DIR_MESSAGE variable was set with the needed text but never referenced.
| * | FindPostgreSQL: Document PostgreSQL_LIBRARY_DIRS result variableTamar Kranenburg2015-06-011-0/+1
| | |
| * | FindPostgreSQL: Search for versions 9.2, 9.3, and 9.4Tamar Kranenburg2015-06-011-2/+2
| | |
| * | FindPostgreSQL: Remove extra whitespace after command open parensTamar Kranenburg2015-06-011-3/+3
| | |
| * | FindPostgreSQL: Remove unused linesTamar Kranenburg2015-06-011-5/+0
| | |
* | | Merge topic 'FindBoost-per-config-libraries'Brad King2015-06-021-0/+2
|\ \ \ | |/ / |/| | | | | | | | b3df1e9f FindBoost: Fix Boost_LIBRARY_DIR_{RELEASE,DEBUG} cache entry configuration
| * | FindBoost: Fix Boost_LIBRARY_DIR_{RELEASE,DEBUG} cache entry configurationBrad King2015-06-011-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These cache entries introduced by commit 892b854f (FindBoost: Search for debug and release libraries separately, 2015-01-26) should be marked as advanced just as Boost_LIBRARY_DIR was. Also their _LAST values should be tracked so changes can be detected reliably. Both of these are handled by code looking in _Boost_VARS_LIB for a list of relevant variables. Fix construction of this list that was broken by the above commit. Reported-by: Sylvain Joubert <joubert.sy@gmail.com>
* | | Merge topic 'FindPkgConfig_fix_extra_path'Brad King2015-06-011-1/+1
|\ \ \ | | | | | | | | | | | | | | | | d4c6531a FindPkgConfig: Fix extra paths for CMAKE_{FRAMEWORK,APPBUNDLE}_PATH vars
| * | | FindPkgConfig: Fix extra paths for CMAKE_{FRAMEWORK,APPBUNDLE}_PATH varsDaniele E. Domenichelli2015-05-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CMAKE_FRAMEWORK_PATH and CMAKE_APPBUNDLE_PATH cache variables are supposed to be used to generate the extra paths passed to pkg-config, but instead the CMAKE_PREFIX_PATH variable is used. This bug was introduced by the refactor in commit v3.1.0-rc1~747^2~1.