summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'bootstrap-cmake-locations' into releaseBrad King2014-06-252-4/+12
|\
| * bootstrap: Fix "make test" and "make package" targets (#14989)Brad King2014-06-252-0/+8
| | | | | | | | | | | | | | | | | | Since commit v3.0.0-rc1~374^2 (Refactor internal resource location APIs and initialization, 2013-11-07) a bootstrap-built "cmake" tries to reference "ctest" and "cpack" executables next to itself, which never exist. Teach cmSystemTools::FindCMakeResources, when bootstrap-built, to refer to the "ctest" and "cpack" executables in the location where they will be built after "make".
| * bootstrap: Clarify name of configured source directoryBrad King2014-06-252-4/+4
| | | | | | | | | | Rename CMAKE_ROOT_DIR to CMAKE_BOOTSTRAP_SOURCE_DIR to clarify both that it is only for bootstrap and that it refers to the source directory.
* | Merge branch 'gfortran-compressed-modules' into releaseBrad King2014-06-231-14/+27
|\ \
| * | Fortran: Add support for GNU >= 4.9 compressed modules (#14975)Brad King2014-06-231-14/+27
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | From the GCC 4.9 release notes for Fortran: https://gcc.gnu.org/gcc-4.9/changes.html "Module files: The version of the module files (.mod) has been incremented; additionally, module files are now compressed." Teach cmDependsFortran::ModulesDiffer to look for the gzip magic numbers at the beginning of the module file. If found, assume the module was produced by gfortran >= 4.9. The modules do not appear to contain the date as earlier versions did so we can compare the content directly and do not actually need to decompress.
* | Merge branch 'ninja-avoid-double-phony' into releaseBrad King2014-06-161-0/+9
|\ \
| * | Ninja: Remove CMake includes from explicit depends (#14972)Adam Strzelecki2014-06-161-0/+9
| |/ | | | | | | | | | | | | | | | | | | It may happen that CMake include is an explicit dependency for some command, while all CMake includes are set phony in WriteTargetRebuildManifest, this may lead to duplicate phony generate rules which causes ninja warnings. We need to remove implicit CMake includes in WriteUnknownExplicitDependencies. This fixes FindCUDA ninja warnings.
* | Merge branch 'backport-fix-read-after-free' into releaseBrad King2014-06-121-5/+13
|\ \ | |/ |/|
| * cmake: Fix read-after-free while checking command-line argumentsBrad King2014-06-121-5/+13
| | | | | | | | | | | | | | | | Since commit v2.8.12~300^2~1 (CLI: Suppress the unused warning if the key value pair is cached, 2013-05-16), cmake::SetCacheArgs saves a cachedValue pointer and may cause the memory to be freed (by setting the cache entry) before reading it again. Fix this by saving the old value in a separate string.
* | CMake 3.0.0v3.0.0Brad King2014-06-091-1/+1
|/
* Merge branch 'hpux-libarchive-compile' into releaseBrad King2014-06-091-12/+14
|\
| * libarchive: fix compilation on newer HP-UX versionsRolf Eike Beer2014-06-091-12/+14
|/ | | | | | | Newer HP-UX versions (e.g. 11.31) also offers F_SETTIMES, but with a different struct for the timing information. Suggested-by: Eric Berge <ericmberge@gmail.com>
* Merge branch 'fix-ctest-option-summary' into releaseBrad King2014-06-051-1/+2
|\
| * CTest: Added option description for --output-on-failureNils Gladitz2014-06-051-1/+2
| | | | | | | | Without it the option list is cut short after --debug.
* | Merge branch 'fix-build-crash-on-bad-generator' into releaseBrad King2014-06-0310-1/+21
|\ \
| * | cmake: Fix --build crash on bad CMAKE_GENERATOR in cacheBrad King2014-06-0310-1/+21
| |/ | | | | | | | | | | | | | | | | | | If we fail to create the generator named by CMAKE_GENERATOR, exit with an error message instead of crashing. While at it, fix the wording of the error message when CMAKE_GENERATOR is not set. Extend the RunCMake.CommandLine test with cases covering the "cmake --build" option when the named directory does not provide a CMakeCache.txt with a valid CMAKE_GENERATOR.
* | Merge branch 'cmake-credits' into releaseBrad King2014-06-031-1/+1
|\ \
| * | Simplify and clarify credit text and linkBrad King2014-06-031-1/+1
| | | | | | | | | | | | | | | Use the name "Kitware" rather than "Kitware, Inc." to simplify the text. Provide a CMake-specific URL.
* | | Merge branch 'cmake-credits' into releaseBrad King2014-06-033-5/+5
|\ \ \ | |/ /
| * | Simplify and clarify credit text and linkBrad King2014-06-033-5/+5
| |/ | | | | | | | | Use the name "Kitware" rather than "Kitware, Inc." to simplify the text. Provide a CMake-specific URL.
* | Merge branch 'doc-include-dir-props' into releaseBrad King2014-06-023-3/+45
|\ \
| * | Help: Explain build/install-tree include dirs in more places (#14946)Brad King2014-06-023-3/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Explain how to use $<BUILD_INTERFACE> and $<INSTALL_INTERFACE> directly in the documentation of the target_include_directories command and INTERFACE_INCLUDE_DIRECTORIES target property. Otherwise readers need to notice the link to the cmake-buildsystem(7) manual and find the example in that to understand the need for these expressions. Also fix the explanation in cmake-buildsystem(7) to not claim that relative paths may be used inside a BUILD_INTERFACE expression.
| * | Help: Add code example for INSTALL_INTERFACE to cmake-buildsystem.Stephen Kelly2014-06-021-1/+11
| |/
* | Merge branch 'fix-cache-self-assignment' into releaseBrad King2014-05-272-6/+5
|\ \
| * | cmCacheManager: Avoid cache entry self-assignmentBrad King2014-05-271-5/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit bef93dc5 (Couple of changes: cache variables now have a map of properties, 2002-09-11) the cmCacheManager::AddCacheDefinition method accesses its map entry by reference. However, the commit left the original entry assignment at the end of the method. With Apple Clang 5.1 and libc++ this self-assignment destroys the cache entry property map. Drop the self assignment. Also drop the condition around the call to UnwatchUnusedCli since it was a self-comparison that must always have been true.
| * | cmake: Tolerate missing HELPSTRING on compiler changeBrad King2014-05-271-1/+4
| |/ | | | | | | | | | | Teach cmake::HandleDeleteCacheVariables to tolerate a missing HELPSTRING (NULL pointer) when saving cache entries. In the absence of other bugs this should not be possible, but avoid the crash just in case.
* | Merge branch 'GNUtoMS-vs-12' into releaseBrad King2014-05-271-1/+3
|\ \ | |/ |/|
| * GNUtoMS: Add support for VS 2013 (#14936)Brad King2014-05-271-1/+3
|/ | | | | | Add to the Platform/Windows-GNU module list of VS registry entries those for VS 2013. Also add the name "vcvars64.bat" used by VS 10 and above for 64-bit tools.
* CMake 3.0.0-rc6v3.0.0-rc6Brad King2014-05-221-1/+1
|
* Merge branch 'backport-kwsys-cygwin-fixes' into releaseBrad King2014-05-202-2/+11
|\
| * KWSys Process: Workaround child kill trouble on CygwinBrad King2014-05-201-0/+6
| | | | | | | | | | | | | | | | | | When we kill a child we send SIGSTOP first so that we can traverse its child processes recursively. On unwinding the recursion we then send SIGKILL. Current Cygwin has trouble when both signals are sent in quick succession by the parent process. Add a usleep(1) after sending the first signal to give up our time slice and give Cygwin a chance to process the first signal before sending the second.
| * KWSys SystemTools: Port cygwin path conversion to modern APIBrad King2014-05-201-2/+5
| | | | | | | | | | The cygwin_conv_to_win32_path function is deprecated in favor of cygwin_conv_path. Use the latter.
* | Merge branch 'backport-fix-CMP0022-language-propagation' into releaseBrad King2014-05-192-11/+11
|\ \
| * | 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).
* | Merge branch 'FindCUDA-separable-compilation-flags' into releaseBrad King2014-05-191-0/+9
|\ \ | |/ |/|
| * FindCUDA: Use CUDA_NVCC_FLAGS* for separable compilationJames Bigler2014-05-191-0/+9
| | | | | | | | | | | | | | Previously when linking the intermediate link file for separable compilation the CUDA_NVCC_FLAGS* were not used. This caused tremendous confusion when using this feature, and I consider it to be a bug. This change should fix this.
* | Merge branch 'fix-atomic-rename-Windows-sharing-violation' into releaseBrad King2014-05-131-2/+4
|\ \ | |/ |/|
| * 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.
* | CMake 3.0.0-rc5v3.0.0-rc5Brad King2014-05-131-1/+1
|/
* Merge branch 'ninja-intel-linux' into releaseBrad King2014-05-091-2/+4
|\
| * Ninja: Fix deptype for Intel compiler on LinuxBrad King2014-05-091-2/+4
| | | | | | | | | | | | | | | | | | | | | | Since commit v3.0.0-rc1~305^2 (Ninja: deptype msvc for Intel's compiler on Windows, 2013-11-25) we used "deps = msvc" for the Intel compiler. This is correct only on Windows. On Linux we still want "deps = gcc". Fix the logic to use "deps = msvc" when the compiler id or the "simulate id" is "MSVC". This will preserve the behavior on Intel for Windows and fix the behavior on Intel for Linux. In the future this should be converted to a platform information module variable.
* | Merge branch 'backport-target-property-policy-context' into releaseBrad King2014-05-097-20/+38
|\ \ | |/ |/|
| * cmTarget: Evaluate CMP0026 in calling contextBrad King2014-05-097-10/+36
| | | | | | | | | | | | | | | | | | | | This policy should be checked at the call site that tries to access the LOCATION property, not the directory scope containing the target. Thread the caller context through cmTarget::GetProperty to use for checking the policy setting and emitting a diagnostic with proper backtrace. Extend the RunCMake.CMP0026 test with a cross-directory case.
| * cmTarget: Drop unused GetProperty signatureBrad King2014-05-092-11/+3
|/ | | | | No callers use the second "scope" argument. Drop this signature and hard-code the default parameter value internally.
* Merge branch 'vs-fix-MANIFESTUAC' into releaseBrad King2014-05-073-12/+3
|\
| * VS: Fix /MANIFESTUAC:NO linker option mappingEric Berge2014-05-073-12/+3
| | | | | | | | | | | | | | There are no versions of /MANIFESTUAC:NO where addition values are appended. Remove both of the MANIFESTUAC:NO entries from our flag tables and replace them with one which would set EnableUAC to false and immediately stop processing the /MANIFESTUAC:NO option.
* | Merge branch 'desktop-icon' into releaseBrad King2014-05-071-1/+1
|\ \
| * | cmake-gui: Fix desktop file icon configurationJohannes Huber2014-05-071-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | Drop the icon file extension. This fixes the desktop file validation message: "CMakeSetup32.png" for key "Icon" in group "Desktop Entry" is an icon name with an extension, but there should be no extension as described in the Icon Theme Specification if the value is not an absolute path Applied-by: Rolf Eike Beer <eike@sf-mail.de>
* | Merge branch 'ctest-bad-generator' into releaseBrad King2014-05-075-0/+51
|\ \
| * | ctest_build: Do not crash on bad generator nameBrad King2014-05-075-0/+51
| |/ | | | | | | | | | | | | | | | | | | If creation of the global generator fails, return early with an error message instead of trying to use the generator and crashing. Add a CTestTestBadGenerator test to cover this case. Reported-by: Mathieu Malaterre <malat@debian.org> Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=747306