freebsd-ports/devel/libc++/files/patch-include____locale
John Marino a458ada59d devel/libc++: Mainly fix DragonFly support.
This port was originally fixed in dports using alias:10 but this fix
was faulty.  The libc++ headers reference __FreeBSD__ so alias won't
work.  It needs to be patched to check __DragonFly__, including a file
that was the subject of EXTRA_PATCHES.

Moreover, the port was installing the .orig files left over from
patching.  I remove these in post-patch now.
2015-04-04 00:22:57 +00:00

32 lines
1.4 KiB
Text

--- include/__locale.orig 2014-03-11 17:18:47 UTC
+++ include/__locale
@@ -23,7 +23,15 @@
# include <support/win32/locale_win32.h>
#elif defined(_AIX)
# include <support/ibm/xlocale.h>
-#elif (defined(__GLIBC__) || defined(__APPLE__) || defined(__FreeBSD__) || defined(__sun__)) || defined(__EMSCRIPTEN__) || defined(__IBMCPP__)
+#elif defined (__FreeBSD__)
+# include <sys/param.h>
+# if __FreeBSD_version < 900000
+# define __LONG_LONG_SUPPORTED
+# include <stdlib.h>
+# include <limits.h>
+# endif
+# include <xlocale.h>
+#elif (defined(__GLIBC__) || defined(__APPLE__) || defined(__sun__)) || defined(__EMSCRIPTEN__) || defined(__IBMCPP__) || defined(__DragonFly__)
# include <xlocale.h>
#endif // _WIN32 || __GLIBC__ || __APPLE__ || __FreeBSD__ || __sun__ || __EMSCRIPTEN__ || __IBMCPP__
@@ -341,10 +349,10 @@ public:
static const mask punct = _PUNCT;
static const mask xdigit = _HEX;
static const mask blank = _BLANK;
-#elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__EMSCRIPTEN__) || defined(__NetBSD__)
+#elif defined(__APPLE__) || defined(__FreeBSD__) || defined(__EMSCRIPTEN__) || defined(__NetBSD__) || defined(__DragonFly__)
#ifdef __APPLE__
typedef __uint32_t mask;
-#elif defined(__FreeBSD__)
+#elif defined(__FreeBSD__) || defined(__DragonFly__)
typedef unsigned long mask;
#elif defined(__EMSCRIPTEN__) || defined(__NetBSD__)
typedef unsigned short mask;