fails with _XOPEN_SOURCE set;

/usr/include/c++/v1/__bsd_locale_fallbacks.h:123:17: error: use of undeclared identifier 'vasprintf'; did you mean 'vsprintf'?
    int __res = vasprintf(__s, __format, __va);

Index: CMakeLists.txt
--- CMakeLists.txt.orig
+++ CMakeLists.txt
@@ -434,7 +434,7 @@ if(BUILD_TESTING)
 endif(BUILD_TESTING)
 
 # we need some specific functions:
-if(NOT WIN32)
+if(NOT WIN32 AND NOT CMAKE_SYSTEM MATCHES "OpenBSD.*")
     if(CMAKE_SYSTEM MATCHES "SunOS.*")
         add_definitions("-D_XOPEN_SOURCE=600")
     else()
