AC_SUBST(enable_shared)
AC_SUBST(enable_static)
+CC_FOR_BUILD=${CC_FOR_BUILD:-gcc}
+AC_SUBST(CC_FOR_BUILD)
+
WARN_FLAGS='-Wall -Wextra -Wwrite-strings -Wcast-qual'
AC_SUBST(WARN_FLAGS)
dnl N.B. Keep in sync with gcc/testsuite/go.test/go-test.exp (go-set-goarch).
is_386=no
+is_alpha=no
is_arm=no
is_m68k=no
-mips_abi=""
+mips_abi=unknown
is_ppc=no
is_ppc64=no
is_sparc=no
is_x86_64=no
GOARCH=unknown
case ${host} in
+ alpha*-*-*)
+ is_alpha=yes
+ GOARCH=alpha
+ ;;
arm*-*-* | strongarm*-*-* | ep9312*-*-* | xscale-*-*)
is_arm=yes
GOARCH=arm
;;
esac
AM_CONDITIONAL(LIBGO_IS_386, test $is_386 = yes)
+AM_CONDITIONAL(LIBGO_IS_ALPHA, test $is_alpha = yes)
AM_CONDITIONAL(LIBGO_IS_ARM, test $is_arm = yes)
AM_CONDITIONAL(LIBGO_IS_M68K, test $is_m68k = yes)
-AM_CONDITIONAL(LIBGO_IS_MIPS, test $mips_abi != "")
+AM_CONDITIONAL(LIBGO_IS_MIPS, test $mips_abi != unknown)
AM_CONDITIONAL(LIBGO_IS_MIPSO32, test $mips_abi = o32)
AM_CONDITIONAL(LIBGO_IS_MIPSN32, test $mips_abi = n32)
AM_CONDITIONAL(LIBGO_IS_MIPSN64, test $mips_abi = n64)
fi
AC_SUBST(GO_SYSCALLS_SYSCALL_OS_ARCH_FILE)
-GO_DEBUG_PROC_REGS_OS_ARCH_FILE=
-if test -f ${srcdir}/go/debug/proc/regs_${GOOS}_${GOARCH}.go; then
- GO_DEBUG_PROC_REGS_OS_ARCH_FILE=go/debug/proc/regs_${GOOS}_${GOARCH}.go
-fi
-AC_SUBST(GO_DEBUG_PROC_REGS_OS_ARCH_FILE)
+dnl Some targets need special flags to build sysinfo.go.
+case "$target" in
+ mips-sgi-irix6.5*)
+ # IRIX 6 needs _XOPEN_SOURCE=500 for the XPG5 version of struct
+ # msghdr in <sys/socket.h>.
+ OSCFLAGS='-D_XOPEN_SOURCE=500'
+ ;;
+ *-*-solaris2.[[89]])
+ # Solaris 8/9 need this so struct msghdr gets the msg_control
+ # etc. fields in <sys/socket.h> (_XPG4_2).
+ OSCFLAGS='-D_XOPEN_SOURCE=500 -D_XOPEN_SOURCE_EXTENDED -D__EXTENSIONS__'
+ ;;
+ *-*-solaris2.1[[01]])
+ # Solaris 10+ needs this so struct msghdr gets the msg_control
+ # etc. fields in <sys/socket.h> (_XPG4_2). _XOPEN_SOURCE=500 as
+ # above doesn't work with C99.
+ OSCFLAGS='-D_XOPEN_SOURCE=600 -D__EXTENSIONS__'
+ ;;
+esac
+AC_SUBST(OSCFLAGS)
dnl Use -fsplit-stack when compiling C code if available.
AC_CACHE_CHECK([whether -fsplit-stack is supported],
;;
esac
-AC_CHECK_HEADERS(sys/mman.h syscall.h sys/epoll.h sys/ptrace.h sys/syscall.h sys/user.h sys/utsname.h)
+AC_CHECK_HEADERS(sys/mman.h syscall.h sys/epoll.h sys/ptrace.h sys/syscall.h sys/user.h sys/utsname.h sys/select.h sys/socket.h net/if.h)
+
+AC_CHECK_HEADERS([linux/filter.h linux/netlink.h linux/rtnetlink.h], [], [],
+[#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+])
+
AM_CONDITIONAL(HAVE_SYS_MMAN_H, test "$ac_cv_header_sys_mman_h" = yes)
-AC_CHECK_FUNCS(srandom random strerror_r strsignal wait4)
+AC_CHECK_FUNCS(srandom random strerror_r strsignal wait4 mincore setenv)
AM_CONDITIONAL(HAVE_STRERROR_R, test "$ac_cv_func_strerror_r" = yes)
AM_CONDITIONAL(HAVE_WAIT4, test "$ac_cv_func_wait4" = yes)