note that, while the attributes are stored, they are not used in
pthread_cond_init yet.
--- /dev/null
+#include "pthread_impl.h"
+
+int pthread_condattr_destroy(pthread_condattr_t *a)
+{
+ return 0;
+}
--- /dev/null
+#include "pthread_impl.h"
+
+int pthread_condattr_getclock(const pthread_condattr_t *a, clockid_t *clk)
+{
+ *clk = *a & 0x7fffffff;
+ return 0;
+}
--- /dev/null
+#include "pthread_impl.h"
+
+int pthread_condattr_getpshared(const pthread_condattr_t *a, int *pshared)
+{
+ *pshared = *a>>31;
+ return 0;
+}
--- /dev/null
+#include "pthread_impl.h"
+
+int pthread_condattr_init(pthread_condattr_t *a)
+{
+ memset(a, 0, sizeof *a);
+ return 0;
+}
--- /dev/null
+#include "pthread_impl.h"
+
+int pthread_condattr_setclock(pthread_condattr_t *a, clockid_t clk)
+{
+ if (clk < 0) return EINVAL;
+ *a &= 0x80000000;
+ *a |= clk;
+ return 0;
+}
--- /dev/null
+#include "pthread_impl.h"
+
+int pthread_condattr_setpshared(pthread_condattr_t *a, int pshared)
+{
+ if (pshared > 1U) return EINVAL;
+ *a &= 0x7fffffff;
+ *a |= pshared<<31;
+ return 0;
+}