summaryrefslogtreecommitdiffstats
path: root/Source/cmSystemTools.cxx
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2008-09-15 21:53:28 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2008-09-15 21:53:28 (GMT)
commit64fc597de292228b244a3ab18a33bcd8488e09d6 (patch)
tree17910ce2705e14c5428fdc4b1365b5c025867c58 /Source/cmSystemTools.cxx
parentf49f1d2973039b6e706326d763950c2ecd1d3153 (diff)
downloadCMake-64fc597de292228b244a3ab18a33bcd8488e09d6.zip
CMake-64fc597de292228b244a3ab18a33bcd8488e09d6.tar.gz
CMake-64fc597de292228b244a3ab18a33bcd8488e09d6.tar.bz2
ENH: add initial support for HAIKU OS from bug# 7425
Diffstat (limited to 'Source/cmSystemTools.cxx')
-rw-r--r--Source/cmSystemTools.cxx5
1 files changed, 4 insertions, 1 deletions
diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx
index 1d2a0cf..298d779 100644
--- a/Source/cmSystemTools.cxx
+++ b/Source/cmSystemTools.cxx
@@ -932,6 +932,7 @@ bool RunCommandViaPopen(const char* command,
cmSystemTools::Stdout(buffer);
}
output += buffer;
+ buffer[0] = 0;
fgets(buffer, BUFFER_SIZE, cpipe);
}
@@ -971,11 +972,13 @@ bool RunCommandViaPopen(const char* command,
error << "SIGFPE";
break;
#endif
+#ifndef __HAIKU__
#ifdef SIGBUS
case SIGBUS:
error << "SIGBUS";
break;
#endif
+#endif
#ifdef SIGSEGV
case SIGSEGV:
error << "SIGSEGV";
@@ -1698,7 +1701,7 @@ int cmSystemToolsGZStructOpen(void* call_data, const char *pathname,
}
// no fchmod on BeOS 5...do pathname instead.
-#if defined(__BEOS__) && !defined(__ZETA__)
+#if defined(__BEOS__) && !defined(__ZETA__) && !defined(__HAIKU__)
if ((oflags & O_CREAT) && chmod(pathname, mode))
{
return -1;