Commit Graph

1684 Commits

Author SHA1 Message Date
KWSys Robot e800604f34 KWSys Nightly Date Stamp 2009-12-15 23:54:16 -05:00
Brad King 357096d35a KWSys: Build tests after libraries
The TestSharedForward executable and TestDynload module do not actually
link to a KWSys library, but it is nice to build them after the
libraries just like all other test binaries.

This also works around a universal binary bug in Xcode 2.x.  It forgets
to create the output directory for the executable before linking it.  We
avoid the problem by putting the library in the directory first.
2009-12-15 14:15:27 -05:00
KWSys Robot 6adeb340f2 KWSys Nightly Date Stamp 2009-12-14 23:54:21 -05:00
KWSys Robot f7171e2b76 KWSys Nightly Date Stamp 2009-12-13 23:54:25 -05:00
KWSys Robot 36b9e0b984 KWSys Nightly Date Stamp 2009-12-12 23:54:35 -05:00
KWSys Robot f73c7b106e KWSys Nightly Date Stamp 2009-12-11 23:54:39 -05:00
David Cole 146cb98cb0 Add fallback for detecting CPU speed from Windows registry on builds where USE_ASM_INSTRUCTIONS gets defined to 0. (Win64 builds.) Clean up methods to return false when not implemented or when they fail to detect the things they're supposed to detect. This file still needs a lot more work to have a fully working implementation on Win64 builds. Committing it now because it's slightly better than it was, and there is a need for the CPU speed detection code in projects that depend on kwsys. Will file a bug shortly to request that the missing implementations get filled in... 2009-12-11 13:08:29 -05:00
KWSys Robot be12a1ae8f KWSys Nightly Date Stamp 2009-12-10 23:54:42 -05:00
KWSys Robot a082702d84 KWSys Nightly Date Stamp 2009-12-09 23:54:50 -05:00
KWSys Robot 02a8eee3aa KWSys Nightly Date Stamp 2009-12-08 23:54:59 -05:00
Brad King 15316c12f5 KWSys: Remove default exe output path
KWSys should not set variables outside its namespace.  It can honor the
EXECUTABLE_OUTPUT_PATH set by a host project, but tere is no need for it
to set a default in the host project cache.
2009-12-08 11:27:22 -05:00
KWSys Robot dd1a0c0562 KWSys Nightly Date Stamp 2009-12-07 23:55:03 -05:00
KWSys Robot 80b2c30d56 KWSys Nightly Date Stamp 2009-12-06 23:55:09 -05:00
KWSys Robot bc4be86a9d KWSys Nightly Date Stamp 2009-12-05 23:55:13 -05:00
KWSys Robot 0570b3c794 KWSys Nightly Date Stamp 2009-12-04 23:55:18 -05:00
KWSys Robot d2f1dac136 KWSys Nightly Date Stamp 2009-12-03 23:55:24 -05:00
KWSys Robot 5b0f15f509 KWSys Nightly Date Stamp 2009-12-02 23:55:34 -05:00
KWSys Robot cdc9ef3b5a KWSys Nightly Date Stamp 2009-12-01 23:55:35 -05:00
Brad King 1a5f209e62 KWSys: List processes with "ps -ef" on OpenSolaris
In order to kill process trees we need to list all processes to find
those whose parent we are killing.  We implement process listing on
OpenSolaris by using "ps -ef" and parsing the resulting format:

     UID   PID  PPID   C    STIME TTY         TIME CMD
     %*s    %d    %d   %*[^\n]\n
2009-12-01 08:37:14 -05:00
Brad King be36c14bea KWSys: Use "ps -Af" for process list on QNX
In order to kill process trees we need to list all processes to find
those whose parent we are killing.  We implement process listing on QNX
using "ps -Af" and parsing the resulting format:

  UID        PID       PPID  C STIME TTY          TIME CMD
  %*d         %d         %d  %*[^\n]\n
2009-12-01 08:10:22 -05:00
KWSys Robot afef52454e KWSys Nightly Date Stamp 2009-11-30 23:55:43 -05:00
Brad King 2aaa967715 KWSys: Fix process tree kill on 64-bit Windows
We enumerate processes to identify those whose parent is being killed so
that we can recursively kill the children.  Enumeration uses the
Process32(First|Next) windows API functions, which accept PROCESSENTRY32
objects to be filled.  This commit corrects the declaration of the entry
structure to account for its size on 64-bit Windows.
2009-11-30 16:30:19 -05:00
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
KWSys Robot 997f20b93b KWSys Nightly Date Stamp 2009-11-29 23:55:49 -05:00
KWSys Robot b936065084 KWSys Nightly Date Stamp 2009-11-28 23:55:57 -05:00
KWSys Robot d93bd3ac42 KWSys Nightly Date Stamp 2009-11-27 23:56:03 -05:00
KWSys Robot 8e7a630ff6 KWSys Nightly Date Stamp 2009-11-26 23:56:07 -05:00
KWSys Robot e802130fe2 KWSys Nightly Date Stamp 2009-11-25 23:56:11 -05:00
KWSys Robot f81a3dfff2 KWSys Nightly Date Stamp 2009-11-24 23:56:18 -05:00
Zach Mullen 254d267e36 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
Brad King a03f801f7f Suppress Intel float-equality test warnings
We suppress Intel warning 1572 because the cases where we do equality
tests are valid.  Since this project does not do numerical computations
we need not worry about real instances against which this warning
protects.
2009-11-24 08:57:06 -05:00
KWSys Robot 24106f8600 KWSys Nightly Date Stamp 2009-11-23 23:56:25 -05:00
Brad King 574902fef2 KWSys: Work-around llvm-gcc-4.2 optimizer bug
Under -O3 optimization this compiler breaks our testProcess.c source file.
We force -O0 for the file to avoid the problem.
2009-11-23 15:31:29 -05:00
KWSys Robot 62acb921f3 KWSys Nightly Date Stamp 2009-11-22 23:56:29 -05:00
KWSys Robot 892accffba KWSys Nightly Date Stamp 2009-11-21 23:56:35 -05:00
KWSys Robot d06ec80d0c KWSys Nightly Date Stamp 2009-11-20 23:56:43 -05:00
Brad King 9ec851bc90 KWSys: Set CMP0003 to NEW
The commit "Enable loose loop constructs in KWSys" set the minimum
required CMake version to 2.4.5.  This regressed the setting of CMP0003,
so we restore it in this commit.
2009-11-20 12:04:08 -05:00
Brad King bbbdf54a35 Fix KWSys FundamentalType for Universal Binaries
The FundamentalType header needs to know type sizes at preprocessing
time.  This commit teaches it to avoid using CHECK_TYPE_SIZE because the
macro does not work for types whose size varies across architectuers in
Mac OS X universal binaries.  Fortunately the Mac compilers provide just
enough information to detect the needed type sizes during preprocessing.

We now use preprocessor macros instead of configuration tests whenever
they are available.  As a side effect this reduces the number of
try-compiles needed with GCC.

See issue #9913.
2009-11-20 08:38:18 -05:00
Brad King 1136b97647 Create KWSYS_PLATFORM_INFO_TEST macro
This macro helps KWSys perform try-compile tests that extract 'INFO'
strings out of compiled binaries.  It works for CMake 2.6 and above.
On CMake 2.4 it always returns an empty list of information values,
so this should be used only as an optimization until 2.6 is required.
2009-11-20 08:37:56 -05:00
Brad King 2d80c9e31a Check for 'long long' without computing size
In KWSys IOStream we need to detect whether 'long long' exists but we do
not need its size.  We avoid using CHECK_TYPE_SIZE because it does not
work for types whose size varies across architectuers in Mac OS X
universal binaries.  See issue #9913.
2009-11-20 08:37:33 -05:00
Brad King 2a789187fc Enable loose loop constructs in KWSys
We set CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS in KWSys's CMakeLists.txt file
to enable simpler endif() syntax for CMake 2.4.
2009-11-20 08:37:10 -05:00
KWSys Robot c6f13b97ea KWSys Nightly Date Stamp 2009-11-19 23:56:47 -05:00
KWSys Robot 59334dc8a4 KWSys Nightly Date Stamp 2009-11-18 23:56:53 -05:00
David Cole ba21622048 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
KWSys Robot 77fddc1f65 KWSys Nightly Date Stamp 2009-11-17 23:57:01 -05:00
KWSys Robot a52ebca54c KWSys Nightly Date Stamp 2009-11-16 23:57:05 -05:00
Bill Hoffman b1fe517688 Try to fix missing size_t on qnx 2009-11-16 17:03:59 -05:00
Luis Ibanez 69fdf711fe COMP: Fixing return type of the Get methods associated with variables that
were changed from "unsigned long" to "size_t" to solve warnings about
      64 bits to 32 bits truncations.
2009-11-16 12:43:44 -05:00
KWSys Robot 8ec9935099 KWSys Nightly Date Stamp 2009-11-15 23:57:13 -05:00
Luis Ibanez 7f601830a2 COMP: Fixing type declarations and type conversions that could potentially
truncate 64 bits types into 32 bits types.
2009-11-15 15:57:06 -05:00