CMake/Source/kwsys
Brad King b21f1eaeae KWSys: Restore SIGSTOP/SIGKILL to end process tree
On UNIX systems we kill a tree of processes by performing a DFS walk of
the tree.  We send SIGSTOP to each process encountered, recursively
handle its children, and then send SIGKILL.

We once used the above approach in the past, but it was removed by the
commit "Do not send both SIGSTOP and SIGKILL when killing a process".
The commit was meant to work-around an OS X 10.3 bug in which the child
would not always honor SIGKILL after SIGSTOP.  At the time we wrongly
assumed that the process tree remains intact after SIGKILL and before
the child is reaped.  In fact the grandchildren may be re-parented to
ppid=1 even before the child is reaped, which causes the DFS walk to
miss them.
2009-11-30 13:14:02 -05:00
..
Base64.c Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
Base64.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
CMakeEmptyInputFile.in
CMakeLists.txt KWSys: Work-around llvm-gcc-4.2 optimizer bug 2009-11-23 15:31:29 -05:00
CPU.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
CTestConfig.cmake Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
CheckCXXSourceRuns.cmake
CommandLineArguments.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
CommandLineArguments.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
Configure.h.in Suppress Intel float-equality test warnings 2009-11-24 08:57:06 -05:00
Configure.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
Copyright.txt Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
DateStamp.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
Directory.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
Directory.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
DynamicLoader.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
DynamicLoader.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
EncodeExecutable.c Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
ExtraTest.cmake.in
FundamentalType.h.in Fix KWSys FundamentalType for Universal Binaries 2009-11-20 08:38:18 -05:00
Glob.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
Glob.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
IOStream.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
IOStream.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
MD5.c Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
MD5.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
Process.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
ProcessFwd9x.c Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
ProcessUNIX.c KWSys: Restore SIGSTOP/SIGKILL to end process tree 2009-11-30 13:14:02 -05:00
ProcessWin32.c Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
README.txt
Registry.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
Registry.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
RegularExpression.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
RegularExpression.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
SharedForward.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
String.c Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
String.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
String.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
System.c Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
System.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
SystemInformation.cxx Fix bogus calls to GetMemoryStatus and GetMemoryStatusEx: need to set the dwLength member of the struct prior to calling. Otherwise it's just a garbage value from the stack. Also, pay attention to return value of GetMemoryStatusEx: if it indicates failure then just return 0 without using any of the other data the call returns. 2009-11-18 11:22:38 -05:00
SystemInformation.hxx.in Try to fix missing size_t on qnx 2009-11-16 17:03:59 -05:00
SystemTools.cxx Mac has gettimeofday defined, but cmsys wasn't aware of that, so it was falling back to using time() which only provides second resolution. Fixed to allow usec res. 2009-11-24 14:10:05 -05:00
SystemTools.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
Terminal.c Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
Terminal.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
auto_ptr.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
hash_fun.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
hash_map.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
hash_set.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
hashtable.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
kwsysDateStamp.cmake KWSys Nightly Date Stamp 2009-11-29 23:55:49 -05:00
kwsysDateStamp.py Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
kwsysHeaderDump.pl Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
kwsysPlatformTests.cmake Create KWSYS_PLATFORM_INFO_TEST macro 2009-11-20 08:37:56 -05:00
kwsysPlatformTestsC.c Fix KWSys FundamentalType for Universal Binaries 2009-11-20 08:38:18 -05:00
kwsysPlatformTestsCXX.cxx Check for 'long long' without computing size 2009-11-20 08:37:33 -05:00
kwsysPrivate.h Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
kwsys_cstddef.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
kwsys_ios_fstream.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
kwsys_ios_iosfwd.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
kwsys_ios_iostream.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
kwsys_ios_sstream.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
kwsys_stl.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
kwsys_stl_string.hxx.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testAutoPtr.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testCommandLineArguments.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testCommandLineArguments1.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testDynamicLoader.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testDynload.c Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testEncode.c Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testFail.c Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testHashSTL.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testIOS.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testProcess.c Fix warnings in CMake source code. Suppress warnings in Lexer and Parser files that are 'too hard' to fix. 2009-09-30 11:41:34 -04:00
testRegistry.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testSharedForward.c.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testSystemInformation.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testSystemTools.bin
testSystemTools.cxx Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testSystemTools.h.in Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00
testTerminal.c Convert KWSys to OSI-approved BSD License 2009-09-28 11:37:35 -04:00

README.txt

KWSys provides a platform-independent API to many common system
features that are implemented differently on every platform.  This
library is intended to be shared among many projects, so it has a
configurable namespace.  Each project should configure KWSys to use a
namespace unique to itself.  See comments in CMakeLists.txt for
details.

You are probably reading this file in the source tree of a surrounding
project.  In that case, see "../README.kwsys" for details of using
KWSys in your project.