mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-04-06 21:20:33 +02:00
gnu: Remove optizelle.
* gnu/packages/maths.scm (optizelle): Delete variable. Fixes: guix/guix#5423 Change-Id: Ie0031b6e91da0f69b5ae0eac4eaea107a2793f31
This commit is contained in:
@@ -10833,101 +10833,6 @@ when an application performs repeated divisions by the same divisor.")
|
||||
half-precision floating point formats.")
|
||||
(license license:expat))))
|
||||
|
||||
(define-public optizelle
|
||||
(let ((commit "ed4160b5287518448caeb34789d92dc6a0b7e2cc"))
|
||||
(package
|
||||
(name "optizelle")
|
||||
(version (git-version "1.3.0" "0" commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/OptimoJoe/Optizelle")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name "optizelle" commit))
|
||||
(sha256
|
||||
(base32
|
||||
"0rjrs5sdmd33a9f4xm8an7p0953aa0bxsmr4hs3ss1aad9k181vq"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Reduce the stopping tolerance in one test so that the
|
||||
;; convergence check returns the correct stopping
|
||||
;; condition.
|
||||
(substitute*
|
||||
"src/unit/linear_algebra/tcg_loss_of_orthogonality.cpp"
|
||||
(("1e-13") "5e-14"))
|
||||
;; Skip one set of python tests. See
|
||||
;; https://github.com/OptimoJoe/Optizelle/issues/2.
|
||||
(substitute*
|
||||
"src/examples/inequality_scaling/CMakeLists.txt"
|
||||
(("add_unit(.*)\\$\\{interfaces\\}(.*)$" all middle end)
|
||||
(string-append "add_unit" middle "\"cpp\"" end)))
|
||||
;; Install the licence for Optizelle, without also
|
||||
;; including the licences for the dependencies.
|
||||
(substitute* "licenses/CMakeLists.txt"
|
||||
(("file.*package.*$" all)
|
||||
(string-append "# " all))
|
||||
((".*[^l].[.]txt\\)\n") "")
|
||||
(("add_license.*\"\n") ""))))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:imported-modules (append %cmake-build-system-modules
|
||||
%pyproject-build-system-modules)
|
||||
#:modules `(((guix build pyproject-build-system) #:prefix py:)
|
||||
(guix build cmake-build-system)
|
||||
(guix build utils))
|
||||
#:configure-flags
|
||||
#~(list "-DCMAKE_CXX_FLAGS:STRING=-pthread"
|
||||
"-DENABLE_CPP_UNIT:BOOL=ON"
|
||||
"-DENABLE_CPP_EXAMPLES:BOOL=ON"
|
||||
"-DENABLE_PYTHON:BOOL=ON"
|
||||
"-DENABLE_PYTHON_UNIT:BOOL=ON"
|
||||
"-DENABLE_PYTHON_EXAMPLES:BOOL=ON"
|
||||
(string-append "-DBLAS_LIBRARY:FILEPATH="
|
||||
(search-input-file %build-inputs
|
||||
"/lib/libopenblas.so"))
|
||||
(string-append "-DLAPACK_LIBRARY:FILEPATH="
|
||||
(search-input-file %build-inputs
|
||||
"/lib/libgfortran.so")
|
||||
";" (search-input-file %build-inputs
|
||||
"/lib/libquadmath.so")))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-numpy-path ; Needed for the unit tests.
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let* ((numpy-out (dirname (dirname (which "numpy-config"))))
|
||||
(outputs (list (cons "out" numpy-out))))
|
||||
(substitute* "src/cmake/Modules/Optizelle.cmake"
|
||||
(("PYTHONPATH=")
|
||||
(string-append
|
||||
"LD_LIBRARY_PATH=$ENV{LIBRARY_PATH};"
|
||||
"PYTHONPATH=" (py:site-packages inputs outputs) ":"))))))
|
||||
(delete 'install-license-files)))) ; LICENSE.txt is installed.
|
||||
(inputs
|
||||
(list openblas
|
||||
(list gfortran "lib")
|
||||
jsoncpp
|
||||
python-numpy
|
||||
python))
|
||||
(native-inputs
|
||||
(list gfortran pkg-config))
|
||||
(home-page "https://www.optimojoe.com/products/optizelle/")
|
||||
(synopsis "Mathematical optimization library")
|
||||
(description "@code{optizelle} is a software library designed to
|
||||
solve nonlinear optimization problems. Four types of problem are
|
||||
considered: unconstrained, equality constrained, inequality
|
||||
constrained and constrained. Constraints may be applied as values of
|
||||
functions or sets of partial differential equations (PDEs).
|
||||
|
||||
Solution algorithms such as the preconditioned nonlinear conjugate
|
||||
gradient method, sequential quadratic programming (SQP) and the
|
||||
primal-dual interior-point method are made available. Interfaces are
|
||||
provided for applications written in C++ and Python. Parallel
|
||||
computation is supported via MPI.")
|
||||
(license license:bsd-2))))
|
||||
|
||||
(define-public scilab
|
||||
(package
|
||||
(name "scilab")
|
||||
|
||||
Reference in New Issue
Block a user