summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2008-01-08 16:43:07 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2008-01-08 16:43:07 (GMT)
commit66fff9d4b72600e69eb31a1b91fd12a41ebac14b (patch)
tree30480b8f670db3587eb1b4468a76ed3e4454dce8
parentc87853430ece15c300af1e3dab2d1392304c02c2 (diff)
downloadCMake-66fff9d4b72600e69eb31a1b91fd12a41ebac14b.zip
CMake-66fff9d4b72600e69eb31a1b91fd12a41ebac14b.tar.gz
CMake-66fff9d4b72600e69eb31a1b91fd12a41ebac14b.tar.bz2
ENH: add missing file
-rw-r--r--Source/kwsys/CMakeLists.txt4
-rw-r--r--Source/kwsys/testSystemInformation.cxx51
2 files changed, 54 insertions, 1 deletions
diff --git a/Source/kwsys/CMakeLists.txt b/Source/kwsys/CMakeLists.txt
index 200290a..a2a438c 100644
--- a/Source/kwsys/CMakeLists.txt
+++ b/Source/kwsys/CMakeLists.txt
@@ -892,10 +892,12 @@ IF(KWSYS_STANDALONE OR CMake_SOURCE_DIR)
testRegistry
testIOS
testSystemTools
- testSystemInformation
testCommandLineArguments
testCommandLineArguments1
)
+ IF(KWSYS_USE_SystemInformation)
+ SET(KWSYS_CXX_TESTS ${KWSYS_CXX_TESTS} testSystemInformation)
+ ENDIF(KWSYS_USE_SystemInformation)
IF(KWSYS_USE_DynamicLoader)
SET(KWSYS_CXX_TESTS ${KWSYS_CXX_TESTS} testDynamicLoader)
# If kwsys contains the DynamicLoader, need extra library
diff --git a/Source/kwsys/testSystemInformation.cxx b/Source/kwsys/testSystemInformation.cxx
new file mode 100644
index 0000000..0c87730
--- /dev/null
+++ b/Source/kwsys/testSystemInformation.cxx
@@ -0,0 +1,51 @@
+#include "kwsysPrivate.h"
+#include KWSYS_HEADER(SystemInformation.hxx)
+#include KWSYS_HEADER(ios/iostream)
+
+
+
+// Work-around CMake dependency scanning limitation. This must
+// duplicate the above list of headers.
+#if 0
+# include "SystemInformation.hxx.in"
+# include "kwsys_ios_iostream.h.in"
+#endif
+
+#define printMethod(inof, m) kwsys_ios::cout << #m << ": " \
+<< info.m() << "\n"
+int testSystemInformation(int, char*[])
+{
+ kwsys::SystemInformation info;
+ printMethod(info, GetVendorString);
+ info.RunCPUCheck();
+ info.RunOSCheck();
+ info.RunMemoryCheck();
+ printMethod(info, GetVendorString);
+ printMethod(info, GetVendorID);
+ printMethod(info, GetTypeID);
+ printMethod(info, GetFamilyID);
+ printMethod(info, GetModelID);
+ printMethod(info, GetExtendedProcessorName);
+ printMethod(info, GetProcessorSerialNumber);
+ printMethod(info, GetProcessorCacheSize);
+ printMethod(info, GetLogicalProcessorsPerPhysical);
+ printMethod(info, GetProcessorClockFrequency);
+ printMethod(info, GetProcessorAPICID);
+ printMethod(info, GetOSName);
+ printMethod(info, GetHostname);
+ printMethod(info, GetOSRelease);
+ printMethod(info, GetOSVersion);
+ printMethod(info, GetOSPlatform);
+ printMethod(info, Is64Bits);
+ printMethod(info, GetNumberOfLogicalCPU);
+ printMethod(info, GetNumberOfPhysicalCPU);
+ printMethod(info, DoesCPUSupportCPUID);
+ printMethod(info, GetTotalVirtualMemory);
+ printMethod(info, GetAvailableVirtualMemory);
+ printMethod(info, GetTotalPhysicalMemory);
+ printMethod(info, GetAvailablePhysicalMemory);
+
+ //int GetProcessorCacheXSize(long int);
+// bool DoesCPUSupportFeature(long int);
+ return 0;
+}