diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2015-09-10 21:17:00 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2015-09-10 21:17:00 +0000 |
commit | 476013d60bccdca296731062ca8deced5c9c3e3a (patch) | |
tree | 0c52b22a5b1c8f42de2137e6e300136297897d88 /libgo/configure | |
parent | 9a21c05d8d2a58a23782dbcedb4aa6df62282aa0 (diff) | |
download | gcc-476013d60bccdca296731062ca8deced5c9c3e3a.zip gcc-476013d60bccdca296731062ca8deced5c9c3e3a.tar.gz gcc-476013d60bccdca296731062ca8deced5c9c3e3a.tar.bz2 |
libgo: Use stat_atim.go on Solaris 12+
From Rainer Orth.
Solaris 12 changes the stat_[amc]tim members of struct stat from
timestruc_t to timespec_t for XPG7 compatiblity, thus breaking the libgo
build. The following patch checks for this change and uses the common
stat_atim.go if appropriate.
Reviewed-on: https://go-review.googlesource.com/14495
From-SVN: r227665
Diffstat (limited to 'libgo/configure')
-rwxr-xr-x | libgo/configure | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/libgo/configure b/libgo/configure index 03d4e15..617fe15 100755 --- a/libgo/configure +++ b/libgo/configure @@ -602,6 +602,8 @@ ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS LIBOBJS +HAVE_STAT_TIMESPEC_FALSE +HAVE_STAT_TIMESPEC_TRUE STRUCT_EPOLL_EVENT_FD_OFFSET SIZEOF_STRUCT_EPOLL_EVENT MATH_FLAG @@ -11118,7 +11120,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11121 "configure" +#line 11123 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11224,7 +11226,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11227 "configure" +#line 11229 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -15076,6 +15078,28 @@ $as_echo "$libgo_cv_c_epoll_event_fd_offset" >&6; } STRUCT_EPOLL_EVENT_FD_OFFSET=${libgo_cv_c_epoll_event_fd_offset} +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include <sys/stat.h> + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "timespec_t.*st_atim" >/dev/null 2>&1; then : + have_stat_timespec=yes +else + have_stat_timespec=no +fi +rm -f conftest* + + if test $have_stat_timespec = yes; then + HAVE_STAT_TIMESPEC_TRUE= + HAVE_STAT_TIMESPEC_FALSE='#' +else + HAVE_STAT_TIMESPEC_TRUE='#' + HAVE_STAT_TIMESPEC_FALSE= +fi + + ac_fn_c_check_type "$LINENO" "struct exception" "ac_cv_type_struct_exception" "#include <math.h> " if test "x$ac_cv_type_struct_exception" = x""yes; then : @@ -15696,6 +15720,10 @@ if test -z "${HAVE_WAIT4_TRUE}" && test -z "${HAVE_WAIT4_FALSE}"; then as_fn_error "conditional \"HAVE_WAIT4\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${HAVE_STAT_TIMESPEC_TRUE}" && test -z "${HAVE_STAT_TIMESPEC_FALSE}"; then + as_fn_error "conditional \"HAVE_STAT_TIMESPEC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi : ${CONFIG_STATUS=./config.status} ac_write_fail=0 |