--- include/__config.orig	2014-04-14 15:44:57 UTC
+++ include/__config
@@ -42,7 +42,7 @@
 #endif  // __BIG_ENDIAN__
 #endif  // __BIG_ENDIAN__
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__DragonFly__)
 # include <sys/endian.h>
 #  if _BYTE_ORDER == _LITTLE_ENDIAN
 #   define _LIBCPP_LITTLE_ENDIAN 1
@@ -314,7 +314,10 @@ typedef __char32_t char32_t;
 #endif
 
 #if __ISO_C_VISIBLE >= 2011 || __cplusplus >= 201103L
-#if defined(__FreeBSD__)
+#if defined(__DragonFly__)
+#define _LIBCPP_HAS_QUICK_EXIT
+#define _LIBCPP_HAS_C11_FEATURES
+#elif defined(__FreeBSD__) && _FreeBSD_version >= 901501
 #define _LIBCPP_HAS_QUICK_EXIT
 #define _LIBCPP_HAS_C11_FEATURES
 #elif defined(__linux__)
@@ -601,6 +604,13 @@ template <unsigned> struct __static_asse
 #define _LIBCPP_WCTYPE_IS_MASK
 #endif
 
+#ifdef __DragonFly__
+#define _LIBCPP_LOCALE__L_EXTENSIONS 1
+#define _DECLARE_C99_LDBL_MATH 1
+#define _LIBCPP_HAS_DEFAULTRUNELOCALE
+#define _LIBCPP_WCTYPE_IS_MASK
+#endif
+
 #ifndef _LIBCPP_TRIVIAL_PAIR_COPY_CTOR
 #  define _LIBCPP_TRIVIAL_PAIR_COPY_CTOR 1
 #endif
