And this finally adds mingw support to the nprocs module. Quite trivial once you have found out which Win32 function to use (GetLogicalProcessorInformation? NtQuerySystemInformation? GetSystemInfo?).
2009-10-18 Bruno Haible <br...@clisp.org> Implement nproc for mingw. * lib/nproc.c: Include <windows.h> (num_processors): On native Windows platforms, try GetSystemInfo. *** lib/nproc.c.orig 2009-10-18 11:21:15.000000000 +0200 --- lib/nproc.c 2009-10-18 11:15:28.000000000 +0200 *************** *** 41,46 **** --- 41,51 ---- # include <sys/sysctl.h> #endif + #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ + # define WIN32_LEAN_AND_MEAN + # include <windows.h> + #endif + #define ARRAY_SIZE(a) (sizeof (a) / sizeof ((a)[0])) /* Return the total number of processors. The result is guaranteed to *************** *** 90,94 **** --- 95,108 ---- } #endif + #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ + { /* This works on native Windows platforms. */ + SYSTEM_INFO system_info; + GetSystemInfo (&system_info); + if (0 < system_info.dwNumberOfProcessors) + return system_info.dwNumberOfProcessors; + } + #endif + return 1; }