nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at devShellTools-shell 67 lines 1.4 kB view raw
1{ 2 cmake, 3 doxygen, 4 eiquadprog, 5 fetchFromGitHub, 6 lib, 7 osqp-eigen, 8 pkg-config, 9 pinocchio, 10 proxsuite, 11 stdenv, 12 pythonSupport ? false, 13 python3Packages, 14}: 15 16stdenv.mkDerivation (finalAttrs: { 17 pname = "tsid"; 18 version = "1.8.0"; 19 20 src = fetchFromGitHub { 21 owner = "stack-of-tasks"; 22 repo = "tsid"; 23 rev = "v${finalAttrs.version}"; 24 hash = "sha256-SS6JhU4fuZtTzv/EY31ixwwLOzmO/dN3H5HEMh/URTA="; 25 }; 26 27 cmakeFlags = [ 28 (lib.cmakeBool "BUILD_PYTHON_INTERFACE" pythonSupport) 29 (lib.cmakeBool "BUILD_WITH_OSQP" true) 30 (lib.cmakeBool "BUILD_WITH_PROXQP" true) 31 (lib.cmakeBool "INSTALL_DOCUMENTATION" true) 32 ]; 33 34 outputs = [ 35 "out" 36 "doc" 37 ]; 38 39 nativeBuildInputs = [ 40 doxygen 41 cmake 42 pkg-config 43 ] 44 ++ lib.optionals pythonSupport [ 45 python3Packages.python 46 python3Packages.pythonImportsCheckHook 47 ]; 48 49 propagatedBuildInputs = [ 50 eiquadprog 51 osqp-eigen 52 proxsuite 53 ] 54 ++ lib.optional (!pythonSupport) pinocchio 55 ++ lib.optional pythonSupport python3Packages.pinocchio; 56 57 doCheck = true; 58 pythonImportsCheck = [ "tsid" ]; 59 60 meta = { 61 description = "Efficient Task Space Inverse Dynamics (TSID) based on Pinocchio"; 62 homepage = "https://github.com/stack-of-tasks/tsid"; 63 license = lib.licenses.bsd2; 64 maintainers = with lib.maintainers; [ nim65s ]; 65 platforms = lib.platforms.unix; 66 }; 67})