From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: core-updates schedule Date: Mon, 20 Aug 2018 18:07:01 +0200 Message-ID: <87ftz9dntm.fsf@gnu.org> References: <87a7q6rkub.fsf@elephly.net> <87600o7tvp.fsf@elephly.net> <87efetif51.fsf@gnu.org> <878t51tl36.fsf@elephly.net> <87ftz98b1u.fsf@fastmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:56734) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1frmoG-00015y-Ux for guix-devel@gnu.org; Mon, 20 Aug 2018 12:13:42 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1frmhs-0006YR-0y for guix-devel@gnu.org; Mon, 20 Aug 2018 12:07:06 -0400 In-Reply-To: <87ftz98b1u.fsf@fastmail.com> (Marius Bakke's message of "Mon, 20 Aug 2018 14:41:49 +0200") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Marius Bakke Cc: guix-devel@gnu.org --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hello, Marius Bakke skribis: > Ricardo Wurmus writes: > >> Ludovic Court=C3=A8s writes: >> >>> Today I=E2=80=99ll try switching to glibc 2.28, and if it works well, I= =E2=80=99d like >>> to make it the last big change in =E2=80=98core-updates=E2=80=99. >> >> Marius was working glibc 2.28 and that was the last big change I wanted >> to allow into core-updates. I don=E2=80=99t know how close Marius was in >> getting this done. Awesome. (One of the nice things is that we can then get rid of glibc/hurd. \o/) > One problem with glibc 2.28 is that many (most?) packages that bundle > gnulib needs patching. I've attached patches below that fixes some of > the packages. Is the "substitution" style okay, or are origin patches > preferred? Either way i fine IMO. > Another thing we should get in is coreutils: version 2.30 has a recent > enough gnulib, but I could not figure out the new test failure. Any > takers? :-) I can take a look. FWIW I also came up with the attached patch for GCC 5.5, which otherwise fails to build with: --8<---------------cut here---------------start------------->8--- ../../../../gcc-5.5.0/libsanitizer/sanitizer_common/sanitizer_platform_limi= ts_posix.cc:141:23: fatal error: sys/ustat.h: No such file or directory compilation terminated. --8<---------------cut here---------------end--------------->8--- I=E2=80=99d be tempted to do both the upgrade and the fixes in a single com= mit, so that each commit yields something that builds. Thanks! Ludo=E2=80=99. --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=gcc-libsanitizer-ustat.patch Content-Description: the patch The 'ustat' function and corresponding headers has been removed in version 2.28 of libc. Adjust libsanitizer accordingly. diff --git a/libsanitizer/sanitizer_common/sanitizer_common_syscalls.inc b/libsanitizer/sanitizer_common/sanitizer_common_syscalls.inc index 5e83ce9786c..4e98cbaf89d 100644 --- a/libsanitizer/sanitizer_common/sanitizer_common_syscalls.inc +++ b/libsanitizer/sanitizer_common/sanitizer_common_syscalls.inc @@ -921,16 +921,6 @@ POST_SYSCALL(newfstat)(long res, long fd, void *statbuf) { } } -#if !SANITIZER_ANDROID -PRE_SYSCALL(ustat)(long dev, void *ubuf) {} - -POST_SYSCALL(ustat)(long res, long dev, void *ubuf) { - if (res >= 0) { - if (ubuf) POST_WRITE(ubuf, struct_ustat_sz); - } -} -#endif // !SANITIZER_ANDROID - PRE_SYSCALL(stat64)(const void *filename, void *statbuf) { if (filename) PRE_READ(filename, diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc index 6992f2cd8ac..ec975ba9f3a 100644 --- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc +++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc @@ -150,7 +150,6 @@ typedef struct user_fpregs elf_fpregset_t; # include #endif #include -#include #include #include #include @@ -243,7 +242,6 @@ namespace __sanitizer { #endif // SANITIZER_LINUX || SANITIZER_FREEBSD #if SANITIZER_LINUX && !SANITIZER_ANDROID - unsigned struct_ustat_sz = sizeof(struct ustat); unsigned struct_rlimit64_sz = sizeof(struct rlimit64); unsigned struct_statvfs64_sz = sizeof(struct statvfs64); #endif // SANITIZER_LINUX && !SANITIZER_ANDROID diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h index 304d04e3935..3c23dcdb261 100644 --- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h +++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h @@ -185,7 +185,6 @@ namespace __sanitizer { int v[10]; }; - extern unsigned struct_ustat_sz; extern unsigned struct_rlimit64_sz; extern unsigned struct_statvfs64_sz; --=-=-=--