From 973ee1c91db057434b5b5c7a02817b447021abb4 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Thu, 31 Mar 2022 12:58:45 +0530 Subject: gnu: gsl: Force bootstrap when cross-compiling to riscv64-linux. * gnu/packages/maths.scm (gsl)[arguments]: Force an autotools bootstrap when cross-compiling to riscv64-linux. [native-inputs]: Add autoconf, automake and libtool when cross-compiling to riscv64-linux. Signed-off-by: Efraim Flashner --- gnu/packages/maths.scm | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index ecb85642ec..10a1f69b8e 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -19,7 +19,7 @@ ;;; Copyright © 2017 Nikita ;;; Copyright © 2017 Ben Woodcroft ;;; Copyright © 2017 Theodoros Foradis -;;; Copyright © 2017, 2019 Arun Isaac +;;; Copyright © 2017, 2019, 2022 Arun Isaac ;;; Copyright © 2017–2021 Tobias Geerinckx-Rice ;;; Copyright © 2017 Dave Love ;;; Copyright © 2018, 2019, 2020, 2021 Jan (janneke) Nieuwenhuizen @@ -533,6 +533,14 @@ precision floating point numbers.") #:phases (modify-phases %standard-phases ,@(cond + ((and (target-riscv64?) + (%current-target-system)) + '((add-after 'unpack 'force-bootstrap + (lambda _ + ;; gsl ships with an old configure script that does not + ;; support riscv64. Regenerate it. + (delete-file "configure"))))) + ((or (string-prefix? "aarch64" system) (string-prefix? "powerpc" system)) ;; Some sparse matrix tests are failing on AArch64 and PowerPC: @@ -568,6 +576,11 @@ precision floating point numbers.") (string-append "exit (77);\n" all))))))) (else '())))))) + (native-inputs + (if (and (target-riscv64?) + (%current-target-system)) + (list autoconf automake libtool) + '())) (home-page "https://www.gnu.org/software/gsl/") (synopsis "Numerical library for C and C++") (description -- cgit 1.4.1 From 61bcd648ca215e3d8e75b3a3f49bfb94d66f7c79 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 14 Apr 2022 11:57:16 +0200 Subject: gnu: sundials: Update to 6.1.1. * gnu/packages/maths.scm (sundials): Update to 6.1.1. [inputs]: Add PETSC. (sundials-openmpi)[inputs]: Remove PETSC. [arguments]: Remove now unnecessary flags. Change "MPI_ENABLE" to "ENABLE_MPI". --- gnu/packages/maths.scm | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 10a1f69b8e..ccf3a0e0de 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -6076,21 +6076,22 @@ and comparisons are supported.") (define-public sundials (package (name "sundials") - (version "3.1.1") + (version "6.1.1") (source (origin (method url-fetch) - (uri (string-append "https://computation.llnl.gov/projects/sundials/download/" + (uri (string-append "https://github.com/LLNL/sundials/releases/download/v6.1.1/" "sundials-" version ".tar.gz")) (sha256 (base32 - "090s8ymhd0g1s1d44fa73r5yi32hb4biwahhbfi327zd64yn8kd2")))) + "0327a1fy8rilwc4brsqqb71jd1ymb7mqgxsylab06crcg5xn7byg")))) (build-system cmake-build-system) (native-inputs `(("python" ,python-2))) ;for tests; syntax incompatible with python 3 (inputs `(("fortran" ,gfortran) ;for fcmix ("blas" ,openblas) + ("petsc" ,petsc) ("suitesparse" ,suitesparse))) ;TODO: Add hypre (arguments `(#:configure-flags `("-DCMAKE_C_FLAGS=-O2 -g -fcommon" @@ -6120,24 +6121,17 @@ easily be incorporated into existing simulation codes.") (license license:bsd-3))) (define-public sundials-openmpi - (package (inherit sundials) + (package + (inherit sundials) (name "sundials-openmpi") (inputs `(("mpi" ,openmpi) - ("petsc" ,petsc-openmpi) ;support in SUNDIALS requires MPI - ,@(package-inputs sundials))) + ("petsc-openmpi" ,petsc-openmpi) ;support in SUNDIALS requires MPI + ,@(alist-delete "petsc" (package-inputs sundials)))) (arguments (substitute-keyword-arguments (package-arguments sundials) ((#:configure-flags flags '()) - `(cons* "-DMPI_ENABLE:BOOL=ON" - "-DPETSC_ENABLE:BOOL=ON" - (string-append "-DPETSC_INCLUDE_DIR=" - (assoc-ref %build-inputs "petsc") - "/include") - (string-append "-DPETSC_LIBRARY_DIR=" - (assoc-ref %build-inputs "petsc") - "/lib") - ,flags)) + `(cons* "-DENABLE_MPI:BOOL=ON" ,flags)) ((#:phases phases '%standard-phases) `(modify-phases ,phases (add-before 'check 'mpi-setup -- cgit 1.4.1 From 16372cb347f071b398285678ab2634d71c897954 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 14 Apr 2022 14:47:18 +0200 Subject: gnu: sundials: Remove input labels. * gnu/packages/maths.scm (sundials)[native-inputs, inputs]: Remove labels. (sundials-openmpi)[inputs]: Remove labels. --- gnu/packages/maths.scm | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index ccf3a0e0de..f9767d2430 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -6087,12 +6087,10 @@ and comparisons are supported.") "0327a1fy8rilwc4brsqqb71jd1ymb7mqgxsylab06crcg5xn7byg")))) (build-system cmake-build-system) (native-inputs - `(("python" ,python-2))) ;for tests; syntax incompatible with python 3 + (list python-2)) ;for tests; syntax incompatible with python 3 (inputs - `(("fortran" ,gfortran) ;for fcmix - ("blas" ,openblas) - ("petsc" ,petsc) - ("suitesparse" ,suitesparse))) ;TODO: Add hypre + (list gfortran ;for fcmix + openblas petsc suitesparse)) ;TODO: Add hypre (arguments `(#:configure-flags `("-DCMAKE_C_FLAGS=-O2 -g -fcommon" "-DEXAMPLES_ENABLE_C:BOOL=ON" @@ -6125,9 +6123,9 @@ easily be incorporated into existing simulation codes.") (inherit sundials) (name "sundials-openmpi") (inputs - `(("mpi" ,openmpi) - ("petsc-openmpi" ,petsc-openmpi) ;support in SUNDIALS requires MPI - ,@(alist-delete "petsc" (package-inputs sundials)))) + (modify-inputs (package-inputs sundials) + (delete "petsc") + (prepend openmpi petsc-openmpi))) ;support in SUNDIALS requires MPI (arguments (substitute-keyword-arguments (package-arguments sundials) ((#:configure-flags flags '()) -- cgit 1.4.1 From 7488c73dd2ad7f35bd8be09331431fbf018de4bd Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Tue, 12 Apr 2022 13:50:03 +0000 Subject: gnu: gnuplot: Update to 5.4.3. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (gnuplot): Update to 5.4.3. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index f9767d2430..f18d63de62 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1092,14 +1092,14 @@ in the terminal or with an external viewer.") (define-public gnuplot (package (name "gnuplot") - (version "5.4.2") + (version "5.4.3") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/gnuplot/gnuplot/" version "/gnuplot-" version ".tar.gz")) (sha256 - (base32 "1fp7rbhjmz2w63r72kicf8lfszzimz2csfx868fracw167hpaz75")))) + (base32 "112dplskbkdbaqi935m2xlk1xsw8s5l568wm7xad75hgp6x9py2i")))) (build-system gnu-build-system) (inputs (list readline cairo pango gd lua)) (native-inputs -- cgit 1.4.1 From d483dbe0fa4853861d46937c8e4a97cef326737e Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Tue, 12 Apr 2022 14:31:02 +0000 Subject: gnu: gmsh: Update to 4.9.5. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (gmsh): Update to 4.9.5. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index f18d63de62..159132aa62 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -2814,7 +2814,7 @@ This is the certified version of the Open Cascade Technology (OCCT) library.") (define-public gmsh (package (name "gmsh") - (version "4.8.4") + (version "4.9.5") (source (origin (method git-fetch) @@ -2825,7 +2825,7 @@ This is the certified version of the Open Cascade Technology (OCCT) library.") (string-replace-substring version "." "_"))))) (file-name (git-file-name name version)) (sha256 - (base32 "07mi6ja3b9libgcdp2b4dwnkap1b9ha2wi2zdn9mhmwvp3g1pxhp")) + (base32 "0asd9p64ng5l2zk5glc33x3ynnvdpndlflg3q9mr0jxr7y9x0lrm")) (modules '((guix build utils))) (snippet '(begin -- cgit 1.4.1 From 3a9b925f4437fb715d47bfa6f2356640a91b2a81 Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Tue, 12 Apr 2022 18:57:25 +0000 Subject: gnu: nomad-optimizer: Remove input labels. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (nomad-optimizer)[native-inputs]: Remove labels. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 159132aa62..5971130136 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1950,8 +1950,7 @@ interfaces.") "0w386d8r5ldbvnv0c0g7vz95pfpvwdxis26vaalk2amsa5akl775")))) (build-system cmake-build-system) (native-inputs - `(("python" ,python-wrapper) - ("python-cython" ,python-cython))) + (list python-wrapper python-cython)) (arguments `(#:imported-modules ((guix build python-build-system) ,@%cmake-build-system-modules) -- cgit 1.4.1 From 3a6703268b356e42e721fc2d86edcefa6a4dde88 Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Tue, 12 Apr 2022 18:57:43 +0000 Subject: gnu: nomad-optimizer: Remove trailing booleans. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (nomad-optimizer)[arguments]: Remove trailing booleans. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 5971130136..26ce64de69 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1994,8 +1994,7 @@ interfaces.") (("^( +os_include_dirs = ).*" _ prefix) (string-append prefix "[\"../../src\"]\n")) (("^(installed_lib_dir = ).*" _ prefix) - (string-append prefix "\"" out "/lib\"\n")))) - #t)) + (string-append prefix "\"" out "/lib\"\n")))))) ;; Fix the tests so they run in out-of-source builds. (add-after 'fix-sources-for-build 'fix-sources-for-tests @@ -2060,8 +2059,7 @@ interfaces.") (string-append builddir "/src/nomad "))) (for-each (lambda (f) (fix-exe-path dir f)) - '("param1.txt" "param2.txt" "param3.txt" "param10.txt")))) - #t)) + '("param1.txt" "param2.txt" "param3.txt" "param10.txt")))))) ;; The information in the .egg-info file is not kept up to date. (add-after 'install 'delete-superfluous-egg-info @@ -2070,8 +2068,7 @@ interfaces.") (site-packages inputs outputs) "/PyNomad-0.0.0-py" (python-version (assoc-ref inputs "python")) - ".egg-info")) - #t))))) + ".egg-info"))))))) (home-page "https://www.gerad.ca/nomad/") (synopsis "Nonlinear optimization by mesh-adaptive direct search") (description -- cgit 1.4.1 From 11e761b9a62a263054af5b68631460a57d375e80 Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Tue, 12 Apr 2022 18:57:49 +0000 Subject: gnu: nomad-optimizer: Update to 4.2.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (nomad-optimizer): Update to 4.2.0. [arguments]: Accommodate updated build process. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 26ce64de69..798d336525 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1937,17 +1937,17 @@ interfaces.") (define-public nomad-optimizer (package (name "nomad-optimizer") - (version "4.1.0") + (version "4.2.0") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/bbopt/nomad/") - (commit (string-append "v" version)))) + (commit (string-append "v." version)))) (file-name (git-file-name name version)) (sha256 (base32 - "0w386d8r5ldbvnv0c0g7vz95pfpvwdxis26vaalk2amsa5akl775")))) + "1r4ygy3xn83dnppsw1451ynklsxpb238g5gk57inn84ghmdk08mj")))) (build-system cmake-build-system) (native-inputs (list python-wrapper python-cython)) @@ -1959,7 +1959,8 @@ interfaces.") (guix build cmake-build-system) (guix build utils)) #:configure-flags - '("-DBUILD_INTERFACES=ON" + '("-DBUILD_INTERFACE_C=ON" + "-DBUILD_INTERFACE_PYTHON=ON" "-DBUILD_TESTS=ON") #:phases (modify-phases %standard-phases @@ -1993,8 +1994,11 @@ interfaces.") (substitute* "interfaces/PyNomad/setup_PyNomad.py" (("^( +os_include_dirs = ).*" _ prefix) (string-append prefix "[\"../../src\"]\n")) - (("^(installed_lib_dir = ).*" _ prefix) - (string-append prefix "\"" out "/lib\"\n")))))) + (("^(installed_lib_dir1 = ).*" _ prefix) + (string-append prefix "\"" out "/lib\"\n")) + (("^installed_lib_dir2 = .*") "") + (("^ +link_args\\.append\\(\"-Wl,-rpath,\" \\+ installed_lib_dir2\\)\n") + ""))))) ;; Fix the tests so they run in out-of-source builds. (add-after 'fix-sources-for-build 'fix-sources-for-tests -- cgit 1.4.1 From d262a258bb307736445e967d291fe18e44d8add8 Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Wed, 13 Apr 2022 15:21:15 +0000 Subject: gnu: nomad-optimizer: Fix some tests. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (nomad-optimizer)[arguments]<#:phases> [fix-sources-for-tests]: Enable the pipefail option in the (generated) script that runs tests. Enable the basic batch example3 test. Fix the advanced library FixedVariable test (and seemingly the neighbor PSDMads test). Expand some comments. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 126 ++++++++++++++++++++++++++++++++----------------- 1 file changed, 83 insertions(+), 43 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 798d336525..99a3791367 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -2001,8 +2001,27 @@ interfaces.") ""))))) ;; Fix the tests so they run in out-of-source builds. + ;; + ;; TODO: Add support for examples/basic/batch/single_obj_MPIparallel, + ;; by adding openmpi to native-inputs and adjusting the example's + ;; BB_EXE parameter. (add-after 'fix-sources-for-build 'fix-sources-for-tests (lambda _ + (substitute* "examples/CMakeLists.txt" + ;; examples/basic/batch/example3 is accidentally omitted. + (("^(add_subdirectory\\(\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/basic/batch/example)2(\\)\n)" + _ prefix suffix) + (string-append prefix "2" suffix + prefix "3" suffix)) + + ;; The generated runExampleTest.sh script runs the test as part + ;; of a pipeline and incorrectly (because pipefail is unset) + ;; relies on the value of the exit status immediately after the + ;; pipeline. + ;; (The patch-shebangs phase runs later than this one, so no + ;; need to update the path to bash here.) + (("#!/bin/bash") "#!/bin/bash\nset -o pipefail")) + (substitute* (map (lambda (d) (string-append "examples/" d "/CMakeLists.txt")) (append @@ -2013,57 +2032,78 @@ interfaces.") '("FixedVariable" "NMonly" "PSDMads" "Restart" "c_api/example1" "c_api/example2" "exampleSuggestAndObserve")))) - ;; The built examples are assumed to be in the source tree - ;; (which isn't the case here). + ;; The runExampleTest.sh script is run with WORKING_DIRECTORY + ;; set to CMAKE_CURRENT_SOURCE_DIR. + ;; Other scripts invoked by that script (for example + ;; examples/advanced/batch/SuggestAndObserve/loopSuggestAndObserve.sh) + ;; are in that same directory, but compiled examples are + ;; located in CMAKE_CURRENT_BINARY_DIR. (("(COMMAND \\$\\{CMAKE_BINARY_DIR\\}/examples/runExampleTest\\.sh )\\.(/.*)" _ command test) (string-append command "${CMAKE_CURRENT_BINARY_DIR}" test))) + + ;; The examples/basic/batch/example3 executable is already named + ;; bb3.exe. + (substitute* "examples/basic/batch/single_obj_parallel/CMakeLists.txt" + (("bb3.exe") "bb_parallel.exe")) + ;; (Unrelated to support for out-of-source testing.) (make-file-writable "examples/advanced/library/exampleSuggestAndObserve/cache0.txt") - (let* ((builddir (string-append (getcwd) "/../build")) - ;; The BB_EXE and SURROGATE_EXE paths are interpreted - ;; relative to the configuration file provided to NOMAD. - ;; However, the configuration files are all in the source - ;; tree rather than in the build tree (unlike the compiled - ;; executables). - (fix-exe-path (lambda* (dir #:optional - (file "param.txt") - (exe-opt "BB_EXE")) - (substitute* (string-append dir "/" file) - (((string-append "^" exe-opt " +")) - ;; The $ prevents NOMAD from prefixing - ;; the executable with the path of the - ;; parent directory of the configuration - ;; file NOMAD was provided with as - ;; argument (param.txt or some such). - (string-append exe-opt " $" - builddir "/" dir "/")))))) - (for-each - (lambda (dir) - (let ((dir (string-append "examples/" dir))) - (substitute* (string-append dir "/CMakeLists.txt") - ;; The install phase has not yet run. - (("COMMAND \\$\\{CMAKE_INSTALL_PREFIX\\}/bin/nomad ") - "COMMAND ${CMAKE_BINARY_DIR}/src/nomad ")) - (fix-exe-path dir) - (when (equal? dir "examples/basic/batch/surrogate_sort") - (fix-exe-path dir "param.txt" "SURROGATE_EXE")))) - (append (map (lambda (d) (string-append "basic/batch/" d)) - '("example1" "example2" - "single_obj" "single_obj_parallel" - "surrogate_sort")) - '("advanced/batch/LHonly"))) - - (let ((dir "examples/advanced/batch/FixedVariable")) - (substitute* (string-append dir "/runFixed.sh") - ;; Hardcoded path to NOMAD executable. - (("^\\.\\./\\.\\./\\.\\./\\.\\./bin/nomad ") - (string-append builddir "/src/nomad "))) + (let ((builddir (string-append (getcwd) "/../build"))) + ;; For some reason, omitting this fix causes the + ;; examples/advanced/library/PSDMads test to fail, even though + ;; it doesn't seem to reference any part of the FixedVariable + ;; test. + (let ((dir "examples/advanced/library/FixedVariable")) + (substitute* (string-append dir "/fixedVariable.cpp") + (("^( +std::string sExe = ).*" _ prefix) + (string-append prefix "\"" builddir "/" dir "/ufl.exe" "\";\n")))) + + ;; The BB_EXE and SURROGATE_EXE paths are interpreted relative + ;; to the configuration file provided to NOMAD. + ;; However, the configuration files are all in the source tree + ;; rather than in the build tree (unlike the compiled + ;; executables). + (let ((fix-exe-path (lambda* (dir #:optional + (file "param.txt") + (exe-opt "BB_EXE")) + (substitute* (string-append dir "/" file) + (((string-append "^" exe-opt " +")) + ;; The $ prevents NOMAD from prefixing + ;; the executable with the path of the + ;; parent directory of the configuration + ;; file NOMAD was provided with as + ;; argument (param.txt or some such). + (string-append exe-opt " $" + builddir "/" dir "/")))))) (for-each - (lambda (f) (fix-exe-path dir f)) - '("param1.txt" "param2.txt" "param3.txt" "param10.txt")))))) + (lambda (dir) + (let ((dir (string-append "examples/" dir))) + (substitute* (string-append dir "/CMakeLists.txt") + ;; The install phase has not yet run. + (("COMMAND \\$\\{CMAKE_INSTALL_PREFIX\\}/bin/nomad ") + "COMMAND ${CMAKE_BINARY_DIR}/src/nomad ")) + (fix-exe-path dir) + (when (equal? dir "examples/basic/batch/surrogate_sort") + (fix-exe-path dir "param.txt" "SURROGATE_EXE")))) + (append (map (lambda (d) (string-append "basic/batch/" d)) + '("example1" "example2" "example3" + "single_obj" + "single_obj_parallel" + ;; "single_obj_MPIparallel" + "surrogate_sort")) + '("advanced/batch/LHonly"))) + + (let ((dir "examples/advanced/batch/FixedVariable")) + (substitute* (string-append dir "/runFixed.sh") + ;; Hardcoded path to NOMAD executable. + (("^\\.\\./\\.\\./\\.\\./\\.\\./bin/nomad ") + (string-append builddir "/src/nomad "))) + (for-each + (lambda (f) (fix-exe-path dir f)) + '("param1.txt" "param2.txt" "param3.txt" "param10.txt"))))))) ;; The information in the .egg-info file is not kept up to date. (add-after 'install 'delete-superfluous-egg-info -- cgit 1.4.1 From bfe6d6ea668048ca3656ea8656ae7beb1c3de5f4 Mon Sep 17 00:00:00 2001 From: Andreas Enge Date: Tue, 19 Apr 2022 16:09:32 +0200 Subject: gnu: lrslib: Update to 7.2. * gnu/packages/maths.scm (lrslib): Update to 7.2. --- gnu/packages/maths.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 99a3791367..f4778179d6 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -743,7 +743,7 @@ computing convex hulls.") (define-public lrslib (package (name "lrslib") - (version "7.1") + (version "7.2") (source (origin (method url-fetch) @@ -752,7 +752,7 @@ computing convex hulls.") (string-delete #\. version) ".tar.gz")) (sha256 (base32 - "05kq3hzam31dlmkccv3v358r478kpvx76mw37ka12c6ypwv5dsnk")))) + "1w1jsnfgny8cihndr5gfm99pvwp48qsvxkqfsi2q87gd3m57aj7w")))) (build-system gnu-build-system) (inputs (list gmp)) -- cgit 1.4.1 From ee89bbb5ed24cf22e2cbce50c4f328dd4d6c70dd Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Mon, 25 Apr 2022 19:10:10 +0000 Subject: gnu: nomad-optimizer: Disable failing test. * gnu/packages/maths.scm (nomad-optimizer)[arguments]: Disable the examples/advanced/library/PSDMads test. Signed-off-by: Mathieu Othacehe --- gnu/packages/maths.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index f4778179d6..fcd9c5482f 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -45,7 +45,7 @@ ;;; Copyright © 2021 Gerd Heber ;;; Copyright © 2021 Franck Pérignon ;;; Copyright © 2021 Philip McGrath -;;; Copyright © 2021 Paul A. Patience +;;; Copyright © 2021, 2022 Paul A. Patience ;;; Copyright © 2021 Ivan Gankevich ;;; Copyright © 2021 Jean-Baptiste Volatier ;;; Copyright © 2021 Guillaume Le Vaillant @@ -2008,6 +2008,10 @@ interfaces.") (add-after 'fix-sources-for-build 'fix-sources-for-tests (lambda _ (substitute* "examples/CMakeLists.txt" + ;; This test passes only sometimes. + ;; See https://github.com/bbopt/nomad/issues/72. + (("^ +add_subdirectory\\(\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/advanced/library/PSDMads\\)\n") + "") ;; examples/basic/batch/example3 is accidentally omitted. (("^(add_subdirectory\\(\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/basic/batch/example)2(\\)\n)" _ prefix suffix) @@ -2052,10 +2056,6 @@ interfaces.") "examples/advanced/library/exampleSuggestAndObserve/cache0.txt") (let ((builddir (string-append (getcwd) "/../build"))) - ;; For some reason, omitting this fix causes the - ;; examples/advanced/library/PSDMads test to fail, even though - ;; it doesn't seem to reference any part of the FixedVariable - ;; test. (let ((dir "examples/advanced/library/FixedVariable")) (substitute* (string-append dir "/fixedVariable.cpp") (("^( +std::string sExe = ).*" _ prefix) -- cgit 1.4.1 From a3b6a4df6c51cfc49f6ae71254a1d4bfb6b8b5d0 Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Mon, 2 May 2022 13:28:28 +0000 Subject: gnu: petsc-openmpi: Fix header inclusions. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (petsc-openmpi)[arguments]: Add 'patch-header-inclusions' phase. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index fcd9c5482f..2922d95a70 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -3174,7 +3174,16 @@ scientific applications modeled by partial differential equations.") (("libptesmumps") "libesmumps") (("libptscotchparmetis") "libptscotchparmetisv3")))) (add-before 'configure 'mpi-setup - #$%openmpi-setup))))) + #$%openmpi-setup) + (add-after 'install 'patch-header-inclusions + ;; TODO: Replace with ‘patch-header-inclusions’ when (some form + ;; of) https://issues.guix.gnu.org/54780#19 is merged. + (lambda _ + (substitute* (string-append #$output "/include/petsclayouthdf5.h") + (("<(H5Ipublic.h)>" _ header) + (format #f "<~a/include/~a>" + #$(this-package-input "hdf5-parallel-openmpi") + header))))))))) (synopsis "Library to solve PDEs (with MUMPS and MPI support)"))) (define-public petsc-complex-openmpi -- cgit 1.4.1 From 0d3c2c954393d0344e11ba0532e276cecb9ef2fb Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Mon, 2 May 2022 13:28:39 +0000 Subject: gnu: sundials: Fix various issues. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This commit fixes various issues. First, some of SUNDIALS's CMake variables were renamed at some point between 5.2.0 and 5.7.0, in particular KLU_ENABLE, which was changed to ENABLE_KLU. Since sundials-julia is essentially SUNDIALS 5.2.0, its configure flags need to be different from those of the sundials package. Second, commit 61bcd648ca215e3d8e75b3a3f49bfb94d66f7c79, which updated SUNDIALS to 6.1.1, accidentally completely disabled PETSc support for sundials-openmpi (PETSc is supported only with MPI) by removing the relevant configure flags. Third, SUNDIALS's default index size is 64 bits, but PETSc's is 32 bits, and they need to be the same; this issue is discussed in the next three paragraphs. The default index size in SUNDIALS 3.1.1 (which was the sundials package's version previous to the aforementioned commit) was also 64 bits (though it was configured through the SUNDIALS_INDEX_TYPE CMake variable, which could take the values INT64_T or INT32_T), but SUNDIALS's configure script didn't warn of any incompatibility with PETSc's 32-bit indices. I don't know if this was an accidental omission from the configure script or if SUNDIALS's index size didn't have to correspond to PETSc's at the time. Keeping 64-bit indices in SUNDIALS would require adding a package for PETSc with 64-bit indices (using the --with-64-bit-indices configure flag), possibly named petsc64-openmpi (to follow the style of the SCOTCH packages, i.e., scotch, scotch32, etc., though there the unadorned package name represents the 64-bit version, unlike the unadorned petsc), which would in turn require a package for METIS with 64-bit indices (using IDXTYPEWIDTH=64). However, SUNDIALS is an optional dependency of deal.II, both of which have PETSc as an optional dependency, and deal.II's index size (which defaults to 32 bits) must match PETSc's. In other words, the current deal.II package can build with SUNDIALS only if SUNDIALS has 32-bit indices. Furthermore, users needing 64-bit indices in SUNDIALS probably also need them in PETSc and other libraries. If and when 64-bit indices are deemed necessary, we can add all the package variations at once (for SUNDIALS, PETSc, METIS, deal.II and any others). * gnu/packages/maths.scm (sundials)[source]: Reuse version in URL. [native-inputs]: Capitalize and punctuate comment. [inputs]: Remove petsc, now unnecessary gfortran, and obsolete comment. Move TODO item to sundials-openmpi. [arguments]<#:configure-flags>: Add -DSUNDIALS_INDEX_SIZE=32 to match PETSc's 32-bit indices. Remove obsolete -DEXAMPLES_ENABLE_F77, -DEXAMPLES_ENABLE_F90 and -DFCMIX_ENABLE. Mention new but currently unusable -DBUILD_FORTRAN_MODULE_INTERFACE and -DEXAMPLES_ENABLE_F2003. Rename KLU_ENABLE to ENABLE_KLU. (sundials-openmpi): Use package/inherit. [inputs]: Move openmpi and petsc-openmpi from here... [propagated-inputs]: ...to here. Clarify comment. [arguments]<#:configure-flags>: Add -DENABLE_PETSC and -DPETSC_DIR, the equivalents of which were accidentally removed in commit 61bcd648ca215e3d8e75b3a3f49bfb94d66f7c79. <#:phases>: Replace a tab with spaces. [synopsis]: Replace OpenMPI with MPI to conform to other package synopses. (sundials-julia)[inputs]: Add gfortran. [arguments]<#:configure-flags>: Set only, and manually, -DCMAKE_C_FLAGS, -DSUNDIALS_INDEX_SIZE, -DKLU_ENABLE, -DKLU_INCLUDE_DIR, -DKLU_LIBRARY_DIR and -DLAPACK_ENABLE instead of inheriting from the sundials package, because some of SUNDIALS's CMake variables have changed name. [synopsis]: Capitalize “LAPACK”. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 64 ++++++++++++++++++++++++++++++-------------------- 1 file changed, 38 insertions(+), 26 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 2922d95a70..5d4778da83 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -6129,28 +6129,30 @@ and comparisons are supported.") (source (origin (method url-fetch) - (uri (string-append "https://github.com/LLNL/sundials/releases/download/v6.1.1/" - "sundials-" version ".tar.gz")) + (uri (string-append "https://github.com/LLNL/sundials/releases/download/v" + version "/sundials-" version ".tar.gz")) (sha256 (base32 "0327a1fy8rilwc4brsqqb71jd1ymb7mqgxsylab06crcg5xn7byg")))) (build-system cmake-build-system) (native-inputs - (list python-2)) ;for tests; syntax incompatible with python 3 + (list python-2)) ; For tests; syntax incompatible with Python 3. (inputs - (list gfortran ;for fcmix - openblas petsc suitesparse)) ;TODO: Add hypre + (list openblas suitesparse)) (arguments - `(#:configure-flags `("-DCMAKE_C_FLAGS=-O2 -g -fcommon" + '(#:configure-flags `("-DCMAKE_C_FLAGS=-O2 -g -fcommon" + + "-DSUNDIALS_INDEX_SIZE=32" + ;; Incompatible with 32-bit indices. + ;;"-DBUILD_FORTRAN_MODULE_INTERFACE:BOOL=ON" + "-DEXAMPLES_ENABLE_C:BOOL=ON" "-DEXAMPLES_ENABLE_CXX:BOOL=ON" - "-DEXAMPLES_ENABLE_F77:BOOL=ON" - "-DEXAMPLES_ENABLE_F90:BOOL=ON" + ;; Requires -DBUILD_FORTRAN_MODULE_INTERFACE:BOOL=ON. + ;;"-DEXAMPLES_ENABLE_F2003:BOOL=ON" "-DEXAMPLES_INSTALL:BOOL=OFF" - "-DFCMIX_ENABLE:BOOL=ON" - - "-DKLU_ENABLE:BOOL=ON" + "-DENABLE_KLU:BOOL=ON" ,(string-append "-DKLU_INCLUDE_DIR=" (assoc-ref %build-inputs "suitesparse") "/include") @@ -6168,22 +6170,26 @@ easily be incorporated into existing simulation codes.") (license license:bsd-3))) (define-public sundials-openmpi - (package - (inherit sundials) + (package/inherit sundials (name "sundials-openmpi") - (inputs - (modify-inputs (package-inputs sundials) - (delete "petsc") - (prepend openmpi petsc-openmpi))) ;support in SUNDIALS requires MPI + (propagated-inputs + (list openmpi + ;; Support for the below requires MPI. + ;; TODO: Add HYPRE. + petsc-openmpi)) (arguments (substitute-keyword-arguments (package-arguments sundials) ((#:configure-flags flags '()) - `(cons* "-DENABLE_MPI:BOOL=ON" ,flags)) + `(cons* "-DENABLE_MPI:BOOL=ON" + "-DENABLE_PETSC:BOOL=ON" + (string-append "-DPETSC_DIR=" + (assoc-ref %build-inputs "petsc-openmpi")) + ,flags)) ((#:phases phases '%standard-phases) `(modify-phases ,phases (add-before 'check 'mpi-setup - ,%openmpi-setup))))) - (synopsis "SUNDIALS with OpenMPI support"))) + ,%openmpi-setup))))) + (synopsis "SUNDIALS with MPI support"))) (define-public sundials-julia (package @@ -6202,13 +6208,19 @@ easily be incorporated into existing simulation codes.") "0nx4sqhmi126m14myzm7syv2053harav9snl0a247wnkcgs5rxrv")))) (inputs (modify-inputs (package-inputs sundials) - (prepend lapack))) + (prepend gfortran lapack))) (arguments - (substitute-keyword-arguments (package-arguments sundials) - ((#:configure-flags flags '()) - `(cons* "-DLAPACK_ENABLE:BOOL=ON" - ,flags)))) - (synopsis "SUNDIALS with lapack support as required by julia-sundials-jll"))) + '(#:configure-flags `("-DCMAKE_C_FLAGS=-O2 -g -fcommon" + "-DSUNDIALS_INDEX_SIZE=32" + "-DKLU_ENABLE:BOOL=ON" + ,(string-append "-DKLU_INCLUDE_DIR=" + (assoc-ref %build-inputs "suitesparse") + "/include") + ,(string-append "-DKLU_LIBRARY_DIR=" + (assoc-ref %build-inputs "suitesparse") + "/lib") + "-DLAPACK_ENABLE:BOOL=ON"))) + (synopsis "SUNDIALS with LAPACK support as required by julia-sundials-jll"))) (define-public combinatorial-blas (package -- cgit 1.4.1 From 4c509a73b7aaf1416749f027c2e86a54347ad2b1 Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Mon, 2 May 2022 13:28:46 +0000 Subject: gnu: sundials-openmpi: Add HYPRE dependency. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (sundials-openmpi)[propagated-inputs]: Add hypre-openmpi. [arguments]<#:configure-flags>: Add -DENABLE_HYPRE, -DHYPRE_INCLUDE_DIR and -DHYPRE_LIBRARY_DIR. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 5d4778da83..03c465dfff 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -6175,12 +6175,19 @@ easily be incorporated into existing simulation codes.") (propagated-inputs (list openmpi ;; Support for the below requires MPI. - ;; TODO: Add HYPRE. + hypre-openmpi petsc-openmpi)) (arguments (substitute-keyword-arguments (package-arguments sundials) ((#:configure-flags flags '()) `(cons* "-DENABLE_MPI:BOOL=ON" + "-DENABLE_HYPRE:BOOL=ON" + (string-append "-DHYPRE_INCLUDE_DIR=" + (assoc-ref %build-inputs "hypre-openmpi") + "/include") + (string-append "-DHYPRE_LIBRARY_DIR=" + (assoc-ref %build-inputs "hypre-openmpi") + "/lib") "-DENABLE_PETSC:BOOL=ON" (string-append "-DPETSC_DIR=" (assoc-ref %build-inputs "petsc-openmpi")) -- cgit 1.4.1 From d1a6a795b3e29319c079cd0ab2ac8f68523e7fd1 Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Mon, 2 May 2022 13:28:55 +0000 Subject: gnu: sundials: Update to 6.2.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (sundials): Update to 6.2.0. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 03c465dfff..dd6334d4bd 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -6125,7 +6125,7 @@ and comparisons are supported.") (define-public sundials (package (name "sundials") - (version "6.1.1") + (version "6.2.0") (source (origin (method url-fetch) @@ -6133,7 +6133,7 @@ and comparisons are supported.") version "/sundials-" version ".tar.gz")) (sha256 (base32 - "0327a1fy8rilwc4brsqqb71jd1ymb7mqgxsylab06crcg5xn7byg")))) + "07gk9060xk3bzfqf8v4fqlp0rcxswiwlsy887zv87i1gfy9map8r")))) (build-system cmake-build-system) (native-inputs (list python-2)) ; For tests; syntax incompatible with Python 3. -- cgit 1.4.1 From e648957b7b99d140959311df6be46ed63338dd7f Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Thu, 28 Apr 2022 18:19:22 +0000 Subject: gnu: sundials: Add 5.8.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (sundials-5, sundials-openmpi-5): New variables. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index dd6334d4bd..0a92533d42 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -6198,6 +6198,29 @@ easily be incorporated into existing simulation codes.") ,%openmpi-setup))))) (synopsis "SUNDIALS with MPI support"))) +(define-public sundials-5 + (package + (inherit sundials) + (name "sundials") + (version "5.8.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/LLNL/sundials/releases/download/v" + version "/sundials-" version ".tar.gz")) + (sha256 + (base32 + "04x2x0jchf9kbcw2a1c6f4h4as8sr6k2snfz8z9k897pa4rl1vfl")))))) + +(define-public sundials-openmpi-5 + (package/inherit sundials-5 + (name "sundials-openmpi") + (propagated-inputs + (package-propagated-inputs sundials-openmpi)) + (arguments + (package-arguments sundials-openmpi)) + (synopsis (package-synopsis sundials-openmpi)))) + (define-public sundials-julia (package (inherit sundials) -- cgit 1.4.1 From e131f705dd0d605c5c4eddf183e8ff7d22b4c23b Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Thu, 28 Apr 2022 18:19:25 +0000 Subject: gnu: dealii: Remove trailing booleans. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (dealii)[snippet]: Remove trailing boolean (and therefore the 'begin'). [native-inputs, inputs]: Reindent. [arguments]<#:phases>: Remove trailing boolean. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 0a92533d42..02da977954 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -5191,22 +5191,20 @@ A unique design feature of Trilinos is its focus on packages.") "dealii-fix-sundials.patch")) (modules '((guix build utils))) (snippet - '(begin - ;; Remove bundled boost, muparser, TBB and UMFPACK. - (delete-file-recursively "bundled") - #t)))) + ;; Remove bundled boost, muparser, TBB and UMFPACK. + '(delete-file-recursively "bundled")))) (build-system cmake-build-system) (outputs '("out" "doc")) (native-inputs ;; Required to build the documentation. - (list graphviz doxygen perl)) + (list graphviz doxygen perl)) (inputs - (list arpack-ng - openblas - gfortran - lapack - muparser - zlib)) + (list arpack-ng + openblas + gfortran + lapack + muparser + zlib)) (propagated-inputs ;; Some scripts are installed into share/deal.II/scripts that require ;; perl and python, but they are not executable (and some are missing the @@ -5243,8 +5241,7 @@ A unique design feature of Trilinos is its focus on packages.") (let ((doc (string-append (assoc-ref outputs "doc") "/share/doc/" ,name "-" ,version))) (for-each delete-file (map (lambda (f) (string-append doc "/" f)) - '("detailed.log" "summary.log")))) - #t))))) + '("detailed.log" "summary.log"))))))))) (home-page "https://www.dealii.org/") (synopsis "Finite element library") (description -- cgit 1.4.1 From d34f941c33a5a43099a4cec7e2e5675127077856 Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Thu, 28 Apr 2022 18:19:29 +0000 Subject: gnu: dealii-openmpi: Remove input labels. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (dealii-openmpi)[inputs]: Remove labels. [propagated-inputs]: Same. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 02da977954..d211c821e4 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -5256,18 +5256,20 @@ in finite element programs.") (package/inherit dealii (name "dealii-openmpi") (inputs - `(("arpack" ,arpack-ng-openmpi) - ("metis" ,metis) - ("scalapack" ,scalapack) - ,@(alist-delete "arpack" (package-inputs dealii)))) + (modify-inputs (package-inputs dealii) + (delete "arpack") + (prepend arpack-ng-openmpi + metis + scalapack))) (propagated-inputs - `(("hdf5" ,hdf5-parallel-openmpi) - ("mpi" ,openmpi) - ("p4est" ,p4est-openmpi) - ("petsc" ,petsc-openmpi) - ("slepc" ,slepc-openmpi) - ("trilinos" ,trilinos-for-dealii-openmpi) - ,@(alist-delete "hdf5" (package-propagated-inputs dealii)))) + (modify-inputs (package-propagated-inputs dealii) + (delete "hdf5") + (prepend hdf5-parallel-openmpi + openmpi + p4est-openmpi + petsc-openmpi + slepc-openmpi + trilinos-for-dealii-openmpi))) (arguments (substitute-keyword-arguments (package-arguments dealii) ((#:configure-flags flags) -- cgit 1.4.1 From 240b604eda8dd2b4d89ebfdfe19f98e029835816 Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Thu, 28 Apr 2022 18:19:32 +0000 Subject: gnu: dealii: Add SUNDIALS dependency. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (dealii)[propagated-inputs]: Add sundials-5. Reformat list to clarify comment. (dealii-openmpi)[propagated-inputs]: Add sundials-openmpi-5. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index d211c821e4..c4e1ef59a3 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -5213,7 +5213,11 @@ A unique design feature of Trilinos is its focus on packages.") ;; Anyway, they are meant to be used at build time, so rather than adding ;; the interpreters here, any package depending on them should just add ;; the requisite interpreter to its native inputs. - (list boost hdf5 suitesparse ; For UMFPACK. + (list boost + hdf5 + suitesparse ; For UMFPACK. + ;; SUNDIALS 6.0.0 and later will be supported in deal.II 9.4.0. + sundials-5 tbb)) (arguments `(#:build-type "DebugRelease" ; Supports only Debug, Release and DebugRelease. @@ -5263,12 +5267,13 @@ in finite element programs.") scalapack))) (propagated-inputs (modify-inputs (package-propagated-inputs dealii) - (delete "hdf5") + (delete "hdf5" "sundials") (prepend hdf5-parallel-openmpi openmpi p4est-openmpi petsc-openmpi slepc-openmpi + sundials-openmpi-5 trilinos-for-dealii-openmpi))) (arguments (substitute-keyword-arguments (package-arguments dealii) -- cgit 1.4.1 From 8b2d26660717a0f352da54acd68e0d61a7c697df Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Thu, 28 Apr 2022 18:19:35 +0000 Subject: gnu: dealii: Update to 9.3.3. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (dealii): Update to 9.3.3. * gnu/packages/patches/dealii-fix-compiliation-with-boost-1.78.patch: Delete file. * gnu/packages/patches/dealii-fix-sundials.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. Signed-off-by: Ludovic Courtès --- gnu/local.mk | 2 - gnu/packages/maths.scm | 6 +-- .../dealii-fix-compiliation-with-boost-1.78.patch | 40 --------------- gnu/packages/patches/dealii-fix-sundials.patch | 60 ---------------------- 4 files changed, 2 insertions(+), 106 deletions(-) delete mode 100644 gnu/packages/patches/dealii-fix-compiliation-with-boost-1.78.patch delete mode 100644 gnu/packages/patches/dealii-fix-sundials.patch (limited to 'gnu/packages/maths.scm') diff --git a/gnu/local.mk b/gnu/local.mk index ad7b0a1480..44d20de57d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -994,8 +994,6 @@ dist_patch_DATA = \ %D%/packages/patches/dbus-c++-gcc-compat.patch \ %D%/packages/patches/dbus-c++-threading-mutex.patch \ %D%/packages/patches/dbxfs-remove-sentry-sdk.patch \ - %D%/packages/patches/dealii-fix-compiliation-with-boost-1.78.patch \ - %D%/packages/patches/dealii-fix-sundials.patch \ %D%/packages/patches/debops-constants-for-external-program-names.patch \ %D%/packages/patches/debops-debops-defaults-fall-back-to-less.patch \ %D%/packages/patches/dee-vapi.patch \ diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index c4e1ef59a3..cc89ef75f3 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -5179,16 +5179,14 @@ A unique design feature of Trilinos is its focus on packages.") (define-public dealii (package (name "dealii") - (version "9.3.2") + (version "9.3.3") (source (origin (method url-fetch) (uri (string-append "https://github.com/dealii/dealii/releases/" "download/v" version "/dealii-" version ".tar.gz")) (sha256 - (base32 "1s0kawnljg24jj6nibwrif5gxdgg2daqfylhqqpl1lvmzmmxfhak")) - (patches (search-patches "dealii-fix-compiliation-with-boost-1.78.patch" - "dealii-fix-sundials.patch")) + (base32 "0a8s4yxcbvzmfgv5qcg27h2ss4fcnyhrhhs35glqj59l9cbmkysx")) (modules '((guix build utils))) (snippet ;; Remove bundled boost, muparser, TBB and UMFPACK. diff --git a/gnu/packages/patches/dealii-fix-compiliation-with-boost-1.78.patch b/gnu/packages/patches/dealii-fix-compiliation-with-boost-1.78.patch deleted file mode 100644 index 1937aa9afc..0000000000 --- a/gnu/packages/patches/dealii-fix-compiliation-with-boost-1.78.patch +++ /dev/null @@ -1,40 +0,0 @@ -From cbef761731627cece2a6f0276b87dacabbdc8a72 Mon Sep 17 00:00:00 2001 -From: David Wells -Date: Tue, 4 Jan 2022 12:46:30 -0500 -Subject: [PATCH] Fix compilation with boost 1.78. - -I bisected (fortunately Boost.Geometry a header-only library so adding the -include directory sufficed) and -https://github.com/boostorg/geometry/commit/6eb9e238bcb37e26dc31d16acf826784a2ba30f4 -is where this problem starts for us. See also -https://github.com/boostorg/geometry/issues/792 - the easiest fix for all such -issues is to just include the project header `boost/geometry/geometry.hpp`. - -In this particular case, if you look at the commit which causes grid_tools.cc -fails to compile, its because we were relying on some implicit includes. In -particular, we need the distance header to find the distance between points and -boxes, but that was previously included in another file. - -This patch has been adapted from -e0e76835519d122fd12b5858e16d08641a641c6a to apply to dealii 9.3.2. - -See https://github.com/dealii/dealii/pull/13165. ---- - include/deal.II/numerics/rtree.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/include/deal.II/numerics/rtree.h b/include/deal.II/numerics/rtree.h -index 1b9d04dacd..1e1bfd2932 100644 ---- a/include/deal.II/numerics/rtree.h -+++ b/include/deal.II/numerics/rtree.h -@@ -26,6 +26,7 @@ - #include - - DEAL_II_DISABLE_EXTRA_DIAGNOSTICS -+#include - #include - #include - DEAL_II_ENABLE_EXTRA_DIAGNOSTICS --- -2.30.2 - diff --git a/gnu/packages/patches/dealii-fix-sundials.patch b/gnu/packages/patches/dealii-fix-sundials.patch deleted file mode 100644 index 7dd5df45da..0000000000 --- a/gnu/packages/patches/dealii-fix-sundials.patch +++ /dev/null @@ -1,60 +0,0 @@ -From af73f368f7f9d4a00df075d1a9f50fc495f8e87a Mon Sep 17 00:00:00 2001 -From: Timo Heister -Date: Sat, 25 Dec 2021 12:30:45 -0500 -Subject: [PATCH] fix sundials compilation - ---- - include/deal.II/sundials/n_vector.templates.h | 11 ++++++----- - 1 file changed, 6 insertions(+), 5 deletions(-) - -diff --git a/include/deal.II/sundials/n_vector.templates.h b/include/deal.II/sundials/n_vector.templates.h -index 2b49e3efc9..746f63a03b 100644 ---- a/include/deal.II/sundials/n_vector.templates.h -+++ b/include/deal.II/sundials/n_vector.templates.h -@@ -253,13 +253,13 @@ namespace SUNDIALS - template < - typename VectorType, - typename std::enable_if_t::value, int> = 0> -- MPI_Comm -+ const MPI_Comm & - get_communicator(N_Vector v); - - template < - typename VectorType, - typename std::enable_if_t::value, int> = 0> -- MPI_Comm -+ const MPI_Comm & - get_communicator(N_Vector v); - - /** -@@ -481,7 +481,7 @@ SUNDIALS::internal::NVectorOperations::destroy(N_Vector v) - - template ::value, int>> --MPI_Comm -+const MPI_Comm & - SUNDIALS::internal::NVectorOperations::get_communicator(N_Vector v) - { - return unwrap_nvector_const(v)->block(0).get_mpi_communicator(); -@@ -491,7 +491,7 @@ SUNDIALS::internal::NVectorOperations::get_communicator(N_Vector v) - - template ::value, int>> --MPI_Comm -+const MPI_Comm & - SUNDIALS::internal::NVectorOperations::get_communicator(N_Vector v) - { - return unwrap_nvector_const(v)->get_mpi_communicator(); -@@ -519,7 +519,8 @@ SUNDIALS::internal::NVectorOperations::get_communicator_as_void_ptr(N_Vector v) - (void)v; - return nullptr; - # else -- return get_communicator(v); -+ // We need to cast away const here, as SUNDIALS demands a pure `void *`. -+ return &(const_cast(get_communicator(v))); - # endif - } - --- -2.30.2 - -- cgit 1.4.1 From 6829d61bc5d784a3d8f4d5bd6d5ad183b1aebaa8 Mon Sep 17 00:00:00 2001 From: Pierre-Antoine Bouttier Date: Mon, 6 Dec 2021 16:24:22 +0100 Subject: gnu: Add n2p2. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (n2p2): New variable. Co-authored-by: Ludovic Courtès --- gnu/packages/maths.scm | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index cc89ef75f3..98e239d5bd 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -49,6 +49,7 @@ ;;; Copyright © 2021 Ivan Gankevich ;;; Copyright © 2021 Jean-Baptiste Volatier ;;; Copyright © 2021 Guillaume Le Vaillant +;;; Copyright © 2021 Pierre-Antoine Bouttier ;;; ;;; This file is part of GNU Guix. ;;; @@ -1852,6 +1853,65 @@ sharing of scientific data.") (home-page (package-home-page netcdf)) (license (package-license netcdf)))) +(define-public n2p2 + (package + (name "n2p2") + (version "2.1.4") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/CompPhysVienna/n2p2") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1lw195ihpxwh08387i4gamk1glhalpq888q6nj8l5vswbgnrv1pq")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags '("MODE=shared" "-C" "src") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'post-unpack + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/makefile.gnu" + (("PROJECT_EIGEN=/usr/include/eigen3") + (string-append "PROJECT_EIGEN=" + (assoc-ref inputs "eigen") "/include/eigen3"))) + (substitute* "src/makefile.gnu" + (("-lblas") + (string-append "-L" (assoc-ref inputs "openblas") + "/lib -lopenblas")) + (("-march=native") + "")) + (substitute* "src/application/makefile" + (("LDFLAGS=") + "LDFLAGS=-Wl,-rpath='$$ORIGIN/../lib' ")))) + (delete 'configure) + (delete 'check) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bindir (string-append out "/bin")) + (libdir (string-append out "/lib")) + (incdir (string-append out "/include"))) + (for-each (lambda (f) (install-file f bindir)) + (find-files "bin" "^nnp-")) + (for-each (lambda (f) (install-file f libdir)) + (find-files "lib" "\\.so$")) + (for-each (lambda (f) (install-file f incdir)) + (find-files "include" "\\.h$")))))))) + (inputs + (list openmpi gsl openblas eigen)) + (synopsis "Neural network potentials for chemistry and physics") + (description "This package contains software that will allow you to use +existing neural network potential parameterizations to predict energies and +forces (with standalone tools but also in conjunction with the MD software +LAMMPS). In addition it is possible to train new neural network potentials +with the provided training tools.") + (home-page "https://compphysvienna.github.io/n2p2/") + (properties '((tunable? . #t))) ;to benefit from SIMD code in Eigen + (license license:gpl3+))) + (define-public nlopt (package (name "nlopt") -- cgit 1.4.1 From 2e2fed31a379ce247e30457b4ee4e820ee9a8cf8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 28 May 2022 09:48:15 +0200 Subject: gnu: nlopt: Update to 2.7.1. * gnu/packages/maths.scm (nlopt): Update to 2.7.1. [source]: Fetch from git. [build-system]: Use cmake-build-system. [arguments]: Adjuts 'set-libnlopt-file-name phase. [inputs]: Replace guile-2.0 with guile-3.0; add octave and python. [native-inputs]: Add swig. --- gnu/packages/maths.scm | 43 ++++++++++++++++++++++--------------------- 1 file changed, 22 insertions(+), 21 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 98e239d5bd..16faf1ec18 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2014-2022 Eric Bavier ;;; Copyright © 2014 Federico Beffa ;;; Copyright © 2014 Mathieu Lirzin -;;; Copyright © 2015–2021 Ricardo Wurmus +;;; Copyright © 2015–2022 Ricardo Wurmus ;;; Copyright © 2015 Sou Bunnbu ;;; Copyright © 2015, 2018 Mark H Weaver ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner @@ -152,6 +152,7 @@ #:use-module (gnu packages serialization) #:use-module (gnu packages shells) #:use-module (gnu packages sphinx) + #:use-module (gnu packages swig) #:use-module (gnu packages tcl) #:use-module (gnu packages texinfo) #:use-module (gnu packages tex) @@ -1915,34 +1916,34 @@ with the provided training tools.") (define-public nlopt (package (name "nlopt") - (version "2.4.2") + (version "2.7.1") (source (origin - (method url-fetch) - (uri (string-append "http://ab-initio.mit.edu/nlopt/nlopt-" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/stevengj/nlopt/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "12cfkkhcdf4zmb6h7y6qvvdvqjs2xf9sjpa3rl3bq76px4yn76c0")))) - (build-system gnu-build-system) + (base32 "1xpdza28i8w441fwv6a5f3qk4zi7ys6ws9fx6kr5ny27dfdz6rr1")))) + (build-system cmake-build-system) (arguments - `(;; Shared libraries are not built by default. They are required to - ;; build the Guile, Octave, and Python bindings. - #:configure-flags '("--enable-shared") - - #:phases + `(#:phases (modify-phases %standard-phases (add-before 'configure 'set-libnlopt-file-name (lambda* (#:key outputs #:allow-other-keys) ;; Make sure the Scheme module refers to the library by its - ;; absolute file name (we cannot do that from a snippet - ;; because the expansion of @libdir@ contains - ;; ${exec_prefix}.) + ;; absolute file name. (let ((out (assoc-ref outputs "out"))) - (substitute* "swig/nlopt.scm.in" - (("libnlopt") - (string-append out "/lib/libnlopt"))) - #t)))))) - (inputs (list guile-2.0)) - (native-inputs (list pkg-config)) + (substitute* "src/swig/nlopt-guile.i" + (("\"nlopt_guile\"") + (format #f "~s" + `(format #f "~anlopt_guile" + (if (getenv "NLOPT_UNINSTALLED") + "" + ,(format #f "~a/lib/guile/3.0/extensions/" out)))))) + (setenv "NLOPT_UNINSTALLED" "1"))))))) + (inputs (list guile-3.0 octave python)) + (native-inputs (list pkg-config swig)) (home-page "http://ab-initio.mit.edu/wiki/") (synopsis "Library for nonlinear optimization") (description "NLopt is a library for nonlinear optimization, providing a -- cgit 1.4.1 From 5ab0cbd0f1e0fa7cca3052a51f032460fb3bb17c Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 29 Apr 2022 23:37:03 -0400 Subject: gnu: Remove python2-numpy. * gnu/packages/python-xyz.scm (python2-numpy): Delete variable. (python2-numpy-1.8): Likewise. (python-numpy)[properties]: Delete field. * gnu/packages/maths.scm (flann): Delete comment. * gnu/packages/chemistry.scm (with-numpy-1.8): Delete procedure. --- gnu/packages/chemistry.scm | 3 -- gnu/packages/maths.scm | 1 - gnu/packages/python-xyz.scm | 69 --------------------------------------------- 3 files changed, 73 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index e5b6309585..735d599d2d 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -303,9 +303,6 @@ with templates to facilitate the execution of the program. Input files can be staged, and output files collected using a standard interface.") (license license:bsd-3))) -(define with-numpy-1.8 - (package-input-rewriting `((,python2-numpy . ,python2-numpy-1.8)))) - (define-public tng (package (name "tng") diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 16faf1ec18..9cecf5cc40 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -5366,7 +5366,6 @@ in finite element programs.") ;; Disable it for now. ;;("octave" ,octave-cli) ("python" ,python-2) ; print syntax - ;; ("python2-numpy" ,python2-numpy) ; only required for the tests ("zlib" ,zlib))) (arguments `(;; The 'share/flann/octave' contains a .mex file, which is an ELF file diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 8981ca0e47..df27279e6d 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -5614,7 +5614,6 @@ with Python. It contains among other things: a powerful N-dimensional array object, sophisticated (broadcasting) functions, tools for integrating C/C++ and Fortran code, useful linear algebra, Fourier transform, and random number capabilities.") - (properties `((python2-variant . ,(delay python2-numpy)))) (license license:bsd-3))) (define-public python-numpy-next @@ -5726,74 +5725,6 @@ capabilities.") (description "This package provides the complete NumPy documentation in the Texinfo, HTML, and PDF formats."))) -;; Numpy 1.16.x are the last versions that support Python 2. -(define-public python2-numpy - (let ((numpy (package-with-python2 - (strip-python2-variant python-numpy)))) - (package - (inherit numpy) - (name "python2-numpy") - (version "1.16.5") - (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/numpy/numpy/releases/download/v" - version "/numpy-" version ".tar.gz")) - (sha256 - (base32 - "0lg1cycxzi4rvvrd5zxinpdz0ni792fpx6xjd75z1923zcac8qrb")))) - (arguments - (substitute-keyword-arguments (package-arguments numpy) - ((#:phases phases) - #~(modify-phases #$phases - (add-after 'unpack 'delete-failing-tests - (lambda _ - ;; There's just one failing test here. - (delete-file "numpy/linalg/tests/test_linalg.py") - ;; ...and this one depends on the previous one. - (delete-file "numpy/matrixlib/tests/test_matrix_linalg.py"))) - (replace 'check - ;; Older versions don't cope well with the extra Pytest - ;; options, so remove them. - (lambda* (#:key tests? outputs inputs #:allow-other-keys) - (when tests? - (invoke "./runtests.py" "-vv" "--no-build" "--mode=fast" - "-j" (number->string (parallel-job-count)))))))))) - (native-inputs - (list python2-cython python2-pytest gfortran))))) - -;; NOTE: NumPy 1.8 is packaged only for Python 2 because it is of -;; interest only for legacy code going back to NumPy's predecessor -;; Numeric. -(define-public python2-numpy-1.8 - (package - (inherit python2-numpy) - (version "1.8.2") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/numpy/numpy") - (commit (string-append "v" version)))) - (file-name (git-file-name "numpy" version)) - (sha256 - (base32 - "0ikgi15rsqwbkfsjjxrwh40lqyal2wvyp3923y6w6ch3dcr82sfk")))) - (arguments (substitute-keyword-arguments (package-arguments python2-numpy) - ((#:tests? _ #f) #f) ;disable tests - ((#:phases phases) - #~(modify-phases #$phases - (delete 'delete-failing-tests))))) - (native-inputs '()) - (description "NumPy is the fundamental package for scientific computing -with Python. It contains among other things: a powerful N-dimensional array -object, sophisticated (broadcasting) functions, tools for integrating C/C++ -and Fortran code, useful linear algebra, Fourier transform, and random number -capabilities. Version 1.8 is the last one to contain the numpy.oldnumeric API -that includes the compatibility layer numpy.oldnumeric with NumPy's predecessor -Numeric.") - (license license:bsd-3))) - (define-public python-munch (package (name "python-munch") -- cgit 1.4.1 From 8824061544976e6113e5ae83ad55787662f6974e Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 29 Apr 2022 23:45:08 -0400 Subject: gnu: Remove python2-kiwisolver. * gnu/packages/maths.scm (python2-kiwisolver): Delete variable. --- gnu/packages/maths.scm | 3 --- 1 file changed, 3 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 9cecf5cc40..54ea2af515 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -3336,9 +3336,6 @@ Cassowary solver with typical use cases gaining a 40x improvement. Memory savings are consistently > 5x.") (license license:bsd-3))) -(define-public python2-kiwisolver - (package-with-python2 python-kiwisolver)) - (define-public slepc (package (name "slepc") -- cgit 1.4.1 From 7115a075f362dec5294584da7c3f3d62bfc81191 Mon Sep 17 00:00:00 2001 From: SeerLite Date: Wed, 25 May 2022 19:29:21 -0400 Subject: gnu: ruby-asciimath: Update to 2.0.4. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit gnu/packages/math.scm (ruby-asciimath): Update to 2.0.4. Signed-off-by: Ludovic Courtès --- gnu/packages/maths.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 54ea2af515..46e5d3a5d0 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -3822,14 +3822,14 @@ sparse system of linear equations A x = b using Gaussian elimination.") (define-public ruby-asciimath (package (name "ruby-asciimath") - (version "2.0.1") + (version "2.0.4") (source (origin (method url-fetch) (uri (rubygems-uri "asciimath" version)) (sha256 (base32 - "1aapydwwkydbwgz07n7ma3a5jy9n3v0shy6q6j8mi4wr3crhx45a")))) + "1fy2jrn3gr7cl33qydp3pwyfilcmb4m4z6hfhnvydzg8r3srp36j")))) (build-system ruby-build-system) (native-inputs (list ruby-nokogiri ruby-rspec)) -- cgit 1.4.1 From a04a987450908a84fa5fde0caa25a6a50027c73c Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian Date: Mon, 6 Jun 2022 11:20:39 -0700 Subject: gnu: itpp: Avoid embedding build dates. * gnu/packages/maths.scm (itpp): Add 'set-man-page-date and 'set-force-source-date phases. --- gnu/packages/maths.scm | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'gnu/packages/maths.scm') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 46e5d3a5d0..83f0a1810b 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1724,7 +1724,18 @@ HDF5 file is encoded according to the HDF File Format Specification.") (base32 "14ddy2xnb6sgp4hiax9v5sv4pr4l4dd4ps76nfha3nrpr1ikhcqm")))) (build-system cmake-build-system) - (arguments `(#:tests? #f)) ; Tests require googletest *sources* + (arguments `(#:tests? #f ; Tests require googletest *sources* + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-man-page-date + (lambda _ + (substitute* "itpp-config.1.cmake.in" + ((".PACKAGE_DATE.") "2012-04-18")))) + (add-before 'build 'set-force-source-date + ;; for reproducible dates, texlive needs this to respect respect + ;; SOURCE_DATE_EPOCH + (lambda _ + (setenv "FORCE_SOURCE_DATE" "1")))))) (inputs (list lapack fftw)) ;; FIXME: Even though the fonts are available dvips complains: ;; "Font cmmi10 not found; characters will be left blank." -- cgit 1.4.1