diff options
author | Daniel Ylitalo <daniel@ylitalo.io> | 2017-12-13 21:02:50 +0100 |
---|---|---|
committer | Derek Mauro <761129+derekmauro@users.noreply.github.com> | 2017-12-13 15:02:50 -0500 |
commit | 5fe41affbaab5b9ad4876a6295c78f21a86d862d (patch) | |
tree | d6cb31cf0deb80dc295e6fae0b287d482ac4a947 | |
parent | 04edad3801ec0b1091df9157b879d8f6a50c5036 (diff) |
FreeBSD compability (#57)
-rw-r--r-- | absl/base/config.h | 8 | ||||
-rw-r--r-- | absl/base/internal/endian.h | 2 | ||||
-rw-r--r-- | absl/base/internal/raw_logging.cc | 5 | ||||
-rw-r--r-- | absl/base/internal/sysinfo.cc | 2 | ||||
-rw-r--r-- | absl/debugging/internal/stacktrace_config.h | 4 | ||||
-rw-r--r-- | absl/debugging/internal/stacktrace_powerpc-inl.inc | 3 |
6 files changed, 15 insertions, 9 deletions
diff --git a/absl/base/config.h b/absl/base/config.h index 6aeceb9b..fc48be0b 100644 --- a/absl/base/config.h +++ b/absl/base/config.h @@ -254,8 +254,9 @@ // POSIX.1-2001. #ifdef ABSL_HAVE_MMAP #error ABSL_HAVE_MMAP cannot be directly set -#elif defined(__linux__) || defined(__APPLE__) || defined(__ros__) || \ - defined(__native_client__) || defined(__asmjs__) || defined(__Fuchsia__) +#elif defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || \ + defined(__ros__) || defined(__native_client__) || defined(__asmjs__) || \ + defined(__Fuchsia__) #define ABSL_HAVE_MMAP 1 #endif @@ -265,7 +266,8 @@ // functions as defined in POSIX.1-2001. #ifdef ABSL_HAVE_PTHREAD_GETSCHEDPARAM #error ABSL_HAVE_PTHREAD_GETSCHEDPARAM cannot be directly set -#elif defined(__linux__) || defined(__APPLE__) || defined(__ros__) +#elif defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || \ + defined(__ros__) #define ABSL_HAVE_PTHREAD_GETSCHEDPARAM 1 #endif diff --git a/absl/base/internal/endian.h b/absl/base/internal/endian.h index 602129ee..edc10f10 100644 --- a/absl/base/internal/endian.h +++ b/absl/base/internal/endian.h @@ -22,6 +22,8 @@ #elif defined(__APPLE__) // Mac OS X / Darwin features #include <libkern/OSByteOrder.h> +#elif defined(__FreeBSD__) +#include <sys/endian.h> #elif defined(__GLIBC__) #include <byteswap.h> // IWYU pragma: export #endif diff --git a/absl/base/internal/raw_logging.cc b/absl/base/internal/raw_logging.cc index 1b849abf..301b108c 100644 --- a/absl/base/internal/raw_logging.cc +++ b/absl/base/internal/raw_logging.cc @@ -34,7 +34,8 @@ // // This preprocessor token is also defined in raw_io.cc. If you need to copy // this, consider moving both to config.h instead. -#if defined(__linux__) || defined(__APPLE__) || defined(__Fuchsia__) +#if defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || \ + defined(__Fuchsia__) #include <unistd.h> @@ -47,7 +48,7 @@ // ABSL_HAVE_SYSCALL_WRITE is defined when the platform provides the syscall // syscall(SYS_write, /*int*/ fd, /*char* */ buf, /*size_t*/ len); // for low level operations that want to avoid libc. -#if defined(__linux__) && !defined(__ANDROID__) +#if (defined(__linux__) || defined(__FreeBSD__)) && !defined(__ANDROID__) #include <sys/syscall.h> #define ABSL_HAVE_SYSCALL_WRITE 1 #define ABSL_LOW_LEVEL_WRITE_SUPPORTED 1 diff --git a/absl/base/internal/sysinfo.cc b/absl/base/internal/sysinfo.cc index 00e98b66..884c3126 100644 --- a/absl/base/internal/sysinfo.cc +++ b/absl/base/internal/sysinfo.cc @@ -29,7 +29,7 @@ #include <sys/syscall.h> #endif -#ifdef __APPLE__ +#if defined(__APPLE__) || defined(__FreeBSD__) #include <sys/sysctl.h> #endif diff --git a/absl/debugging/internal/stacktrace_config.h b/absl/debugging/internal/stacktrace_config.h index 57f0b0f2..9bd2a2ab 100644 --- a/absl/debugging/internal/stacktrace_config.h +++ b/absl/debugging/internal/stacktrace_config.h @@ -25,8 +25,8 @@ #if ABSL_STACKTRACE_INL_HEADER #error ABSL_STACKTRACE_INL_HEADER cannot be directly set #elif defined(__native_client__) || defined(__APPLE__) || \ - defined(__ANDROID__) || defined(__myriad2__) || defined(asmjs__) || \ - defined(__Fuchsia__) + defined(__FreeBSD__) || defined(__ANDROID__) || defined(__myriad2__) || \ + defined(asmjs__) || defined(__Fuchsia__) #define ABSL_STACKTRACE_INL_HEADER \ "absl/debugging/internal/stacktrace_unimplemented-inl.inc" diff --git a/absl/debugging/internal/stacktrace_powerpc-inl.inc b/absl/debugging/internal/stacktrace_powerpc-inl.inc index 0628b285..60a889a9 100644 --- a/absl/debugging/internal/stacktrace_powerpc-inl.inc +++ b/absl/debugging/internal/stacktrace_powerpc-inl.inc @@ -47,7 +47,8 @@ static inline void *StacktracePowerPCGetLR(void **sp) { return *(sp+2); #elif defined(_CALL_SYSV) return *(sp+1); -#elif defined(__APPLE__) || (defined(__linux__) && defined(__PPC64__)) +#elif defined(__APPLE__) || defined(__FreeBSD__) || \ + (defined(__linux__) && defined(__PPC64__)) // This check is in case the compiler doesn't define _CALL_AIX/etc. return *(sp+2); #elif defined(__linux) |