This patch to libgo fixes the handling of the timex struct on ARM
GNU/Linux.  This is PR go/52557: a boostrap failure on ARM.
Bootstrapped on x86_64-unknown-linux-gnu (I don't have an ARM GNU/Linux
system).  Committed to mainline.

OK for 4.7 branch?

Ian

diff -r ca4aaf510222 libgo/mksysinfo.sh
--- a/libgo/mksysinfo.sh	Fri Mar 09 00:20:49 2012 -0800
+++ b/libgo/mksysinfo.sh	Tue Mar 13 13:52:59 2012 -0700
@@ -834,7 +834,15 @@
     >> ${OUT}
 
 # The timex struct.
-grep '^type _timex ' gen-sysinfo.go | \
+timex=`grep '^type _timex ' gen-sysinfo.go || true`
+if test "$timex" = ""; then
+  timex=`grep '^// type _timex ' gen-sysinfo.go || true`
+  if test "$timex" != ""; then
+    timex=`echo $timex | sed -e 's|// ||' -e 's/INVALID-bit-field/int32/g'`
+  fi
+fi
+if test "$timex" != ""; then
+  echo "$timex" | \
     sed -e 's/_timex/Timex/' \
       -e 's/modes/Modes/' \
       -e 's/offset/Offset/' \
@@ -858,6 +866,7 @@
       -e 's/tai/Tai/' \
       -e 's/_timeval/Timeval/' \
     >> ${OUT}
+fi
 
 # The rlimit struct.
 grep '^type _rlimit ' gen-sysinfo.go | \

Reply via email to