8d1b37a | Brad King | 10 February 2016, 14:23:57 UTC | CMake 3.5.0-rc2 | 10 February 2016, 14:23:57 UTC |
b162dd9 | Brad King | 09 February 2016, 18:26:50 UTC | Merge branch 'curl-pre-7.21.5' into release | 09 February 2016, 18:26:50 UTC |
1ea55ac | Brad King | 09 February 2016, 18:20:39 UTC | cmCurl: Fix compilation with system curl versions prior to 7.21.5 This version introduced CURLE_NOT_BUILT_IN which we have used since commit v3.4.0-rc1~211^2~4 (cmCurl: Tolerate lack of CURLOPT_CAPATH support, 2015-08-12). For older versions, just define the name to the then-unused error code so that we can compile. | 09 February 2016, 18:24:19 UTC |
5b06896 | Brad King | 09 February 2016, 15:35:53 UTC | Merge branch 'wix-prevent-nsis-overwrite' into release | 09 February 2016, 15:35:53 UTC |
a12b0f1 | Nils Gladitz | 07 February 2016, 19:25:56 UTC | CMake: Prevent WiX installations over existing NSIS installations Use a custom action to look for Uninstall.exe in the user selected installation prefix. Its presence indicates a previous NSIS installation. Inform the user and request manual resolution of the issue. | 09 February 2016, 15:28:57 UTC |
0570b4e | Brad King | 08 February 2016, 18:23:45 UTC | Merge branch 'fix-target-lookup-performance-regression' into release | 08 February 2016, 18:23:45 UTC |
9b7d587 | Brad King | 08 February 2016, 17:50:56 UTC | Improve internal generator target structure lookup In commit v3.5.0-rc1~272^2~6 (cmGlobalGenerator: Add FindGeneratorTarget API, 2015-10-25) a lookup was implemented via linear search. Replace it with an efficient data structure. Suggested-by: Stephen Kelly <steveire@gmail.com> | 08 February 2016, 18:08:11 UTC |
6cbf6a5 | Brad King | 08 February 2016, 17:37:47 UTC | Fix internal target lookup performance regression Refactoring in commit v3.5.0-rc1~272^2~13 (cmGlobalGenerator: Remove direct storage of targets, 2015-10-25) replaced an efficient data structure mapping from target name to cmTarget instance with a linear search. Lookups through cmGlobalGenerator::FindTarget are done a lot. Restore the efficient mapping structure with a name indicating its purpose. Reported-by: Bartosz Kosiorek <gang65@poczta.onet.pl> | 08 February 2016, 18:08:11 UTC |
656bf0d | Brad King | 08 February 2016, 15:46:42 UTC | Merge branch 'fix-install-EXPORT-crash' into release | 08 February 2016, 15:46:42 UTC |
a1ad098 | Brad King | 08 February 2016, 15:44:43 UTC | Tests: Avoid OS X 10.5 limitation warning in RunCMake.install test The EXPORT-OldIFace test case uses install(TARGETS) and so generates a warning: CMake Warning in CMakeLists.txt: WARNING: Target "foo" has runtime paths which cannot be changed during install. To change runtime paths, OS X version 10.6 or newer is required. Therefore, runtime paths will not be changed when installing. CMAKE_BUILD_WITH_INSTALL_RPATH may be used to work around this limitation. Set CMAKE_BUILD_WITH_INSTALL_RPATH to avoid the warning since we do not need to run the binaries from the build tree anyway. | 08 February 2016, 15:44:43 UTC |
2a768f8 | Brad King | 08 February 2016, 15:35:59 UTC | Merge branch 'test-ctest_submit-update' into release | 08 February 2016, 15:35:59 UTC |
98d6d8f | Brad King | 08 February 2016, 15:35:51 UTC | Merge branch 'install-man-conditionally' into release | 08 February 2016, 15:35:51 UTC |
024c4ea | Brad King | 08 February 2016, 15:35:45 UTC | Merge branch 'fix-doc-typos' into release | 08 February 2016, 15:35:45 UTC |
52a81d6 | Brad King | 08 February 2016, 15:35:41 UTC | Merge branch 'ExternalProject-build-config-compat' into release | 08 February 2016, 15:35:41 UTC |
cb40969 | Brad King | 08 February 2016, 15:35:30 UTC | Merge branch 'fix-Fortran-module-in-subdir' into release | 08 February 2016, 15:35:30 UTC |
a3b91d1 | Horst Kronstorfer | 08 February 2016, 11:55:25 UTC | Help: Fix command specification for cmake_minimum_required Implementation indicates that at least two components of VERSION must be specified (see Source/cmCMakeMinimumRequired.cxx.) Therefore the minor version is not optional. | 08 February 2016, 14:52:56 UTC |
d8c9080 | Paul Wilkinson | 07 February 2016, 20:46:27 UTC | Help: Fix mistake in cmake-buildsystem(7) example The COMPATIBLE_INTERFACE_NUMBER_MAX example now sets INTERFACE_CONTAINER_SIZE_REQUIRED on lib1Version2 and lib1Version3. Previously set it on lib1Version2 twice and never on lib1Version3. | 08 February 2016, 14:51:37 UTC |
8282547 | Brad King | 08 February 2016, 14:37:24 UTC | Install ccmake.1 and cmake-gui.1 conditionally with their tools (#15957) | 08 February 2016, 14:38:18 UTC |
2859d9e | Orion Poplawski | 08 February 2016, 14:22:54 UTC | Tests: Extend ctest_submit host lookup failure matching (#15958) Match this message: Could not resolve host: -no-site-; Name or service not known ^^^^^^^^^^^^^^^^^^^^^^^^^^^ | 08 February 2016, 14:25:21 UTC |
1b9d15c | Brad King | 05 February 2016, 19:18:01 UTC | ExternalProject: Be compatible with projects setting CMAKE_CFG_INTDIR Since commit v3.5.0-rc1~32^2~1 (ExternalProject: Simplify `cmake --build` configuration passing, 2016-01-19) we use the `$<CONFIG>` generator expression to generate the `cmake --build . --config <config>` value for the default BUILD_COMMAND instead of the CMAKE_CFG_INTDIR placeholder value provided by multi-config generators. However, some projects have been abusing the old implementation detail by setting CMAKE_CFG_INTDIR themselves to get a specific configuration. Those projects should be updated to set their own BUILD_COMMAND to get non-default behavior. Meanwhile we can be compatible with their existing releases by detecting when CMAKE_CFG_INTDIR is not a generator-provided placeholder and using its value instead. | 05 February 2016, 19:43:16 UTC |
47460f3 | Brad King | 04 February 2016, 16:45:54 UTC | install(EXPORT): Fix crash on target in another directory Refactoring merged by commit v3.5.0-rc1~299 (Merge topic 'use-generator-target', 2015-10-20) in and around commit v3.5.0-rc1~299^2~13 (cmExportSet: Store a cmGeneratorTarget, 2015-10-17) changed export sets to delay looking up actual targets and stores only their names. However, in InstallCommand::HandleExportMode we need to lookup targets immediately to check them for EXPORT_LINK_INTERFACE_LIBRARIES. The check was accidentally made local to the current directory, so if an export set contains a target from another directory the lookup fails and CMake crashes. Fix the check to look up the target name globally, and tolerate when no target is found just in case. Reported-by: Kelly Thompson <kgt@lanl.gov> | 05 February 2016, 14:45:16 UTC |
e86383e | Brad King | 05 February 2016, 14:40:13 UTC | Tests: Use newer policy settings in RunCMake.install test In particular, avoid CMP0042 warnings on OS X. | 05 February 2016, 14:44:26 UTC |
c5eb21b | Brad King | 05 February 2016, 13:55:15 UTC | Fix dependency scanning configuration in subdirectories Refactoring in commit v3.5.0-rc1~347^2~2 (Set the current dirs on the snapshot before creating the cmMakefile) accidentally changed the source and binary directories configured in `cmake -E cmake_depends` for use during dependency scanning. This can cause the wrong directory information to be loaded. It also breaks Fortran module dependency scanning for modules provided by targets in subdirectories that do not have Fortran_MODULE_DIRECTORY set. Fix the dependency scanning directory configuration and add a test to cover the Fortran module case in which the breakage was observed. Reported-by: Kelly Thompson <kgt@lanl.gov> | 05 February 2016, 14:26:44 UTC |
8a8d22c | Brad King | 02 February 2016, 13:37:05 UTC | CMake 3.5.0-rc1 version update | 02 February 2016, 13:37:05 UTC |
021a74a | Brad King | 02 February 2016, 13:34:47 UTC | Help: Drop development topic notes to prepare release Release versions do not have the development topic section of the CMake Release Notes index page. | 02 February 2016, 13:34:47 UTC |
a5a5a68 | Brad King | 02 February 2016, 13:33:25 UTC | Merge topic 'doc-3.5-relnotes' ad701d9f Help: Organize and revise 3.5 release notes 377a12b2 Help: Consolidate 3.5 release notes | 02 February 2016, 13:33:25 UTC |
570e84b | Brad King | 02 February 2016, 13:33:23 UTC | Merge topic 'remove-stray-semicolon' ccb2d5c0 cmAlgorithms.h: remove superfluous semicolon after method | 02 February 2016, 13:33:23 UTC |
f8e5e5b | Brad King | 02 February 2016, 13:33:20 UTC | Merge topic 'fix-CMAKE_MATCH-self-match' 6ffc4323 cmConditionEvaluator: Fix matching of `CMAKE_MATCH_*` values (#15944) | 02 February 2016, 13:33:20 UTC |
6a230df | Kitware Robot | 02 February 2016, 05:01:05 UTC | CMake Nightly Date Stamp | 02 February 2016, 05:01:05 UTC |
ad701d9 | Brad King | 01 February 2016, 18:38:00 UTC | Help: Organize and revise 3.5 release notes Add section headers similar to the 3.4 release notes and move each individual bullet into an appropriate section. Revise a few bullets. | 01 February 2016, 18:38:36 UTC |
377a12b | Brad King | 01 February 2016, 17:47:27 UTC | Help: Consolidate 3.5 release notes Move all development release notes into a new version-specific document: tail -q -n +3 Help/release/dev/* > Help/release/3.5.rst git rm -- Help/release/dev/* except the sample topic: git checkout HEAD -- Help/release/dev/0-sample-topic.rst Reference the new document from the release notes index document. Add a title and intro sentence to the new document by hand. | 01 February 2016, 17:50:43 UTC |
ccb2d5c | Christoph Grüninger | 29 January 2016, 21:16:03 UTC | cmAlgorithms.h: remove superfluous semicolon after method | 01 February 2016, 15:47:25 UTC |
adc3d12 | Brad King | 01 February 2016, 15:43:57 UTC | Merge topic 'doc-cmake-developer-typo' 6f83db1c Help: Fix typo in `cmake-developer(7)` manual | 01 February 2016, 15:43:57 UTC |
5ee96fc | Brad King | 01 February 2016, 15:43:54 UTC | Merge topic 'FindGit-updates' fa78ee97 FindGit: Improve documentation formatting facfb52c FindGit: Document Git_FOUND, unset internal var | 01 February 2016, 15:43:54 UTC |
c022b6f | Brad King | 01 February 2016, 15:43:51 UTC | Merge topic 'clarify-add_custom_command-TARGET-scope' d257d681 add_custom_command: Clarify error when TARGET is out of scope (#15681) 4d53e0a7 Help: Clarify `add_custom_command(TARGET)` scope (#15681) 8c615af4 Help: Clarify policy `CMP0040` documentation (#15681) 63c5808f Help: Clarify scope of `if(TARGET)` expression a336e438 Help: Improve markup in `if` command documentation 88968265 Help: Improve markup in `get_target_property` documentation | 01 February 2016, 15:43:51 UTC |
6f83db1 | Prayag Verma | 31 January 2016, 19:03:56 UTC | Help: Fix typo in `cmake-developer(7)` manual Fix spelling mistake `sytem` => `system`. | 01 February 2016, 15:36:25 UTC |
6ffc432 | Brad King | 01 February 2016, 14:49:08 UTC | cmConditionEvaluator: Fix matching of `CMAKE_MATCH_*` values (#15944) While evaluating `if(MATCHES)` we get a `const char*` pointer to the string to be matched. On code like if(CMAKE_MATCH_COUNT MATCHES "Y") the string to be matched may be owned by our own result variables. We must move the value to our own buffer before clearing them. Otherwise we risk reading freed storage. | 01 February 2016, 15:05:10 UTC |
e18d0df | Kitware Robot | 01 February 2016, 05:01:03 UTC | CMake Nightly Date Stamp | 01 February 2016, 05:01:03 UTC |
13b4ef2 | Kitware Robot | 31 January 2016, 05:01:03 UTC | CMake Nightly Date Stamp | 31 January 2016, 05:01:03 UTC |
f270404 | Kitware Robot | 30 January 2016, 05:01:03 UTC | CMake Nightly Date Stamp | 30 January 2016, 05:01:03 UTC |
76a51df | Kitware Robot | 29 January 2016, 05:01:04 UTC | CMake Nightly Date Stamp | 29 January 2016, 05:01:04 UTC |
d257d68 | Brad King | 28 January 2016, 15:12:26 UTC | add_custom_command: Clarify error when TARGET is out of scope (#15681) The add_custom_command(TARGET) signature only works for targets defined in the current directory. Clarify this in the error message when the target exists but was defined elsewhere. Inspired-by: Bartosz Kosiorek <gang65@poczta.onet.pl> | 28 January 2016, 15:33:26 UTC |
4d53e0a | Bartosz Kosiorek | 28 January 2016, 09:52:15 UTC | Help: Clarify `add_custom_command(TARGET)` scope (#15681) | 28 January 2016, 15:13:27 UTC |
8c615af | Bartosz Kosiorek | 28 January 2016, 09:52:15 UTC | Help: Clarify policy `CMP0040` documentation (#15681) State explicitly that the target must be defined in the current directory. While at it, improve markup formatting. | 28 January 2016, 15:13:18 UTC |
63c5808 | Bartosz Kosiorek | 28 January 2016, 09:52:15 UTC | Help: Clarify scope of `if(TARGET)` expression | 28 January 2016, 15:13:17 UTC |
a336e43 | Bartosz Kosiorek | 28 January 2016, 09:52:15 UTC | Help: Improve markup in `if` command documentation | 28 January 2016, 15:12:51 UTC |
8896826 | Bartosz Kosiorek | 28 January 2016, 09:52:15 UTC | Help: Improve markup in `get_target_property` documentation | 28 January 2016, 15:12:50 UTC |
5335d27 | Kitware Robot | 28 January 2016, 05:01:04 UTC | CMake Nightly Date Stamp | 28 January 2016, 05:01:04 UTC |
656768c | Brad King | 27 January 2016, 14:47:57 UTC | Merge topic 'UseJava-fix-doc-typo' 1053db7b UseJava: Fix documented name of `CLASSDIR` property (#15936) | 27 January 2016, 14:47:57 UTC |
fa78ee9 | Brad King | 27 January 2016, 14:23:48 UTC | FindGit: Improve documentation formatting | 27 January 2016, 14:26:27 UTC |
facfb52 | Christoph Grüninger | 26 January 2016, 20:53:16 UTC | FindGit: Document Git_FOUND, unset internal var * Git is called Git, not git. * FindGit sets Git_FOUND, too. * Unset internal variable git_names | 27 January 2016, 14:21:56 UTC |
30e294f | Kitware Robot | 27 January 2016, 05:01:03 UTC | CMake Nightly Date Stamp | 27 January 2016, 05:01:03 UTC |
1053db7 | Brad King | 26 January 2016, 14:27:21 UTC | UseJava: Fix documented name of `CLASSDIR` property (#15936) It is not `CLASS_DIR`. | 26 January 2016, 14:27:21 UTC |
e7eab0e | Kitware Robot | 26 January 2016, 05:01:13 UTC | CMake Nightly Date Stamp | 26 January 2016, 05:01:13 UTC |
c4e1bc6 | Brad King | 25 January 2016, 18:23:05 UTC | Merge branch 'release' | 25 January 2016, 18:23:05 UTC |
0aef6f2 | Brad King | 25 January 2016, 14:50:47 UTC | CMake 3.4.3 | 25 January 2016, 14:50:47 UTC |
f9cc671 | Brad King | 25 January 2016, 14:49:53 UTC | Merge branch 'release' | 25 January 2016, 14:49:53 UTC |
0586f17 | Brad King | 25 January 2016, 14:47:11 UTC | Merge topic 'vs-win10-sdk' d7e863c1 VS: Do not fail on Windows 10 with VS 2015 if no SDK is available (#15929) | 25 January 2016, 14:47:11 UTC |
9722f8f | Brad King | 25 January 2016, 14:47:08 UTC | Merge topic 'FindBoost-1.61' b94e855d FindBoost: Add support for Boost 1.61 | 25 January 2016, 14:47:08 UTC |
b9dadca | Kitware Robot | 25 January 2016, 05:01:03 UTC | CMake Nightly Date Stamp | 25 January 2016, 05:01:03 UTC |
490483b | Kitware Robot | 24 January 2016, 05:01:03 UTC | CMake Nightly Date Stamp | 24 January 2016, 05:01:03 UTC |
4a3fa1e | Kitware Robot | 23 January 2016, 05:01:04 UTC | CMake Nightly Date Stamp | 23 January 2016, 05:01:04 UTC |
1d9c539 | Brad King | 22 January 2016, 14:25:36 UTC | Merge topic 'test-fltk_wrap_ui' f98ae28e Tests: Cover fltk_wrap_ui on an executable that links libraries | 22 January 2016, 14:25:36 UTC |
ddb09ec | Brad King | 22 January 2016, 14:25:33 UTC | Merge topic 'FindPNG-imported-targets' 9b08c623 FindPNG: Create an imported PNG::PNG target (#15911) | 22 January 2016, 14:25:33 UTC |
dcf977e | Brad King | 22 January 2016, 14:25:30 UTC | Merge topic 'fix-use-generator-target' 7dbfdddf cmExportInstallFileGenerator: Fix crash in FindNamespaces | 22 January 2016, 14:25:30 UTC |
666487a | Brad King | 22 January 2016, 14:25:27 UTC | Merge topic 'fix-pkg_search_module-cache' 40249bcc FindPkgConfig: set standard variables in the cache | 22 January 2016, 14:25:27 UTC |
b94e855 | Sergei Nikulov | 22 January 2016, 07:50:25 UTC | FindBoost: Add support for Boost 1.61 | 22 January 2016, 13:35:04 UTC |
f81ccc5 | Kitware Robot | 22 January 2016, 05:01:03 UTC | CMake Nightly Date Stamp | 22 January 2016, 05:01:03 UTC |
9b08c62 | Sam Thursfield | 19 January 2016, 17:43:05 UTC | FindPNG: Create an imported PNG::PNG target (#15911) Imported targets are now the recommended way of dealing with external library dependencies. Add one for FindPNG and update documentation accordingly. Also add a test case activated by CMake_TEST_FindPNG. | 21 January 2016, 18:58:15 UTC |
3e7794a | Brad King | 21 January 2016, 18:55:53 UTC | Merge topic 'reduce-allocations' 70788e92 Remove temporary allocations when calling cmHasLiteral{Suf,Pre}fix. bd2384f5 Optimize cmMakefile::ExpandVariablesInStringNew. ad9394f4 Remove temporary allocations in cmMacroHelper::InvokeInitialPass. f9599ed4 Remove temporary allocations by extending the lifetime of the retval. 275f2a85 Remove temporary allocations when calling cmGeneratorTarget::GetName. | 21 January 2016, 18:55:53 UTC |
aaf06f2 | Brad King | 21 January 2016, 18:55:50 UTC | Merge topic 'add-FindXalanC' f9e45ab9 FindXalanC: New module to find the Apache Xalan-C++ library | 21 January 2016, 18:55:50 UTC |
563a6c7 | Brad King | 21 January 2016, 18:55:47 UTC | Merge topic 'cmake-E-time-quoting' 1787269e cmake: Fix `-E time` argument passing to child | 21 January 2016, 18:55:47 UTC |
071c94e | Brad King | 21 January 2016, 18:55:44 UTC | Merge topic 'ExternalProject-ctest-config' ec00e89e ExternalProject: Fix TEST_BEFORE_INSTALL for multi-config generators 5d739a3c ExternalProject: Simplify `cmake --build` configuration passing | 21 January 2016, 18:55:44 UTC |
1846765 | Brad King | 21 January 2016, 18:55:41 UTC | Merge topic 'GetPrerequisites-ms-ucrt' c8daac35 GetPrerequisites: Define api-ms-win-* files as system libraries (#15691) | 21 January 2016, 18:55:41 UTC |
f98ae28 | Brad King | 21 January 2016, 18:42:46 UTC | Tests: Cover fltk_wrap_ui on an executable that links libraries CMake 3.4 may crash on this case. The problem seems to have been fixed since then, but keep it working by adding a test case now. Reported-by: Gonzalo Garramuño <ggarra13@gmail.com> | 21 January 2016, 18:42:46 UTC |
7b8bec7 | Brad King | 21 January 2016, 18:06:30 UTC | Merge branch 'vs-win10-sdk' into release | 21 January 2016, 18:06:30 UTC |
d7e863c | Brad King | 21 January 2016, 16:44:17 UTC | VS: Do not fail on Windows 10 with VS 2015 if no SDK is available (#15929) Since commit v3.4.0-rc1~5^2~1 (VS: Add support for selecting the Windows 10 SDK, 2015-09-30) the VS 2015 generator requires a Windows 10 SDK to be available when CMAKE_SYSTEM_VERSION specifies Windows 10 (e.g. when building on a Windows 10 host). Howewver, it is possible to install VS 2015 without any Windows 10 SDK. Instead of failing with an error message about the lack of a Windows 10 SDK, simply tolerate this case and use the default Windows 8.1 SDK. Since building for Windows Store still requires the SDK, retain the diagnostic in that case. | 21 January 2016, 16:50:28 UTC |
7dbfddd | Andrey Pokrovskiy | 21 January 2016, 02:29:58 UTC | cmExportInstallFileGenerator: Fix crash in FindNamespaces Refactoring merged by commit 9afbb733ec (Merge topic 'use-generator-target', 2015-10-20) in and around commit 381e7afd (cmExportSet: Store a cmGeneratorTarget, 2015-10-17) forgot to update one place in this method. This leads to a crash in code such as add_library(A a.c) add_library(B b.c) target_link_libraries(B A) install(TARGETS B DESTINATION lib EXPORT ExpB) install(EXPORT ExpB DESTINATION lib/cmake/test) add_executable(C c.c) install(TARGETS C DESTINATION bin EXPORT ExpC) Fix the target name reference to avoid using an unpopulated Target pointer. | 21 January 2016, 15:53:30 UTC |
40249bc | Ben Boeckel | 20 January 2016, 19:38:05 UTC | FindPkgConfig: set standard variables in the cache Fixes a regression introduced when the code was simplified to use the variable queries. Fixes #15903. Reported-by: Bernd Lörwald | 21 January 2016, 15:38:30 UTC |
750ae8d | Kitware Robot | 21 January 2016, 05:01:04 UTC | CMake Nightly Date Stamp | 21 January 2016, 05:01:04 UTC |
70788e9 | Milian Wolff | 15 January 2016, 13:55:22 UTC | Remove temporary allocations when calling cmHasLiteral{Suf,Pre}fix. When the first argument passed is a std::string, we need to take it by const&, otherwise we copy the string and trigger a temporary allocation. This patch removes a few 10k temporary allocations when running the CMake daemon on the KDevelop build dir. This hotspot was found with heaptrack. | 20 January 2016, 20:20:55 UTC |
bd2384f | Milian Wolff | 15 January 2016, 13:37:25 UTC | Optimize cmMakefile::ExpandVariablesInStringNew. We can remove the temporary allocations required for the default-constructed t_lookup passed into the openstack by refactoring the code slightly. Furthermore, we use a vector instead of a stack, since the latter is based on a deque which is not required for a heap / lifo structure. This patch removes ~215k allocations. This hotspot was found with heaptrack. | 20 January 2016, 20:20:55 UTC |
ad9394f | Milian Wolff | 15 January 2016, 13:19:33 UTC | Remove temporary allocations in cmMacroHelper::InvokeInitialPass. This code used to convert std::string's to raw C strings only to put that back into a std::string. This patch thus removes ~70k temporary allocations when running the CMake daemon on KDevelop. This hotspot was found with heaptrack. | 20 January 2016, 20:20:55 UTC |
f9599ed | Milian Wolff | 15 January 2016, 13:17:29 UTC | Remove temporary allocations by extending the lifetime of the retval. See also Herb Sutter's article on the "most important const": http://herbsutter.com/2008/01/01/gotw-88-a-candidate-for-the-most-important-const/ When running the CMake daemon on the KDevelop build dir, this removes some hundreds of thousands of temporary allocations. This hotspot was found with heaptrack. | 20 January 2016, 20:20:55 UTC |
275f2a8 | Milian Wolff | 15 January 2016, 13:06:45 UTC | Remove temporary allocations when calling cmGeneratorTarget::GetName. This happens quite often from within comparisons such as in NamedGeneratorTargetFinder or FindGeneratorTargetImpl. It is the top hotspot of both, number of allocations as well as number of temporary allocations - the majority of calls lead to temporary allocations. In raw numbers, this patch removes ~1E6 temporary allocations of 1.5E6 temporary allocations in total when running the cmake daemon on the KDevelop build dir. That is 2/3 of the total. This hotspot was found with heaptrack. | 20 January 2016, 20:20:54 UTC |
f9e45ab | Roger Leigh | 19 January 2016, 13:32:38 UTC | FindXalanC: New module to find the Apache Xalan-C++ library | 20 January 2016, 14:33:38 UTC |
1787269 | Brad King | 20 January 2016, 13:45:55 UTC | cmake: Fix `-E time` argument passing to child Since this command was introduced in 2002 it has incorrectly constructed the child process command line by concatenating arguments separated by spaces with no quoting. Fix this by passing the command argument vector directly to RunSingleCommand without an intermediate quoting and re-parsing step. Reported-by: Andrey Pokrovskiy <wonder.mice@gmail.com> | 20 January 2016, 13:55:23 UTC |
ec00e89 | Brad King | 19 January 2016, 21:09:29 UTC | ExternalProject: Fix TEST_BEFORE_INSTALL for multi-config generators In multi-config generators we must tell `ctest` what configuration to test. Reported-by: Taylor Braun-Jones <taylor@braun-jones.org> | 20 January 2016, 13:36:30 UTC |
5d739a3 | Brad King | 19 January 2016, 21:07:28 UTC | ExternalProject: Simplify `cmake --build` configuration passing Check CMAKE_CONFIGURATION_TYPES instead of CMAKE_CFG_INTDIR in order to recognize multi-config generators. Then use $<CONFIG> to pass the configuration value. | 20 January 2016, 13:36:09 UTC |
d8bced8 | Brad King | 20 January 2016, 13:33:41 UTC | Merge topic 'cleanup-RunSingleCommand' 1040e690 cmSystemTools: Teach RunSingleCommand to merge child pipes when possible ce3b713b cmSystemTools: Simplify RunSingleCommand output string construction dc039cc0 cmSystemTools: Drop redundant condition in RunSingleCommand ffa2a8c9 cmSystemTools: Rename OUTPUT_NORMAL to OUTPUT_FORWARD to clarify its purpose 92e9bb21 cmcmd.cxx: Remove unused code in __run_iwyu implementation fb1526f5 cmake: Change `-E chdir` to pass through stdout/stderr directly | 20 January 2016, 13:33:41 UTC |
ae5f30b | Brad King | 20 January 2016, 13:33:38 UTC | Merge topic 'mfc-utility-targets' a15e375c Fix MFC setting on utility targets (#15867) | 20 January 2016, 13:33:38 UTC |
184be68 | Brad King | 20 January 2016, 13:33:35 UTC | Merge topic 'cache-parse-error-line-number' 77cd74a3 Print line number of cache parse errors (#11109) | 20 January 2016, 13:33:35 UTC |
606ad17 | Brad King | 20 January 2016, 13:33:32 UTC | Merge topic 'java-updates' 18c3714f UseJava: Fix create_javah CLASSPATH handling on Windows | 20 January 2016, 13:33:32 UTC |
211d097 | Brad King | 20 January 2016, 13:33:27 UTC | Merge topic 'FindPkgConfig-protect-semicolons' 53511936 FindPkgConfig: Quote ${_pkgconfig_path} to protect semicolons on Windows | 20 January 2016, 13:33:27 UTC |
15fe480 | Kitware Robot | 20 January 2016, 05:01:12 UTC | CMake Nightly Date Stamp | 20 January 2016, 05:01:12 UTC |
a15e375 | Clinton Stimpson | 19 January 2016, 21:01:08 UTC | Fix MFC setting on utility targets (#15867) Multi-byte MFC is deprecated, and some projects will not compile if MFC is enabled. | 19 January 2016, 21:04:15 UTC |
1040e69 | Brad King | 14 January 2016, 21:11:23 UTC | cmSystemTools: Teach RunSingleCommand to merge child pipes when possible Audit the code to make sure there are no callers that use OUTPUT_MERGE with separate capture strings. Then change RunSingleCommand to implement output merging by giving the child process a single pipe for both its stdout and stderr descriptors. This will more cleanly merge the content on atomic write boundaries in the child instead of on arbitrary buffering boundaries in the parent. | 19 January 2016, 20:55:05 UTC |
ce3b713 | Brad King | 14 January 2016, 21:11:00 UTC | cmSystemTools: Simplify RunSingleCommand output string construction Assign to the result strings instead setting to empty and appending. The old approach was left from when we directly buffered output in the strings. | 19 January 2016, 20:51:00 UTC |
dc039cc | Brad King | 14 January 2016, 21:14:25 UTC | cmSystemTools: Drop redundant condition in RunSingleCommand The output processing loop is already guarded by a condition so we do not need to repeat the condition inside the loop. | 19 January 2016, 20:49:48 UTC |
ffa2a8c | Brad King | 14 January 2016, 19:54:58 UTC | cmSystemTools: Rename OUTPUT_NORMAL to OUTPUT_FORWARD to clarify its purpose The OUTPUT_NORMAL value is not really "normal" and has only one caller. Rename it to OUTPUT_FORWARD to clarify that we are explicitly forwarding the output. | 19 January 2016, 20:47:48 UTC |