diff --git a/gnu-system.am b/gnu-system.am index 3631c718f8..45d9db1dde 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -545,7 +545,6 @@ dist_patch_DATA = \ gnu/packages/patches/perl-net-ssleay-disable-ede-test.patch \ gnu/packages/patches/perl-no-sys-dirs.patch \ gnu/packages/patches/perl-tk-x11-discover.patch \ - gnu/packages/patches/petsc-fix-threadcomm.patch \ gnu/packages/patches/pingus-sdl-libs-config.patch \ gnu/packages/patches/plotutils-libpng-jmpbuf.patch \ gnu/packages/patches/polkit-drop-test.patch \ 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 @@ (define-public gmsh (define-public petsc (package (name "petsc") - (version "3.4.4") + (version "3.6.0") (source (origin (method url-fetch) @@ -509,9 +509,7 @@ (define-public petsc (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 @@ (define-public petsc )) (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 @@ (define-public petsc (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 -+#if defined(PETSC_HAVE_SCHED_CPU_SET_T) -+#include -+#endif - - PetscErrorCode PetscThreadCommGetRank_OpenMP(PetscInt *trank) - {