Add support for NetBSD
- 主要語言
- C++
- 星號
- 18.1k
- 分支
- 3.2k
- 平均合併
- 20 小時 36 分鐘
- 30 天內合併 PR
- 1
描述
NetBSD supports **mmap()** and **pthread_getschedparam()**:
```
--- absl/base/config.h.orig
+++ absl/base/config.h
@@ -365,6 +365,7 @@ static_assert(ABSL_INTERNAL_INLINE_NAMES
#ifdef ABSL_HAVE_MMAP
#error ABSL_HAVE_MMAP cannot be directly set
#elif defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || \
+ defined(__NetBSD__) || \
defined(__ros__) || defined(__native_client__) || defined(__asmjs__) || \
defined(__wasm__) || defined(__Fuchsia__) || defined(__sun) || \
defined(__ASYLO__)
@@ -378,6 +379,7 @@ static_assert(ABSL_INTERNAL_INLINE_NAMES
#ifdef ABSL_HAVE_PTHREAD_GETSCHEDPARAM
#error ABSL_HAVE_PTHREAD_GETSCHEDPARAM cannot be directly set
#elif defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || \
+ defined(__NetBSD__) || \
defined(__ros__)
#define ABSL_HAVE_PTHREAD_GETSCHEDPARAM 1
#endif
```
Also `_XOPEN_SOURCE` must not be defined, so either apply the following, or exclude defining it only for NetBSD (by the way, Darwin/macOS does not need either).
```
--- absl/time/internal/cctz/src/time_zone_format.cc.orig
+++ absl/time/internal/cctz/src/time_zone_format.cc
@@ -18,11 +18,6 @@
#endif
#endif
-#if defined(HAS_STRPTIME) && HAS_STRPTIME
-#if !defined(_XOPEN_SOURCE)
-#define _XOPEN_SOURCE // Definedness suffices for strptime.
-#endif
-#endif
#include "absl/base/config.h"
#include "absl/time/internal/cctz/include/cctz/time_zone.h"
```
貢獻指南
評估
這個 Issue 還沒有評估資料。