Subject: [bug#53964] [PATCH 4/4] gnu: Remove [email-masked] and gcc-2.95-wrapper.

From: Ludovic Courtès <[email-masked]>
Date: Sat, 12 Feb 2022 22:45:32 +0100

This reverts commits a95924c9ac3f238cde243c96d552ff59ad77ca16 and
defa85b26537a3cc20624fb9dbcae906226361d5, which were used to build
[email-masked] 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")
-- 
2.34.0