Subject: [bug#77321] [PATCH 2/2] gnu: Remove atlas.

From: Andreas Enge <[email-masked]>
Date: Thu, 27 Mar 2025 20:49:44 +0100

* gnu/packages/maths.scm (atlas): Delete variable.

The package does not build anymore. Its last release dates from 2016.
After the removal of shogun there are no other dependent packages.

Change-Id: Ibe988d33451b63ef7680b6c0a19cff6430a42a68
---
 gnu/packages/maths.scm | 129 -----------------------------------------
 1 file changed, 129 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index f0d0bb8f97..49e4ee4171 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -6991,135 +6991,6 @@ (define-public suitesparse
     ;;  GPUQREngine, RBio, SuiteSparse_GPURuntime, SuiteSparseQR, UMFPACK
     (license (list license:gpl2+ license:lgpl2.1+))))
 
-(define-public atlas
-  (package
-    (name "atlas")
-    (version "3.10.3")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "mirror://sourceforge/math-atlas/Stable/"
-                                  version "/atlas" version ".tar.bz2"))
-              (patches (search-patches "atlas-gfortran-compat.patch"))
-              (sha256
-               (base32
-                "1dyjlq3fiparvm8ypwk6rsmjzmnwk81l88gkishphpvc79ryp216"))))
-    (build-system gnu-build-system)
-    (home-page "https://math-atlas.sourceforge.net/")
-    (inputs `(("gfortran" ,gfortran)
-              ("lapack-tar" ,(package-source lapack))))
-    (outputs '("out" "doc"))
-    ;; For the moment we drop support for MIPS at it fails to compile. See
-    ;; https://lists.gnu.org/archive/html/guix-devel/2014-11/msg00516.html
-    (supported-systems (delete "mips64el-linux" %supported-systems))
-    (arguments
-     `(#:parallel-build? #f
-       #:parallel-tests? #f
-
-       ;; ATLAS tunes itself for the machine it is built on, as explained at
-       ;; <http://lists.gnu.org/archive/html/guix-devel/2014-10/msg00305.html>.
-       ;; For this reason, we want users to build it locally instead of using
-       ;; substitutes.
-       #:substitutable? #f
-
-       #:modules ((srfi srfi-26)
-                  (guix build gnu-build-system)
-                  (guix build utils))
-       #:configure-flags
-       `(;; Generate position independent code suitable for dynamic libraries
-         ;; and use WALL timer to get more accurate timing.
-         "-Fa" "alg" "-fPIC" "-D" "c" "-DWALL"
-         ;; Set word width.
-         "-b"
-         ,,(if (string-match "64" (%current-system))
-               "64"
-               "32")
-         ;; Disable parallel build as it gives errors: atlas_pthread.h is
-         ;; needed to compile C files before it is generated.
-         "-Ss" "pmake" "make -j 1"
-         ;; Probe is failing for MIPS.  We therefore define the system
-         ;; architecture explicitly by setting (-A) MACHINETYPE = 49
-         ;; 'MIPSR1xK' and (-V) ISA = 1 'none'.
-         ,,@(if (string-prefix? "mips" (%current-system))
-              (list "-A" "49" "-V" "1")
-              (list))
-         ;; Generate shared libraries.
-         "--shared"
-         ;; Build a full LAPACK library.
-         ,(string-append "--with-netlib-lapack-tarfile="
-                         (assoc-ref %build-inputs "lapack-tar")))
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'install 'install-doc
-           (lambda* (#:key outputs inputs #:allow-other-keys)
-             (let ((doc (string-append (assoc-ref outputs "doc")
-                                       "/share/doc/atlas")))
-               (mkdir-p doc)
-               (for-each (cut install-file <> doc)
-                         (find-files "../ATLAS/doc" ".*"))
-               #t)))
-         (add-after 'check 'check-pt
-           (lambda _ (invoke "make" "ptcheck")))
-         ;; Fix files required to run configure.
-         (add-before 'configure 'fix-/bin/sh
-           (lambda _
-             ;; Use `sh', not `/bin/sh'.
-             (substitute* (find-files "." "Makefile|configure|SpewMakeInc\\.c")
-               (("/bin/sh")
-                "sh"))
-             #t))
-         ;; Fix /bin/sh in generated make files.
-         (add-after 'configure 'fix-/bin/sh-in-generated-files
-           (lambda _
-             (substitute* (find-files "." "^[Mm]ake\\.inc.*")
-               (("/bin/sh")
-                "sh"))
-             #t))
-         ;; ATLAS configure program does not accepts the default flags
-         ;; passed by the 'gnu-build-system'.
-         (replace 'configure
-           (lambda* (#:key native-inputs inputs outputs
-                           (configure-flags '())
-                           #:allow-other-keys #:rest args)
-             (let* ((prefix     (assoc-ref outputs "out"))
-                    (bash       (or (and=> (assoc-ref
-                                            (or native-inputs inputs) "bash")
-                                           (cut string-append <> "/bin/bash"))
-                                    "/bin/sh"))
-                    (flags      `(,(string-append "--prefix=" prefix)
-                                  ,@configure-flags))
-                    (abs-srcdir (getcwd))
-                    (srcdir     (string-append "../" (basename abs-srcdir))))
-               (format #t "source directory: ~s (relative from build: ~s)~%"
-                       abs-srcdir srcdir)
-               (mkdir "../build")
-               (chdir "../build")
-               (format #t "build directory: ~s~%" (getcwd))
-               (format #t "configure flags: ~s~%" flags)
-               (apply invoke bash
-                      (string-append srcdir "/configure")
-                      flags)))))))
-    (synopsis "Automatically Tuned Linear Algebra Software")
-    (description
-     "ATLAS is an automatically tuned linear algebra software library
-providing C and Fortran77 interfaces to a portably efficient BLAS
-implementation, as well as a few routines from LAPACK.
-
-Optimization occurs at build time.  For this reason, the library is built on
-the machine where it is installed, without resorting to pre-built substitutes.
-
-Before building the library, CPU throttling should be disabled.  This can be
-done in the BIOS, or, on GNU/Linux, with the following command:
-
-@example
-# cpupower --governor performance
-@end example
-
-Failure to do so will result in a library with poor performance.")
-    ;; The test suite is notoriously lengthy and routinely exceeds the default
-    ;; timeout of 21600 seconds on the not unbeefy berlin build nodes.
-    (properties '((timeout . 86400)))        ; 1 day
-    (license license:bsd-3)))
-
 (define-public cglm
   (package
     (name "cglm")
-- 
2.49.0