From a49453dab94a79dd2f26d52068824b31264041be Mon Sep 17 00:00:00 2001 From: Michael Wetherell Date: Thu, 18 Oct 2007 16:34:55 +0000 Subject: [PATCH] When testing for getpwuid_r and getgrgid_r also check the signature. Solaris 7-9 have these with non-POSIX signatures. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@49229 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- configure | 22 ++++++++++++++++++---- configure.in | 26 ++++++++++++++++++++++---- 2 files changed, 40 insertions(+), 8 deletions(-) diff --git a/configure b/configure index 768d74c6ce..e4419d3cb2 100755 --- a/configure +++ b/configure @@ -37982,6 +37982,7 @@ _ACEOF done + for wx_func in getpwuid_r do echo "$as_me:$LINENO: checking for $wx_func" >&5 @@ -37998,8 +37999,10 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ - #define _REENTRANT - #include + + #define _REENTRANT + #include + $ac_includes_default int @@ -38010,6 +38013,10 @@ main () &$wx_func; #endif + struct passwd pw, *ppw; + char buf[1024]; + getpwuid_r(0, &pw, buf, sizeof(buf), &ppw) + ; return 0; @@ -38065,6 +38072,7 @@ _ACEOF done + for wx_func in getgrgid_r do echo "$as_me:$LINENO: checking for $wx_func" >&5 @@ -38081,8 +38089,10 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ - #define _REENTRANT - #include + + #define _REENTRANT + #include + $ac_includes_default int @@ -38093,6 +38103,10 @@ main () &$wx_func; #endif + struct group grp, *pgrp; + char buf[1024]; + getgrgid_r(0, &grp, buf, sizeof(buf), &pgrp) + ; return 0; diff --git a/configure.in b/configure.in index 6ec5e665a9..9787a5f966 100644 --- a/configure.in +++ b/configure.in @@ -5226,10 +5226,28 @@ WX_CHECK_FUNCS(fdopen) if test "$wxUSE_TARSTREAM" = "yes"; then WX_CHECK_FUNCS(sysconf) - WX_CHECK_FUNCS(getpwuid_r, [], [], [#define _REENTRANT - #include ]) - WX_CHECK_FUNCS(getgrgid_r, [], [], [#define _REENTRANT - #include ]) + + WX_CHECK_FUNCS(getpwuid_r, [], [], + [ + #define _REENTRANT + #include + ], + [[ + struct passwd pw, *ppw; + char buf[1024]; + getpwuid_r(0, &pw, buf, sizeof(buf), &ppw) + ]]) + + WX_CHECK_FUNCS(getgrgid_r, [], [], + [ + #define _REENTRANT + #include + ], + [[ + struct group grp, *pgrp; + char buf[1024]; + getgrgid_r(0, &grp, buf, sizeof(buf), &pgrp) + ]]) fi fi