guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] gnu: octave: New module


From: John Darrington
Subject: [PATCH] gnu: octave: New module
Date: Thu, 30 Jan 2014 14:22:49 +0100

* gnu/packages/maths.scm: New variable: octave
---
 gnu/packages/maths.scm |   64 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index a916eb3..c96df65 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -26,16 +26,24 @@
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages fltk)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages gcc)
   #:use-module (gnu packages gd)
+  #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages gtk)
+  #:use-module (gnu packages less)
+  #:use-module (gnu packages xorg)
+  #:use-module (gnu packages gl)
   #:use-module (gnu packages multiprecision)
+  #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages texinfo)
   #:use-module (gnu packages texlive)
   #:use-module (gnu packages xml))
 
@@ -226,3 +234,59 @@ plotting engine by third-party applications like Octave.")
     ;;  distributed as patches to the original.
     (license (license:fsf-free
               
"http://gnuplot.cvs.sourceforge.net/gnuplot/gnuplot/Copyright";))))
+
+;; For a fully featured Octave, users  are strongly recommended also to install
+;; the following packages:  texinfo, less, ghostscript, gnuplot
+(define-public octave
+  (package
+    (name "octave")
+    (version "3.8.0")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "mirror://gnu/octave/octave-"
+                          version ".tar.gz"))
+      (sha256
+       (base32
+        "0ks9pr154syw0vb3jn6xsnrkkrbvf9y7i7gaxa28rz6ngxbxvq9l"))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("lapack" ,lapack)
+       ("readline" ,readline)
+       ("glpk" ,glpk)
+       ("curl" ,curl)
+       ("pcre" ,pcre)
+       ("fltk" ,fltk)
+       ("fontconfig" ,fontconfig)
+       ("freetype" ,freetype)
+       ("libxft" ,libxft)
+       ("mesa" ,mesa)
+       ("zlib" ,zlib)))
+    (native-inputs
+     `(("gfortran" ,gfortran-4.8)
+       ("pkg-config" ,pkg-config)
+       ("perl" ,perl)
+       ;; The following inputs are not actually used in the build process.  
However, the 
+       ;; ./configure gratuitously tests for their existence and assumes that 
programs not
+       ;; present at build time are also not, and can never be, available at 
run time!
+       ;; If these inputs are therefore not present, support for them will be 
built out.
+       ;; However, Octave will still run without them, albeit without the 
features they
+       ;; provide.
+       ("less" ,less)
+       ("texinfo" ,texinfo)
+       ("ghostscript" ,ghostscript)
+       ("gnuplot" ,gnuplot)))
+    (arguments
+     `(#:configure-flags (list (string-append "--with-shell=" 
+                            (assoc-ref %build-inputs "bash")
+                            "/bin/sh"))))
+    (home-page "http://www.gnu.org/software/octave/";)
+    (synopsis "High-level language for numerical computation")
+    (description "GNU Octave is a high-level interpreted language that is 
specialized
+for numerical computations.  It can be used for both linear and non-linear
+applications and it provides great support for visualizing results.  Work may
+be performed both at the interactive command-line as well as via script
+files.")
+    (license license:gpl3+)))
+
+
-- 
1.7.10.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]