From unknown Tue Sep 23 05:53:16 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#53609 <53609@debbugs.gnu.org> To: bug#53609 <53609@debbugs.gnu.org> Subject: Status: [PATCH] Add GHC 4 for the Haskell bootstrap Reply-To: bug#53609 <53609@debbugs.gnu.org> Date: Tue, 23 Sep 2025 12:53:16 +0000 retitle 53609 [PATCH] Add GHC 4 for the Haskell bootstrap reassign 53609 guix-patches submitter 53609 Ricardo Wurmus severity 53609 normal tag 53609 patch thanks From debbugs-submit-bounces@debbugs.gnu.org Fri Jan 28 12:43:49 2022 Received: (at submit) by debbugs.gnu.org; 28 Jan 2022 17:43:49 +0000 Received: from localhost ([127.0.0.1]:60430 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nDVHp-0001CC-6H for submit@debbugs.gnu.org; Fri, 28 Jan 2022 12:43:49 -0500 Received: from lists.gnu.org ([209.51.188.17]:33938) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nDVHn-0001C5-Nk for submit@debbugs.gnu.org; Fri, 28 Jan 2022 12:43:48 -0500 Received: from eggs.gnu.org ([209.51.188.92]:34754) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nDVHm-00018Y-8I for guix-patches@gnu.org; Fri, 28 Jan 2022 12:43:46 -0500 Received: from sender4-of-o51.zoho.com ([136.143.188.51]:21120) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nDVHh-0001ZZ-Nm for guix-patches@gnu.org; Fri, 28 Jan 2022 12:43:44 -0500 ARC-Seal: i=1; a=rsa-sha256; t=1643391817; cv=none; d=zohomail.com; s=zohoarc; b=XXdakM5NimmsTyx1ao/UsFpKxaqKLdmMeysj21g6R8BJ40vqtvUmvhwtCcXLvE1XLTkytmWdnBD6f8fzQ2JGTpk19mLRppX6cdfnSwyda9fPmGqsbVjF+ZUcSYye6rAbJ4giMZzn3QZHM0M607ytvvjaWo0VxePzjkcp1Sm5lKw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1643391817; h=Content-Type:Content-Transfer-Encoding:Date:From:MIME-Version:Message-ID:Subject:To; bh=twtzA760OhSHsYfnUHwcoX3KuQRkuKu+j0nFLqDz3Lo=; b=PdygZsfBTMXKKpX1BVVX08RhMxoJY7wXWwgIK6iwBcww8OFsGJ51hDG846AqLqOMvQ4lAJgiSi3iZ8xPVW0mDdOD8QvPJs4jxTmuAPPrHapDkXDP+t5kEqiPV5OWX8H4wUWXJeksweEea4AyBndu9XMCDBG+Ruxt1+XUHs24pCk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=elephly.net; spf=pass smtp.mailfrom=rekado@elephly.net; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1643391817; s=zoho; d=elephly.net; i=rekado@elephly.net; h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding; bh=twtzA760OhSHsYfnUHwcoX3KuQRkuKu+j0nFLqDz3Lo=; b=cTJVBzIKACPICs62fDIF8pb2jnW7bEZJk2/5VIt/8FsGdyL5d2icjvvagKGstWf4 VHGTvWW+ASgpoR+jdDf34CtnxUcjZdEHuZwOzTLzVuz2jxdJXp1rJyr1DI/vZM+eC9i Cko22tWirv3iNSUZ5dTsl2JGKf84NeGxnpLyW5Ng= Received: from localhost (p54ad4fa1.dip0.t-ipconnect.de [84.173.79.161]) by mx.zohomail.com with SMTPS id 1643391815347458.8725525884063; Fri, 28 Jan 2022 09:43:35 -0800 (PST) User-agent: mu4e 1.6.10; emacs 27.2 From: Ricardo Wurmus To: guix-patches@gnu.org Subject: [PATCH] Add GHC 4 for the Haskell bootstrap Date: Fri, 28 Jan 2022 18:35:06 +0100 X-URL: https://elephly.net X-PGP-Key: https://elephly.net/rekado.pubkey X-PGP-Fingerprint: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC Message-ID: <8735l7hi2k.fsf@elephly.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-ZohoMailClient: External Received-SPF: pass client-ip=136.143.188.51; envelope-from=rekado@elephly.net; helo=sender4-of-o51.zoho.com X-Spam_score_int: -1 X-Spam_score: -0.2 X-Spam_bar: / X-Spam_report: (-0.2 / 5.0 requ) DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) This patch adds GHC 4.08.2. GHC 4.08.2 is sufficient to build GHC 6.0. GHC 6.6 was released in April 2007. To build 6.6 you need GHC > 5.04 (http://web.archive.org/web/20070426051520/http://hackage.haskell.org:80/tr= ac/ghc/wiki/Building/Prerequisites) or maybe 6.0 (http://web.archive.org/web/20071224035747/http://hackage.haskell.org:80/tr= ac/ghc/wiki/Building/Prerequisites) To build 6.8.* you need GHC >=3D 6.4 To build 6.10.* you need GHC >=3D 6.6 To build 7.4.* you need GHC >=3D 6.12 To build 7.6.* you need GHC >=3D 7.0.1 So with this chain we should be able to bootstrap GHC: 4.08.2 -> 6.0 -> 6.6 -> 6.12(?) -> 7.4 -> 7.6 Back to 4.08.2. It=E2=80=99s ancient and it=E2=80=99s not possible to buil= d it even with GCC 4.9; it will not fail, but it will print a bunch of serious errors. So I=E2=80=99m using GCC 2.95, which we already have for the early GCC bootstrap. That=E2=80=99s why all of this is in commencement.scm= =E2=80=94 it may be worth exporting GCC 2.95, so that this whole GHC bootstrap can go to haskell.scm instead of cluttering up commencement.scm. I also need to use Perl 5.14, as one of the Perl scripts uses $*, which used to enable multi-line regexp matching. It=E2=80=99s not easy to just r= emove this and update the regular expressions with the /s or /m modifiers because there are dozens of non-trivial regexes there that are affected by $*. It would be very nice to patch this though. Building with a more recent (but not latest) Perl works, but prints a warning. That=E2=80=99s not okay, because $* simply has no effect in these versions of Perl. Later this silent change was turned into a visible error, which is why the build would fail with the latest Perl. I used the =E2=80=9C--enable-hc-boot=E2=80=9D configure flag, which lets us= bootstrap from hc files. I don=E2=80=99t see a reason not to use them as they are pr= oper code; they don=E2=80=99t look generated nor are they unintelligible. Comments on all this would be very welcome! --=20 Ricardo From debbugs-submit-bounces@debbugs.gnu.org Fri Jan 28 12:49:02 2022 Received: (at 53609) by debbugs.gnu.org; 28 Jan 2022 17:49:03 +0000 Received: from localhost ([127.0.0.1]:60442 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nDVMs-0001OK-F6 for submit@debbugs.gnu.org; Fri, 28 Jan 2022 12:49:02 -0500 Received: from sender4-of-o51.zoho.com ([136.143.188.51]:21137) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nDVMq-0001Nv-EO for 53609@debbugs.gnu.org; Fri, 28 Jan 2022 12:49:01 -0500 ARC-Seal: i=1; a=rsa-sha256; t=1643392138; cv=none; d=zohomail.com; s=zohoarc; b=ZblUvvqo+ybOvKS7KU23kjUBM8j8dlJ6IXE2TwbSYnax7dy/pgMXUTD/U/D+A9tMgHA47IPJFBLBUS2l7Fv8JE4xmf8YnOo7Y+3/6dnBUEVZ6jfxWMUXZxATIm0yNKwE36q0mwgCUybQLsWZrX/UOx5QsDPpw24hAxNTP9bxRUc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1643392138; h=Content-Transfer-Encoding:Cc:Date:From:MIME-Version:Message-ID:Subject:To; bh=gU+vPBSVH8fT77ogLYseKao6T6bdFl1i9ecLMA9jPjc=; b=gEYs9RFnuadIijXj4kWB0s1KKVu5Kig7I5T5kyMMPTLj7Pq8BjhxJ7jA6YZCjSGWOJQ4ha028ohDqKNRvAnxPhIECOsGOgn4kxTE8SmbYr0nka3+ozLSyAOme8ri6tUcKQDOp0oT3YrB8kX7QU7ixhIDOGOCBAJSMXtiNVPdHv4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=elephly.net; spf=pass smtp.mailfrom=rekado@elephly.net; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1643392138; s=zoho; d=elephly.net; i=rekado@elephly.net; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Content-Transfer-Encoding; bh=gU+vPBSVH8fT77ogLYseKao6T6bdFl1i9ecLMA9jPjc=; b=KYsSQGym+6JW/DYoqpY/6fetOot0Wm8/H5pPNN9VVp8Wo5YSDmODWEXgiLee6Ls3 XfY1MC2dxp5em5qI1e43KkFB7Ha7rPe47Sly6wyTSDJhvFPePoTuYGzo+qtCa/RFDuN uXtVV+RF8CKtajbuv/dn+eia0nl47dZbd63UYj+s= Received: from localhost (p54ad4fa1.dip0.t-ipconnect.de [84.173.79.161]) by mx.zohomail.com with SMTPS id 1643392137612372.75862891820145; Fri, 28 Jan 2022 09:48:57 -0800 (PST) From: Ricardo Wurmus To: 53609@debbugs.gnu.org Subject: [PATCH 1/2] gnu: Add perl-5.14. Date: Fri, 28 Jan 2022 18:48:51 +0100 Message-Id: <20220128174852.10637-1-rekado@elephly.net> X-Mailer: git-send-email 2.34.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-ZohoMailClient: External X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53609 Cc: Ricardo Wurmus X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/perl.scm (perl-5.14): New variable. --- gnu/packages/perl.scm | 73 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index d2c9d0d24e..b70db30e8d 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -65,6 +65,7 @@ (define-module (gnu packages perl) #:use-module (gnu packages databases) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gcc) #:use-module (gnu packages gd) #:use-module (gnu packages gl) #:use-module (gnu packages gtk) @@ -258,6 +259,78 @@ (define-public perl (home-page "https://www.perl.org/") (license license:gpl1+))) ; or "Artistic" +(define-public perl-5.14 + (package + (name "perl") + (version "5.14.4") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/src/5.0/perl-" + version ".tar.gz")) + (sha256 + (base32 + "1js47zzna3v38fjnirf2vq6y0rjp8m86ysj5vagzgkig956d8gw0")) + (patches (search-patches + "perl-5.14-no-sys-dirs.patch" + "perl-5.14-autosplit-default-time.patch" + "perl-5.14-module-pluggable-search.patch")))) + (properties `((release-date . "2013-03-10"))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (libc (assoc-ref inputs "libc"))) + ;; Use the right path for `pwd'. + (substitute* "dist/Cwd/Cwd.pm" + (("/bin/pwd") + (which "pwd"))) + + (invoke "./Configure" + (string-append "-Dprefix=" out) + (string-append "-Dman1dir=" out "/share/man/man1") + (string-append "-Dman3dir=" out "/share/man/man3") + "-de" "-Dcc=gcc" + "-Uinstallusrbinperl" + "-Dinstallstyle=lib/perl5" + "-Duseshrplib" + (string-append "-Dlocincpth=" libc "/include") + (string-append "-Dloclibpth=" libc "/lib") + + ;; Force the library search path to contain only libc + ;; because it is recorded in Config.pm and + ;; Config_heavy.pl; we don't want to keep a reference + ;; to everything that's in $LIBRARY_PATH at build + ;; time (Binutils, bzip2, file, etc.) + (string-append "-Dlibpth=" libc "/lib") + (string-append "-Dplibpth=" libc "/lib"))))) + + (add-before 'strip 'make-shared-objects-writable + (lambda* (#:key outputs #:allow-other-keys) + ;; The 'lib/perl5' directory contains ~50 MiB of .so. Make them + ;; writable so that 'strip' actually strips them. + (let* ((out (assoc-ref outputs "out")) + (lib (string-append out "/lib"))) + (for-each (lambda (dso) + (chmod dso #o755)) + (find-files lib "\\.so$")))))))) + (native-inputs + (list gcc-7)) + (native-search-paths (list (search-path-specification + (variable "PERL5LIB") + (files '("lib/perl5/site_perl"))))) + (home-page "https://www.perl.org/") + (synopsis "Implementation of the Perl programming language") + (description + "Perl is a general-purpose programming language originally developed for +text manipulation and now used for a wide range of tasks including system +administration, web development, network programming, GUI development, and +more.") + (license license:gpl1+))) + (define-public perl-algorithm-c3 (package (name "perl-algorithm-c3") -- 2.34.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Jan 28 12:49:13 2022 Received: (at 53609) by debbugs.gnu.org; 28 Jan 2022 17:49:13 +0000 Received: from localhost ([127.0.0.1]:60445 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nDVMx-0001Or-TX for submit@debbugs.gnu.org; Fri, 28 Jan 2022 12:49:13 -0500 Received: from sender4-of-o51.zoho.com ([136.143.188.51]:21140) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nDVMu-0001Og-6V for 53609@debbugs.gnu.org; Fri, 28 Jan 2022 12:49:04 -0500 ARC-Seal: i=1; a=rsa-sha256; t=1643392143; cv=none; d=zohomail.com; s=zohoarc; b=iuXdW6evE1BtsuN+UfYKx4IyQTLRGQ7Ww+wAqeuh6oUlxi3mbvlwrPpOjYSfBZwMyxKYtrjVxrm36g1dRnD3WaO6FjmPAvcH68j6YTBsEEhRJMykdqFPHenfuRG0scRl9wZLOE4ws/3s252Qipg8P01MppaPdnmQKtbXh+LOd1s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1643392143; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=x97BrmwcZBuBB6ifzIISWdGsE5E3FeCIWyWqoud/gtk=; b=eAbgRZxE8KpxQh/+orL/yOahhQc2L9m/8VJLnILUHA2lTzy30++lBoacFwI6liu0n0ZYVoVx9E1Gm1zepty0/1fgA3Hesdmv3hhw99HF3Z2DIvUFTRqOD183kv+HvbM+AOI7/l0s6cpnjXF6uzbvPmZuQrZu4EivZZYOzJWt+rE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=elephly.net; spf=pass smtp.mailfrom=rekado@elephly.net; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1643392143; s=zoho; d=elephly.net; i=rekado@elephly.net; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Content-Transfer-Encoding; bh=x97BrmwcZBuBB6ifzIISWdGsE5E3FeCIWyWqoud/gtk=; b=QafsXfB7iCZ7y6sz0ByqOdTpUG39hNsAQl2muia7RghLM3fiKYONoVnz5dTX3wJH g4G8sB0oN8l0/rfhzO4o89fWlvmN0LV+menmZpnJnDTBPd+J0YGpnfsDETz2e6faxhi mw9s6kEDdXXwbQf+5p5YZ7awPh7zng23e+n/uI50= Received: from localhost (p54ad4fa1.dip0.t-ipconnect.de [84.173.79.161]) by mx.zohomail.com with SMTPS id 1643392140918723.5731038276593; Fri, 28 Jan 2022 09:49:00 -0800 (PST) From: Ricardo Wurmus To: 53609@debbugs.gnu.org Subject: [PATCH 2/2] gnu: Add ghc-4. Date: Fri, 28 Jan 2022 18:48:52 +0100 Message-Id: <20220128174852.10637-2-rekado@elephly.net> X-Mailer: git-send-email 2.34.0 In-Reply-To: <20220128174852.10637-1-rekado@elephly.net> References: <20220128174852.10637-1-rekado@elephly.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-ZohoMailClient: External X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53609 Cc: Ricardo Wurmus X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/commencement.scm (ghc-4): New variable. --- gnu/packages/commencement.scm | 131 ++++++++++++++++++++++++++++++++++ 1 file changed, 131 insertions(+) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 96d914344d..03f1ea276c 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -30,6 +30,7 @@ (define-module (gnu packages commencement) #:use-module (gnu packages) + #:use-module (gnu packages autotools) #:use-module (gnu packages bootstrap) #:use-module (gnu packages base) #:use-module (gnu packages bash) @@ -3902,5 +3903,135 @@ (define-public gfortran-toolchain gfortran, as well as libc (headers and binaries, plus debugging symbols in the @code{debug} output), and binutils."))) +(define-public ghc-4 + (package + (name "ghc") + (version "4.08.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://www.haskell.org/ghc/dist/" + version "/" name "-" version "-src.tar.bz2")) + (sha256 + (base32 + "0ar4nxy4cr5vwvfj71gmc174vx0n3lg9ka05sa1k60c8z0g3xp1q")))) + (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 + (replace 'bootstrap + (lambda* (#:key inputs #:allow-other-keys) + (delete-file "configure") + (delete-file "config.sub") + (install-file (string-append (assoc-ref inputs "automake") + "/share/automake-1.16/config.sub") + ".") + (let ((bash (which "bash"))) + (substitute* '("configure.in" + "ghc/configure.in" + "ghc/rts/gmp/mpn/configure.in" + "ghc/rts/gmp/mpz/configure.in" + "ghc/rts/gmp/configure.in" + "distrib/configure-bin.in") + (("`/bin/sh") (string-append "`" bash)) + (("SHELL=/bin/sh") (string-append "SHELL=" bash)) + (("^#! /bin/sh") (string-append "#! " bash))) + + (substitute* '("mk/config.mk.in" + "ghc/rts/gmp/mpz/Makefile.in" + "ghc/rts/gmp/Makefile.in") + (("^SHELL.*=.*/bin/sh") (string-append "SHELL = " bash))) + (substitute* "aclocal.m4" + (("SHELL=/bin/sh") (string-append "SHELL=" bash)))) + + (invoke "autoreconf" "--verbose" "--force"))) + (add-before 'configure 'configure-gmp + (lambda* (#:key build inputs outputs #:allow-other-keys) + (with-directory-excursion "ghc/rts/gmp" + (let ((bash (which "bash")) + (out (assoc-ref outputs "out"))) + (setenv "CONFIG_SHELL" bash) + (setenv "SHELL" bash) + (invoke bash "./configure"))))) + (replace 'configure + (lambda* (#:key build inputs outputs #:allow-other-keys) + (let ((bash (which "bash")) + (out (assoc-ref outputs "out"))) + (setenv "CONFIG_SHELL" bash) + (setenv "SHELL" bash) + (invoke bash "./configure" + "--enable-hc-boot" + (string-append "--prefix=" out) + (string-append "--build=" build) + (string-append "--host=" build))))) + (replace 'build + (lambda _ + ;; mkdirhier doesn't get built, so just use mkdir -p. + (substitute* "mk/paths.mk" + (("^INSTALL_DIR.*") + "INSTALL_DIR = mkdir -p")) + + #; + (substitute* "ghc/driver/ghc-asm.prl" + (("local\\(\\$\\*\\) = 1;") "") + (("endef\\$/") "endef$/s")) + + (invoke "make" "boot") + (invoke "make")))))) + (native-inputs + `(("gcc" ,gcc-mesboot0) + ("libc" ,glibc-mesboot0) + ("binutils" ,binutils-mesboot0) + + ("autoconf" ,autoconf-2.13) + ("automake" ,automake) + + ("make" ,gnu-make-final) + ("sed" ,sed-final) + ("grep" ,grep-final) + ("coreutils" ,coreutils-final) + ("bash" ,bash-final) + ("ld-wrapper" ,ld-wrapper) + ("kernel-headers" ,%bootstrap-linux-libre-headers) + ("tar" ,tar) + ("bzip2" ,bzip2) + ("diffutils" ,diffutils) + ("file" ,file) + ("findutils" ,findutils) + ("gawk" ,gawk) + + ;; 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))) + (native-search-paths (list (search-path-specification + (variable "GHC_PACKAGE_PATH") + (files (list + (string-append "lib/ghc-" version))) + (file-pattern ".*\\.conf\\.d$") + (file-type 'directory)))) + (home-page "https://www.haskell.org/ghc") + (synopsis "The Glasgow Haskell Compiler") + (description + "The Glasgow Haskell Compiler (GHC) is a state-of-the-art compiler and +interactive environment for the functional language Haskell.") + (license license:bsd-3))) + (native-search-paths (list (search-path-specification + (variable "GHC_PACKAGE_PATH") + (files (list + (string-append "lib/ghc-" version))) + (file-pattern ".*\\.conf\\.d$") + (file-type 'directory)))) + (home-page "https://www.haskell.org/ghc") + (synopsis "The Glasgow Haskell Compiler") + (description + "The Glasgow Haskell Compiler (GHC) is a state-of-the-art compiler and +interactive environment for the functional language Haskell.") + (license license:bsd-3))) ;;; commencement.scm ends here -- 2.34.0 From debbugs-submit-bounces@debbugs.gnu.org Sat Jan 29 14:02:13 2022 Received: (at 53609) by debbugs.gnu.org; 29 Jan 2022 19:02:13 +0000 Received: from localhost ([127.0.0.1]:34818 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nDszE-00053T-Rp for submit@debbugs.gnu.org; Sat, 29 Jan 2022 14:02:13 -0500 Received: from sender4-of-o50.zoho.com ([136.143.188.50]:21082) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nDszC-00053J-TR for 53609@debbugs.gnu.org; Sat, 29 Jan 2022 14:02:11 -0500 ARC-Seal: i=1; a=rsa-sha256; t=1643482928; cv=none; d=zohomail.com; s=zohoarc; b=dr5l3wEc8ltGeN5WYbED3ukAWCyTli2cPGYj1HDZGfk/SStgeWNcfr+de9bK6RBy6+jC38lzIGoY8HpLlO+eUTUA1+wBj2G7Li9uvI9lN5Eyl0gCsfnEmdS1iejJONgmV0nBZdwzz5zZKWEQqYQTfq9yPYOBlFtzlPUVPO9yUAE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1643482928; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=5pA1nOx+7OarIF1eSorQYoZ4A4wYhS9Rpqbh1/Ree+s=; b=Hz9xmpYkDArzjvSbzhULm/+s3506+HaUPusz0w+DLFWA7ZYNlElKyvy0IgCFCVZKBBbz18+XEeIFjb/EvplKRnDYTGb0NE6Ej3VETFkT/I2350QqeQXby+XPDkB6utxNtu2eOhpNEokZtx0ovzSbLTv9X/1CWjZd2OoVTVvFm+k= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=elephly.net; spf=pass smtp.mailfrom=rekado@elephly.net; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1643482928; s=zoho; d=elephly.net; i=rekado@elephly.net; h=References:From:To:Subject:Date:In-reply-to:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding; bh=5pA1nOx+7OarIF1eSorQYoZ4A4wYhS9Rpqbh1/Ree+s=; b=WRRvl+n59xCbv8ngDOdlCipd4Pwfs4s6yIFeMt8vzBOERc6cMziU0fh2AHWTaDOB PIDRLlcwtyiWwWqgzPhjsbUnW4ZU62jMgE2TG1C2qBZ16oBWEyp6OlboHNt7Jv/oeoI OKMAj0FIC2gAstLCkJ3/GYID8qv37GwUsHb9HF8M= Received: from localhost (p4fd5ac1d.dip0.t-ipconnect.de [79.213.172.29]) by mx.zohomail.com with SMTPS id 1643482926866326.11969591276875; Sat, 29 Jan 2022 11:02:06 -0800 (PST) References: <20220128174852.10637-1-rekado@elephly.net> <20220128174852.10637-2-rekado@elephly.net> User-agent: mu4e 1.6.10; emacs 27.2 From: Ricardo Wurmus To: 53609@debbugs.gnu.org Subject: Re: [PATCH 2/2] gnu: Add ghc-4. Date: Sat, 29 Jan 2022 19:56:39 +0100 In-reply-to: <20220128174852.10637-2-rekado@elephly.net> X-URL: https://elephly.net X-PGP-Key: https://elephly.net/rekado.pubkey X-PGP-Fingerprint: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC Message-ID: <871r0qfjro.fsf@elephly.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-ZohoMailClient: External X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53609 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) There had to be a catch, and sure enough: there is one. This ghc-4 package doesn=E2=80=99t include everything it should. The good news is tha= t the RTS of GHC is included. The bad news is that the standard library doesn=E2=80=99t exist. This old build system is a bit too optimistic and will ignore any build failure. There are two failures: --8<---------------cut here---------------start------------->8--- make[3]: *** No rule to make target 'Array.o', needed by 'libHSstd.a'. Stop. [=E2=80=A6] make[2]: *** No rule to make target 'utils/Argv.o', needed by 'hsc'. Stop. --8<---------------cut here---------------end--------------->8--- =E2=80=9CStop.=E2=80=9D here is not to be taken literally, it seems. The b= uild continues but libHSstd.a doesn=E2=80=99t make it to the finish line. Array= .o would presumably be built from Haskell code. This means that the vision I had during a fever dream is still worth following: combine the GHC RTS with the Hugs interpreter to interpret the Haskell code of GHC 4 to use it to compile the Haskell code of GHC 4. --=20 Ricardo From debbugs-submit-bounces@debbugs.gnu.org Fri Feb 04 19:08:38 2022 Received: (at 53609) by debbugs.gnu.org; 5 Feb 2022 00:08:38 +0000 Received: from localhost ([127.0.0.1]:33240 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nG8d3-00086S-M1 for submit@debbugs.gnu.org; Fri, 04 Feb 2022 19:08:38 -0500 Received: from sender4-of-o51.zoho.com ([136.143.188.51]:21166) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nG8d0-00086A-Aj for 53609@debbugs.gnu.org; Fri, 04 Feb 2022 19:08:36 -0500 ARC-Seal: i=1; a=rsa-sha256; t=1644019710; cv=none; d=zohomail.com; s=zohoarc; b=AOJUMZHDzgwIbMc49ovGQi1Y25X5RkHSLQ64sEEBZarY9+cg+x298CsF68hg2vFJk1Vqadb86E2XOj8a00PVz5Nocd7byzVLg/I5/FN5CvCMCfnaZulaGcY59xo03JPg2rvPkbdGJ7iSyOoSi9iWPfqe5c7/u0mnwpP+5LRTvuY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1644019710; h=Content-Transfer-Encoding:Cc:Date:From:MIME-Version:Message-ID:Subject:To; bh=SvOYQ/NeSPALMqoremiy9p05uqfJhNZ4nwS0v2KQcss=; b=QBilVSNy1s5YCxiLoIFwW3I1iYUVeEBO1cNEfSYA5tpuLf6VVTrQvVaojK4GBg4ThUGINI9mFwM4OC9A+ntHhR420hGGcM93SV9Na21aDrcuyDQIMbtXGnzBsTKs+j7L5XEErRcnmELJ51z71FKBl3T/0/UWI06Pt6TO3kR9Wi0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=elephly.net; spf=pass smtp.mailfrom=rekado@elephly.net; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1644019710; s=zoho; d=elephly.net; i=rekado@elephly.net; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Content-Transfer-Encoding; bh=SvOYQ/NeSPALMqoremiy9p05uqfJhNZ4nwS0v2KQcss=; b=al6f5bDX+3h42kaTT6BT7b8oJvm+1xpB3JpMWTOEScKB7OaYN/sSfXoKh6OTxDQn Dr9RkvwTqWrSKOI2SdK6wgGXlX9Y+R8iaMVC7V2+dWrWzl22z/m413zTj5cs17c2GXn aqHKNESVQ5NbT4+zrOf64veyc68Ev/lHqqw/PTwo= Received: from localhost (p54ad4dac.dip0.t-ipconnect.de [84.173.77.172]) by mx.zohomail.com with SMTPS id 1644019708968898.1403322518346; Fri, 4 Feb 2022 16:08:28 -0800 (PST) From: Ricardo Wurmus To: 53609@debbugs.gnu.org Subject: [PATCH v2 1/4] gnu: Add perl-5.14. Date: Sat, 5 Feb 2022 01:08:20 +0100 Message-Id: <20220205000823.2680-1-rekado@elephly.net> X-Mailer: git-send-email 2.34.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-ZohoMailClient: External X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53609 Cc: Ricardo Wurmus X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/perl.scm (perl-5.14): New variable. --- gnu/packages/perl.scm | 73 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 069c2c6e2e..d6ca055147 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -65,6 +65,7 @@ (define-module (gnu packages perl) #:use-module (gnu packages databases) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gcc) #:use-module (gnu packages gd) #:use-module (gnu packages gl) #:use-module (gnu packages gtk) @@ -258,6 +259,78 @@ (define-public perl (home-page "https://www.perl.org/") (license license:gpl1+))) ; or "Artistic" +(define-public perl-5.14 + (package + (name "perl") + (version "5.14.4") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/src/5.0/perl-" + version ".tar.gz")) + (sha256 + (base32 + "1js47zzna3v38fjnirf2vq6y0rjp8m86ysj5vagzgkig956d8gw0")) + (patches (search-patches + "perl-5.14-no-sys-dirs.patch" + "perl-5.14-autosplit-default-time.patch" + "perl-5.14-module-pluggable-search.patch")))) + (properties `((release-date . "2013-03-10"))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (libc (assoc-ref inputs "libc"))) + ;; Use the right path for `pwd'. + (substitute* "dist/Cwd/Cwd.pm" + (("/bin/pwd") + (which "pwd"))) + + (invoke "./Configure" + (string-append "-Dprefix=" out) + (string-append "-Dman1dir=" out "/share/man/man1") + (string-append "-Dman3dir=" out "/share/man/man3") + "-de" "-Dcc=gcc" + "-Uinstallusrbinperl" + "-Dinstallstyle=lib/perl5" + "-Duseshrplib" + (string-append "-Dlocincpth=" libc "/include") + (string-append "-Dloclibpth=" libc "/lib") + + ;; Force the library search path to contain only libc + ;; because it is recorded in Config.pm and + ;; Config_heavy.pl; we don't want to keep a reference + ;; to everything that's in $LIBRARY_PATH at build + ;; time (Binutils, bzip2, file, etc.) + (string-append "-Dlibpth=" libc "/lib") + (string-append "-Dplibpth=" libc "/lib"))))) + + (add-before 'strip 'make-shared-objects-writable + (lambda* (#:key outputs #:allow-other-keys) + ;; The 'lib/perl5' directory contains ~50 MiB of .so. Make them + ;; writable so that 'strip' actually strips them. + (let* ((out (assoc-ref outputs "out")) + (lib (string-append out "/lib"))) + (for-each (lambda (dso) + (chmod dso #o755)) + (find-files lib "\\.so$")))))))) + (native-inputs + (list gcc-7)) + (native-search-paths (list (search-path-specification + (variable "PERL5LIB") + (files '("lib/perl5/site_perl"))))) + (home-page "https://www.perl.org/") + (synopsis "Implementation of the Perl programming language") + (description + "Perl is a general-purpose programming language originally developed for +text manipulation and now used for a wide range of tasks including system +administration, web development, network programming, GUI development, and +more.") + (license license:gpl1+))) + (define-public perl-algorithm-c3 (package (name "perl-algorithm-c3") -- 2.34.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Feb 04 19:08:38 2022 Received: (at 53609) by debbugs.gnu.org; 5 Feb 2022 00:08:38 +0000 Received: from localhost ([127.0.0.1]:33242 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nG8d4-00086V-21 for submit@debbugs.gnu.org; Fri, 04 Feb 2022 19:08:38 -0500 Received: from sender4-of-o51.zoho.com ([136.143.188.51]:21170) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nG8d2-00086L-Sx for 53609@debbugs.gnu.org; Fri, 04 Feb 2022 19:08:37 -0500 ARC-Seal: i=1; a=rsa-sha256; t=1644019714; cv=none; d=zohomail.com; s=zohoarc; b=bF96o/NCLr6/j7co4cjxCVWmFPYjwQBQHYRAeoKcMLWMZWsDi0PQ6OB/eR/O9pHSGCwEOkjVB6EQk251ncRr0KfPFI8tAWxbG+Buxm5Rs5O69LIh6iYpDa6Lu7G33nTB5XDOfIyAGNLo8qvCHmdo4jxwsnVou+Aj4PbEExig9b8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1644019714; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=sk7jDn/quwbUrg2CgjFygChAzjbYrp0uLrinhSYCg0E=; b=TCrYw/qJKa5cY4uDE8EZahcyyq2aY1X0Ru4aZT6gpqQEQ6SgjFhMKMkfXBMlIViLlBF9iT+HLhTawi+JHR4NJsY+zSqzOSOqeJXNUEp0yatj4I2lJkLzht1Y/2bcv6iRYE74OVJPdpv/+QXqjQzrvDTjRHctKRho3/P9+QKvGOw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=elephly.net; spf=pass smtp.mailfrom=rekado@elephly.net; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1644019714; s=zoho; d=elephly.net; i=rekado@elephly.net; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Content-Transfer-Encoding; bh=sk7jDn/quwbUrg2CgjFygChAzjbYrp0uLrinhSYCg0E=; b=XLz7O51LLwR5hMZ7bdo38hKUa4lxf4nEKa+03byy7jy8HTNPjyXZLun09vHZwQzN g4OUjp58SjtwdzzN2Rwg3l4cNA3WG3fLN2fD/LRosvT2/Skg7UG3TFqb97UrJevaicd 3heWxvGoC8mikYvaNcpuSvusiycbX8aK5X9FK9VE= Received: from localhost (p54ad4dac.dip0.t-ipconnect.de [84.173.77.172]) by mx.zohomail.com with SMTPS id 1644019712364348.5284699529093; Fri, 4 Feb 2022 16:08:32 -0800 (PST) From: Ricardo Wurmus To: 53609@debbugs.gnu.org Subject: [PATCH v2 2/4] gnu: Add gcc-2.95-wrapper. Date: Sat, 5 Feb 2022 01:08:21 +0100 Message-Id: <20220205000823.2680-2-rekado@elephly.net> X-Mailer: git-send-email 2.34.0 In-Reply-To: <20220205000823.2680-1-rekado@elephly.net> References: <20220205000823.2680-1-rekado@elephly.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-ZohoMailClient: External X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53609 Cc: Ricardo Wurmus X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/commencement.scm (gcc-2.95-wrapper): New variable. --- gnu/packages/commencement.scm | 57 +++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 3fb4b2054f..6bbadff796 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -2254,6 +2254,63 @@ (define gcc-mesboot1-wrapper (program (string-append bin "/gcc"))) (invoke program "--help"))))))))) +(define 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-2.95-wrapper") + (source #f) + (inputs '()) + (native-inputs `(("bash" ,bash-mesboot) + ("coreutils" ,coreutils-mesboot0) + ("libc" ,glibc-2.2.5) + ("gcc" ,gcc-mesboot0))) + (arguments + `(#:implicit-inputs? #f + #:guile ,%bootstrap-guile + #:phases + (modify-phases %standard-phases + (delete 'unpack) + (delete 'configure) + (delete 'install) + (replace 'build + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bash (assoc-ref %build-inputs "bash")) + (libc (assoc-ref %build-inputs "libc")) + (gcc (assoc-ref %build-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 gcc-mesboot (package (inherit gcc-mesboot1) -- 2.34.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Feb 04 19:08:55 2022 Received: (at 53609) by debbugs.gnu.org; 5 Feb 2022 00:08:55 +0000 Received: from localhost ([127.0.0.1]:33246 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nG8dL-000876-CC for submit@debbugs.gnu.org; Fri, 04 Feb 2022 19:08:55 -0500 Received: from sender4-of-o51.zoho.com ([136.143.188.51]:21172) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nG8d6-00086i-13 for 53609@debbugs.gnu.org; Fri, 04 Feb 2022 19:08:54 -0500 ARC-Seal: i=1; a=rsa-sha256; t=1644019718; cv=none; d=zohomail.com; s=zohoarc; b=GadtBXxTI9fQh8kTcyskiRDJI4bmKnqUcIubkjmV6DnvdJS7U6GB82xg1ISj+G52ny5rCkE9F/maJiDXxQxicSLJOovzMfJQ8Dmw1mI4ea09mfKMFTTQSarLalmd222e9RKXxs3sgh2D6xr68ozEmwVdWvOZMeBH1PTL8dKp3Sk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1644019718; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=1E2F2KI/4m3I3BSviPOKcbwRA2o1R26NhMqhyE7h6+I=; b=RfG2CzhCOUYXbiamNIW7xLi/518+Tf6KAdlJikjYPM/SbJEOq2GVaSslOfJMaUxzS+BwSDpNlzbXuRY/QYj+uF/m74POwj6zVKv6r6n7Mh3YzCS9H/pjk5BKIghM0PsQ0JkC8NpfQR3kK0+5VJkW3PJq6csj8ARqizVY+P3zFhc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=elephly.net; spf=pass smtp.mailfrom=rekado@elephly.net; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1644019717; s=zoho; d=elephly.net; i=rekado@elephly.net; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Content-Transfer-Encoding; bh=1E2F2KI/4m3I3BSviPOKcbwRA2o1R26NhMqhyE7h6+I=; b=cGtkXrjAemWNk+3ZGdoMYGQmmk6Z6PeOd5+LUCtUj+dBs4UPK3+0RsW7u/2B/4Hg bH23WYR5inXtjjmSZCmDccpz5PfJAGDvtggPjqzYArD2TdbuALhJPU5Ycc/aCIeVjBX 36bCPwIsG/irmm9sesSL8OErkY5SrAGS2D4R9SdA= Received: from localhost (p54ad4dac.dip0.t-ipconnect.de [84.173.77.172]) by mx.zohomail.com with SMTPS id 16440197157071022.2390057333222; Fri, 4 Feb 2022 16:08:35 -0800 (PST) From: Ricardo Wurmus To: 53609@debbugs.gnu.org Subject: [PATCH v2 3/4] gnu: Add glibc-2.2.5. Date: Sat, 5 Feb 2022 01:08:22 +0100 Message-Id: <20220205000823.2680-3-rekado@elephly.net> X-Mailer: git-send-email 2.34.0 In-Reply-To: <20220205000823.2680-1-rekado@elephly.net> References: <20220205000823.2680-1-rekado@elephly.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-ZohoMailClient: External X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53609 Cc: Ricardo Wurmus X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/commencement.scm (glibc-2.2.5): New variable. --- gnu/packages/commencement.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 6bbadff796..4f10b22e78 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -3471,6 +3471,30 @@ (define glibc-final ,@(package-outputs glibc-final-with-bootstrap-bash)) ,@(package-arguments glibc-final-with-bootstrap-bash))))) +(define glibc-2.2.5 + (package/inherit + glibc-mesboot0 + (arguments + (substitute-keyword-arguments (package-arguments glibc-mesboot0) + ((#:configure-flags flags '()) + #~(let ((out (assoc-ref %outputs "out")) + (headers (assoc-ref %build-inputs "kernel-headers"))) + `("--enable-shared" + "--enable-static" + "--disable-sanity-checks" + "--build=i686-unknown-linux-gnu" + "--host=i686-unknown-linux-gnu" + ,(string-append "--with-headers=" headers "/include") + "--enable-static-nss" + "--without-__thread" + "--without-cvs" + "--without-gd" + "--without-tls" + ,(string-append "--prefix=" out)))))) + (propagated-inputs `(("kernel-headers" ,linux-libre-headers))) + (native-inputs + (alist-delete "kernel-headers" (%boot-mesboot1-inputs))))) + (define/system-dependent gcc-boot0-wrapped ;; Make the cross-tools GCC-BOOT0 and BINUTILS-BOOT0 available under the ;; non-cross names. -- 2.34.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Feb 04 19:09:09 2022 Received: (at 53609) by debbugs.gnu.org; 5 Feb 2022 00:09:09 +0000 Received: from localhost ([127.0.0.1]:33248 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nG8dO-00087L-No for submit@debbugs.gnu.org; Fri, 04 Feb 2022 19:09:09 -0500 Received: from sender4-of-o51.zoho.com ([136.143.188.51]:21178) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nG8dK-000875-QP for 53609@debbugs.gnu.org; Fri, 04 Feb 2022 19:08:56 -0500 ARC-Seal: i=1; a=rsa-sha256; t=1644019720; cv=none; d=zohomail.com; s=zohoarc; b=VSJ8HRfxIYNWZoz/F7GgsMOiXSgq5TV3fS4jkOY6HgNMtD7EZu4HUGiv9mslu18ZzelvgaNj5qX0Vg3tyh4ocrTy8BhXJqvbeY2kKa9NTp8yy+wgCtLBTq9XafeZwSPWAP3NCm1uLCJ+L63aTSTriWIraed0FUHn02kljx1C6xg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1644019720; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=UHT2M3wGxLdgE7+Rv0TZS94w0xg0BDPp6xgtSTHhLyI=; b=nFv2YfpxzrrE4Z9S4nH6x1rGe0zaGJm/XtTMWbGaDdvvbAAIg0kyTtaPjgREAtOPKPcRk9iqTzsaq3VHfFhQr40ktYn0RMroQ8Pn00P7t0Sha8NSSs1VvxkCCDLIoKgcRz9UsZ3vQsY5JT0NvP49lW1oALzUx0LCkdUKLVdNhlE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=elephly.net; spf=pass smtp.mailfrom=rekado@elephly.net; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1644019720; s=zoho; d=elephly.net; i=rekado@elephly.net; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Content-Type:Content-Transfer-Encoding; bh=UHT2M3wGxLdgE7+Rv0TZS94w0xg0BDPp6xgtSTHhLyI=; b=DN0JDKsWj/tvwO1UFk79t2cdpRtKBNjH6KUBXMvjrUMPqduQT9tYmpjurYHZNp3m T+IksPEq3wfrrrSaxOUkTf0AgZRy51+LH2KBD1Fr9eC/poXdrX9Q1QfXOEOrard6NJ+ NlRY6ian60ymS5hjwdBpgv6v6wPtbY8Xp4Z2s5Uo= Received: from localhost (p54ad4dac.dip0.t-ipconnect.de [84.173.77.172]) by mx.zohomail.com with SMTPS id 1644019719214360.86607603839434; Fri, 4 Feb 2022 16:08:39 -0800 (PST) From: Ricardo Wurmus To: 53609@debbugs.gnu.org Subject: [PATCH v2 4/4] gnu: Add ghc-4. Date: Sat, 5 Feb 2022 01:08:23 +0100 Message-Id: <20220205000823.2680-4-rekado@elephly.net> X-Mailer: git-send-email 2.34.0 In-Reply-To: <20220205000823.2680-1-rekado@elephly.net> References: <20220205000823.2680-1-rekado@elephly.net> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ZohoMailClient: External X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53609 Cc: Ricardo Wurmus X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/patches/ghc-4.patch: New file * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/commencement.scm (ghc-4): New variable. --- gnu/local.mk | 1 + gnu/packages/commencement.scm | 188 ++++++++ gnu/packages/patches/ghc-4.patch | 708 +++++++++++++++++++++++++++++++ 3 files changed, 897 insertions(+) create mode 100644 gnu/packages/patches/ghc-4.patch diff --git a/gnu/local.mk b/gnu/local.mk index b906d234fc..674ea4052a 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1135,6 +1135,7 @@ dist_patch_DATA = \ %D%/packages/patches/geeqie-clutter.patch \ %D%/packages/patches/genimage-mke2fs-test.patch \ %D%/packages/patches/geoclue-config.patch \ + %D%/packages/patches/ghc-4.patch \ %D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \ %D%/packages/patches/ghc-testsuite-dlopen-pie.patch \ %D%/packages/patches/ghc-language-haskell-extract-ghc-8.10.patch \ diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 4f10b22e78..94534ee55a 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -30,6 +30,7 @@ (define-module (gnu packages commencement) #:use-module (gnu packages) + #:use-module (gnu packages autotools) #:use-module (gnu packages bootstrap) #:use-module (gnu packages base) #:use-module (gnu packages bash) @@ -3992,5 +3993,192 @@ (define-public gfortran-toolchain gfortran, as well as libc (headers and binaries, plus debugging symbols in the @code{debug} output), and binutils."))) +(define-public ghc-4 + (package + (name "ghc") + (version "4.08.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://www.haskell.org/ghc/dist/" + version "/" name "-" version "-src.tar.bz2")) + (sha256 + (base32 + "0ar4nxy4cr5vwvfj71gmc174vx0n3lg9ka05sa1k60c8z0g3xp1q")) + (patches (list (search-patch "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 + (replace 'bootstrap + (lambda* (#:key inputs #:allow-other-keys) + (delete-file "configure") + (delete-file "config.sub") + (install-file (string-append (assoc-ref inputs "automake") + "/share/automake-1.16/config.sub") + ".") + + ;; Avoid dependency on "happy" + (substitute* "configure.in" + (("FPTOOLS_HAPPY") "echo sure\n")) + + ;; Set options suggested in ghc/interpreter/README.BUILDING.HUGS. + (with-output-to-file "mk/build.mk" + (lambda () + (display " +WithGhcHc=ghc-4.06 +GhcLibWays=u +#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__ +SplitObjs=NO +"))) + + (substitute* "ghc/interpreter/interface.c" + ;; interface.c:2702: `stackOverflow' redeclared as different kind of symbol + ;; ../includes/Stg.h:188: previous declaration of `stackOverflow' + ((".*Sym\\(stackOverflow\\).*") "") + ;; interface.c:2713: `stg_error_entry' undeclared here (not in a function) + ;; interface.c:2713: initializer element is not constant + ;; interface.c:2713: (near initialization for `rtsTab[11].ad') + ((".*SymX\\(stg_error_entry\\).*") "") + ;; interface.c:2713: `Upd_frame_info' undeclared here (not in a function) + ;; interface.c:2713: initializer element is not constant + ;; interface.c:2713: (near initialization for `rtsTab[32].ad') + ((".*SymX\\(Upd_frame_info\\).*") "")) + + ;; We need to use the absolute file names here or else the linker + ;; will complain about missing symbols. Perhaps this could be + ;; avoided by modifying the library search path in a way that + ;; 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"))) + + (let ((bash (which "bash"))) + (substitute* '("configure.in" + "ghc/configure.in" + "ghc/rts/gmp/mpn/configure.in" + "ghc/rts/gmp/mpz/configure.in" + "ghc/rts/gmp/configure.in" + "distrib/configure-bin.in") + (("`/bin/sh") (string-append "`" bash)) + (("SHELL=/bin/sh") (string-append "SHELL=" bash)) + (("^#! /bin/sh") (string-append "#! " bash))) + + (substitute* '("mk/config.mk.in" + "ghc/rts/gmp/mpz/Makefile.in" + "ghc/rts/gmp/Makefile.in") + (("^SHELL.*=.*/bin/sh") (string-append "SHELL = " bash))) + (substitute* "aclocal.m4" + (("SHELL=/bin/sh") (string-append "SHELL=" bash))) + + (setenv "CONFIG_SHELL" bash) + (setenv "SHELL" bash)) + + (setenv "CPP" (string-append (assoc-ref inputs "gcc") "/bin/cpp")) + (invoke "autoreconf" "--verbose" "--force"))) + (add-before 'configure 'configure-gmp + (lambda* (#:key build inputs outputs #:allow-other-keys) + (with-directory-excursion "ghc/rts/gmp" + (let ((bash (which "bash")) + (out (assoc-ref outputs "out"))) + (invoke bash "./configure"))))) + (replace 'configure + (lambda* (#:key build inputs outputs #:allow-other-keys) + (let ((bash (which "bash")) + (out (assoc-ref outputs "out"))) + (invoke bash "./configure" + "--enable-hc-boot" + (string-append "--prefix=" out) + (string-append "--build=" build) + (string-append "--host=" build))))) + (add-before 'build 'make-boot + (lambda _ + ;; 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 + (substitute* "ghc/driver/ghc-asm.prl" + (("local\\(\\$\\*\\) = 1;") "") + (("endef\\$/") "endef$/s"))) + + (setenv "CPATH" + (string-append (getcwd) "/ghc/includes:" + (getcwd) "/mk:" + (or (getenv "CPATH") ""))) + (invoke "make" "boot"))) + (replace 'build + (lambda _ + (invoke "make" "all"))) + (add-after 'build 'build-hugs + (lambda _ + ;; TODO: since we don't have a haskell compiler we cannot build + ;; the standard library. And without the standard library we + ;; cannot build a Haskell compiler. + ;; make[3]: *** No rule to make target 'Array.o', needed by 'libHSstd.a'. Stop. + ;; make[2]: *** No rule to make target 'utils/Argv.o', needed by 'hsc'. Stop. + (invoke "make" "-C" "ghc/interpreter") + (invoke "make" "-C" "ghc/interpreter" "install"))) + (add-after 'install 'install-sources + (lambda* (#:key outputs #:allow-other-keys) + (let ((lib (string-append (assoc-ref outputs "out") "/lib"))) + (copy-recursively "hslibs" + (string-append lib "/hslibs")) + (copy-recursively "ghc/lib" + (string-append lib "/ghc/lib")) + (copy-recursively "ghc/compiler" + (string-append lib "/ghc/compiler")) + (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 + + ("make" ,gnu-make-final) + ("sed" ,sed-final) + ("grep" ,grep-final) + ("coreutils" ,coreutils-final) + ("bash" ,bash-final) + + ("gcc-wrapper" ,gcc-2.95-wrapper) + ("gcc" ,gcc-mesboot0) + ("libc" ,glibc-2.2.5) + ("binutils" ,binutils-mesboot) + ("kernel-headers" ,linux-libre-headers) + + ;; 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))) + (home-page "https://www.haskell.org/ghc") + (synopsis "The Glasgow Haskell Compiler") + (description + "The Glasgow Haskell Compiler (GHC) is a state-of-the-art compiler and +interactive environment for the functional language Haskell.") + (license license:bsd-3))) ;;; commencement.scm ends here diff --git a/gnu/packages/patches/ghc-4.patch b/gnu/packages/patches/ghc-4.patch new file mode 100644 index 0000000000..87484f575d --- /dev/null +++ b/gnu/packages/patches/ghc-4.patch @@ -0,0 +1,708 @@ +The GHC 4 runtime system was written before GCC 3.5 deprecated lvalue casts. +The runtime system's sources are littered with these casts, so early versions +of this patch were dedicated to rewriting those statements to a standards +compliant form. Unfortunately, this led to subtle breakage, so instead we +build with GCC 2.95. + +Problematic for newer versions of GCC is also the assembly in the bundled +sources of GMP 2.0.2, which spans multiple lines without escaping line breaks. + +TODO: We aren't yet using anything under ghc/compiler, so the patches there +aren't needed at this time. The intent was to ensure that the compiler +sources can be used even when they are interpreted by Hugs. + +TODO: There are some more problems with the Haskell sources. Some files have +too many commas (both at the end of the line and at the beginning of the next +line). Others use a trailing hash, which Hugs doesn't understand. + +TODO: Hugs doesn't understand "unsafe" in hslib/lang/Storable.lhs + +diff --git a/ghc/compiler/main/CmdLineOpts.lhs b/ghc/compiler/main/CmdLineOpts.lhs +index ca1b58d..074fcaf 100644 +--- a/ghc/compiler/main/CmdLineOpts.lhs ++++ b/ghc/compiler/main/CmdLineOpts.lhs +@@ -163,9 +163,9 @@ import Constants -- Default values for some flags + + import FastString ( headFS ) + import Maybes ( assocMaybe, firstJust, maybeToBool ) +-import Panic ( panic, panic# ) ++import Panic ( panic, panic' ) + +-#if __GLASGOW_HASKELL__ < 301 ++#if __GLASGOW_HASKELL__ && __GLASGOW_HASKELL__ < 301 + import ArrBase ( Array(..) ) + #else + import PrelArr ( Array(..) ) +diff --git a/ghc/compiler/prelude/PrimOp.lhs b/ghc/compiler/prelude/PrimOp.lhs +index 7a0627d..59802c4 100644 +--- a/ghc/compiler/prelude/PrimOp.lhs ++++ b/ghc/compiler/prelude/PrimOp.lhs +@@ -502,7 +502,7 @@ tagOf_PrimOp UnblockAsyncExceptionsOp = ILIT(260) + tagOf_PrimOp DataToTagOp = ILIT(261) + tagOf_PrimOp TagToEnumOp = ILIT(262) + +-tagOf_PrimOp op = pprPanic# "tagOf_PrimOp: pattern-match" (ppr op) ++tagOf_PrimOp op = pprPanic' "tagOf_PrimOp: pattern-match" (ppr op) + + instance Eq PrimOp where + op1 == op2 = tagOf_PrimOp op1 _EQ_ tagOf_PrimOp op2 +diff --git a/ghc/compiler/utils/Outputable.lhs b/ghc/compiler/utils/Outputable.lhs +index 19ad666..89d07cb 100644 +--- a/ghc/compiler/utils/Outputable.lhs ++++ b/ghc/compiler/utils/Outputable.lhs +@@ -42,8 +42,8 @@ module Outputable ( + + + -- error handling +- pprPanic, pprPanic#, pprError, pprTrace, assertPprPanic, warnPprTrace, +- trace, panic, panic#, assertPanic ++ pprPanic, pprPanic', pprError, pprTrace, assertPprPanic, warnPprTrace, ++ trace, panic, panic', assertPanic + ) where + + #include "HsVersions.h" +@@ -420,7 +420,7 @@ pprPanic = pprAndThen panic + pprError = pprAndThen error + pprTrace = pprAndThen trace + +-pprPanic# heading pretty_msg = panic# (show (doc PprDebug)) ++pprPanic' heading pretty_msg = panic' (show (doc PprDebug)) + where + doc = text heading <+> pretty_msg + +diff --git a/ghc/compiler/utils/Panic.lhs b/ghc/compiler/utils/Panic.lhs +index 907d8aa..37a2d87 100644 +--- a/ghc/compiler/utils/Panic.lhs ++++ b/ghc/compiler/utils/Panic.lhs +@@ -9,7 +9,7 @@ It's hard to put these functions anywhere else without causing + some unnecessary loops in the module dependency graph. + + \begin{code} +-module Panic ( panic, panic#, assertPanic, trace ) where ++module Panic ( panic, panic', assertPanic, trace ) where + + import IOExts ( trace ) + +@@ -27,8 +27,8 @@ panic x = error ("panic! (the `impossible' happened):\n\t" + -- what TAG_ is with GHC at the moment. Ugh. (Simon) + -- No, man -- Too Beautiful! (Will) + +-panic# :: String -> FAST_INT +-panic# s = case (panic s) of () -> ILIT(0) ++panic' :: String -> FAST_INT ++panic' s = case (panic s) of () -> ILIT(0) + + assertPanic :: String -> Int -> a + assertPanic file line = panic ("ASSERT failed! file " ++ file ++ ", line " ++ show line) +diff --git a/ghc/includes/PrimOps.h b/ghc/includes/PrimOps.h +index 8b8c2f9..7f43ab0 100644 +--- a/ghc/includes/PrimOps.h ++++ b/ghc/includes/PrimOps.h +@@ -893,6 +893,7 @@ EXTFUN_RTS(mkForeignObjzh_fast); + #define STG_SIG_ERR (-3) + #define STG_SIG_HAN (-4) + ++#include + extern StgInt sig_install (StgInt, StgInt, StgStablePtr, sigset_t *); + #define stg_sig_default(sig,mask) sig_install(sig,STG_SIG_DFL,0,(sigset_t *)mask) + #define stg_sig_ignore(sig,mask) sig_install(sig,STG_SIG_IGN,0,(sigset_t *)mask) +diff --git a/ghc/rts/RtsFlags.c b/ghc/rts/RtsFlags.c +index a05036f..9cd6c83 100644 +--- a/ghc/rts/RtsFlags.c ++++ b/ghc/rts/RtsFlags.c +@@ -1132,8 +1132,7 @@ process_gran_option(int arg, int *rts_argc, char *rts_argv[], rtsBool *error) + } else if (RtsFlags.GranFlags.proc > MAX_PROC || + RtsFlags.GranFlags.proc < 1) + { +- fprintf(stderr,"setupRtsFlags: no more than %u processors +-allowed\n", ++ fprintf(stderr,"setupRtsFlags: no more than %u processors allowed\n", + MAX_PROC); + *error = rtsTrue; + } +diff --git a/ghc/rts/gmp/longlong.h b/ghc/rts/gmp/longlong.h +index 382fcc0..0cf79fa 100644 +--- a/ghc/rts/gmp/longlong.h ++++ b/ghc/rts/gmp/longlong.h +@@ -106,7 +106,7 @@ MA 02111-1307, USA. */ + + #if (defined (__a29k__) || defined (_AM29K)) && W_TYPE_SIZE == 32 + #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ +- __asm__ ("add %1,%4,%5 ++ __asm__ ("add %1,%4,%5\n\ + addc %0,%2,%3" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -115,7 +115,7 @@ MA 02111-1307, USA. */ + "%r" ((USItype)(al)), \ + "rI" ((USItype)(bl))) + #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ +- __asm__ ("sub %1,%4,%5 ++ __asm__ ("sub %1,%4,%5\n\ + subc %0,%2,%3" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -173,7 +173,7 @@ extern UDItype __udiv_qrnnd (); + + #if defined (__arm__) && W_TYPE_SIZE == 32 + #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ +- __asm__ ("adds %1, %4, %5 ++ __asm__ ("adds %1, %4, %5\n\ + adc %0, %2, %3" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -182,7 +182,7 @@ extern UDItype __udiv_qrnnd (); + "%r" ((USItype)(al)), \ + "rI" ((USItype)(bl))) + #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ +- __asm__ ("subs %1, %4, %5 ++ __asm__ ("subs %1, %4, %5\n\ + sbc %0, %2, %3" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -191,18 +191,18 @@ extern UDItype __udiv_qrnnd (); + "r" ((USItype)(al)), \ + "rI" ((USItype)(bl))) + #define umul_ppmm(xh, xl, a, b) \ +- __asm__ ("%@ Inlined umul_ppmm +- mov %|r0, %2, lsr #16 +- mov %|r2, %3, lsr #16 +- bic %|r1, %2, %|r0, lsl #16 +- bic %|r2, %3, %|r2, lsl #16 +- mul %1, %|r1, %|r2 +- mul %|r2, %|r0, %|r2 +- mul %|r1, %0, %|r1 +- mul %0, %|r0, %0 +- adds %|r1, %|r2, %|r1 +- addcs %0, %0, #65536 +- adds %1, %1, %|r1, lsl #16 ++ __asm__ ("%@ Inlined umul_ppmm\n\ ++ mov %|r0, %2, lsr #16\n\ ++ mov %|r2, %3, lsr #16\n\ ++ bic %|r1, %2, %|r0, lsl #16\n\ ++ bic %|r2, %3, %|r2, lsl #16\n\ ++ mul %1, %|r1, %|r2\n\ ++ mul %|r2, %|r0, %|r2\n\ ++ mul %|r1, %0, %|r1\n\ ++ mul %0, %|r0, %0\n\ ++ adds %|r1, %|r2, %|r1\n\ ++ addcs %0, %0, #65536\n\ ++ adds %1, %1, %|r1, lsl #16\n\ + adc %0, %0, %|r1, lsr #16" \ + : "=&r" ((USItype)(xh)), \ + "=r" ((USItype)(xl)) \ +@@ -243,7 +243,7 @@ extern UDItype __udiv_qrnnd (); + + #if defined (__gmicro__) && W_TYPE_SIZE == 32 + #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ +- __asm__ ("add.w %5,%1 ++ __asm__ ("add.w %5,%1\n\ + addx %3,%0" \ + : "=g" ((USItype)(sh)), \ + "=&g" ((USItype)(sl)) \ +@@ -252,7 +252,7 @@ extern UDItype __udiv_qrnnd (); + "%1" ((USItype)(al)), \ + "g" ((USItype)(bl))) + #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ +- __asm__ ("sub.w %5,%1 ++ __asm__ ("sub.w %5,%1\n\ + subx %3,%0" \ + : "=g" ((USItype)(sh)), \ + "=&g" ((USItype)(sl)) \ +@@ -282,7 +282,7 @@ extern UDItype __udiv_qrnnd (); + + #if defined (__hppa) && W_TYPE_SIZE == 32 + #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ +- __asm__ ("add %4,%5,%1 ++ __asm__ ("add %4,%5,%1\n\ + addc %2,%3,%0" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -291,7 +291,7 @@ extern UDItype __udiv_qrnnd (); + "%rM" ((USItype)(al)), \ + "rM" ((USItype)(bl))) + #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ +- __asm__ ("sub %4,%5,%1 ++ __asm__ ("sub %4,%5,%1\n\ + subb %2,%3,%0" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -330,21 +330,21 @@ extern USItype __udiv_qrnnd (); + do { \ + USItype __tmp; \ + __asm__ ( \ +- "ldi 1,%0 +- extru,= %1,15,16,%%r0 ; Bits 31..16 zero? +- extru,tr %1,15,16,%1 ; No. Shift down, skip add. +- ldo 16(%0),%0 ; Yes. Perform add. +- extru,= %1,23,8,%%r0 ; Bits 15..8 zero? +- extru,tr %1,23,8,%1 ; No. Shift down, skip add. +- ldo 8(%0),%0 ; Yes. Perform add. +- extru,= %1,27,4,%%r0 ; Bits 7..4 zero? +- extru,tr %1,27,4,%1 ; No. Shift down, skip add. +- ldo 4(%0),%0 ; Yes. Perform add. +- extru,= %1,29,2,%%r0 ; Bits 3..2 zero? +- extru,tr %1,29,2,%1 ; No. Shift down, skip add. +- ldo 2(%0),%0 ; Yes. Perform add. +- extru %1,30,1,%1 ; Extract bit 1. +- sub %0,%1,%0 ; Subtract it. ++ "ldi 1,%0\n\ ++ extru,= %1,15,16,%%r0 ; Bits 31..16 zero?\n\ ++ extru,tr %1,15,16,%1 ; No. Shift down, skip add.\n\ ++ ldo 16(%0),%0 ; Yes. Perform add.\n\ ++ extru,= %1,23,8,%%r0 ; Bits 15..8 zero?\n\ ++ extru,tr %1,23,8,%1 ; No. Shift down, skip add.\n\ ++ ldo 8(%0),%0 ; Yes. Perform add.\n\ ++ extru,= %1,27,4,%%r0 ; Bits 7..4 zero?\n\ ++ extru,tr %1,27,4,%1 ; No. Shift down, skip add.\n\ ++ ldo 4(%0),%0 ; Yes. Perform add.\n\ ++ extru,= %1,29,2,%%r0 ; Bits 3..2 zero?\n\ ++ extru,tr %1,29,2,%1 ; No. Shift down, skip add.\n\ ++ ldo 2(%0),%0 ; Yes. Perform add.\n\ ++ extru %1,30,1,%1 ; Extract bit 1.\n\ ++ sub %0,%1,%0 ; Subtract it.\n\ + " : "=r" (count), "=r" (__tmp) : "1" (x)); \ + } while (0) + #endif /* hppa */ +@@ -392,7 +392,7 @@ extern USItype __udiv_qrnnd (); + + #if (defined (__i386__) || defined (__i486__)) && W_TYPE_SIZE == 32 + #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ +- __asm__ ("addl %5,%1 ++ __asm__ ("addl %5,%1\n\ + adcl %3,%0" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -401,7 +401,7 @@ extern USItype __udiv_qrnnd (); + "%1" ((USItype)(al)), \ + "g" ((USItype)(bl))) + #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ +- __asm__ ("subl %5,%1 ++ __asm__ ("subl %5,%1\n\ + sbbl %3,%0" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -514,7 +514,7 @@ extern USItype __udiv_qrnnd (); + + #if (defined (__mc68000__) || defined (__mc68020__) || defined (__NeXT__) || defined(mc68020)) && W_TYPE_SIZE == 32 + #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ +- __asm__ ("add%.l %5,%1 ++ __asm__ ("add%.l %5,%1\n\ + addx%.l %3,%0" \ + : "=d" ((USItype)(sh)), \ + "=&d" ((USItype)(sl)) \ +@@ -523,7 +523,7 @@ extern USItype __udiv_qrnnd (); + "%1" ((USItype)(al)), \ + "g" ((USItype)(bl))) + #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ +- __asm__ ("sub%.l %5,%1 ++ __asm__ ("sub%.l %5,%1\n\ + subx%.l %3,%0" \ + : "=d" ((USItype)(sh)), \ + "=&d" ((USItype)(sl)) \ +@@ -562,27 +562,27 @@ extern USItype __udiv_qrnnd (); + #else /* not mc68020 */ + #define umul_ppmm(xh, xl, a, b) \ + do { USItype __umul_tmp1, __umul_tmp2; \ +- __asm__ ("| Inlined umul_ppmm +- move%.l %5,%3 +- move%.l %2,%0 +- move%.w %3,%1 +- swap %3 +- swap %0 +- mulu %2,%1 +- mulu %3,%0 +- mulu %2,%3 +- swap %2 +- mulu %5,%2 +- add%.l %3,%2 +- jcc 1f +- add%.l %#0x10000,%0 +-1: move%.l %2,%3 +- clr%.w %2 +- swap %2 +- swap %3 +- clr%.w %3 +- add%.l %3,%1 +- addx%.l %2,%0 ++ __asm__ ("| Inlined umul_ppmm\n\ ++ move%.l %5,%3\n\ ++ move%.l %2,%0\n\ ++ move%.w %3,%1\n\ ++ swap %3\n\ ++ swap %0\n\ ++ mulu %2,%1\n\ ++ mulu %3,%0\n\ ++ mulu %2,%3\n\ ++ swap %2\n\ ++ mulu %5,%2\n\ ++ add%.l %3,%2\n\ ++ jcc 1f\n\ ++ add%.l %#0x10000,%0\n\ ++1: move%.l %2,%3\n\ ++ clr%.w %2\n\ ++ swap %2\n\ ++ swap %3\n\ ++ clr%.w %3\n\ ++ add%.l %3,%1\n\ ++ addx%.l %2,%0\n\ + | End inlined umul_ppmm" \ + : "=&d" ((USItype)(xh)), "=&d" ((USItype)(xl)), \ + "=d" (__umul_tmp1), "=&d" (__umul_tmp2) \ +@@ -595,7 +595,7 @@ extern USItype __udiv_qrnnd (); + + #if defined (__m88000__) && W_TYPE_SIZE == 32 + #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ +- __asm__ ("addu.co %1,%r4,%r5 ++ __asm__ ("addu.co %1,%r4,%r5\n\ + addu.ci %0,%r2,%r3" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -604,7 +604,7 @@ extern USItype __udiv_qrnnd (); + "%rJ" ((USItype)(al)), \ + "rJ" ((USItype)(bl))) + #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ +- __asm__ ("subu.co %1,%r4,%r5 ++ __asm__ ("subu.co %1,%r4,%r5\n\ + subu.ci %0,%r2,%r3" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -663,8 +663,8 @@ extern USItype __udiv_qrnnd (); + "d" ((USItype)(v))) + #else + #define umul_ppmm(w1, w0, u, v) \ +- __asm__ ("multu %2,%3 +- mflo %0 ++ __asm__ ("multu %2,%3\n\ ++ mflo %0\n\ + mfhi %1" \ + : "=d" ((USItype)(w0)), \ + "=d" ((USItype)(w1)) \ +@@ -685,8 +685,8 @@ extern USItype __udiv_qrnnd (); + "d" ((UDItype)(v))) + #else + #define umul_ppmm(w1, w0, u, v) \ +- __asm__ ("dmultu %2,%3 +- mflo %0 ++ __asm__ ("dmultu %2,%3\n\ ++ mflo %0\n\ + mfhi %1" \ + : "=d" ((UDItype)(w0)), \ + "=d" ((UDItype)(w1)) \ +@@ -855,7 +855,7 @@ extern USItype __udiv_qrnnd (); + + #if defined (__pyr__) && W_TYPE_SIZE == 32 + #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ +- __asm__ ("addw %5,%1 ++ __asm__ ("addw %5,%1\n\ + addwc %3,%0" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -864,7 +864,7 @@ extern USItype __udiv_qrnnd (); + "%1" ((USItype)(al)), \ + "g" ((USItype)(bl))) + #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ +- __asm__ ("subw %5,%1 ++ __asm__ ("subw %5,%1\n\ + subwb %3,%0" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -877,7 +877,7 @@ extern USItype __udiv_qrnnd (); + ({union {UDItype __ll; \ + struct {USItype __h, __l;} __i; \ + } __xx; \ +- __asm__ ("movw %1,%R0 ++ __asm__ ("movw %1,%R0\n\ + uemul %2,%0" \ + : "=&r" (__xx.__ll) \ + : "g" ((USItype) (u)), \ +@@ -887,7 +887,7 @@ extern USItype __udiv_qrnnd (); + + #if defined (__ibm032__) /* RT/ROMP */ && W_TYPE_SIZE == 32 + #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ +- __asm__ ("a %1,%5 ++ __asm__ ("a %1,%5\n\ + ae %0,%3" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -896,7 +896,7 @@ extern USItype __udiv_qrnnd (); + "%1" ((USItype)(al)), \ + "r" ((USItype)(bl))) + #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ +- __asm__ ("s %1,%5 ++ __asm__ ("s %1,%5\n\ + se %0,%3" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -908,25 +908,25 @@ extern USItype __udiv_qrnnd (); + do { \ + USItype __m0 = (m0), __m1 = (m1); \ + __asm__ ( \ +- "s r2,r2 +- mts r10,%2 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- m r2,%3 +- cas %0,r2,r0 ++ "s r2,r2\n\ ++ mts r10,%2\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ m r2,%3\n\ ++ cas %0,r2,r0\n\ + mfs r10,%1" \ + : "=r" ((USItype)(ph)), \ + "=r" ((USItype)(pl)) \ +@@ -957,8 +957,8 @@ extern USItype __udiv_qrnnd (); + #if defined (__sh2__) && W_TYPE_SIZE == 32 + #define umul_ppmm(w1, w0, u, v) \ + __asm__ ( \ +- "dmulu.l %2,%3 +- sts macl,%1 ++ "dmulu.l %2,%3\n\ ++ sts macl,%1\n\ + sts mach,%0" \ + : "=r" ((USItype)(w1)), \ + "=r" ((USItype)(w0)) \ +@@ -970,7 +970,7 @@ extern USItype __udiv_qrnnd (); + + #if defined (__sparc__) && W_TYPE_SIZE == 32 + #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ +- __asm__ ("addcc %r4,%5,%1 ++ __asm__ ("addcc %r4,%5,%1\n\ + addx %r2,%3,%0" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -980,7 +980,7 @@ extern USItype __udiv_qrnnd (); + "rI" ((USItype)(bl)) \ + __CLOBBER_CC) + #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ +- __asm__ ("subcc %r4,%5,%1 ++ __asm__ ("subcc %r4,%5,%1\n\ + subx %r2,%3,%0" \ + : "=r" ((USItype)(sh)), \ + "=&r" ((USItype)(sl)) \ +@@ -1027,44 +1027,44 @@ extern USItype __udiv_qrnnd (); + "r" ((USItype)(v))) + #define UMUL_TIME 5 + #define udiv_qrnnd(q, r, n1, n0, d) \ +- __asm__ ("! Inlined udiv_qrnnd +- wr %%g0,%2,%%y ! Not a delayed write for sparclite +- tst %%g0 +- divscc %3,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%%g1 +- divscc %%g1,%4,%0 +- rd %%y,%1 +- bl,a 1f +- add %1,%4,%1 ++ __asm__ ("! Inlined udiv_qrnnd\n\ ++ wr %%g0,%2,%%y ! Not a delayed write for sparclite\n\ ++ tst %%g0\n\ ++ divscc %3,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%%g1\n\ ++ divscc %%g1,%4,%0\n\ ++ rd %%y,%1\n\ ++ bl,a 1f\n\ ++ add %1,%4,%1\n\ + 1: ! End of inline udiv_qrnnd" \ + : "=r" ((USItype)(q)), \ + "=r" ((USItype)(r)) \ +@@ -1085,45 +1085,45 @@ extern USItype __udiv_qrnnd (); + /* Default to sparc v7 versions of umul_ppmm and udiv_qrnnd. */ + #ifndef umul_ppmm + #define umul_ppmm(w1, w0, u, v) \ +- __asm__ ("! Inlined umul_ppmm +- wr %%g0,%2,%%y ! SPARC has 0-3 delay insn after a wr +- sra %3,31,%%g2 ! Don't move this insn +- and %2,%%g2,%%g2 ! Don't move this insn +- andcc %%g0,0,%%g1 ! Don't move this insn +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,%3,%%g1 +- mulscc %%g1,0,%%g1 +- add %%g1,%%g2,%0 ++ __asm__ ("! Inlined umul_ppmm\n\ ++ wr %%g0,%2,%%y ! SPARC has 0-3 delay insn after a wr\n\ ++ sra %3,31,%%g2 ! Don't move this insn\n\ ++ and %2,%%g2,%%g2 ! Don't move this insn\n\ ++ andcc %%g0,0,%%g1 ! Don't move this insn\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,%3,%%g1\n\ ++ mulscc %%g1,0,%%g1\n\ ++ add %%g1,%%g2,%0\n\ + rd %%y,%1" \ + : "=r" ((USItype)(w1)), \ + "=r" ((USItype)(w0)) \ +@@ -1147,7 +1147,7 @@ extern USItype __udiv_qrnnd (); + + #if defined (__vax__) && W_TYPE_SIZE == 32 + #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ +- __asm__ ("addl2 %5,%1 ++ __asm__ ("addl2 %5,%1\n\ + adwc %3,%0" \ + : "=g" ((USItype)(sh)), \ + "=&g" ((USItype)(sl)) \ +@@ -1156,7 +1156,7 @@ extern USItype __udiv_qrnnd (); + "%1" ((USItype)(al)), \ + "g" ((USItype)(bl))) + #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ +- __asm__ ("subl2 %5,%1 ++ __asm__ ("subl2 %5,%1\n\ + sbwc %3,%0" \ + : "=g" ((USItype)(sh)), \ + "=&g" ((USItype)(sl)) \ +diff --git a/ghc/lib/std/CPUTime.lhs b/ghc/lib/std/CPUTime.lhs +--- a/ghc/lib/std/CPUTime.lhs ++++ b/ghc/lib/std/CPUTime.lhs +@@ -9,6 +9,6 @@ + module CPUTime + ( + getCPUTime, -- :: IO Integer +- cpuTimePrecision -- :: Integer ++ cpuTimePrecision -- :: Integer + ) where + \end{code} + \ No newline at end of file -- 2.34.0 From debbugs-submit-bounces@debbugs.gnu.org Sat Feb 05 09:44:53 2022 Received: (at 53609) by debbugs.gnu.org; 5 Feb 2022 14:44:53 +0000 Received: from localhost ([127.0.0.1]:34138 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGMJ2-0006Ml-V0 for submit@debbugs.gnu.org; Sat, 05 Feb 2022 09:44:53 -0500 Received: from baptiste.telenet-ops.be ([195.130.132.51]:34616) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGMJ1-0006Mb-3E for 53609@debbugs.gnu.org; Sat, 05 Feb 2022 09:44:52 -0500 Received: from [172.20.10.5] ([213.251.108.188]) by baptiste.telenet-ops.be with bizsmtp id rSkn2600F43vTVR01SkoKg; Sat, 05 Feb 2022 15:44:49 +0100 Message-ID: <5f16fc59d50dc2be6deffbef2e01cdd18479971d.camel@telenet.be> Subject: Re: [bug#53609] [PATCH v2 3/4] gnu: Add glibc-2.2.5. From: Maxime Devos To: Ricardo Wurmus , 53609@debbugs.gnu.org Date: Sat, 05 Feb 2022 15:44:37 +0100 In-Reply-To: <20220205000823.2680-3-rekado@elephly.net> References: <20220205000823.2680-1-rekado@elephly.net> <20220205000823.2680-3-rekado@elephly.net> Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="=-8wY8PXVvu4GRzggvQEPq" User-Agent: Evolution 3.38.3-1 MIME-Version: 1.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r22; t=1644072289; bh=fBfOzxe+7mC2y6EyHt/IVJ9re0EOk8+shkldcJII3sE=; h=Subject:From:To:Date:In-Reply-To:References; b=Vfd7OZ30FcgoqPolcJnJdkkR/nkRGV/OwDGiv2cXJkh7DYQKGtCLNkIkSG6+RJAMP 2zuOcwHMbtX/Udj+JP/x0Aszr+LXvbHSi1AfsFXM8SsFbcJsfntDXoVC9xAVvSR4zo ZdP+RfqghruRGwQn/8PyaOjHDD+rHvzFA2jyLDWgCeyTM6qDAd7vBC9ZimYQmid9Xl 5wkCvvlZQrEBVACBrrFM5jN6BREzDbgINah5ylM5c3jFYgFwZfX/Xu65J4NlEoug12 RXRkzEiiI6hVkSmHp5lB4wrZBQCIFu4HlWalZxq1Of04A0p4dYpgzg5v/12k354XVP Pfl8h8bWO5x3Q== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 53609 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --=-8wY8PXVvu4GRzggvQEPq Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 UmljYXJkbyBXdXJtdXMgc2NocmVlZiBvcCB6YSAwNS0wMi0yMDIyIG9tIDAxOjA4IFsrMDEwMF06 Cj4gK8KgwqDCoMKgwqAgKCgjOmNvbmZpZ3VyZS1mbGFncyBmbGFncyAnKCkpCj4gK8KgwqDCoMKg wqDCoCAjfihsZXQgKChvdXQgKGFzc29jLXJlZiAlb3V0cHV0cyAib3V0IikpCgooYXNzb2MtcmVm ICVvdXRwdXRzICJvdXQiKSAtPiAjJG91dHB1dAoKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAoaGVhZGVycyAoYXNzb2MtcmVmICVidWlsZC1pbnB1dHMgImtlcm5lbC1oZWFkZXJzIikp KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBgKCItLWVuYWJsZS1zaGFyZWQiCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCAiLS1lbmFibGUtc3RhdGljIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgIi0tZGlzYWJsZS1zYW5pdHktY2hlY2tzIgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgIi0tYnVpbGQ9aTY4Ni11bmtub3duLWxpbnV4LWdudSIKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICItLWhvc3Q9aTY4Ni11bmtub3duLWxpbnV4LWdudSIKCkdpdmVuIHRoYXQgaXQncyBh bHdheXMgY29tcGlsZWQgZm9yIGk2ODYtbGludXgsIGV2ZW4gb24geDg2XzY0LCBzaG91bGQKIzpz eXN0ZW0gImk2ODYtbGludXgiIGJlIHNldCBiZSBhZGRlZCB0byAnYXJndW1lbnRzJywgc3VjaCB0 aGF0IGdsaWJjLQoyLjIuNSBvbmx5IG5lZWRzIHRvIGJlIGNvbXBpbGVkIG9uY2U/ICBMaWtld2lz ZSBmb3IgdGhlCidnbGliYy1tZXNib290MCcgcGFja2FnZSAob24gY29yZS11cGRhdGVzKS4KCkdy ZWV0aW5ncywKTWF4aW1lCg== --=-8wY8PXVvu4GRzggvQEPq Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYf6NVRccbWF4aW1lZGV2 b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7rBsAP40sgec+IoJrDhmrR7orSyaEIQn 1irI3Xkq4pRH6NmIZQEA7KTD4hUPFwri5StSu8cIZZhvOmhAOwZu0J8PoJPNEQg= =KS9Z -----END PGP SIGNATURE----- --=-8wY8PXVvu4GRzggvQEPq-- From debbugs-submit-bounces@debbugs.gnu.org Mon Feb 14 05:13:19 2022 Received: (at control) by debbugs.gnu.org; 14 Feb 2022 10:13:19 +0000 Received: from localhost ([127.0.0.1]:39878 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nJYMB-0007ap-NA for submit@debbugs.gnu.org; Mon, 14 Feb 2022 05:13:19 -0500 Received: from hera.aquilenet.fr ([185.233.100.1]:34230) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nJYM9-0007aZ-Mq for control@debbugs.gnu.org; Mon, 14 Feb 2022 05:13:18 -0500 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id 4DB65AD5 for ; Mon, 14 Feb 2022 11:13:11 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id JQT-2d5YzDIa for ; Mon, 14 Feb 2022 11:13:10 +0100 (CET) Received: from ribbon (91-160-117-201.subs.proxad.net [91.160.117.201]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 7E35061 for ; Mon, 14 Feb 2022 11:13:10 +0100 (CET) Date: Mon, 14 Feb 2022 11:13:10 +0100 Message-Id: <877d9xzrgp.fsf@gnu.org> To: control@debbugs.gnu.org From: =?utf-8?Q?Ludovic_Court=C3=A8s?= Subject: control message for bug #53609 MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spamd-Bar: / Authentication-Results: hera.aquilenet.fr; none X-Rspamd-Server: hera X-Rspamd-Queue-Id: 4DB65AD5 X-Spamd-Result: default: False [0.61 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[control@debbugs.gnu.org]; TO_DN_NONE(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; R_MIXED_CHARSET(0.71)[subject]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[]; MID_RHS_MATCH_FROM(0.00)[] X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) close 53609 quit From unknown Tue Sep 23 05:53:16 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Mon, 14 Mar 2022 11:24:05 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator