From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id SEoUHQN+eWTibwEASxT56A (envelope-from ) for ; Fri, 02 Jun 2023 07:28:35 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id 4K4THAN+eWSBEQAAG6o9tA (envelope-from ) for ; Fri, 02 Jun 2023 07:28:35 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 231E71B6CB for ; Fri, 2 Jun 2023 07:28:30 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q4xKg-0005it-FW; Fri, 02 Jun 2023 01:28:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1q4xKe-0005ii-5O for bug-guix@gnu.org; Fri, 02 Jun 2023 01:28:12 -0400 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q4xKU-0003Gy-Kh for bug-guix@gnu.org; Fri, 02 Jun 2023 01:28:11 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1q4xKU-0005KT-5t for bug-guix@gnu.org; Fri, 02 Jun 2023 01:28:02 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#63789: Native compilation broken on the Hurd (with patch) Resent-From: Janneke Nieuwenhuizen Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Fri, 02 Jun 2023 05:28:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 63789 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 63789@debbugs.gnu.org Received: via spool by 63789-submit@debbugs.gnu.org id=B63789.168568364820440 (code B ref 63789); Fri, 02 Jun 2023 05:28:02 +0000 Received: (at 63789) by debbugs.gnu.org; 2 Jun 2023 05:27:28 +0000 Received: from localhost ([127.0.0.1]:38827 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q4xJs-0005JV-J5 for submit@debbugs.gnu.org; Fri, 02 Jun 2023 01:27:28 -0400 Received: from eggs.gnu.org ([209.51.188.92]:39182) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q4xJm-0005JD-AU for 63789@debbugs.gnu.org; Fri, 02 Jun 2023 01:27:22 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1q4xJg-0002Z0-6n; Fri, 02 Jun 2023 01:27:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=6Oeta/faMFYUDSwSBJ5OIAKClMi3zZCB7FQkrmdJGN4=; b=RW5a4eYbkv9KpELzAaTM U/ZDAU0U/uEiTlyinaYVNus0j63YBRav7U0QdbeDt7EVTCq6UEnYK0iCb1qAFDOSlW0wYZwRBFDH/ cxwBjH9NSXUm7J7hvdhkxD2nEAaGKPqILlNQoQLXVachmzcsA5DSJ7u6BRGfrlAt9p9aciYaGO5nH gOH9qwLTQA/hJnI5ZDss8m35UtI7JOxVArQIZp9cNOJFIwNx9Ci08/bI7gPSh8YN1X5U5xMGAlYQM BqqN+T6pVYoYgo6+y1WFD4VR4JfDPPw2aLhEwSiSzNZ29Y2mD6N5RVSiYjLbBIy50gWGRSi+na6jL FdX2oSsoh38bhQ==; Received: from 2a02-a462-da03-1-2701-7f81-a736-4607.fixed6.kpn.net ([2a02:a462:da03:1:2701:7f81:a736:4607] helo=drakenpad.janneke.lilypond.org) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1q4xJf-00054I-Ny; Fri, 02 Jun 2023 01:27:11 -0400 From: Janneke Nieuwenhuizen Organization: AvatarAcademy.nl References: <87edmzozko.fsf@gnu.org> <87edmu97je.fsf@gnu.org> X-Url: http://AvatarAcademy.nl Date: Fri, 02 Jun 2023 07:27:07 +0200 In-Reply-To: <87edmu97je.fsf@gnu.org> ("Ludovic =?UTF-8?Q?Court=C3=A8s?="'s message of "Thu, 01 Jun 2023 23:50:13 +0200") Message-ID: <87ttvqmo2c.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: bug-guix-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN ARC-Seal: i=1; s=key1; d=yhetil.org; t=1685683710; a=rsa-sha256; cv=none; b=pmJ6XUOizOiqno/K0hAZYFtOe3C5mvTDQqaDmMiarIN4xMxfbOzMIEFATCYpwBJpUWtNPb 7D6ji0RjlYgwfeu35+aoiDWOQi1MLT++jxe+bfRvoij2xcA99gLNycvk948bx9/7zHk3x/ yL6C7XieqtWorLFs44jS/z/aoPIZspdnqe8BJbfYnfW30Xz0ga14cqy8FWz+cIXgeYcwVo vvPEf0tJFvUUtohtDz4pS8BtREjs9WB7EXRypihKDM2M2xOvnQhsr3sOpL7IpMPtwPFA7r U0+Wq9BqNiv4jHnpYFojEpVOM5bFRXeGw0fIRRJh2ozTBj+IAK/+IC6tBfRhOw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gnu.org header.s=fencepost-gnu-org header.b=RW5a4eYb; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1685683710; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=6Oeta/faMFYUDSwSBJ5OIAKClMi3zZCB7FQkrmdJGN4=; b=XS8DaG3YmEm9ETV8Z4MoqnY42+1aCQzj7wuGr9UaLQW8LJh9Rc8vHz9IgHs0Q0in5/cSm9 dEXaJ3ipTmJ8TboagxUMXgN2isKS3cfDAR78X/W/JXy+sTS8hqFVZ71vm3Xal3WNJ2fP4W Xr61sv3gDiLZSs31q8OLuak5Z47LXNDMFb+SlzMsUQEPfllXGIWjK+N/c2vS/EA551kE1G cNA69WInGqSTLVL5RRHeE/NIMx6NIHUS1Uz/u2GHqQCs8B8uWgRa3zQIfAv1T0vlwBmVKj ufeqGM332TIoCsGz1kpQoWVCXCYbbsPN8RLIvZDrNUZATb8tS+rZV/nzCJVEdQ== Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gnu.org header.s=fencepost-gnu-org header.b=RW5a4eYb; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Scanner: scn0.migadu.com X-Migadu-Spam-Score: -3.07 X-Spam-Score: -3.07 X-Migadu-Queue-Id: 231E71B6CB X-TUID: xSxBMcjLqT9G Ludovic Court=C3=A8s writes: Hello, > Janneke Nieuwenhuizen skribis: > [..] >> >> (snippet >> #~(begin >> ;; XXX: The GCC test suite contains files with non-ASCII fi= le >> ;; names, which cannot be repacked by BOOTSTRAP-ORIGIN. Nor >> ;; can it be deleted from Guile, so resort to this evil hac= k. >> #$(origin-snippet (package-source gcc)) >> (system* #$(file-append coreutils-boot0 "/bin/rm") "-rf" >> "gcc/testsuite/go.test/test/fixedbugs/issue27836.d= ir")))))) >> >> >> This is problematic, because coreutils-boot0 doesn't build for the Hurd: >> coreutils needs hurd headers, and our hurd-headers-boot0 depends >> on...coreutils-boot0. >> >> Why was coreutils-boot0 used instead of the canonical >> delete-file-recursively? > > That was my first reaction too :-), but it=E2=80=99s explained in the com= ment: > there are non-ASCII file names that Guile fails to decode (throwing a > decoding error at that point.) Ah, I missed that. Makes sense. > Seeing is believing so I had to try: > > applying '/gnu/store/5705r4ajxl8lav1hz9xm19w75zdcz1n2-gcc-5.0-libvtv-runp= ath.patch'... > applying '/gnu/store/c2f49hzb4scsqaccfr8vf74f06z0yvp1-gcc-10-tree-sra-uni= on-handling.patch'... > find-files: gcc-11.3.0/gcc/testsuite/go.test/test/fixedbugs/issue27836.di= r/=C3=84foo.go: No such file or directory > Backtrace: Ooh... > When decoded as UTF-8, those file names look like this: > > $ export LC_ALL=3Den_US.UTF-8 > -rw-r--r-- rguenther/users 192 2022-04-21 07:58 gcc-11.3.0/gcc/testsu= ite/go.test/test/fixedbugs/issue27836.dir/=C3=84foo.go > -rw-r--r-- rguenther/users 203 2022-04-21 07:58 gcc-11.3.0/gcc/testsu= ite/go.test/test/fixedbugs/issue27836.dir/=C3=84main.go ...interesting! >> So, until we can correct the gcc-boot0 snippet problem in the next >> rebuild cycle (how does that work now that we don't have core-updates >> anymore?, I made coreutils-boot0 build on the Hurd. See the patch >> below. > > Re =E2=80=9Chow does that work?=E2=80=9D, good question! :-) :-) > We should get rid of that hack though. [..] >> * gnu/packages/commencement.scm (coreutils-boot0)[arguments]: When build= ing >> for the hurd, add new phase 'add-hurd_types.h' and use it. Add >> "ac_cv_member_struct_stat_st_author=3Dno" and -Wl,-rpath for %bootstrap-= libc to >> configure flags when building for the Hurd. Add make-flags with >> "IGNORE_UNUSED_LIBRARIES_CFLAGS=3D" to avoid -Wl,--as-needed, which undo= es >> previous rpath option. [..] > Neat! This is probably okay but I wonder if we can either shrink this > patch or use a different strategy. > > I tried a few things; I thought we could get =E2=80=98coreutils-boot0=E2= =80=99 to build > nothing but =E2=80=98rm=E2=80=99 (since the build failure the patch above= works around > is in =E2=80=98src/copy.c=E2=80=99), but my attempt below doesn=E2=80=99t= work: it insists on > building other things, including =E2=80=98src/copy.c=E2=80=99. I ran out= of time but I > think it should be possible to make it work. Nice idea! > Even better would have been =E2=80=98--enable-no-install-program=3Dcp=E2= =80=99 but > =E2=80=98src/copy.c=E2=80=99 is still getting built. > > (Time passes=E2=80=A6) Hm... > Just as I was about to give up, I looked at: > > guix graph -e '(@@ (gnu packages commencement) guile-final)' -s i586-gn= u -M3 |xdot - > > and found the solution: > > diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm > index 78cfa4acd0..de3728ae26 100644 > --- a/gnu/packages/commencement.scm > +++ b/gnu/packages/commencement.scm > @@ -2333,7 +2333,13 @@ (define gcc-boot0 > ;; names, which cannot be repacked by BOOTSTRAP-ORIGIN. Nor > ;; can it be deleted from Guile, so resort to this evil hac= k. > #$(origin-snippet (package-source gcc)) > - (system* #$(file-append coreutils-boot0 "/bin/rm") "-rf" > + (system* #$(file-append (let-system system > + ;; Work around > + ;; . > + (if (target-hurd? system) > + %bootstrap-coreutils&co > + coreutils-boot0)) > + "/bin/rm") "-rf" > "gcc/testsuite/go.test/test/fixedbugs/issue27836.d= ir")))))) > (arguments > (cons* > How does that sound? :-) That's great, thanks! Using this now on my current wip-hurd and it's working for me! Greetings, Janneke > diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm > index 78cfa4acd0..17745705f7 100644 Some nice tricks here, thanks for sharing! --=20 Janneke Nieuwenhuizen | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar=C2=AE https://AvatarAcade= my.com