diff --git a/LCS/Common/include/Common/Thread/Barrier.h b/LCS/Common/include/Common/Thread/Barrier.h
index c3bb891b540dc66209383df74924cb798ded541c..67f5a2c3d6f9c09dc11af8c9a2332f525cb1d38d 100644
--- a/LCS/Common/include/Common/Thread/Barrier.h
+++ b/LCS/Common/include/Common/Thread/Barrier.h
@@ -26,6 +26,12 @@
 #ifdef USE_THREADS
 
 #include <pthread.h>
+
+#if !_POSIX_BARRIERS  // OS X
+// Don't bother yet providing our own barrier impl. We hardly use it. Just warn.
+#warning _POSIX_BARRIERS not defined on this system: code using LOFAR::Barrier will not compile
+#else
+
 #include <Common/LofarLogger.h>
 #include <Common/SystemCallException.h>
 
@@ -73,6 +79,7 @@ private:
 
 } // namespace LOFAR
 
+#endif
 #endif
 
 #endif
diff --git a/LCS/Common/test/tBarrier.cc b/LCS/Common/test/tBarrier.cc
index aa70fe2d0f7d4c6138e17d5fad39a1137bbb9513..500ab23ad33c6b4b1f2d8106fecc219d0ec58dda 100644
--- a/LCS/Common/test/tBarrier.cc
+++ b/LCS/Common/test/tBarrier.cc
@@ -27,6 +27,11 @@
 #include <Common/Thread/Thread.h>
 #include <Common/Thread/Barrier.h>
 
+#if !_POSIX_BARRIERS  // OS X
+#warning _POSIX_BARRIERS not defined on this system: tBarrier test disarmed
+#undef USE_THREADS
+#endif
+
 using namespace std;
 using namespace LOFAR;