#define __HSBASE_H__
#include "ghcconfig.h"
+#include "HsBaseConfig.h"
#include "HsFFI.h"
#include <stdio.h>
INLINE mode_t __hscore_S_IXUSR() { return S_IXUSR; }
#endif
-#if !defined(_MSC_VER)
INLINE HsAddr
__hscore_d_name( struct dirent* d )
{
-#if !defined(mingw32_TARGET_OS) && !defined(_MSC_VER)
+#if defined(STRUCT_DIRENT_FLAT_LAYOUT)
return (HsAddr)(&d->d_name);
#else
return (HsAddr)(d->d_name);
#endif
}
-#endif
INLINE HsInt
__hscore_end_of_dir( void )
{
-#ifndef mingw32_TARGET_OS
- return 0;
-#else
- return ENOENT;
-#endif
+ return READDIR_ERRNO_EOF;
}
INLINE void
INLINE int __hsposix_SIG_BLOCK() { return SIG_BLOCK; }
INLINE int __hsposix_SIG_UNBLOCK() { return SIG_UNBLOCK; }
INLINE int __hsposix_SIG_SETMASK() { return SIG_SETMASK; }
+
+#if HAVE_SIGINFO
+INLINE int __hsposix_SIGINFO() { return SIGINFO; }
+#endif
+#if HAVE_SIGWINCH
+INLINE int __hsposix_SIGWINCH() { return SIGWINCH; }
+#endif
#endif /* mingw32_TARGET_OS */
// These are wrapped because on some OSs (eg. Linux) they are