aboutsummaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/maths.scm26
-rw-r--r--gnu/packages/patches/petsc-fix-threadcomm.patch15
2 files changed, 10 insertions, 31 deletions
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index a70e9dea03..9b2c0ace7f 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -501,7 +501,7 @@ ASCII text files using Gmsh's own scripting language.")
(define-public petsc
(package
(name "petsc")
- (version "3.4.4")
+ (version "3.6.0")
(source
(origin
(method url-fetch)
@@ -509,9 +509,7 @@ ASCII text files using Gmsh's own scripting language.")
(uri (string-append "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/"
"petsc-lite-" version ".tar.gz"))
(sha256
- (base32 "0v5dg6dhdjpi5ianvd4mm6hsvxzv1bsxwnh9f9myag0a0d9xk9iv"))
- (patches
- (list (search-patch "petsc-fix-threadcomm.patch")))))
+ (base32 "0lzhk1flgszks1wlhz2b92rnlx5np7bgad8vqy9fcqziz5b4pr26"))))
(build-system gnu-build-system)
(native-inputs
`(("python" ,python-2)
@@ -525,7 +523,7 @@ ASCII text files using Gmsh's own scripting language.")
))
(arguments
`(#:test-target "test"
- #:parallel-build? #f
+ #:parallel-build? #f ;build is parallel by default
#:configure-flags
`("--with-mpi=0"
"--with-openmp=1"
@@ -561,26 +559,22 @@ ASCII text files using Gmsh's own scripting language.")
(let ((out (assoc-ref outputs "out"))
(fortran (assoc-ref inputs "gfortran")))
(substitute* (map (lambda (file)
- (string-append out "/" file))
- '("conf/petscvariables"
- "conf/PETScConfig.cmake"))
+ (string-append out "/lib/petsc/conf/" file))
+ '("petscvariables" "PETScConfig.cmake"))
(((getcwd)) out))
;; Make compiler references point to the store
- (substitute* (string-append out "/conf/petscvariables")
+ (substitute* (string-append out "/lib/petsc/conf/petscvariables")
(("= g(cc|\\+\\+|fortran)" _ suffix)
(string-append "= " fortran "/bin/g" suffix)))
;; PETSc installs some build logs, which aren't necessary.
(for-each (lambda (file)
- (let ((f (string-append out "/" file)))
+ (let ((f (string-append out "/lib/petsc/conf/" file)))
(when (file-exists? f)
(delete-file f))))
- '("conf/configure.log"
- "conf/make.log"
- "conf/test.log"
- "conf/error.log"
- "conf/RDict.db"
+ '("configure.log" "make.log" "gmake.log"
+ "test.log" "error.log" "RDict.db"
;; Once installed, should uninstall with Guix
- "conf/uninstall.py"))))
+ "uninstall.py"))))
%standard-phases)))))
(home-page "http://www.mcs.anl.gov/petsc")
(synopsis "Library to solve PDEs")
diff --git a/gnu/packages/patches/petsc-fix-threadcomm.patch b/gnu/packages/patches/petsc-fix-threadcomm.patch
deleted file mode 100644
index 3ef4f2d83d..0000000000
--- a/gnu/packages/patches/petsc-fix-threadcomm.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Fix "error: unknown type name 'cpu_set_t'". Patch submitted upstream
-http://lists.mcs.anl.gov/pipermail/petsc-dev/2014-May/015345.html
-
---- a/src/sys/threadcomm/impls/openmp/tcopenmp.c 2014-03-13 21:47:22.000000000 -0500
-+++ b/src/sys/threadcomm/impls/openmp/tcopenmp.c 2014-04-02 14:44:57.185170151 -0500
-@@ -1,6 +1,9 @@
- #define PETSC_DESIRE_FEATURE_TEST_MACROS
- #include <../src/sys/threadcomm/impls/openmp/tcopenmpimpl.h>
- #include <omp.h>
-+#if defined(PETSC_HAVE_SCHED_CPU_SET_T)
-+#include <sched.h>
-+#endif
-
- PetscErrorCode PetscThreadCommGetRank_OpenMP(PetscInt *trank)
- {