git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4854
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
gettimeofday(struct timeval *tv, struct timezone *tz);
#endif
+#define HAVE_SEM_TIMEDWAIT 1
+
+/* mac osx doesn't have the sem_timedwait() function */
+#if defined(__GNUC__) && ( defined(__APPLE_CPP__) || defined(__APPLE_CC__) || defined(__MACOS_CLASSIC__) )
+#
+# undef HAVE_SEM_TIMEDWAIT
+#
+#endif
+
#endif /* GRAS_PORTABLE_H */
void xbt_os_sem_timedacquire(xbt_os_sem_t sem,double timeout)
{
+ /* mac os x have not the sem_timedwait() function */
+ #ifndef HAVE_SEM_TIMEDWAIT
+ THROW_UNIMPLEMENTED;
+ #else
int errcode;
struct timespec ts_end;
double end = timeout + xbt_os_time();
THROW3(system_error,errcode,"sem_timedwait(%p,%f) failed: %s",sem,timeout, strerror(errcode));
}
}
+ #endif
}
void