diff options
author | Matthew Elwin <elwin@northwestern.edu> | 2025-06-06 16:43:55 -0500 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2025-06-26 16:34:00 +0200 |
commit | 391b9439148b9f6a7cff74e98600f80733a6c51b (patch) | |
tree | 075bec002e8b3e998f5d53ee29cc5c9b9ead4716 | |
parent | 1ee291139fcb05335961562cf1baa1aa632c2abf (diff) |
gnu: Add orocos-kinematics-dynamics.
* gnu/packages/engineering.scm (orocos-kinematics-dynamics): New variable.
Change-Id: I328a393e22300cfa77f809c351d2f421b6d2fbbe
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r-- | gnu/packages/engineering.scm | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 0a1d3cdf64..fc4aea72a9 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -43,6 +43,7 @@ ;;; Copyright © 2024 Nguyễn Gia Phong <mcsinyx@disroot.org> ;;; Copyright © 2025 Frederick Muriuki Muriithi <fredmanglis@gmail.com> ;;; Copyright © 2025 nomike Postmann <nomike@nomike.com> +;;; Copyright © 2025 Matthew Elwin <elwin@northwestern.edu> ;;; ;;; This file is part of GNU Guix. ;;; @@ -5552,3 +5553,47 @@ and mogan.") towards field theory.") (home-page "https://cadabra.science/") (license license:gpl3+))) + +(define-public orocos-kinematics-dynamics + (let ((commit "34ecff4ca7bae52fa16ca13fdb3d9db26fd2a293") + ;; There hasn't been a new release in many years (version 1.5.1) + ;; Using the latest commit (which has internally set version to 1.5.2) + (revision "0")) + (package + (name "orocos-kinematics-dynamics") + (version (git-version "1.5.2" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/orocos/orocos_kinematics_dynamics") + (commit commit))) + (sha256 + (base32 "1c7vimy065908qs5nwhnrk9pp0wh8pjgdvz2hwb12a9wcsj50kf0")) + (file-name (git-file-name name version)) + (modules '((guix build utils))) + ;; make tests deterministic by seeding the random number generator + (snippet '(substitute* '("orocos_kdl/tests/treeinvdyntest.cpp" + "orocos_kdl/tests/solvertest.cpp") + (("srand\\( \\(unsigned\\)time\\( NULL \\)\\)") + "srand(0u)"))))) + (build-system cmake-build-system) + (native-inputs (list cppunit)) + (propagated-inputs (list eigen)) + (arguments + (list + #:configure-flags + #~(list "-DENABLE_TESTS=ON") + #:test-target "check" + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ + (chdir "orocos_kdl")))))) + (home-page "https://docs.orocos.org/kdl/overview.html") + (synopsis "Orocos Kinematics and Dynamics (KDL) C++ Library") + (description + "A C++ library for rigid body kinematics calculations +and representations for kinematic structures and their inverse and +forward kinematics solvers.") + (license license:lgpl2.1+)))) |