From patchwork Sat Feb 12 21:45:29 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Ludovic_Court=C3=A8s?= X-Patchwork-Id: 37219 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 9260C27BBEA; Sat, 12 Feb 2022 21:46:14 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 0651E27BBE9 for ; Sat, 12 Feb 2022 21:46:14 +0000 (GMT) Received: from localhost ([::1]:47528 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nJ0Dd-0004DJ-6c for patchwork@mira.cbaines.net; Sat, 12 Feb 2022 16:46:13 -0500 Received: from eggs.gnu.org ([209.51.188.92]:52298) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nJ0DS-0004BU-7q for guix-patches@gnu.org; Sat, 12 Feb 2022 16:46:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:41932) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nJ0DR-0002wl-UF for guix-patches@gnu.org; Sat, 12 Feb 2022 16:46:01 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nJ0DR-0008UI-TG for guix-patches@gnu.org; Sat, 12 Feb 2022 16:46:01 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#53964] [PATCH 1/4] gnu: nhc98: Build with the current tool chain. References: <20220212214307.22962-1-ludo@gnu.org> In-Reply-To: <20220212214307.22962-1-ludo@gnu.org> Resent-From: Ludovic =?utf-8?q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 12 Feb 2022 21:46:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53964 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 53964@debbugs.gnu.org Cc: Ludovic =?utf-8?q?Court=C3=A8s?= Received: via spool by 53964-submit@debbugs.gnu.org id=B53964.164470234731859 (code B ref 53964); Sat, 12 Feb 2022 21:46:01 +0000 Received: (at 53964) by debbugs.gnu.org; 12 Feb 2022 21:45:47 +0000 Received: from localhost ([127.0.0.1]:35821 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nJ0DC-0008Gn-43 for submit@debbugs.gnu.org; Sat, 12 Feb 2022 16:45:47 -0500 Received: from eggs.gnu.org ([209.51.188.92]:45586) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nJ0DA-00089S-Il for 53964@debbugs.gnu.org; Sat, 12 Feb 2022 16:45:45 -0500 Received: from [2001:470:142:3::e] (port=50936 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nJ0D5-0002oW-9i; Sat, 12 Feb 2022 16:45:39 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:Subject:To:From:in-reply-to: references; bh=SMMkz27YeCWsD7Qq3jEyvR/bQXQqgvHYIEVhEIwmKDc=; b=db5KTCekVAcu+7 dNQ977JNcHt7XbzGzZQfDPLFzgDZltZ2PQZuo/ZV7r0cnH7Qc2qMldoTHdMZ4UF/TkbimqswtECtm uJ/yxnLPdBs10GNU/ZKQpL6hyAhnIl5oMCrVrteqqwjF8u4oTrrLqfbOqwY/eNSFIsHLGjnxIcnUF vgzk/8L2nJBtUUI5jOkuGFKOK1d66pECl8tFK57HJKqWUYMf44ENUNDlhmONwRdBw0MnJWCJZPFfd QHj2cVJphrdIoUvD2bTr9GQ+U4WaOFUoKGAfx/1286CD7Qjg6Dj++rBTGvVqJ/faSLQIN4Fxk3e0M tiNRbLlDrAD7e9337cAg==; Received: from 91-160-117-201.subs.proxad.net ([91.160.117.201]:56748 helo=gnu.org) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nJ0D4-00034N-Ng; Sat, 12 Feb 2022 16:45:39 -0500 From: Ludovic =?utf-8?q?Court=C3=A8s?= Date: Sat, 12 Feb 2022 22:45:29 +0100 Message-Id: <20220212214532.23087-1-ludo@gnu.org> X-Mailer: git-send-email 2.34.0 MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/patches/nhc98-c-update.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/haskell.scm (nhc98)[source]: Use it. [arguments]: Remove #:implicit-inputs?. [native-inputs]: Remove. --- gnu/local.mk | 1 + gnu/packages/haskell.scm | 34 ++---------------- gnu/packages/patches/nhc98-c-update.patch | 42 +++++++++++++++++++++++ 3 files changed, 45 insertions(+), 32 deletions(-) create mode 100644 gnu/packages/patches/nhc98-c-update.patch diff --git a/gnu/local.mk b/gnu/local.mk index a706409516..950b040c64 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1546,6 +1546,7 @@ dist_patch_DATA = \ %D%/packages/patches/nettle-3.5-check-_pkcs1_sec_decrypt-msg-len.patch \ %D%/packages/patches/nettle-3.5-CVE-2021-3580-pt1.patch \ %D%/packages/patches/nettle-3.5-CVE-2021-3580-pt2.patch \ + %D%/packages/patches/nhc98-c-update.patch \ %D%/packages/patches/nix-dont-build-html-doc.diff \ %D%/packages/patches/nfs4-acl-tools-0.3.7-fixpaths.patch \ %D%/packages/patches/ngircd-handle-zombies.patch \ diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 647b078dfd..c3706fca6c 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -123,14 +123,14 @@ (define-public nhc98 version ".tar.gz")) (sha256 (base32 - "0fkgxgsd2iqxvwcgnad1702kradwlbcal6rxdrgb22vd6dnc3i8l")))) + "0fkgxgsd2iqxvwcgnad1702kradwlbcal6rxdrgb22vd6dnc3i8l")) + (patches (search-patches "nhc98-c-update.patch")))) (build-system gnu-build-system) (supported-systems '("i686-linux" "x86_64-linux")) (arguments (list #:tests? #false ;there is no test target #:system "i686-linux" - #:implicit-inputs? #false #:parallel-build? #false ;not supported #:strip-binaries? #false ;doesn't work #:make-flags '(list "all-gcc") @@ -170,36 +170,6 @@ (define-public nhc98 "--ccoption=" "--ldoption=" "--install")))))) - (native-inputs - `(("findutils" ,findutils) - ("tar" ,tar) - ("bzip2" ,bzip2) - ("gzip" ,gzip) - ("xz" ,xz) - ("diffutils" ,diffutils) - ("file" ,file) - ("gawk" ,gawk) - - ("make" ,gnu-make) - ("sed" ,sed) - ("grep" ,grep) - ("coreutils" ,coreutils) - ("bash" ,bash-minimal) - - ("libc" ,glibc-2.2.5) - ("gcc-wrapper" - ,(module-ref (resolve-interface - '(gnu packages commencement)) - 'gcc-2.95-wrapper)) - ("gcc" - ,(module-ref (resolve-interface - '(gnu packages commencement)) - 'gcc-mesboot0)) - ("binutils" - ,(module-ref (resolve-interface - '(gnu packages commencement)) - 'binutils-mesboot)) - ("kernel-headers" ,linux-libre-headers))) (home-page "https://www.haskell.org/nhc98") (synopsis "Nearly a Haskell Compiler") (description diff --git a/gnu/packages/patches/nhc98-c-update.patch b/gnu/packages/patches/nhc98-c-update.patch new file mode 100644 index 0000000000..06e6928d14 --- /dev/null +++ b/gnu/packages/patches/nhc98-c-update.patch @@ -0,0 +1,42 @@ +This patch provides an update so that nhc98 can be built and works with +a modern C compiler (GCC 11) and libc (glibc 2.33). + +diff --git a/Makefile.inc b/Makefile.inc +index 4fbd47a..5bce5c9 100644 +--- a/Makefile.inc ++++ b/Makefile.inc +@@ -1,6 +1,10 @@ + ### Configurable variables: + +-OPT = -O3 ++# We want C89 semantics plus C++-style comments and things like the ++# 'setjmp_buf' and 'u_short' types. More importantly, build with '-O1' ++# only to avoid modern optimizations that break the code. ++OPT = -O1 -std=gnu89 -D_GNU_SOURCE=1 ++ + #ARCH = -m32 + ARCH = + +diff --git a/script/nhc98heap.c b/script/nhc98heap.c +index 534010e..a30d5cd 100644 +--- a/script/nhc98heap.c ++++ b/script/nhc98heap.c +@@ -1,5 +1,6 @@ + #include + #include ++#include + main(int argc, char **argv) + { + int prefix = 1; +diff --git a/src/runtime/Kernel/collector.c b/src/runtime/Kernel/collector.c +index b95a273..1f879c5 100644 +--- a/src/runtime/Kernel/collector.c ++++ b/src/runtime/Kernel/collector.c +@@ -2,6 +2,7 @@ + #include + #include + #include ++#include + #include "node.h" + /*#include "newmacros.h" -- already included in node.h */ + /*#include "runtime.h" -- already included in node.h */ From patchwork Sat Feb 12 21:45:30 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Ludovic_Court=C3=A8s?= X-Patchwork-Id: 37222 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 99B1C27BBEA; Sat, 12 Feb 2022 21:47:10 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 22D0E27BBE9 for ; Sat, 12 Feb 2022 21:47:10 +0000 (GMT) Received: from localhost ([::1]:49234 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nJ0EW-0005OM-Qi for patchwork@mira.cbaines.net; Sat, 12 Feb 2022 16:47:09 -0500 Received: from eggs.gnu.org ([209.51.188.92]:52302) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nJ0DT-0004Cl-0k for guix-patches@gnu.org; Sat, 12 Feb 2022 16:46:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:41934) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nJ0DS-0002wz-NC for guix-patches@gnu.org; Sat, 12 Feb 2022 16:46:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nJ0DS-0008VM-Mg for guix-patches@gnu.org; Sat, 12 Feb 2022 16:46:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#53964] [PATCH 2/4] gnu: gcc: Add 2.95. Resent-From: Ludovic =?utf-8?q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 12 Feb 2022 21:46:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53964 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 53964@debbugs.gnu.org Cc: Ludovic =?utf-8?q?Court=C3=A8s?= Received: via spool by 53964-submit@debbugs.gnu.org id=B53964.164470235532251 (code B ref 53964); Sat, 12 Feb 2022 21:46:02 +0000 Received: (at 53964) by debbugs.gnu.org; 12 Feb 2022 21:45:55 +0000 Received: from localhost ([127.0.0.1]:35827 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nJ0DH-0008Ko-61 for submit@debbugs.gnu.org; Sat, 12 Feb 2022 16:45:54 -0500 Received: from eggs.gnu.org ([209.51.188.92]:45590) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nJ0DB-0008AK-BS for 53964@debbugs.gnu.org; Sat, 12 Feb 2022 16:45:47 -0500 Received: from [2001:470:142:3::e] (port=50938 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nJ0D5-0002oc-TF; Sat, 12 Feb 2022 16:45:39 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:References:In-Reply-To:Date:Subject:To: From; bh=0F6AsfuWKEshf8SUXh0k6HJsVrniLTtmAj+LAWPvP94=; b=eNLT9izvGGpbIKC4jMNZ pHz/LwvS0TakC0d3jEx3Vxe+lSLxOx3C23RulpvxjDr9F2dJTG/DHvZcUuuYVX6K7ElIl6uRFwnXj gbTD5sFJ3RZSPRzMm2/5fc8QQBFHYCXbPlEcyfi2ypMB/+3dBIATxBsfppXc6H6UEYvk7n9dcXlm5 GR21luaUij8bLjzCEMggmu/GtfyVvnAgxd4yhU0XU+iFKuWZsoVByG72Havps3JBJe241a80DobWb vAEoaI6v8HNHKj6jW+LNsdu7Y8fJ0Cb6TrSNtM0ql+HLaR+M7SC3ryi/3ZjQQwA2JXHKPwJKFIrRj bUoTOfiU/pu0VQ==; Received: from 91-160-117-201.subs.proxad.net ([91.160.117.201]:56748 helo=gnu.org) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nJ0D5-00034N-Hd; Sat, 12 Feb 2022 16:45:39 -0500 From: Ludovic =?utf-8?q?Court=C3=A8s?= Date: Sat, 12 Feb 2022 22:45:30 +0100 Message-Id: <20220212214532.23087-2-ludo@gnu.org> X-Mailer: git-send-email 2.34.0 In-Reply-To: <20220212214532.23087-1-ludo@gnu.org> References: <20220212214532.23087-1-ludo@gnu.org> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/gcc.scm (gcc-2.95): New variable. --- gnu/packages/gcc.scm | 71 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 70 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index efa0baeaa1..2f947e4322 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès +;;; Copyright © 2012-2022 Ludovic Courtès ;;; Copyright © 2014, 2015, 2018 Mark H Weaver ;;; Copyright © 2014, 2015, 2016, 2017, 2019, 2021 Ricardo Wurmus ;;; Copyright © 2015 Andreas Enge @@ -641,6 +641,75 @@ (define-public gcc-11 ;; the gcc-toolchain-* definitions. (define-public gcc gcc-10) + +;;; +;;; Historical version. +;;; + +(define-public gcc-2.95 + ;; Note: 'gcc-core-mesboot0' in commencement.scm provides 2.95 as well, but + ;; with additional tricks to support compilation with TinyCC and Mes-libc. + (package + (inherit gcc) + (version "2.95.3") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/gcc/gcc-2.95.3/gcc-core-" + version ".tar.gz")) + (sha256 + (base32 + "1xvfy4pqhrd5v2cv8lzf63iqg92k09g6z9n2ah6ndd4h17k1x0an")))) + (supported-systems '("i686-linux" "x86_64-linux")) + (native-inputs (list texinfo)) + (inputs '()) + (propagated-inputs '()) + (outputs '("out")) + (arguments + (list #:system "i686-linux" ;x86_64 didn't exist back then + #:tests? #f + #:parallel-build? #f + #:configure-flags #~'("--disable-werror") + + #:phases + #~(modify-phases %standard-phases + (add-before 'configure 'set-dynamic-linker-file-name + (lambda* (#:key inputs #:allow-other-keys) + ;; Tell GCC what the real loader file name is. + (substitute* "gcc/config/i386/linux.h" + (("/lib/ld-linux\\.so\\.[12]") + (search-input-file inputs "/lib/ld-linux.so.2"))))) + (replace 'configure + (lambda* (#:key outputs build configure-flags + #:allow-other-keys) + ;; It's an old 'configure' script so it needs some help. + (let ((out (assoc-ref outputs "out"))) + (setenv "CONFIG_SHELL" (which "sh")) + (apply invoke "./configure" + (string-append "--prefix=" out) + (string-append "--build=" build) + (string-append "--host=" build) + configure-flags)))) + (add-before 'configure 'remove-bundled-texinfo + (lambda _ + ;; Do not build the bundled Texinfo. + (delete-file-recursively "texinfo") + (substitute* "configure" + (("host_tools=(.*)texinfo" _ before) + (string-append "host_tools=" before))) + + ;; Go ahead despite the many warnings. + (substitute* '("Makefile.in" "gcc/Makefile.in") + (("^MAKEINFOFLAGS =.*") + "MAKEINFOFLAGS = --force\n"))))))) + (native-search-paths + (list (search-path-specification + (variable "C_INCLUDE_PATH") + (files '("include"))) + (search-path-specification + (variable "LIBRARY_PATH") + (files '("lib"))))))) + + (define-public (make-libstdc++ gcc) "Return a libstdc++ package based on GCC. The primary use case is when using compilers other than GCC." From patchwork Sat Feb 12 21:45:31 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Ludovic_Court=C3=A8s?= X-Patchwork-Id: 37220 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 1835F27BBEA; Sat, 12 Feb 2022 21:46:18 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 7773F27BBE9 for ; Sat, 12 Feb 2022 21:46:17 +0000 (GMT) Received: from localhost ([::1]:47696 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nJ0Dg-0004KP-KF for patchwork@mira.cbaines.net; Sat, 12 Feb 2022 16:46:16 -0500 Received: from eggs.gnu.org ([209.51.188.92]:52300) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nJ0DS-0004CH-Nh for guix-patches@gnu.org; Sat, 12 Feb 2022 16:46:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:41933) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nJ0DS-0002ws-Bm for guix-patches@gnu.org; Sat, 12 Feb 2022 16:46:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nJ0DS-0008Ur-9y for guix-patches@gnu.org; Sat, 12 Feb 2022 16:46:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#53964] [PATCH 3/4] gnu: ghc@4: Build without referring to packages in commencement.scm. Resent-From: Ludovic =?utf-8?q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 12 Feb 2022 21:46:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53964 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 53964@debbugs.gnu.org Cc: Ludovic =?utf-8?q?Court=C3=A8s?= Received: via spool by 53964-submit@debbugs.gnu.org id=B53964.164470235132047 (code B ref 53964); Sat, 12 Feb 2022 21:46:02 +0000 Received: (at 53964) by debbugs.gnu.org; 12 Feb 2022 21:45:51 +0000 Received: from localhost ([127.0.0.1]:35825 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nJ0DG-0008KL-GU for submit@debbugs.gnu.org; Sat, 12 Feb 2022 16:45:51 -0500 Received: from eggs.gnu.org ([209.51.188.92]:45594) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nJ0DB-0008As-Px for 53964@debbugs.gnu.org; Sat, 12 Feb 2022 16:45:46 -0500 Received: from [2001:470:142:3::e] (port=50940 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nJ0D6-0002ok-H4; Sat, 12 Feb 2022 16:45:40 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:References:In-Reply-To:Date:Subject:To: From; bh=/4EUAAdCkImrVqyDctEiP86lChukfdr0xNIJzt+TtLs=; b=ldyWt4lsUIati3g5E6Dc aJRjYtgzcey1mG4Xgmq/LNk8IcUMcxEm+MPtqN3WwzKq45P1cJuEvAIwKCao2uKcYiHCo1IKvzgPi Q+k+twI2DStVqwX2kj7QlCdGxM2xEKAubKHi6hJIXluT+h1ZyeOzeQTM5570h8kT/Kjo8arXau8Tb guNqIspOZLU+y+BsWKFaDKpkq3zCk1acphJgFfcl1R5+B/Qgl0YOP9UTrYDa+DkEWzzzYvqu6JcuL nUUL9FGZj2aiZWXBMgqillWrfgt+MnWHRq9E4MMtaGtSKaxj6Vx2VdxX3raEirUm9KuvqgRxOpvxQ XeH7mLjn/xwe7w==; Received: from 91-160-117-201.subs.proxad.net ([91.160.117.201]:56748 helo=gnu.org) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nJ0D6-00034N-55; Sat, 12 Feb 2022 16:45:40 -0500 From: Ludovic =?utf-8?q?Court=C3=A8s?= Date: Sat, 12 Feb 2022 22:45:31 +0100 Message-Id: <20220212214532.23087-3-ludo@gnu.org> X-Mailer: git-send-email 2.34.0 In-Reply-To: <20220212214532.23087-1-ludo@gnu.org> References: <20220212214532.23087-1-ludo@gnu.org> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/haskell.scm (ghc-4)[arguments]: Remove #:implicit-inputs?. In 'bootstrap' phase, pass '-optc-D_GNU_SOURCE=1'. Use 'search-input-file' to locate lib{bfd,iberty}.a, and 'which' for cpp. Patch 'mk/config.mk.in'. In 'configure' phase, emit "config.cache". In 'make-boot' phase, replace "CLK_TCK" in 'nHandle.c'. [native-inputs]: Remove now-implicit inputs; remove GLIBC-2.2.5, GCC-MESBOOT0, and BINUTILS-MESBOOT. Add GCC-2.95 and BINUTILS-2.33. Remove input labels. --- gnu/packages/haskell.scm | 82 +++++++++++++++++----------------------- 1 file changed, 35 insertions(+), 47 deletions(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index c3706fca6c..6a1ca7c7e8 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -193,12 +193,11 @@ (define-public ghc-4 (sha256 (base32 "0ar4nxy4cr5vwvfj71gmc174vx0n3lg9ka05sa1k60c8z0g3xp1q")) - (patches (list (search-patch "ghc-4.patch"))))) + (patches (search-patches "ghc-4.patch")))) (build-system gnu-build-system) (supported-systems '("i686-linux" "x86_64-linux")) (arguments `(#:system "i686-linux" - #:implicit-inputs? #f #:strip-binaries? #f #:phases (modify-phases %standard-phases @@ -223,8 +222,8 @@ (define-public ghc-4 #HsLibsFor=hugs # Setting this leads to building the interpreter. GhcHcOpts=-DDEBUG -GhcRtsHcOpts=-optc-DDEBUG -optc-D__HUGS__ -unreg -optc-g -GhcRtsCcOpts=-optc-DDEBUG -optc-g -optc-D__HUGS__ +GhcRtsHcOpts=-optc-DDEBUG -optc-D__HUGS__ -unreg -optc-g -optc-D_GNU_SOURCE=1 +GhcRtsCcOpts=-optc-DDEBUG -optc-g -optc-D__HUGS__ -optc-D_GNU_SOURCE=1 SplitObjs=NO "))) @@ -247,8 +246,8 @@ (define-public ghc-4 ;; this old linker understands. (substitute* "ghc/interpreter/Makefile" (("-lbfd -liberty") - (string-append (assoc-ref inputs "binutils") "/lib/libbfd.a " - (assoc-ref inputs "binutils") "/lib/libiberty.a"))) + (string-append (search-input-file inputs "/lib/libbfd.a") " " + (search-input-file inputs "/lib/libiberty.a")))) (let ((bash (which "bash"))) (substitute* '("configure.in" @@ -271,7 +270,13 @@ (define-public ghc-4 (setenv "CONFIG_SHELL" bash) (setenv "SHELL" bash)) - (setenv "CPP" (string-append (assoc-ref inputs "gcc") "/bin/cpp")) + ;; The 'hscpp' script invokes GCC 2.95's 'cpp' (RAWCPP), which + ;; segfaults unless passed '-x c'. + (substitute* "mk/config.mk.in" + (("-traditional") + "-traditional -x c")) + + (setenv "CPP" (which "cpp")) (invoke "autoreconf" "--verbose" "--force"))) (add-before 'configure 'configure-gmp (lambda* (#:key build inputs outputs #:allow-other-keys) @@ -283,6 +288,12 @@ (define-public ghc-4 (lambda* (#:key build inputs outputs #:allow-other-keys) (let ((bash (which "bash")) (out (assoc-ref outputs "out"))) + (call-with-output-file "config.cache" + (lambda (port) + ;; GCC 2.95 fails to deal with anonymous unions in glibc's + ;; 'struct_rusage.h', so skip that. + (display "ac_cv_func_getrusage=no\n" port))) + (invoke bash "./configure" "--enable-hc-boot" (string-append "--prefix=" out) @@ -290,14 +301,15 @@ (define-public ghc-4 (string-append "--host=" build))))) (add-before 'build 'make-boot (lambda _ + ;; CLK_TCK has been removed from recent libc. + (substitute* "ghc/interpreter/nHandle.c" + (("CLK_TCK") "sysconf (_SC_CLK_TCK)")) + ;; Only when building with more recent GCC (when #false ;; GCC 2.95 is fine with these comments, but GCC 4.6 is not. (substitute* "ghc/rts/universal_call_c.S" - (("^# .*") "")) - ;; CLK_TCK has been removed - (substitute* "ghc/interpreter/nHandle.c" - (("CLK_TCK") "sysconf(_SC_CLK_TCK)"))) + (("^# .*") ""))) ;; Only when using more recent Perl (when #false @@ -334,45 +346,21 @@ (define-public ghc-4 (copy-recursively "ghc/interpreter/lib" lib) (install-file "ghc/interpreter/nHandle.so" lib))))))) (native-inputs - `(("findutils" ,findutils) - ("tar" ,tar) - ("bzip2" ,bzip2) - ("xz" ,xz) - ("diffutils" ,diffutils) - ("file" ,file) - ("gawk" ,gawk) - ("autoconf" ,autoconf-2.13) - ("automake" ,automake) - ("bison" ,bison) ;for parser.y + (list autoconf-2.13 + automake + bison ;for parser.y - ("make" ,gnu-make) - ("sed" ,sed) - ("grep" ,grep) - ("coreutils" ,coreutils) - ("bash" ,bash-minimal) + ;; Needed to support lvalue casts. + gcc-2.95 - ("libc" ,glibc-2.2.5) - ;; Lazily resolve binutils-mesboot in (gnu packages commencement) to - ;; avoid a cycle. - ("gcc-wrapper" - ,(module-ref (resolve-interface - '(gnu packages commencement)) - 'gcc-2.95-wrapper)) - ("gcc" - ,(module-ref (resolve-interface - '(gnu packages commencement)) - 'gcc-mesboot0)) - ("binutils" - ,(module-ref (resolve-interface - '(gnu packages commencement)) - 'binutils-mesboot)) - ("kernel-headers" ,linux-libre-headers) + ;; Use an older assembler to work around this error in GMP: + ;; Error: `%edx' not allowed with `testb' + binutils-2.33 - ;; TODO: Perl used to allow setting $* to enable multi-line - ;; matching. If we want to use a more recent Perl we need to - ;; patch all expressions that require multi-line matching. Hard - ;; to tell. - ("perl" ,perl-5.14))) + ;; TODO: Perl used to allow setting $* to enable multi-line + ;; matching. If we want to use a more recent Perl we need to patch + ;; all expressions that require multi-line matching. Hard to tell. + perl-5.14)) (home-page "https://www.haskell.org/ghc") (synopsis "The Glasgow Haskell Compiler") (description From patchwork Sat Feb 12 21:45:32 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Ludovic_Court=C3=A8s?= X-Patchwork-Id: 37221 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 801F127BBEA; Sat, 12 Feb 2022 21:46:41 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 6724327BBE9 for ; Sat, 12 Feb 2022 21:46:40 +0000 (GMT) Received: from localhost ([::1]:48278 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nJ0E2-0004ik-V4 for patchwork@mira.cbaines.net; Sat, 12 Feb 2022 16:46:39 -0500 Received: from eggs.gnu.org ([209.51.188.92]:52306) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nJ0DT-0004Db-GI for guix-patches@gnu.org; Sat, 12 Feb 2022 16:46:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:41935) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nJ0DT-0002xA-5X for guix-patches@gnu.org; Sat, 12 Feb 2022 16:46:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nJ0DT-0008Vx-4L for guix-patches@gnu.org; Sat, 12 Feb 2022 16:46:03 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#53964] [PATCH 4/4] gnu: Remove glibc@2.2.5 and gcc-2.95-wrapper. Resent-From: Ludovic =?utf-8?q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 12 Feb 2022 21:46:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53964 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 53964@debbugs.gnu.org Cc: Ludovic =?utf-8?q?Court=C3=A8s?= Received: via spool by 53964-submit@debbugs.gnu.org id=B53964.164470235632287 (code B ref 53964); Sat, 12 Feb 2022 21:46:03 +0000 Received: (at 53964) by debbugs.gnu.org; 12 Feb 2022 21:45:56 +0000 Received: from localhost ([127.0.0.1]:35829 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nJ0DK-0008O5-VI for submit@debbugs.gnu.org; Sat, 12 Feb 2022 16:45:55 -0500 Received: from eggs.gnu.org ([209.51.188.92]:45598) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nJ0DC-0008Bg-FG for 53964@debbugs.gnu.org; Sat, 12 Feb 2022 16:45:48 -0500 Received: from [2001:470:142:3::e] (port=50942 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nJ0D7-0002ot-69; Sat, 12 Feb 2022 16:45:41 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:References:In-Reply-To:Date:Subject:To: From; bh=wlMx4OVqoJwawGXT3ed6c9RnrMllDTVGJwT0RD/0Oos=; b=M+7+Ejsfyv6J5U97umWf XqToSqlSpfDjh9u0Bv/5mz83fLnboDQzMd29mLNeFdZtX7A7//6qIQVHCeAQ0xUcWb/8JjqDEUfak uqMPKyeTFcB6jAd7ykctRqkPc4dzWdH0tKRZo4ICrCS1k0yOiT3U/j78thZM4MPK+fZprPclH7Kzh E47BMnV4iNAlWQGXZ7Vm8uB/TpEobriuwsTWm64MiYxMBy/qAU/R5IfEB3PqXSS//DdJVHXqj17hz WOCaaqPN1+eV5EH7WmBuDxG55i275IFuuky7QX00jA19LYoqKTnxVAlvE/C73TiqiCr8IftfjYPZX 4MZQexaLFYkPWQ==; Received: from 91-160-117-201.subs.proxad.net ([91.160.117.201]:56748 helo=gnu.org) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nJ0D6-00034N-PG; Sat, 12 Feb 2022 16:45:41 -0500 From: Ludovic =?utf-8?q?Court=C3=A8s?= Date: Sat, 12 Feb 2022 22:45:32 +0100 Message-Id: <20220212214532.23087-4-ludo@gnu.org> X-Mailer: git-send-email 2.34.0 In-Reply-To: <20220212214532.23087-1-ludo@gnu.org> References: <20220212214532.23087-1-ludo@gnu.org> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches This reverts commits a95924c9ac3f238cde243c96d552ff59ad77ca16 and defa85b26537a3cc20624fb9dbcae906226361d5, which were used to build nhc98@1.22 but are no longer needed. * gnu/packages/base.scm (glibc-2.2.5): Remove. * gnu/packages/commencement.scm (gcc-2.95-wrapper): Remove. (glibc-mesboot0, gcc-mesboot0, binutils-mesboot): Keep private. --- gnu/packages/base.scm | 99 ----------------------------------- gnu/packages/commencement.scm | 63 ++-------------------- 2 files changed, 3 insertions(+), 159 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 32a462b545..76a65f25b3 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -1015,105 +1015,6 @@ (define-public glibc-2.29 "glibc-reinstate-prlimit64-fallback.patch" "glibc-2.29-supported-locales.patch")))))) - -(define-public glibc-2.2.5 - (package - (inherit glibc) - (version "2.2.5") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.gz")) - (patches (search-patches "glibc-boot-2.2.5.patch" - "glibc-bootstrap-system-2.2.5.patch")) - (sha256 - (base32 - "1vl48i16gx6h68whjyhgnn1s57vqq32f9ygfa2fls7pdkbsqvp2q")))) - (arguments - (list #:system "i686-linux" - #:implicit-inputs? #f - #:tests? #f - #:strip-binaries? #f - #:validate-runpath? #f - #:parallel-build? #f ; gcc-2.95.3 ICEs on massively parallel builds - #:make-flags - #~(list (string-append - "SHELL=" #$(this-package-native-input "bash") "/bin/sh")) - #:configure-flags - #~(list "--enable-shared" - "--enable-static" - "--disable-sanity-checks" - "--build=i686-unknown-linux-gnu" - "--host=i686-unknown-linux-gnu" - (string-append "--with-headers=" - #$(this-package-native-input "kernel-headers") - "/include") - "--enable-static-nss" - "--without-__thread" - "--without-cvs" - "--without-gd" - "--without-tls" - (string-append "--prefix=" #$output)) - #:phases - #~(modify-phases %standard-phases - (add-before 'configure 'setenv - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bash (assoc-ref inputs "bash")) - (shell (string-append bash "/bin/bash")) - (gcc (assoc-ref inputs "gcc")) - (cppflags (string-append - " -D MES_BOOTSTRAP=1" - " -D BOOTSTRAP_GLIBC=1")) - (cflags (string-append " -L " (getcwd)))) - (setenv "CONFIG_SHELL" shell) - (setenv "SHELL" shell) - (setenv "CPP" (string-append gcc "/bin/gcc -E " cppflags)) - (setenv "CC" (string-append gcc "/bin/gcc " cppflags cflags))))) - (replace 'configure ; needs classic invocation of configure - (lambda* (#:key configure-flags #:allow-other-keys) - (format (current-error-port) - "running ./configure ~a\n" (string-join configure-flags)) - (apply invoke "./configure" configure-flags))) - (add-after 'configure 'fixup-configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bash (assoc-ref inputs "bash")) - (shell (string-append bash "/bin/bash"))) - (substitute* "config.make" - (("INSTALL = scripts/") "INSTALL = $(..)./scripts/")) - (substitute* "config.make" - (("INSTALL = scripts/") "INSTALL = $(..)./scripts/") - (("BASH = ") (string-append - "SHELL = " shell " - BASH = "))))))))) - (supported-systems '("i686-linux" "x86_64-linux")) - (outputs '("out")) - (inputs '()) - (propagated-inputs '()) - (native-inputs - ;; Lazily resolve NAME in (gnu packages commencement) to avoid a cycle. - (let ((c (lambda (name) - (module-ref (resolve-interface - '(gnu packages commencement)) - name)))) - `(("bash" ,bash-minimal) - ("coreutils" ,coreutils) - ("gawk" ,gawk) - ("grep" ,grep) - ("make" ,gnu-make) - ("sed" ,sed) - ("tar" ,tar) - ("bzip2" ,bzip2) - ("gzip" ,gzip) - ("patch" ,patch) - ("xz" ,xz) - ("kernel-headers" ,linux-libre-headers) - - ;; Old toolchain - ("gcc" ,(c 'gcc-mesboot0)) - ("binutils" ,(c 'binutils-mesboot)) - ("libc" ,(c 'glibc-mesboot0))))))) - (define-public (make-gcc-libc base-gcc libc) "Return a GCC that targets LIBC." (package (inherit base-gcc) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 76e879b47b..cdc9c1d621 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -1265,7 +1265,7 @@ (define gawk-mesboot0 (install-file "gawk" bin) (symlink "gawk" (string-append bin "/awk")))))))))) -(define-public glibc-mesboot0 +(define glibc-mesboot0 ;; GNU C Library 2.2.5 is the most recent glibc that we managed to build ;; using gcc-2.95.3. Newer versions (2.3.x, 2.6, 2.1x) seem to need a newer ;; gcc. @@ -1359,7 +1359,7 @@ (define-public glibc-mesboot0 "SHELL = " shell " BASH = "))))))))))) -(define-public gcc-mesboot0 +(define gcc-mesboot0 (package (inherit gcc-core-mesboot0) (name "gcc-mesboot0") @@ -1403,63 +1403,6 @@ (define-public gcc-mesboot0 ,(string-append "LIBGCC2_INCLUDES=-I " gcc "/include") "LANGUAGES=c"))))))) -(define-public gcc-2.95-wrapper - ;; We need this so gcc-mesboot0 can be used to create shared binaries that - ;; have the correct interpreter, otherwise configuring gcc-mesboot using - ;; --enable-shared will fail. - (package - (inherit gcc-mesboot0) - (name "gcc-wrapper") - (source #f) - (inputs '()) - (native-inputs - `(("bash" ,bash-minimal) - ("coreutils" ,coreutils) - ("libc" ,glibc-2.2.5) - ("gcc" ,gcc-mesboot0))) - (arguments - `(#:implicit-inputs? #f - #:phases - (modify-phases %standard-phases - (delete 'unpack) - (delete 'configure) - (delete 'install) - (replace 'build - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bash (assoc-ref inputs "bash")) - (libc (assoc-ref inputs "libc")) - (gcc (assoc-ref inputs "gcc")) - (bin (string-append out "/bin"))) - (mkdir-p bin) - (for-each - (lambda (program) - (let ((wrapper (string-append bin "/" program))) - (with-output-to-file wrapper - (lambda _ - (display (string-append "#! " bash "/bin/bash -exec " gcc "/bin/" program -" -Wl,--dynamic-linker" -;; also for x86_64-linux, we are still on i686-linux -" -Wl," libc ,(glibc-dynamic-linker "i686-linux") -" -Wl,--rpath" -" -Wl," libc "/lib" -" \"$@\" -")) - (chmod wrapper #o555))))) - '("cpp" - "gcc" - "g++" - "i686-unknown-linux-gnu-cpp" - "i686-unknown-linux-gnu-gcc" - "i686-unknown-linux-gnu-g++"))))) - (replace 'check - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (program (string-append bin "/gcc"))) - (invoke program "--help"))))))))) - (define (%boot-mesboot0-inputs) `(("gcc" ,gcc-mesboot0) ("kernel-headers" ,%bootstrap-linux-libre-headers) @@ -2050,7 +1993,7 @@ (define hello-mesboot (lambda _ (invoke "./hello")))))))) -(define-public binutils-mesboot +(define binutils-mesboot (package (inherit binutils) (name "binutils-mesboot")