unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Felix Gruber <felgru@posteo.net>
To: 53121@debbugs.gnu.org
Cc: Felix Gruber <felgru@posteo.net>
Subject: [bug#53121] [PATCH] gnu: ceres: Update to 2.0.0.
Date: Fri,  7 Jan 2022 22:02:17 +0000	[thread overview]
Message-ID: <20220107220217.15305-1-felgru@posteo.net> (raw)

* gnu/packages/maths.scm (ceres): Update to 2.0.0.
  [inputs]: Use simplified format.
  (ceres-solver-benchmarks)[phases]: Add schur_eliminator_benchmark.
  Replace autodiff_cost_function_benchmark with new autodiff_benchmarks.
---
 gnu/packages/maths.scm | 41 ++++++++++++++++++++++-------------------
 1 file changed, 22 insertions(+), 19 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index b0944f307b..a8fd8a65fa 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -2437,7 +2437,7 @@ satisfiability checking (SAT).")
 (define-public ceres
   (package
     (name "ceres-solver")
-    (version "1.14.0")
+    (version "2.0.0")
     (home-page "http://ceres-solver.org/")
     (source (origin
               (method url-fetch)
@@ -2445,7 +2445,7 @@ satisfiability checking (SAT).")
                                   version ".tar.gz"))
               (sha256
                (base32
-                "13lfxy8x58w8vprr0nkbzziaijlh0vvqshgahvcgw0mrqdgh0i27"))))
+                "00vng9vnmdb1qga01m0why90m0041w7bn6kxa2h4m26aflfqla8h"))))
     (build-system cmake-build-system)
     (arguments
      ;; TODO: Build HTML user documentation and install separately.
@@ -2464,11 +2464,11 @@ satisfiability checking (SAT).")
     (propagated-inputs
      (list glog))                           ;for #include <glog/glog.h>
     (inputs
-     `(("eigen" ,eigen)
-       ("blas" ,openblas)
-       ("lapack" ,lapack)
-       ("suitesparse" ,suitesparse)
-       ("gflags" ,gflags)))
+     (list eigen
+           openblas
+           lapack
+           suitesparse
+           gflags))
     (synopsis "C++ library for solving large optimization problems")
     (description
      "Ceres Solver is a C++ library for modeling and solving large,
@@ -2506,21 +2506,24 @@ can solve two kinds of problems:
                                                   "pkg-config" "eigen3"
                                                   "--cflags"))))
 
-                        (define (compile-file file)
-                          (let ((source (string-append file ".cc")))
-                            (format #t "building '~a'...~%" file)
-                            (apply invoke "c++" "-fopenmp" "-O2" "-g" "-DNDEBUG"
-                                   source "-lceres" "-lbenchmark" "-lglog"
-                                   "-pthread"
-                                   "-o" (string-append bin "/" file)
-                                   "-I" ".." flags)))
+                        (define (compile-file top-dir)
+                          (lambda (file)
+                            (let ((source (string-append file ".cc")))
+                              (format #t "building '~a'...~%" file)
+                              (apply invoke "c++" "-fopenmp" "-O2" "-g" "-DNDEBUG"
+                                     source "-lceres" "-lbenchmark" "-lglog"
+                                     "-pthread"
+                                     "-o" (string-append bin "/" file)
+                                     "-I" top-dir flags))))
 
                         (mkdir-p bin)
                         (with-directory-excursion "internal/ceres"
-                          (for-each compile-file
-                                    '("small_blas_gemm_benchmark"
-                                      "small_blas_gemv_benchmark"
-                                      "autodiff_cost_function_benchmark"))))))
+                          (for-each (compile-file "..")
+                                    '("schur_eliminator_benchmark"
+                                      "small_blas_gemm_benchmark"
+                                      "small_blas_gemv_benchmark"))
+                          (with-directory-excursion "autodiff_benchmarks"
+                            ((compile-file "../..") "autodiff_benchmarks"))))))
                   (delete 'check)
                   (delete 'install))))
     (inputs (modify-inputs (package-inputs ceres)
-- 
2.30.2





             reply	other threads:[~2022-01-07 22:03 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-07 22:02 Felix Gruber [this message]
2022-01-11 19:10 ` bug#53121: [PATCH] gnu: ceres: Update to 2.0.0 Ludovic Courtès
2022-01-18 12:39   ` [bug#53121] " Felix Gruber
2022-01-19 10:26     ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220107220217.15305-1-felgru@posteo.net \
    --to=felgru@posteo.net \
    --cc=53121@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).