Message ID | yddr3k02yr8.fsf@CeBiTec.Uni-Bielefeld.DE |
---|---|
State | New |
Headers | show |
On Sun, Nov 8, 2015 at 9:21 AM, Rainer Orth <ro@cebitec.uni-bielefeld.de> wrote: > > There were two remaining problems: > > * Before Solaris 12, sendfile only lives in libsendfile. This lead to > link failures in gotools. > > * Solaris 12 introduced a couple more types that use _in6_addr_t, which > are filtered out by mksysinfo.sh, leading to compilation failues. > > The following patch addresses both issues. Solaris 10 and 11 bootstraps > have completed, a Solaris 12 bootstrap is still running make check. Thanks. Committed to mainline. Ian
Ian Lance Taylor <iant@golang.org> writes: > On Sun, Nov 8, 2015 at 9:21 AM, Rainer Orth <ro@cebitec.uni-bielefeld.de> wrote: >> >> There were two remaining problems: >> >> * Before Solaris 12, sendfile only lives in libsendfile. This lead to >> link failures in gotools. >> >> * Solaris 12 introduced a couple more types that use _in6_addr_t, which >> are filtered out by mksysinfo.sh, leading to compilation failues. >> >> The following patch addresses both issues. Solaris 10 and 11 bootstraps >> have completed, a Solaris 12 bootstrap is still running make check. > > Thanks. Committed to mainline. Great, thanks. The mkssysinfo.sh part is also necessary on the gcc-5 branch. Tested on i386-pc-solaris2.12 and sparc-sun-solaris2.12, ok to install? Rainer
On Wed, Nov 11, 2015 at 3:48 AM, Rainer Orth <ro@cebitec.uni-bielefeld.de> wrote: > Ian Lance Taylor <iant@golang.org> writes: > >> On Sun, Nov 8, 2015 at 9:21 AM, Rainer Orth <ro@cebitec.uni-bielefeld.de> wrote: >>> >>> There were two remaining problems: >>> >>> * Before Solaris 12, sendfile only lives in libsendfile. This lead to >>> link failures in gotools. >>> >>> * Solaris 12 introduced a couple more types that use _in6_addr_t, which >>> are filtered out by mksysinfo.sh, leading to compilation failues. >>> >>> The following patch addresses both issues. Solaris 10 and 11 bootstraps >>> have completed, a Solaris 12 bootstrap is still running make check. >> >> Thanks. Committed to mainline. > > Great, thanks. The mkssysinfo.sh part is also necessary on the gcc-5 > branch. Tested on i386-pc-solaris2.12 and sparc-sun-solaris2.12, ok to > install? Sure, go ahead. Ian
diff --git a/libgo/configure.ac b/libgo/configure.ac --- a/libgo/configure.ac +++ b/libgo/configure.ac @@ -482,6 +482,9 @@ AC_CACHE_CHECK([for socket libraries], l [AC_CHECK_LIB(nsl, main, [libgo_cv_lib_sockets="$libgo_cv_lib_sockets -lnsl"])]) unset ac_cv_func_gethostbyname + AC_CHECK_FUNC(sendfile, , + [AC_CHECK_LIB(sendfile, main, + [libgo_cv_lib_sockets="$libgo_cv_lib_sockets -lsendfile"])]) LIBS=$libgo_old_libs ]) NET_LIBS="$libgo_cv_lib_sockets" diff --git a/libgo/mksysinfo.sh b/libgo/mksysinfo.sh --- a/libgo/mksysinfo.sh +++ b/libgo/mksysinfo.sh @@ -1488,4 +1488,24 @@ grep '^type _zone_net_addr_t ' gen-sysin sed -e 's/_in6_addr/[16]byte/' \ >> ${OUT} +# The Solaris 12 _flow_arp_desc_t struct. +grep '^type _flow_arp_desc_t ' gen-sysinfo.go | \ + sed -e 's/_in6_addr_t/[16]byte/g' \ + >> ${OUT} + +# The Solaris 12 _flow_l3_desc_t struct. +grep '^type _flow_l3_desc_t ' gen-sysinfo.go | \ + sed -e 's/_in6_addr_t/[16]byte/g' \ + >> ${OUT} + +# The Solaris 12 _mac_ipaddr_t struct. +grep '^type _mac_ipaddr_t ' gen-sysinfo.go | \ + sed -e 's/_in6_addr_t/[16]byte/g' \ + >> ${OUT} + +# The Solaris 12 _mactun_info_t struct. +grep '^type _mactun_info_t ' gen-sysinfo.go | \ + sed -e 's/_in6_addr_t/[16]byte/g' \ + >> ${OUT} + exit $?