summaryrefslogtreecommitdiff
path: root/legacy/gcc6/332-gccgo-remove-ustat.patch
diff options
context:
space:
mode:
Diffstat (limited to 'legacy/gcc6/332-gccgo-remove-ustat.patch')
-rw-r--r--legacy/gcc6/332-gccgo-remove-ustat.patch190
1 files changed, 190 insertions, 0 deletions
diff --git a/legacy/gcc6/332-gccgo-remove-ustat.patch b/legacy/gcc6/332-gccgo-remove-ustat.patch
new file mode 100644
index 000000000..90aa65ad7
--- /dev/null
+++ b/legacy/gcc6/332-gccgo-remove-ustat.patch
@@ -0,0 +1,190 @@
+From bdead75ea02fa852a559f35b41453df0c47c9a66 Mon Sep 17 00:00:00 2001
+From: Ian Lance Taylor <iant@golang.org>
+Date: Fri, 22 Jun 2018 06:24:48 -0700
+Subject: [PATCH] syscall: remove Ustat
+
+glibc 2.28 removes ustat.h and the ustat function entirely, which
+breaks syscall.Ustat.
+
+Updates golang/go#25990
+
+Change-Id: I430802c86389a02cb4a0cd6caff36fa542d98f2f
+Reviewed-on: https://go-review.googlesource.com/120535
+Reviewed-by: Than McIntosh <thanm@google.com>
+---
+ libgo/config.h.in | 3 ---
+ libgo/configure | 33 ---------------------------------
+ libgo/configure.ac | 18 ------------------
+ libgo/go/syscall/libcall_linux_ustat.go | 12 ------------
+ libgo/mksysinfo.sh | 14 --------------
+ libgo/sysinfo.c | 3 ---
+ 6 files changed, 83 deletions(-)
+ delete mode 100644 libgo/go/syscall/libcall_linux_ustat.go
+
+diff --git a/libgo/config.h.in b/libgo/config.h.in
+index 57560cd0..de57d0cc 100644
+--- a/libgo/config.h.in
++++ b/libgo/config.h.in
+@@ -343,9 +343,6 @@
+ /* Define to 1 if you have the `unshare' function. */
+ #undef HAVE_UNSHARE
+
+-/* Define to 1 if you have the <ustat.h> header file and it works. */
+-#undef HAVE_USTAT_H
+-
+ /* Define to 1 if you have the `utimensat' function. */
+ #undef HAVE_UTIMENSAT
+
+diff --git a/libgo/configure b/libgo/configure
+index 66942eda..7166f940 100755
+--- a/libgo/configure
++++ b/libgo/configure
+@@ -14760,39 +14760,6 @@ fi
+ done
+
+
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether <ustat.h> can be used" >&5
+-$as_echo_n "checking whether <ustat.h> can be used... " >&6; }
+-if test "${libgo_cv_c_ustat_h+set}" = set; then :
+- $as_echo_n "(cached) " >&6
+-else
+- CFLAGS_hold=$CFLAGS
+-CFLAGS="$CFLAGS -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE $OSCFLAGS"
+-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h. */
+-
+-#include <sys/types.h>
+-#ifdef HAVE_LINUX_FILTER_H
+-#include <linux/filter.h>
+-#endif
+-#include <ustat.h>
+-
+-_ACEOF
+-if ac_fn_c_try_compile "$LINENO"; then :
+- libgo_cv_c_ustat_h=yes
+-else
+- libgo_cv_c_ustat_h=no
+-fi
+-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+-CFLAGS=$CFLAGS_hold
+-fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libgo_cv_c_ustat_h" >&5
+-$as_echo "$libgo_cv_c_ustat_h" >&6; }
+-if test $libgo_cv_c_ustat_h = yes; then
+-
+-$as_echo "#define HAVE_USTAT_H 1" >>confdefs.h
+-
+-fi
+-
+ if test "$ac_cv_header_sys_mman_h" = yes; then
+ HAVE_SYS_MMAN_H_TRUE=
+ HAVE_SYS_MMAN_H_FALSE='#'
+diff --git a/libgo/configure.ac b/libgo/configure.ac
+index 3cee2c0f..1c192752 100644
+--- a/libgo/configure.ac
++++ b/libgo/configure.ac
+@@ -537,24 +537,6 @@ AC_CHECK_HEADERS([linux/filter.h linux/if_addr.h linux/if_ether.h linux/if_tun.h
+ #endif
+ ])
+
+-AC_CACHE_CHECK([whether <ustat.h> can be used],
+-[libgo_cv_c_ustat_h],
+-[CFLAGS_hold=$CFLAGS
+-CFLAGS="$CFLAGS -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE $OSCFLAGS"
+-AC_COMPILE_IFELSE(
+-[AC_LANG_SOURCE([
+-#include <sys/types.h>
+-#ifdef HAVE_LINUX_FILTER_H
+-#include <linux/filter.h>
+-#endif
+-#include <ustat.h>
+-])], [libgo_cv_c_ustat_h=yes], [libgo_cv_c_ustat_h=no])
+-CFLAGS=$CFLAGS_hold])
+-if test $libgo_cv_c_ustat_h = yes; then
+- AC_DEFINE(HAVE_USTAT_H, 1,
+- [Define to 1 if you have the <ustat.h> header file and it works.])
+-fi
+-
+ AM_CONDITIONAL(HAVE_SYS_MMAN_H, test "$ac_cv_header_sys_mman_h" = yes)
+
+ AC_CHECK_FUNCS(strerror_r strsignal wait4 mincore setenv unsetenv dl_iterate_phdr)
+diff --git a/libgo/mksysinfo.sh b/libgo/mksysinfo.sh
+index 92ecb479..48bc71db 100755
+--- a/libgo/mksysinfo.sh
++++ b/libgo/mksysinfo.sh
+@@ -1164,20 +1164,6 @@ grep '^type _sysinfo ' gen-sysinfo.go | \
+ -e 's/mem_unit/Unit/' \
+ >> ${OUT}
+
+-# The ustat struct.
+-grep '^type _ustat ' gen-sysinfo.go | \
+- sed -e 's/_ustat/Ustat_t/' \
+- -e 's/f_tfree/Tfree/' \
+- -e 's/f_tinode/Tinoe/' \
+- -e 's/f_fname/Fname/' \
+- -e 's/f_fpack/Fpack/' \
+- >> ${OUT}
+-# Force it to be defined, as on some older GNU/Linux systems the
+-# header file fails when using with <linux/filter.h>.
+-if ! grep 'type _ustat ' gen-sysinfo.go >/dev/null 2>&1; then
+- echo 'type Ustat_t struct { Tfree int32; Tinoe uint64; Fname [5+1]int8; Fpack [5+1]int8; }' >> ${OUT}
+-fi
+-
+ # The utimbuf struct.
+ grep '^type _utimbuf ' gen-sysinfo.go | \
+ sed -e 's/_utimbuf/Utimbuf/' \
+--- gcc-6.4.0/libgo/Makefile.am.old 2016-02-03 15:58:02.419872000 -0600
++++ gcc-6.4.0/libgo/Makefile.am 2018-06-23 02:55:45.772611885 -0500
+@@ -1,4 +1,3 @@
+-# Makefile.am -- Go library Makefile.
+
+ # Copyright 2009 The Go Authors. All rights reserved.
+ # Use of this source code is governed by a BSD-style
+@@ -1989,17 +1988,6 @@
+ syscall_lsf_file =
+ endif
+
+-# GNU/Linux specific ustat support.
+-if LIBGO_IS_LINUX
+-if LIBGO_IS_ARM64
+-syscall_ustat_file =
+-else
+-syscall_ustat_file = go/syscall/libcall_linux_ustat.go
+-endif
+-else
+-syscall_ustat_file =
+-endif
+-
+ # GNU/Linux specific utimesnano support.
+ if LIBGO_IS_LINUX
+ syscall_utimesnano_file = go/syscall/libcall_linux_utimesnano.go
+@@ -2051,7 +2039,6 @@
+ $(syscall_uname_file) \
+ $(syscall_netlink_file) \
+ $(syscall_lsf_file) \
+- $(syscall_ustat_file) \
+ $(syscall_utimesnano_file) \
+ $(GO_LIBCALL_OS_FILE) \
+ $(GO_LIBCALL_OS_ARCH_FILE) \
+--- gcc-6.4.0/libgo/Makefile.in.old 2016-02-03 15:58:02.419872000 -0600
++++ gcc-6.4.0/libgo/Makefile.in 2018-06-23 02:56:04.842611681 -0500
+@@ -2080,11 +2080,6 @@
+
+ # GNU/Linux specific socket filters.
+ @LIBGO_IS_LINUX_TRUE@syscall_lsf_file = go/syscall/lsf_linux.go
+-@LIBGO_IS_ARM64_FALSE@@LIBGO_IS_LINUX_TRUE@syscall_ustat_file = go/syscall/libcall_linux_ustat.go
+-
+-# GNU/Linux specific ustat support.
+-@LIBGO_IS_ARM64_TRUE@@LIBGO_IS_LINUX_TRUE@syscall_ustat_file =
+-@LIBGO_IS_LINUX_FALSE@syscall_ustat_file =
+ @LIBGO_IS_LINUX_FALSE@syscall_utimesnano_file = go/syscall/libcall_posix_utimesnano.go
+
+ # GNU/Linux specific utimesnano support.
+@@ -2122,7 +2117,6 @@
+ $(syscall_uname_file) \
+ $(syscall_netlink_file) \
+ $(syscall_lsf_file) \
+- $(syscall_ustat_file) \
+ $(syscall_utimesnano_file) \
+ $(GO_LIBCALL_OS_FILE) \
+ $(GO_LIBCALL_OS_ARCH_FILE) \