aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSharlatan Hellseher <sharlatanus@gmail.com>2022-06-12 22:25:07 +0100
committerLudovic Courtès <ludo@gnu.org>2022-06-23 23:20:57 +0200
commit000b710cee6f402e79f2d3f988039bb793a0b215 (patch)
treef839380672b0a2efec202cc68ef18f7c0bf5fe05
parentd651f28017db0c07d2e8490ce1e1ce12e00d98be (diff)
downloadguix-000b710cee6f402e79f2d3f988039bb793a0b215.tar
guix-000b710cee6f402e79f2d3f988039bb793a0b215.tar.gz
gnu: Add casacore.
* gnu/packages/astronomy.scm (casacore): New variable. Modules sorted alphabetically to ease maintannce. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--gnu/packages/astronomy.scm103
1 files changed, 98 insertions, 5 deletions
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index 93c45d5780..61c10c985f 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -26,18 +26,15 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages astronomy)
- #:use-module (guix packages)
#:use-module ((guix licenses) #:prefix license:)
- #:use-module (guix download)
- #:use-module (guix git-download)
- #:use-module (guix utils)
- #:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages autotools)
+ #:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
+ #:use-module (gnu packages flex)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
@@ -49,16 +46,19 @@
#:use-module (gnu packages libusb)
#:use-module (gnu packages lua)
#:use-module (gnu packages maths)
+ #:use-module (gnu packages ncurses)
#:use-module (gnu packages netpbm)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pretty-print)
+ #:use-module (gnu packages python)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
+ #:use-module (gnu packages readline)
#:use-module (gnu packages time)
#:use-module (gnu packages version-control)
#:use-module (gnu packages video)
@@ -66,9 +66,15 @@
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
+ #:use-module (gnu packages)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
+ #:use-module (guix download)
+ #:use-module (guix gexp)
+ #:use-module (guix git-download)
+ #:use-module (guix packages)
+ #:use-module (guix utils)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1))
@@ -107,6 +113,93 @@ moment, supported SPICE files are:
@end itemize\n")
(license license:cecill)))
+(define-public casacore
+ (package
+ (name "casacore")
+ (version "3.4.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/casacore/casacore")
+ (commit (string-append "v" version))))
+ (sha256
+ (base32
+ "05ar5gykgh4dm826xplj5ri5rw7znhxrvin2l67a3mjwfys7r2a0"))
+ (file-name (git-file-name name version))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ ;; Note: There are multiple failures in
+ ;; tests which require additional measures data. They are
+ ;; distributed via FTP without any license:
+ ;; ftp://ftp.astron.nl/outgoing/Measures/
+ ;; TODO: Check how to fix tests.
+ #:tests? #f
+ #:parallel-build? #t
+ #:configure-flags
+ #~(list "-DBUILD_PYTHON3=ON"
+ "-DBUILD_PYTHON=OFF"
+ "-DBUILD_TESTING=TRUE"
+ "-DUSE_HDF5=ON"
+ "-DUSE_OPENMP=OFF"
+ "-DUSE_THREADS=ON"
+ (string-append "-DDATA_DIR=" #$output "/data")
+ (string-append "-DPYTHON3_EXECUTABLE="
+ #$(this-package-input "python") "/bin")
+ (string-append "-DPYTHON3_INCLUDE_DIR="
+ #$(this-package-input "python") "/include")
+ (string-append "-DPYTHON3_LIBRARY="
+ #$(this-package-input "python") "/lib"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'set-env
+ (lambda _
+ (setenv "HOME" "/tmp")))
+ (add-after 'unpack 'use-absolute-rm
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "casa/OS/test/tFile.run"
+ (("/bin/rm")
+ (search-input-file inputs "/bin/rm")))))
+ (add-after 'unpack 'use-absolute-python3
+ (lambda _
+ (substitute* "build-tools/casacore_floatcheck"
+ (("#!/usr/bin/env python")
+ (string-append "#!" (which "python3"))))))
+ ;; NOTE: (Sharlatan-20220611T200837+0100): Workaround for casacore
+ ;; tests stuck with missing "qsub" issue.
+ ;; https://github.com/casacore/casacore/issues/1122
+ (add-after 'unpack 'patch-pre-test-checks
+ (lambda _
+ (substitute* "build-tools/casacore_assay"
+ (("QSUBP=.*$") "QSUBP=\n")
+ (("YODP=.*$") "YODP=\n")))))))
+ (native-inputs
+ (list bison
+ boost
+ flex
+ readline))
+ (inputs
+ (list cfitsio
+ fftw
+ fftwf
+ gfortran
+ hdf5
+ lapack
+ ncurses
+ openblas
+ python
+ python-numpy
+ wcslib))
+ (home-page "http://casacore.github.io/casacore/")
+ (synopsis "Suite of C++ libraries for radio astronomy data processing")
+ (description
+ "The casacore package contains the core libraries of the old
+AIPS++/CASA (Common Astronomy Software Application) package. This split was
+made to get a better separation of core libraries and applications.
+@url{https://casa.nrao.edu/, CASA} is now built on top of Casacore.")
+ (license license:gpl2+)))
+
(define-public cfitsio
(package
(name "cfitsio")