Improve portability of -processorCount and -activeProcessorCount.

Use /var/tmp as temporary directory on Darwin.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27058 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Wolfgang Lux 2008-11-14 21:59:13 +00:00
parent 782f91056a
commit d4117b5010
3 changed files with 22 additions and 4 deletions

View file

@ -1,3 +1,11 @@
2008-11-14 Wolfgang Lux <wolfgang.lux@gmail.com>
* Source/NSProcessInfo.m (-processorCount, -activeProcessorCount):
Improve portability.
* Source/NSPathUtilities.m (NSTemporaryDirectory): Use /var/tmp on
Darwin since /tmp is cleaned regularly.
2008-10-13 Richard Frith-Macdonald <rfm@gnu.org>
* Source/NSPage.m: Update to use NSUInteger and to cope with large

View file

@ -1617,6 +1617,12 @@ NSTemporaryDirectory(void)
baseTempDirName = @"/cygdrive/c/";
#elif defined(__MINGW32__)
baseTempDirName = @"C:\\";
#elif defined(__APPLE__)
/*
* Create temporary directory on /var/tmp since /tmp is
* cleaned regularly on Darwin by default
*/
baseTempDirName = @"/var/tmp";
#else
baseTempDirName = @"/tmp";
#endif

View file

@ -1211,8 +1211,8 @@ static void determineOperatingSystem()
#elif defined(_SC_NPROCESSORS_CONF)
procCount = sysconf(_SC_NPROCESSORS_CONF);
#elif defined(HAVE_SYSCTLBYNAME)
long val;
size_t len = val;
int val;
size_t len = sizeof(val);
if (sysctlbyname("hw.ncpu", &val, &len, 0, 0) == 0)
{
@ -1276,13 +1276,17 @@ static void determineOperatingSystem()
#elif defined(_SC_NPROCESSORS_ONLN)
return sysconf(_SC_NPROCESSORS_ONLN);
#elif defined(HAVE_SYSCTLBYNAME)
long val;
size_t len = val;
int val;
size_t len = sizeof(val);
if (sysctlbyname("kern.smp.cpus", &val, &len, 0, 0) == 0)
{
return val;
}
else if (sysctlbyname("hw.activecpu", &val, &len, 0, 0) == 0)
{
return val;
}
else if (sysctlbyname("activecpu", &val, &len, 0, 0) == 0)
{
return val;