1
0
Fork 0

(svn r19874) -Fix [FS#3845]: NetBSD compilation was still broken in some cases (Krille)

release/1.1
rubidium 2010-05-21 15:56:19 +00:00
parent d8d37466af
commit e3df7caf18
2 changed files with 7 additions and 4 deletions

View File

@ -398,7 +398,7 @@ size_t Utf8TrimString(char *s, size_t maxlen)
return length; return length;
} }
#ifndef _GNU_SOURCE #ifdef DEFINE_STRNDUP
#include "core/math_func.hpp" #include "core/math_func.hpp"
char *strndup(const char *s, size_t len) char *strndup(const char *s, size_t len)
{ {
@ -407,7 +407,7 @@ char *strndup(const char *s, size_t len)
memcpy(tmp, s, len); memcpy(tmp, s, len);
return tmp; return tmp;
} }
#endif /* !_GNU_SOURCE */ #endif /* DEFINE_STRNDUP */
#ifdef DEFINE_STRCASESTR #ifdef DEFINE_STRCASESTR
char *strcasestr(const char *haystack, const char *needle) char *strcasestr(const char *haystack, const char *needle)

View File

@ -251,10 +251,13 @@ static inline bool IsWhitespace(WChar c)
#include <sys/param.h> #include <sys/param.h>
#endif #endif
#if !defined(_GNU_SOURCE) && !(defined(__NetBSD_Version__) && 400000000 < __NetBSD_Version__ )
/* strndup is a GNU extension */ /* strndup is a GNU extension */
#if defined(_GNU_SOURCE) || (defined(__NetBSD_Version__) && 400000000 <= __NetBSD_Version__)
# undef DEFINE_STRNDUP
#else
# define DEFINE_STRNDUP
char *strndup(const char *s, size_t len); char *strndup(const char *s, size_t len);
#endif /* !_GNU_SOURCE */ #endif /* strndup is available */
/* strcasestr is available for _GNU_SOURCE, BSD and some Apple */ /* strcasestr is available for _GNU_SOURCE, BSD and some Apple */
#if defined(_GNU_SOURCE) || (defined(__BSD_VISIBLE) && __BSD_VISIBLE) || (defined(__APPLE__) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))) || defined(_NETBSD_SOURCE) #if defined(_GNU_SOURCE) || (defined(__BSD_VISIBLE) && __BSD_VISIBLE) || (defined(__APPLE__) && (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))) || defined(_NETBSD_SOURCE)