[Cmake-commits] CMake branch, next, updated. v3.0.0-rc5-3247-gf0520ef
Brad King
brad.king at kitware.com
Tue May 20 11:45:53 EDT 2014
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 f0520efb0eb04e103cf3f21f5f7a2ee723f44782 (commit)
via 0c7f84ca41ebd871615426b9a159922422701859 (commit)
via e604209cb930c5bc7e53f58625407b82e6899d0f (commit)
from f83aa55ad7666581ea5ff65ba40ab95ba47d6b3f (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 -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f0520efb0eb04e103cf3f21f5f7a2ee723f44782
commit f0520efb0eb04e103cf3f21f5f7a2ee723f44782
Merge: f83aa55 0c7f84c
Author: Brad King <brad.king at kitware.com>
AuthorDate: Tue May 20 11:45:52 2014 -0400
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue May 20 11:45:52 2014 -0400
Merge topic 'backport-kwsys-cygwin-fixes' into next
0c7f84ca KWSys Process: Workaround child kill trouble on Cygwin
e604209c KWSys SystemTools: Port cygwin path conversion to modern API
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0c7f84ca41ebd871615426b9a159922422701859
commit 0c7f84ca41ebd871615426b9a159922422701859
Author: Brad King <brad.king at kitware.com>
AuthorDate: Mon May 19 10:53:51 2014 -0400
Commit: Brad King <brad.king at kitware.com>
CommitDate: Tue May 20 09:48:35 2014 -0400
KWSys Process: Workaround child kill trouble on Cygwin
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.
diff --git a/Source/kwsys/ProcessUNIX.c b/Source/kwsys/ProcessUNIX.c
index faeb967..241e295 100644
--- a/Source/kwsys/ProcessUNIX.c
+++ b/Source/kwsys/ProcessUNIX.c
@@ -2413,6 +2413,12 @@ static void kwsysProcessKill(pid_t process_id)
/* Suspend the process to be sure it will not create more children. */
kill(process_id, SIGSTOP);
+#if defined(__CYGWIN__)
+ /* Some Cygwin versions seem to need help here. Give up our time slice
+ so that the child can process SIGSTOP before we send SIGKILL. */
+ usleep(1);
+#endif
+
/* Kill all children if we can find them. */
#if defined(__linux__) || defined(__CYGWIN__)
/* First try using the /proc filesystem. */
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e604209cb930c5bc7e53f58625407b82e6899d0f
commit e604209cb930c5bc7e53f58625407b82e6899d0f
Author: Brad King <brad.king at kitware.com>
AuthorDate: Fri May 16 12:39:46 2014 -0400
Commit: Brad King <brad.king at kitware.com>
CommitDate: Tue May 20 09:48:26 2014 -0400
KWSys SystemTools: Port cygwin path conversion to modern API
The cygwin_conv_to_win32_path function is deprecated in favor of
cygwin_conv_path. Use the latter.
diff --git a/Source/kwsys/SystemTools.cxx b/Source/kwsys/SystemTools.cxx
index f4a443f..e5d8bde 100644
--- a/Source/kwsys/SystemTools.cxx
+++ b/Source/kwsys/SystemTools.cxx
@@ -92,7 +92,7 @@ extern char **environ;
#endif
#ifdef __CYGWIN__
-extern "C" void cygwin_conv_to_win32_path(const char *path, char *win32_path);
+# include <sys/cygwin.h>
#endif
// getpwnam doesn't exist on Windows and Cray Xt3/Catamount
@@ -1110,7 +1110,10 @@ bool SystemTools::PathCygwinToWin32(const char *path, char *win32_path)
}
else
{
- cygwin_conv_to_win32_path(path, win32_path);
+ if(cygwin_conv_path(CCP_POSIX_TO_WIN_A, path, win32_path, MAX_PATH) != 0)
+ {
+ win32_path[0] = 0;
+ }
SystemToolsTranslationMap::value_type entry(path, win32_path);
SystemTools::Cyg2Win32Map->insert(entry);
}
-----------------------------------------------------------------------
Summary of changes:
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list