summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* FindCUDA: Detect and report FP16 supportBoris Fomitchev2016-05-191-0/+7
| | | | Reviewed-by: James Bigler <jamesbigler@gmail.com>
* Merge topic 'ninja-output-path-prefix'Brad King2016-05-1931-32/+481
|\ | | | | | | | | | | | | | | | | | | | | | | | | eb076692 Tests: Select RunCMake.Ninja test cases based on ninja version 8a862a4d Ninja: Support embedding of CMake as subninja project 038e7716 Ninja: Pass all build paths through a central method 7c26a6a2 Ninja: Fix path to soname-d target file ac3cdd9a Ninja: Convert object file names to ninja paths earlier d4381cb1 Ninja: Convert link library file names like all other output paths 0397c92a Ninja: Pre-compute "CMakeCache.txt" build target name 3b3ecdfa Ninja: Pre-compute "all" build target name 5ca72750 Ninja: Simplify generation of custom target logical path
| * Tests: Select RunCMake.Ninja test cases based on ninja versionBrad King2016-05-181-0/+20
| | | | | | | | | | Some test cases need features not available in Ninja < 1.6, so check the version before running them.
| * Ninja: Support embedding of CMake as subninja projectNicolas Despres2016-05-1728-7/+412
| | | | | | | | | | | | Add a `CMAKE_NINJA_OUTPUT_PATH_PREFIX` variable. When it is set, CMake generates a `build.ninja` file suitable for embedding into another ninja project potentially generated by an alien generator.
| * Ninja: Pass all build paths through a central methodNicolas Despres2016-05-174-9/+27
| | | | | | | | This gives us a central location to revise paths.
| * Ninja: Fix path to soname-d target fileNicolas Despres2016-05-171-1/+2
| | | | | | | | | | In WriteLinkStatement we convert all target output paths to ninja-style paths. Add a missing conversion for the `soname` file name.
| * Ninja: Convert object file names to ninja paths earlierNicolas Despres2016-05-171-4/+6
| | | | | | | | | | | | In WriteObjectBuildStatement we pass object file names and directories to several places that expect paths as Ninja sees them. Convert them to Ninja paths before all such uses.
| * Ninja: Convert link library file names like all other output pathsNicolas Despres2016-05-171-1/+2
| | | | | | | | | | | | All paths generated on Ninja-invoked command lines should be passed through ConvertToNinjaPath. Fix ConvertToLinkReference to call this instead of partially duplicating its implementation.
| * Ninja: Pre-compute "CMakeCache.txt" build target nameNicolas Despres2016-05-172-2/+4
| |
| * Ninja: Pre-compute "all" build target nameNicolas Despres2016-05-172-2/+7
| |
| * Ninja: Simplify generation of custom target logical pathBrad King2016-05-171-9/+4
| | | | | | | | | | | | In `AppendTargetOutputs` we generate a logical build target name for each UTILITY command. Simplify the logic to avoid testing the result of `ConvertToNinjaPath`.
* | Merge topic 'ExternalProject-UPDATE_COMMAND-always'Brad King2016-05-192-0/+15
|\ \ | | | | | | | | | | | | bdca6838 ExternalProject: Always run update step with non-empty UPDATE_COMMAND
| * | ExternalProject: Always run update step with non-empty UPDATE_COMMANDBrad King2016-05-182-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | The purpose of the `update` step is to run an update on each build (subject to `UPDATE_DISCONNECTED`). This is done for version-controlled source directories. We should do it for a custom `UPDATE_COMMAND` too. In particular, when `UPDATE_DISCONNECTED` is used we expect the `skip-update` step to exist.
* | | Merge topic 'cpack-ifw-updates'Brad King2016-05-199-91/+609
|\ \ \ | | | | | | | | | | | | | | | | | | | | 41199f8c CPackIFW: Add support for Promoting Updates 6ca6b0dd CPackIFW: Add more known QtIFW releases
| * | | CPackIFW: Add support for Promoting UpdatesKonstantin Podsvirov2016-05-189-91/+607
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for this feature added by QtIFW 2.0.3: http://doc.qt.io/qtinstallerframework/ifw-updates.html Add a `cpack_ifw_update_repository` command as porcelain.
| * | | CPackIFW: Add more known QtIFW releasesKonstantin Podsvirov2016-05-181-0/+2
| |/ /
* | | CMake Nightly Date StampKitware Robot2016-05-191-1/+1
|/ /
* | Merge topic 'file-glob-sort'Brad King2016-05-185-11/+4
|\ \ | | | | | | | | | | | | edcccde7 file: Sort GLOB results to make it deterministic (#14491)
| * | file: Sort GLOB results to make it deterministic (#14491)Reiner Herrmann2016-05-175-11/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even though the `file(GLOB)` documentation specifically warns against using it to collect a list of source files, projects often do it anyway. Since it uses `readdir()`, the list of files will be unsorted. This list is often passed directly to add_executable / add_library. Linking binaries with an unsorted list will make it unreproducible, which means that the produced binary will differ depending on the unpredictable `readdir()` order. To solve those reproducibility issues in a lot of programs (which don't explicitly `list(SORT)` the list manually), sort the resulting list of the `file(GLOB)` command. A more detailed rationale about reproducible builds is available [here](https://reproducible-builds.org/).
* | | Merge topic 'ghs-shorter-object-names'Brad King2016-05-187-15/+28
|\ \ \ | | | | | | | | | | | | | | | | d7233a04 GHS: Use shorter object file names on collision
| * | | GHS: Use shorter object file names on collisionGeoff Viola2016-05-187-15/+28
| | |/ | |/|
* | | Merge topic 'platform-required-rpath-override'Brad King2016-05-182-2/+6
|\ \ \ | | | | | | | | | | | | | | | | 5a21557b AIX,HP: Allow user to override the default runtime path (libpath)
| * | | AIX,HP: Allow user to override the default runtime path (libpath)Matthew Hanna2016-05-172-2/+6
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | The `CMAKE_PLATFORM_REQUIRED_RUNTIME_PATH` is used by CMake to always append `-Wl,-blibpath:/usr/lib:/lib` to the link line. This is needed by default on these platforms but needs to be overridden in some use cases (e.g. an environment in which one maintains versioned shared libraries). Change our logic to set this value only if it not already set by the user, project, or toolchain file.
* | | Merge topic 'clang-format-lexer'Brad King2016-05-183-1156/+1140
|\ \ \ | | | | | | | | | | | | | | | | | | | | 030556b7 cmListFileLexer: Revise C++ coding style using clang-format e4a92dab cmListFileLexer: Update to flex 2.6
| * | | cmListFileLexer: Revise C++ coding style using clang-formatBrad King2016-05-172-329/+241
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Manually extract the C++ portion of `cmListFileLexer.in.l` into a temporary file, format it, and then move it back into the original file. Manually format C++ code inside the lexer actions to match our style. Then re-generate the lexer.
| * | | cmListFileLexer: Update to flex 2.6Brad King2016-05-173-854/+926
| |/ / | | | | | | | | | | | | | | | Revise the documented modifications we need to make to the flex-generated source file according to the needs of the new version. Update our own implementation to avoid warnings with flex types.
* | | CMake Nightly Date StampKitware Robot2016-05-181-1/+1
|/ /
* | Merge topic 'clang-format-source'Brad King2016-05-171454-83577/+62365
|\ \ | |/ | | | | | | | | | | | | | | | | d9fd2f54 Revise C++ coding style using clang-format 82df6dea Empty commit at end of history preceding clang-format style transition 6a13f43f CONTRIBUTING: Add a section on coding style bf451d9f Add a script to run clang-format on the entire source tree 1e90d78f Configure clang-format for CMake source tree da60adc3 Tell Git to use a distinct conflict marker size in `.rst` files
| * Revise C++ coding style using clang-formatKitware Robot2016-05-161450-83577/+62253
| | | | | | | | | | | | | | | | | | | | | | | | | | Run the `Utilities/Scripts/clang-format.bash` script to update all our C++ code to a new style defined by `.clang-format`. Use `clang-format` version 3.8. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
| * Empty commit at end of history preceding clang-format style transitionBrad King2016-05-160-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is an empty commit that precedes an automatic application of clang-format to update the C++ style of our entire source tree. This may be helpful to rebase a topic branch that was originally based on a commit preceding the transition. One may first rebase the topic on this commit. Then use one of the following approaches. * Rewrite the topic, including this commit, using `git filter-branch` `--tree-filter` with `Utilities/Scripts/clang-format.bash` to update the style in every commit. Rebase the revised topic, excluding the rewrite of this commit, on the style transition commit. OR * Add a `.git/info/grafts` entry to change the parent of the first commit in the topic from this commit to the style transition commit. Rewrite the topic using `git filter-branch --tree-filter` with `Utilities/Scripts/clang-format.bash` to update the style in every commit. Then remove the graft, which was resolved by the filter. See `git help filter-branch` and `git help repository-layout` for details.
| * CONTRIBUTING: Add a section on coding styleBrad King2016-05-161-0/+10
| | | | | | | | Document that we now define our coding style with `clang-format`.
| * Add a script to run clang-format on the entire source treeBrad King2016-05-161-0/+91
| | | | | | | | | | | | List all sources in version control and filter out those that we should not format for various reasons. Then run the clang-format tool to do an in-place update.
| * Configure clang-format for CMake source treeBrad King2016-05-161-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After discussion among developers we settled on the Mozilla style with a few tweaks: * Do not align operator arguments. * Do not always break after a function return type. * Limit to 79 columns instead of 80 to fit edge cases better in 80-column terminals as CMake has always done. * Format for C++98 instead of C++11 because CMake is written in the former language. Co-Author: Daniel Pfeifer <daniel@pfeifer-mail.de>
| * Tell Git to use a distinct conflict marker size in `.rst` filesBrad King2016-05-161-0/+2
| | | | | | | | | | Use a long conflict marker size that is unlikely to be in conflict with a `=======` section header underline.
* | Merge topic 'clang-format-prep'Brad King2016-05-171-12/+12
|\ \ | |/ | | | | | | c7006d2e cmGeneratorTarget: Protect macro code layout from clang-format
| * cmGeneratorTarget: Protect macro code layout from clang-formatBrad King2016-05-161-12/+12
| | | | | | | | | | | | | | The `IMPLEMENT_VISIT_IMPL` macro must preserve a space before the `>` character in case the `DATATYPE` is a template type ending in `>`. Manually format the macro layout as clang-format would except for this space. Then add markup to tell clang-format not to format this macro.
* | CMake Nightly Date StampKitware Robot2016-05-171-1/+1
|/
* Merge topic 'boost-component-headers'Brad King2016-05-161-4/+84
|\ | | | | | | | | c2e8d515 FindBoost: Add checks for component-specific headers
| * FindBoost: Add checks for component-specific headersRoger Leigh2016-05-161-4/+84
| | | | | | | | | | | | | | | | | | | | This supplements the existing library checks, to cater for the possibility that the libraries are present but the headers are not. This can happen when the Boost collections is split up into multiple packages and not all are installed, and will avoid the checks silently passing when the build would subsequently fail.
* | Merge topic 'boost-1.61'Brad King2016-05-161-1/+15
|\ \ | | | | | | | | | | | | 328eff90 FindBoost: Update dependencies for Boost 1.61
| * | FindBoost: Update dependencies for Boost 1.61Roger Leigh2016-05-131-1/+15
| | |
* | | Merge topic 'findpkgconfig-target'Brad King2016-05-164-6/+108
|\ \ \ | | | | | | | | | | | | | | | | df97b979 FindPkgConfig: optionally create imported target for the found libraries
| * | | FindPkgConfig: optionally create imported target for the found librariesRolf Eike Beer2016-05-144-6/+108
| | | |
* | | | Merge topic 'cpack-rpm-adding-dist-to-release-tag'Brad King2016-05-166-3/+52
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | f5089cfc CPack/RPM adding dist to release tag test f7003a60 CPack/RPM release dist tag support
| * | | | CPack/RPM adding dist to release tag testDomen Vrankar2016-05-145-0/+28
| | | | | | | | | | | | | | | | | | | | Tests and release notes
| * | | | CPack/RPM release dist tag supportHarry Mallon2016-05-141-3/+24
| |/ / / | | | | | | | | | | | | | | | | Some Linux distros require Release tag to be set to <ReleaseVersion><Dist>.
* | | | Merge topic 'cpack-rpm-different-package-names'Brad King2016-05-169-35/+143
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 44ee2d71 CPack/RPM different package names
| * | | | CPack/RPM different package namesDomen Vrankar2016-05-159-35/+143
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Packagers may now set their own rpm package file names or request that rpmbuild tool chooses one for them. It also supports handing of situations where one spec file may produce multiple rpm packages.
* | | | Merge topic 'cpack-deb-improvements'Brad King2016-05-1631-99/+552
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4461e8bb CPack/Deb cpack-deb-improvements release notes 7e940bf7 CPack/Deb test changes due to breaking changes 3b648894 CPack/Deb package release number in file name 316dd613 CPack/Deb proper package file naming 271e03f0 CPack/Deb per-component package architecture 23baaf8d CPack/Deb inter package dependencies 3a55a0e7 CPack/Deb proper component packages file naming c7f388e7 CPack/Deb generation of postinst and postrm ldconfig files 2d589653 CPack/Deb generation of DEBIAN/shlibs control file
| * | | | CPack/Deb cpack-deb-improvements release notesDomen Vrankar2016-05-131-0/+27
| | | | |