This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "CMake".
The branch, next has been updated via 74a03183ffc0982cd948bf76ce84f7891b585d1e (commit) via a7c5d5fb0e8d096dfc9b6e82e93f1e0d6225fe1f (commit) from c16ab966d519e8d8cb7bb073cc9b3e8d507b5cca (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=74a03183ffc0982cd948bf76ce84f7891b585d1e commit 74a03183ffc0982cd948bf76ce84f7891b585d1e Merge: c16ab96 a7c5d5f Author: Brad King <brad.k...@kitware.com> AuthorDate: Wed Jan 11 10:50:36 2017 -0500 Commit: CMake Topic Stage <kwro...@kitware.com> CommitDate: Wed Jan 11 10:50:36 2017 -0500 Merge topic 'get_prerequisites_delayload' into next a7c5d5fb GetPrerequisites: Exclude delay load dependencies on Windows https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a7c5d5fb0e8d096dfc9b6e82e93f1e0d6225fe1f commit a7c5d5fb0e8d096dfc9b6e82e93f1e0d6225fe1f Author: Pascal Thomet <ptho...@gmail.com> AuthorDate: Thu Dec 22 12:28:26 2016 +0100 Commit: Brad King <brad.k...@kitware.com> CommitDate: Wed Jan 11 10:48:36 2017 -0500 GetPrerequisites: Exclude delay load dependencies on Windows With some Windows toolchains we use `objdump` which does not mention delay load dependencies in its output. Therefore, to get consistent behavior we should always ignore them. Use the `dumpbin` message "Image has the following delay load dependencies" that precedes the delay load dependencies to recognize and skip them. Fortunately, this message is not translated to the current locale (at least on "Windows 7 French", "Windows 10 French" and "Windows Server 2008 R2 French"). Fixes: #16241 diff --git a/Modules/GetPrerequisites.cmake b/Modules/GetPrerequisites.cmake index 72775ce..d0cd5b9 100644 --- a/Modules/GetPrerequisites.cmake +++ b/Modules/GetPrerequisites.cmake @@ -810,6 +810,20 @@ function(get_prerequisites target prerequisites_var exclude_system recurse exepa OUTPUT_VARIABLE gp_cmd_ov ERROR_VARIABLE gp_ev ) + + if(gp_tool STREQUAL "dumpbin") + # Exclude delay load dependencies under windows (they are listed in dumpbin output after the message below) + string(FIND "${gp_cmd_ov}" "Image has the following delay load dependencies" gp_delayload_pos) + if (${gp_delayload_pos} GREATER -1) + string(SUBSTRING "${gp_cmd_ov}" 0 ${gp_delayload_pos} gp_cmd_ov_no_delayload_deps) + string(SUBSTRING "${gp_cmd_ov}" ${gp_delayload_pos} -1 gp_cmd_ov_delayload_deps) + if (verbose) + message(STATUS "GetPrequisites(${target}) : ignoring the following delay load dependencies :\n ${gp_cmd_ov_delayload_deps}") + endif() + set(gp_cmd_ov ${gp_cmd_ov_no_delayload_deps}) + endif() + endif() + if(NOT gp_rv STREQUAL "0") if(gp_tool STREQUAL "dumpbin") # dumpbin error messages seem to go to stdout ----------------------------------------------------------------------- Summary of changes: Modules/GetPrerequisites.cmake | 14 ++++++++++++++ 1 file changed, 14 insertions(+) hooks/post-receive -- CMake _______________________________________________ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/mailman/listinfo/cmake-commits