From 4109c5c8ef894f90d6ea81da8d51ac7b7f18034d Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Tue, 26 Jun 2018 04:44:49 +0000 Subject: [PATCH] syscall: remove Ustat glibc 2.28 removes ustat.h and the ustat function entirely, which breaks syscall.Ustat. Updates golang/go#25990 Reviewed-on: https://go-review.googlesource.com/120535 From-SVN: r262128 --- libgo/Makefile.am | 11 --------- libgo/Makefile.in | 5 ---- libgo/config.h.in | 3 --- libgo/configure | 33 ------------------------- libgo/configure.ac | 18 -------------- libgo/go/syscall/libcall_linux_ustat.go | 11 --------- libgo/mksysinfo.sh | 17 ------------- 7 files changed, 98 deletions(-) delete mode 100644 libgo/go/syscall/libcall_linux_ustat.go diff --git a/libgo/Makefile.am b/libgo/Makefile.am index bae3634cff52..6fd5a65b6129 100644 --- a/libgo/Makefile.am +++ b/libgo/Makefile.am @@ -1989,17 +1989,6 @@ else 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 diff --git a/libgo/Makefile.in b/libgo/Makefile.in index 216ab6a9b1f2..ddc2ddfe327a 100644 --- a/libgo/Makefile.in +++ b/libgo/Makefile.in @@ -2080,11 +2080,6 @@ go_unicode_utf8_files = \ # 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. diff --git a/libgo/config.h.in b/libgo/config.h.in index 298b8d660e3a..ff2d43c914dd 100644 --- a/libgo/config.h.in +++ b/libgo/config.h.in @@ -325,9 +325,6 @@ /* Define to 1 if you have the `unshare' function. */ #undef HAVE_UNSHARE -/* Define to 1 if you have the 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 a418a885310d..cc801f925a23 100755 --- a/libgo/configure +++ b/libgo/configure @@ -14842,39 +14842,6 @@ fi done -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether can be used" >&5 -$as_echo_n "checking whether 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 -#ifdef HAVE_LINUX_FILTER_H -#include -#endif -#include - -_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 b23685c71449..056a69d87eac 100644 --- a/libgo/configure.ac +++ b/libgo/configure.ac @@ -519,24 +519,6 @@ AC_CHECK_HEADERS([linux/filter.h linux/if_addr.h linux/if_ether.h linux/if_tun.h #endif ]) -AC_CACHE_CHECK([whether 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 -#ifdef HAVE_LINUX_FILTER_H -#include -#endif -#include -])], [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 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/go/syscall/libcall_linux_ustat.go b/libgo/go/syscall/libcall_linux_ustat.go deleted file mode 100644 index f7f3406a6a8a..000000000000 --- a/libgo/go/syscall/libcall_linux_ustat.go +++ /dev/null @@ -1,11 +0,0 @@ -// Copyright 2015 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -// GNU/Linux library ustat call. -// This is not supported on some kernels, such as arm64. - -package syscall - -//sys Ustat(dev int, ubuf *Ustat_t) (err error) -//ustat(dev _dev_t, ubuf *Ustat_t) _C_int diff --git a/libgo/mksysinfo.sh b/libgo/mksysinfo.sh index 53c017f7596f..dd456e907fa7 100755 --- a/libgo/mksysinfo.sh +++ b/libgo/mksysinfo.sh @@ -142,9 +142,6 @@ cat > sysinfo.c < #endif -#if defined(HAVE_USTAT_H) -#include -#endif #if defined(HAVE_UTIME_H) #include #endif @@ -1350,20 +1347,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 . -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/' \ -- 2.47.2