summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'fix-CMP0022-language-propagation'Brad King2014-05-192-8/+8
|\ | | | | | | | | | | | | 31b3bbd7 Merge branch 'backport-fix-CMP0022-language-propagation' into fix-CMP0022-language-propagation 40b9cd0f CMP0022: Fix link language propagation in NEW behavior 42bbf130 CMP0022: Fix link language propagation in NEW behavior
| * Merge branch 'backport-fix-CMP0022-language-propagation' into ↵Brad King2014-05-190-0/+0
| |\ | | | | | | | | | fix-CMP0022-language-propagation
| | * CMP0022: Fix link language propagation in NEW behaviorBrad King2014-05-192-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The languages used in compiling STATIC libraries need to be propagated to dependents regardless of the settings of INTERFACE_LINK_LIBRARIES or CMP0022. They are independent of the libraries in the link interface. Prior to commit v2.8.12~192^2~2 (Introduce the INTERFACE_LINK_LIBRARIES property, 2013-06-04) the cmTarget::ComputeLinkInterface code path for "explicitLibraries" could never be taken for STATIC libraries, so the logic to propagate languages existed only in the non-explicitLibraries code path. After that commit, INTERFACE_LINK_LIBRARIES could be set for STATIC libraries to cause the "explicitLibraries" code path to be taken. The commit also left the old non-explicitLibraries code path conditional on CMP0022 not being set to NEW. Thus link language propagation was left missing from two cases by that commit. The explicitLibraries code path was fixed to propagate languages by commit v2.8.12~149^2~1 (cmTarget: Fix iface libraries and languages for static libraries, 2013-07-26). However, the non-explicitLibraries case was never taught to propagate languages when CMP0022 is set to NEW. Fix that now. Factor the logic to propagate link languages out of the link interface libraries conditions so that it always occurs. Update Tests/Fortran to set CMP0022 to NEW to test this case (because the test passes only if link language propagation works).
| * | CMP0022: Fix link language propagation in NEW behaviorBrad King2014-05-192-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The languages used in compiling STATIC libraries need to be propagated to dependents regardless of the settings of INTERFACE_LINK_LIBRARIES or CMP0022. They are independent of the libraries in the link interface. Prior to commit v2.8.12~192^2~2 (Introduce the INTERFACE_LINK_LIBRARIES property, 2013-06-04) the cmTarget::ComputeLinkInterface code path for "explicitLibraries" could never be taken for STATIC libraries, so the logic to propagate languages existed only in the non-explicitLibraries code path. After that commit, INTERFACE_LINK_LIBRARIES could be set for STATIC libraries to cause the "explicitLibraries" code path to be taken. The commit also left the old non-explicitLibraries code path conditional on CMP0022 not being set to NEW. Thus link language propagation was left missing from two cases by that commit. The explicitLibraries code path was fixed to propagate languages by commit v2.8.12~149^2~1 (cmTarget: Fix iface libraries and languages for static libraries, 2013-07-26). However, the non-explicitLibraries case was never taught to propagate languages when CMP0022 is set to NEW. Fix that now. Factor the logic to propagate link languages out of the link interface libraries conditions so that it always occurs. Update Tests/Fortran to set CMP0022 to NEW to test this case (because the test passes only if link language propagation works).
* | | CMake Nightly Date StampKitware Robot2014-05-191-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2014-05-181-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2014-05-171-1/+1
|/ /
* | Merge topic 'minor-cleanups'Brad King2014-05-162-2/+2
|\ \ | | | | | | | | | | | | | | | f6f10954 Features: Use the features symbol in the feature-test compile. 5c04dfe4 Features: Only require AppleClang policy to be NEW on APPLE.
| * | Features: Use the features symbol in the feature-test compile.Stephen Kelly2014-05-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clang discards the entire string if it is not used, removing the ability to read the features from the compiled binary. That is prevented by using the symbol. GNU with -O3 also discards the string, so use the string in a way which is determined by a runtime value (argc) to prevent it being discarded.
| * | Features: Only require AppleClang policy to be NEW on APPLE.Stephen Kelly2014-05-141-1/+1
| | |
* | | Merge topic 'xcode-file-type'Brad King2014-05-1615-33/+100
|\ \ \ | | | | | | | | | | | | | | | | | | | | a339ea65 Xcode: Add source file property to control file type (#14854) ae80cb9f Xcode: Refactor internal source file type selection
| * | | Xcode: Add source file property to control file type (#14854)Brad King2014-05-1515-8/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add source file properties to control Xcode file type attributes: XCODE_EXPLICIT_FILE_TYPE => explicitFileType XCODE_LAST_KNOWN_FILE_TYPE => lastKnownFileType Add a RunCMake.XcodeProject test to verify generated project content.
| * | | Xcode: Refactor internal source file type selectionBrad King2014-05-151-26/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Choose the attribute name and file type and send them through a single attribute generation code path. Compute the file extension only when needed. Leave the file type selection logic indented in a block so it can be made conditional later.
* | | | Merge topic 'cmake-gui-capture-output'Brad King2014-05-169-73/+117
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 209cd475 Help: Add notes for topic 'cmake-gui-capture-output' d7c69246 execute_process: Send stderr through cmSystemTools::Stderr 92ddf0c9 cmake-gui: Capture cmSystemTools::Stdout and Stderr f52b5ae3 cmSystemTools: Add callback for Stderr a9ae1d7a cmSystemTools: Simplify InterruptCallback definition 73b13f56 cmSystemTools: Rename ErrorCallback to MessageCallback 7577a542 cmCTestBuildAndTestHandler: Refactor output capture b1b4d761 cmCTestBuildAndTestHandler: Refactor local loop var
| * | | | Help: Add notes for topic 'cmake-gui-capture-output'Brad King2014-05-151-0/+6
| | | | |
| * | | | execute_process: Send stderr through cmSystemTools::StderrBrad King2014-05-151-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | Give cmake-gui and ctest --build-and-test a chance to capture the output instead of sending it to the real stderr.
| * | | | cmake-gui: Capture cmSystemTools::Stdout and StderrBrad King2014-05-152-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Output sent through these APIs is logically part of the CMake process output. Capture it with callbacks and display it in the cmake-gui output window along with other messages.
| * | | | cmSystemTools: Add callback for StderrBrad King2014-05-153-22/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Factor a common callback type out of StdoutCallback. Add an equivalent StderrCallback. While at it, use "size_t" for the data length instead of "int". Teach "ctest --build-and-test" to capture the Stderr callback because output sent through it is part of the logical CMake process output.
| * | | | cmSystemTools: Simplify InterruptCallback definitionBrad King2014-05-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Use the typedef to declare the member instead of duplicating the type. Use default initialization instead of an explicit zero initializer.
| * | | | cmSystemTools: Rename ErrorCallback to MessageCallbackBrad King2014-05-157-25/+25
| | | | | | | | | | | | | | | | | | | | | | | | | Clarify that it is the callback for the cmSystemTools::Message API. Rename callback clients too.
| * | | | cmCTestBuildAndTestHandler: Refactor output captureBrad King2014-05-151-19/+22
| | | | | | | | | | | | | | | | | | | | Use an RAII class to add and remove callbacks.
| * | | | cmCTestBuildAndTestHandler: Refactor local loop varBrad King2014-05-151-3/+2
| | |/ / | |/| |
* | | | Merge topic 'fix_mumps_coverage'Brad King2014-05-169-1899/+140
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 9ad07fbe CTest: Fix MUMPS coverage parsing and test
| * | | | CTest: Fix MUMPS coverage parsing and testJoseph Snyder2014-05-169-1899/+140
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the MUMPS coverage parser: * Account for tabs after entry points * Stop double incrementing lines that have explicit calls to the 0 line * If a line has been previously marked as non executable, but then contains a count, increment it an extra one to push it back into the executable code set. Add a custom routine and corresponding coverage files in the test case. This file is smaller and has cmcov/mcov files that have data for only that routine.
* | | | | CMake Nightly Date StampKitware Robot2014-05-161-1/+1
| |_|/ / |/| | |
* | | | Merge branch 'release'Brad King2014-05-150-0/+0
|\ \ \ \ | | |_|/ | |/| |
| * | | Merge branch 'fix-atomic-rename-Windows-sharing-violation' into releaseBrad King2014-05-131-2/+4
| |\ \ \
* | | | | CMake Nightly Date StampKitware Robot2014-05-151-1/+1
| |_|_|/ |/| | |
* | | | Merge topic 'fix-atomic-rename-Windows-sharing-violation'Brad King2014-05-141-2/+4
|\ \ \ \ | | |/ / | |/| | | | | | | | | | 24bd7ae1 cmSystemTools::RenameFile: Retry on Windows ERROR_SHARING_VIOLATION
| * | | cmSystemTools::RenameFile: Retry on Windows ERROR_SHARING_VIOLATIONEric Berge2014-05-131-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add ERROR_SHARING_VIOLATION to the set of errors (previously including only ERROR_ACCESS_DENIED) that cause a rename (MoveFile) on Windows to retry. The condition was observed when two renames to the same target file name were happening simultaneously.
* | | | Merge topic 'update-kwsys'Brad King2014-05-1410-156/+185
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | 7fa16df4 Merge branch 'upstream-kwsys' into update-kwsys 7762c574 KWSys 2014-05-07 (6074f33f)
| * \ \ \ Merge branch 'upstream-kwsys' into update-kwsysBrad King2014-05-1310-156/+185
| |\ \ \ \
| | * | | | KWSys 2014-05-07 (6074f33f)KWSys Robot2014-05-1310-156/+185
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extract upstream KWSys using the following shell commands. $ git archive --prefix=upstream-kwsys/ 6074f33f | tar x $ git shortlog --no-merges --abbrev=8 --format='%h %s' f3a36760..6074f33f Ben Boeckel (22): ef3bfa01 c_str: Don't use .c_str() when streaming strings 9c165368 Glob: Use string comparisons if you have them ready 53ba0bc6 containers: Use .empty() instead of .size() where possible 6cbb57ac strings: Use string methods instead of size calculations e53596b7 RegularExpression: Add string overloads aec9de6a CommandLineArguments: Push the string back, not its C string 1d531416 Glob: Accept a string in Glob::AddFile 81f5e0a8 Glob: Accept a string in Glob::AddExpression d40c2706 SystemTools: Remove redundant if guards c1296f4a SystemTools: Defer computing length until after a .empty() check 7ffb7106 SystemTools: Use the iterator constructor for strings 29e3b1d8 SystemTools: Use .rfind('/') rather than .find_last_of("/") 5eb3a65c SystemTools: Don't construct a string just for its length b07b5fc1 SystemTools: Take a string in GetShortPath 153f6df7 SystemTools: Use strings in ComparePath 2c2f6604 SystemTools: Accept strings in IsSubDirectory 84db9ee5 SystemTools: Take strings in AddTranslationPath 4b409aa4 SystemTools: Take strings in SplitPath d2dbff07 SystemTools: Take strings in CollapseFullPath e9204f8f SystemTools: Take strings in AddKeepPath 3254681a SystemTools: Reserve memory in JoinPath 6074f33f SystemTools: Use static strings in SystemToolsAppendComponents Change-Id: I53c7a1005206dba43ee785bf807c478bf146ca0e
* | | | | | Merge topic 'WriteCompilerDetectionHeader-module'Brad King2014-05-1440-0/+682
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 62a4a67d Add the WriteCompilerDetectionHeader module.
| * | | | | | Add the WriteCompilerDetectionHeader module.Stephen Kelly2014-05-1440-0/+682
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide a function to write a portable header to detect compiler features. Generate a preprocessor #error for unknown compilers and compiler versions whose features are not yet recorded. This error condition might be relaxed in the future, but for now it is useful for verification of expectations.
* | | | | | | Merge branch 'release'Brad King2014-05-140-0/+0
|\ \ \ \ \ \ \ | | |_|_|_|/ / | |/| | | | |
| * | | | | | CMake 3.0.0-rc5v3.0.0-rc5Brad King2014-05-131-1/+1
| | |_|_|/ / | |/| | | |
* | | | | | CMake Nightly Date StampKitware Robot2014-05-141-1/+1
| |_|/ / / |/| | | |
* | | | | Merge topic 'FindGTest-add_test-signature'Brad King2014-05-131-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 293bcf7a FindGTest: use new add_test() signature (#14913)
| * | | | | FindGTest: use new add_test() signature (#14913)Rolf Eike Beer2014-05-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | This allows to use target names as executables.
* | | | | | Merge branch 'release'Brad King2014-05-130-0/+0
|\ \ \ \ \ \ | | |/ / / / | |/| | | |
| * | | | | Merge branch 'ninja-intel-linux' into releaseBrad King2014-05-091-2/+4
| |\ \ \ \ \
| * \ \ \ \ \ Merge branch 'backport-target-property-policy-context' into releaseBrad King2014-05-097-20/+38
| |\ \ \ \ \ \
* | | | | | | | CMake Nightly Date StampKitware Robot2014-05-131-1/+1
| |_|_|/ / / / |/| | | | | |
* | | | | | | Merge topic 'package-disable-registry'Brad King2014-05-1212-6/+135
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ba387cb8 Help: Add notes for topic 'package-disable-registry' be8ae960 Allow the Package Registry to be disabled (#14849) d09fda5d Tests: Improve FindPackageTest for in-source builds ac24a1c0 Tests: Improve FindPackageTest exported package version
| * | | | | | | Help: Add notes for topic 'package-disable-registry'Brad King2014-05-121-0/+11
| | | | | | | |
| * | | | | | | Allow the Package Registry to be disabled (#14849)Daniele E. Domenichelli2014-05-1210-4/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a project is packaged for redistribution the local package registries should not be updated or consulted. They are for developers. Add variables to disable use of package registries globally: * CMAKE_EXPORT_NO_PACKAGE_REGISTRY that disables the export(PACKAGE) command * CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY that disables the User Package Registry in all the find_package calls. * CMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY that disables the System Package Registry in all the find_package calls. Update documentation and unit tests.
| * | | | | | | Tests: Improve FindPackageTest for in-source buildsBrad King2014-05-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use a different directory name for the Exporter build tree so that it is out-of-source even when the main test is in-source.
| * | | | | | | Tests: Improve FindPackageTest exported package versionBrad King2014-05-122-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a random version component so that the test is unlikely to conflict with other tests of the same CMake version on the same machine.
* | | | | | | | Merge topic 'features-gnu-oldest-supported'Brad King2014-05-121-10/+9
|\ \ \ \ \ \ \ \ | | |_|_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | f782417b Features: Record the oldest supported compiler.