diff options
author | John (J5) Palmieri <johnp@redhat.com> | 2006-10-08 16:56:50 +0000 |
---|---|---|
committer | John (J5) Palmieri <johnp@redhat.com> | 2006-10-08 16:56:50 +0000 |
commit | c6465198ecfcd52e0b04b3e977273e7ce71af944 (patch) | |
tree | a1231a68bfded44a125bf17c7887ec37d28b600a | |
parent | ff99239bd429cb3335406dff1761a0a54ad2996b (diff) |
* configure.in: define _POSIX_PTHREAD_SEMANTICS on solaris
avoid using dirfd on systems that don't have dirfd
(Patch by Brian Cameron <brian dot cameron at sun dot com>)
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | configure.in | 7 | ||||
-rw-r--r-- | dbus/dbus-sysdeps-util-unix.c | 9 |
3 files changed, 19 insertions, 3 deletions
@@ -1,3 +1,9 @@ +2006-10-08 John (J5) Palmieri <johnp@redhat.com> + + * configure.in: define _POSIX_PTHREAD_SEMANTICS on solaris + avoid using dirfd on systems that don't have dirfd + (Patch by Brian Cameron <brian dot cameron at sun dot com>) + 2006-10-02 John (J5) Palmieir <johnp@redhat.com> * dbus/dbus-sysdeps.c (_dbus_abort): Remove from diff --git a/configure.in b/configure.in index b3a50ecb..867b9fe9 100644 --- a/configure.in +++ b/configure.in @@ -228,6 +228,13 @@ else fi fi +# Add -D_POSIX_PTHREAD_SEMANTICS if on Solaris +# +case $target_os in + solaris*) + CFLAGS="$CFLAGS -D_POSIX_PTHREAD_SEMANTICS" ;; +esac + AM_PROG_LIBTOOL changequote(,)dnl diff --git a/dbus/dbus-sysdeps-util-unix.c b/dbus/dbus-sysdeps-util-unix.c index 98c8992b..57c943d2 100644 --- a/dbus/dbus-sysdeps-util-unix.c +++ b/dbus/dbus-sysdeps-util-unix.c @@ -507,9 +507,12 @@ static dbus_bool_t dirent_buf_size(DIR * dirp, size_t *size) { long name_max; -# if defined(HAVE_FPATHCONF) && defined(HAVE_DIRFD) \ - && defined(_PC_NAME_MAX) - name_max = fpathconf(dirfd(dirp), _PC_NAME_MAX); +# if defined(HAVE_FPATHCONF) && defined(_PC_NAME_MAX) +# if defined(HAVE_DIRFD) + name_max = fpathconf(dirfd(dirp), _PC_NAME_MAX); +# else + name_max = fpathconf(dirp->dd_fd, _PC_NAME_MAX); +# endif /* HAVE_DIRFD */ if (name_max == -1) # if defined(NAME_MAX) name_max = NAME_MAX; |