From 96dac4fd0267b3a7c3331c8011f43d8381a966ca Mon Sep 17 00:00:00 2001 From: Date: Thu, 22 Nov 2012 12:09:13 +0000 Subject: Fixed files to support FreeBSD amd64 based on patches at: http://www.freebsd.org/cgi/cvsweb.cgi/ports/devel/glog/files/ Since FreeBSD do not have gettid system call unlikely to MacOSX, I modified utilities.h not to use that on FreeBSD: * FreeBSD lacks gettid syscall. http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/kern/syscalls.master?rev=1.276;content-type=text%2Fplain * MacOSX gettid == 286. http://www.opensource.apple.com/source/xnu/xnu-1504.3.12/bsd/kern/syscalls.master As for the fix of stacktrace, we use a different approach. Even in FreeBSD, package gcc44/gcc46 has unwind.h. As a result, checking unwind.h should be natural solution. This patch was given by yyanagisawa git-svn-id: https://google-glog.googlecode.com/svn/trunk@116 eb4d4688-79bd-11dd-afb4-1d65580434c0 --- src/utilities.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/utilities.cc') diff --git a/src/utilities.cc b/src/utilities.cc index 27b2a90..a037480 100644 --- a/src/utilities.cc +++ b/src/utilities.cc @@ -233,8 +233,8 @@ bool PidHasChanged() { } pid_t GetTID() { - // On Linux and FreeBSD, we try to use gettid(). -#if defined OS_LINUX || defined OS_FREEBSD || defined OS_MACOSX + // On Linux and MacOSX, we try to use gettid(). +#if defined OS_LINUX || defined OS_MACOSX #ifndef __NR_gettid #ifdef OS_MACOSX #define __NR_gettid SYS_gettid @@ -256,7 +256,7 @@ pid_t GetTID() { // the value change to "true". lacks_gettid = true; } -#endif // OS_LINUX || OS_FREEBSD +#endif // OS_LINUX || OS_MACOSX // If gettid() could not be used, we use one of the following. #if defined OS_LINUX -- cgit v1.2.3