#include "wx/stream.h"
#ifdef HAVE_STATFS
-# ifdef __DARWIN__
+# ifdef __BSD__
# include <sys/param.h>
# include <sys/mount.h>
# else
# endif
#endif // HAVE_STATFS
+#ifdef HAVE_STATVFS
+ #include <sys/statvfs.h>
+
+ #define statfs statvfs
+#endif // HAVE_STATVFS
+
#if wxUSE_GUI
#include "wx/unix/execute.h"
#endif
return FALSE;
}
+#ifndef __WXMAC__
wxString wxGetOsDescription()
{
#ifndef WXWIN_OS_DESCRIPTION
return WXWIN_OS_DESCRIPTION;
#endif
}
+#endif
// this function returns the GUI toolkit version in GUI programs, but OS
// version in non-GUI ones
bool wxGetDiskSpace(const wxString& path, wxLongLong *pTotal, wxLongLong *pFree)
{
-#ifdef HAVE_STATFS
-
+#if defined(HAVE_STATFS) || defined(HAVE_STATVFS)
+ // the case to "char *" is needed for AIX 4.3
struct statfs fs;
- if ( statfs(path, &fs) != 0 )
+ if ( statfs((char *)path.fn_str(), &fs) != 0 )
{
wxLogSysError("Failed to get file system statistics");
return FALSE;
}
+ // under Solaris we might have to use fs.f_frsize instead as I think it
+ // may be a multiple of the block size in general (TODO)
+
if ( pTotal )
{
*pTotal = wxLongLong(fs.f_blocks) * fs.f_bsize;
bool wxSetEnv(const wxString& variable, const wxChar *value)
{
#if defined(HAVE_SETENV)
- return setenv(variable.mb_str(), value ? wxString(value).mb_str().data()
- : NULL, 1 /* overwrite */) == 0;
+ return setenv(variable.mb_str(),
+ value ? (const char *)wxString(value).mb_str()
+ : NULL,
+ 1 /* overwrite */) == 0;
#elif defined(HAVE_PUTENV)
wxString s = variable;
if ( value )
#include <signal.h>
-static void wxFatalSignalHandler(wxTYPE_SA_HANDLER)
+extern "C" void wxFatalSignalHandler(wxTYPE_SA_HANDLER)
{
if ( wxTheApp )
{
// error and debug output routines (deprecated, use wxLog)
// ----------------------------------------------------------------------------
+#if WXWIN_COMPATIBILITY_2_2
+
void wxDebugMsg( const char *format, ... )
{
va_list ap;
exit(3); // the same exit code as for abort()
}
+#endif // WXWIN_COMPATIBILITY_2_2
+