summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* string(TIMESTAMP ...): add '%a' and '%b' format specifiersRuslan Baratov2016-09-124-0/+18
| | | | | %b: Abbreviated month name (e.g. Oct). %a: Abbreviated weekday name (e.g. Fri).
* Merge topic 'GetPrerequisites-absolute-ucrt'Brad King2016-09-091-2/+2
|\ | | | | | | | | 258b7b28 GetPrerequisites: Recognize absolute paths to UCRT system libraries
| * GetPrerequisites: Recognize absolute paths to UCRT system librariesBrad King2016-09-081-2/+2
| | | | | | | | | | | | | | | | | | | | The matching expression added by commit v3.5.0-rc1~33^2 (GetPrerequisites: Define api-ms-win-* files as system libraries, 2016-01-19) did not account for absolute paths to the UCRT libraries. We already recognize absolute paths to the MSVC runtime libraries. Do this for UCRT libraries too. Issue: #16240
* | Merge topic 'cmGeneratorTarget-cleanup'Brad King2016-09-092-20/+14
|\ \ | | | | | | | | | | | | | | | | | | cc6b948e cmGeneratorTarget: factor out common part of AddSources commands 52052ef8 cmGeneratorTarget: use erase-unique instead of reinitialization 3b362230 cmGeneratorTarget: don't clear container in destructor
| * | cmGeneratorTarget: factor out common part of AddSources commandsDaniel Pfeifer2016-09-082-11/+10
| | |
| * | cmGeneratorTarget: use erase-unique instead of reinitializationDaniel Pfeifer2016-09-081-8/+4
| | | | | | | | | | | | | | | Just to make it easier to find places where containers are cleared in order to be recomputed.
| * | cmGeneratorTarget: don't clear container in destructorDaniel Pfeifer2016-09-081-1/+0
| |/ | | | | | | | | It will be destroyed anyway. This also makes it easier to search for places where containers are atually cleared in order to be recomputed.
* | Merge topic 'parse_arguments_argv_n'Brad King2016-09-0917-4/+139
|\ \ | | | | | | | | | | | | cb299acc cmake_parse_arguments: Add option to read arguments from ARGC/ARGV#
| * | cmake_parse_arguments: Add option to read arguments from ARGC/ARGV#Bill Hoffman2016-09-0817-4/+139
| |/ | | | | | | | | | | | | | | | | The `ARGC`/`ARGV#` variables in function scope hold the original arguments with no ;-list flattening. Add a way for functions to cleanly parse arguments that may contain `;`. This also avoids extra copying of the arguments. Co-Author: Brad King <brad.king@kitware.com>
* | Merge topic 'fortran-parser-keywords'Brad King2016-09-096-491/+567
|\ \ | | | | | | | | | | | | | | | 695f0d0d cmFortranParser: Parse keywords as lexical tokens 1619fb46 cmFortranParser: Simplify grammar by skipping unknown statements
| * | cmFortranParser: Parse keywords as lexical tokensBrad King2016-09-086-466/+581
| | | | | | | | | | | | | | | | | | | | | | | | Teach the lexer to match and return specific Fortran keywords as tokens. Update the parser to use these instead of always using a WORD token and then checking the text. This avoids extra string comparisons and will allow more grammar productions to be unambiguously added later for additional Fortran statements.
| * | cmFortranParser: Simplify grammar by skipping unknown statementsBrad King2016-09-082-191/+152
| |/ | | | | | | | | | | | | Our Fortran grammar is a bare minimum to extract dependencies. Other statement syntax can be ignored, so simply skip to the end of unrecognized statements. This allows some of our existing productions to be dropped.
* | Merge topic 'fortran-scanbuild-fixes'Brad King2016-09-091-0/+1
|\ \ | | | | | | | | | | | | 52b95d88 CTestCustom: Suppress scan-build warnings in flex-generated lexer
| * | CTestCustom: Suppress scan-build warnings in flex-generated lexerBrad King2016-09-081-0/+1
| |/
* | Merge topic 'update-kwiml'Brad King2016-09-095-5/+9
|\ \ | | | | | | | | | | | | | | | | | | f2c98e12 Merge branch 'upstream-KWIML' into update-kwiml e83b96b7 KWIML 2016-09-08 (d564b3c7) aa668280 kwiml: Update import script for new upstream URL
| * \ Merge branch 'upstream-KWIML' into update-kwimlBrad King2016-09-084-4/+8
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | * upstream-KWIML: KWIML 2016-09-08 (d564b3c7) Closes: #16290
| | * | KWIML 2016-09-08 (d564b3c7)KWIML Upstream2016-09-084-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code extracted from: https://gitlab.kitware.com/utils/kwiml.git at commit d564b3c71a6dcec9b1cd84afb498b14a69307780 (master). Upstream Shortlog ----------------- Brad King (1): d564b3c7 Update copyright year Richard W.M. Jones (1): 12f000d5 abi.h: Add RISC-V, a little-endian architecture.
| * | | kwiml: Update import script for new upstream URLBrad King2016-09-081-1/+1
| | |/ | |/|
* | | Merge topic 'FindMatlab-regression-tests-print-on-error'Brad King2016-09-091-3/+3
|\ \ \ | | | | | | | | | | | | | | | | 1031e5d9 FindMatlab: add verbosity to the nightly tests
| * | | FindMatlab: add verbosity to the nightly testsRaffi Enficiaud2016-09-081-3/+3
| | | |
* | | | CMake Nightly Date StampKitware Robot2016-09-091-1/+1
| |/ / |/| |
* | | Merge topic 'fortran-depend-cleanup'Brad King2016-09-0810-1365/+1291
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | d28da906 cmFortranParser: Inject a newline at end-of-file when missing 8c65a501 cmFortranParser: Revise indentation style to match rest of CMake f70c71c5 cmFortranLexer: Update to flex 2.6 e11cd31f Fortran: Warn when dependency scanning fails to parse a source file
| * | | cmFortranParser: Inject a newline at end-of-file when missingBrad King2016-09-062-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | Our parser grammar expects all statements to end in an `EOSTMT` token such as a newline. Ensure that the last statement in a file can be parsed even if it is missing a newline.
| * | | cmFortranParser: Revise indentation style to match rest of CMakeBrad King2016-09-063-333/+260
| | | | | | | | | | | | | | | | While at it, remove unused token CPP_TOENDL.
| * | | cmFortranLexer: Update to flex 2.6Brad King2016-09-065-1026/+1005
| | | | | | | | | | | | | | | | | | | | | | | | Revise the documented modifications we need to make to the flex-generated source file according to the needs of the new version. Also drop the duplicate copyright notice block from the generated file.
| * | | Fortran: Warn when dependency scanning fails to parse a source fileBrad King2016-09-063-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | We expect to handle all relevant statements and ignore those that we do not understand. Warn if this process ever fails. Otherwise dependency information may be silently left out.
* | | | Merge topic 'vs-15-generator'Brad King2016-09-0819-12/+290
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bdc679a8 VS15: Add Visual Studio 15 generator a8936656 VS: Update v140 flag tables from VS 15 MSBuild files 21346d3f Features: Record features for VS 15 Preview 4
| * | | | VS15: Add Visual Studio 15 generatorBrad King2016-09-0715-8/+259
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Call the generator "Visual Studio 15" without any year because the preview version of VS 15 does not provide a year in the product name. Copy cmGlobalVisualStudio14Generator to cmGlobalVisualStudio15Generator and update version numbers accordingly. Add the VS15 enumeration value. Note that we do not need to add a MSVC15 variable or v150 toolset because Visual Studio 15 comes with an updated version of the v140 toolset and remains ABI-compatible. Teach tests VSExternalInclude, RunCMake.GeneratorPlatform, and RunCMake.GeneratorToolset to treat VS 15 as they do VS 10-14. Closes: #16143
| * | | | VS: Update v140 flag tables from VS 15 MSBuild filesBrad King2016-09-063-4/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Run cmparseMSBuildXML.py on cl.xml, lib.xml, link.xml, and masm.xml to generate our flag tables: python cmparseMSBuildXML.py -x ".../Common7/IDE/VC/VCTargets/1033/cl.xml" > cmVS14CLFlagTable.h python cmparseMSBuildXML.py -x ".../Common7/IDE/VC/VCTargets/1033/lib.xml" > cmVS14LibFlagTable.h python cmparseMSBuildXML.py -x ".../Common7/IDE/VC/VCTargets/1033/link.xml" > cmVS14LinkFlagTable.h python cmparseMSBuildXML.py -x ".../Common7/IDE/VC/VCTargets/BuildCustomizations/masm.xml" > cmVS14MASMFlagTable.h Manually integrate the changes with those we've made since earlier import to add the new flag mappings.
| * | | | Features: Record features for VS 15 Preview 4Brad King2016-09-061-0/+3
| | | | |
* | | | | Merge topic 'install-export-root-prefix'Brad King2016-09-081-1/+4
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 290e4ce8 install: Fix computed import prefix in export files when it is "/"
| * | | | | install: Fix computed import prefix in export files when it is "/"Ben Keller2016-09-061-1/+4
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When exporting from a project (with install(EXPORT ...)), the `<PROJECT>Targets.cmake` file contains logic for computing the `_IMPORT_PREFIX` from its own location. This `_IMPORT_PREFIX` is then used in the `<PROJECT>Targets-<config>.cmake` file to generate the `IMPORTED_LOCATION_<CONFIG>`. The generation unconditionally appends a "/" to `_IMPORT_PREFIX` before appending the rest of the path. If `_IMPORT_PREFIX` is "/", then the `IMPORTED_LOCATION_<CONFIG>` properties all start with exactly two leading slashes ("//"). Exactly two leading slashes is a special case in POSIX file paths, such that its interpretation is left up to the implementation. This means that changing the path prefix from "/" to "//" should not be allowed. Since references to `_IMPORT_PREFIX` are always followed by a "/", simply check the value to replace "/" with "".
* | | | | Merge topic 'ExternalData-repeat-file'Brad King2016-09-084-29/+74
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | f9973166 ExternalData: Tolerate files duplicated across multiple targets
| * | | | ExternalData: Tolerate files duplicated across multiple targetsBrad King2016-09-074-29/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If multiple ExternalData_Target_Add calls generate the same output file then we need to avoid calling add_custom_command multiple times with that output. This was already done within a single target by setting a variable in the local function scope. This will not be visible in other calls though so we need to use a directory property instead to prevent adding a custom command multiple times for one output in a directory. Normally it is not safe to have multiple custom commands that produce the same output file across multiple independent targets, but since we use atomic replacement of outputs the resulting races should not be a problem. For the convenience of projects, tolerate this instead of diagnosing it. In particular, we previously allowed up to two copies of the custom command in one directory because CMake has a fallback from MAIN_DEPENDENCY to an `<output>.rule` file. While at it, add a note to the documentation that typically only one external data target should be needed for a project. Reported-by: David Manthey <david.manthey@kitware.com>
* | | | | CMake Nightly Date StampKitware Robot2016-09-081-1/+1
|/ / / /
* | | | Merge branch 'release'Brad King2016-09-070-0/+0
|\ \ \ \
| * | | | CMake 3.6.2v3.6.2Brad King2016-09-071-1/+1
| | | | |
* | | | | Merge branch 'release'Brad King2016-09-070-0/+0
|\ \ \ \ \ | |/ / / /
| * | | | Merge branch 'backport-curl-fix' into releaseBrad King2016-09-071-1/+7
| |\ \ \ \
* | \ \ \ \ Merge topic 'backport-curl-fix'Brad King2016-09-071-1/+7
|\ \ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | | | | | | | 4b53a693 curl: Backport certificate reuse fix from 7.50.2
| * | | | | curl: Backport certificate reuse fix from 7.50.2Brad King2016-09-071-1/+7
| |/ / / / | | | | | | | | | | | | | | | | | | | | Backport curl upstream commit curl-7_50_2~32 (nss: refuse previously loaded certificate from file, 2016-08-22).
* | | | | Merge topic 'GNUInstallDirs-function'Brad King2016-09-072-30/+56
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 17a24dc3 GNUInstallDirs: Add macro to expose internal logic publicly
| * | | | | GNUInstallDirs: Add macro to expose internal logic publiclyRoger Leigh2016-09-072-30/+56
| | |/ / / | |/| | |
* | | | | Merge topic 'cpack-deb-package-description-fallback'Brad King2016-09-076-28/+47
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 332b089a CPack/DEB: Make package description variable precedence match RPM
| * | | | | CPack/DEB: Make package description variable precedence match RPMDomen Vrankar2016-09-076-28/+47
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make `CPACK_DEBIAN_PACKAGE_DESCRIPTION` fallback variable precedence match CPackRPM behavior as much as possible. This is technically a breaking change, but the new behavior is more consistent with expectation anyway. Closes: #16272
* | | | | Merge topic 'fix-continue-after-error'Brad King2016-09-079-16/+62
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | f1ad71d7 cmMakefile: Restore nested error logic use of cmExecutionStatus
| * | | | | cmMakefile: Restore nested error logic use of cmExecutionStatusBrad King2016-09-069-16/+62
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 14a8d61f (cmMakefile: Port nested error logic away from cmExecutionStatus) we fail to continue processing function and macro bodies after non-fatal errors. A non-fatal error should not stop foreach loops, macro bodies, nested bodies, or the outer script. Add a test covering these cases, and revert the change to fix them. Also revert commit 2af853de (cmMakefile: Simplify IssueMessage implementation) because the assertion it added (which was removed by the above commit and is restored by reverting it) is incorrect. We do have code paths that call cmMakefile::IssueMessage with an empty execution stack, such as in CheckForUnusedVariables's LogUnused call.
* | | | | Merge topic 'include-what-you-use'Brad King2016-09-0738-82/+230
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | d47c7bf6 CPack: include what you use
| * | | | | CPack: include what you useDaniel Pfeifer2016-09-0638-82/+230
| |/ / / /
* | | | | Merge topic 'wix-fix-static-prefix'Brad King2016-09-0710-38/+79
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 1bc33257 CPackWIX: Fix incomplete CPACK_WIX_SKIP_PROGRAM_FOLDER implementation