python3Packages.crocoddyl: depend on pkgs.crocoddyl
instead of rebuild, use the new BUILD_STANDALONE_PYTHON_INTERFACE feature.
This commit is contained in:
@@ -10,8 +10,6 @@
|
||||
lib,
|
||||
pinocchio,
|
||||
pkg-config,
|
||||
pythonSupport ? false,
|
||||
python3Packages,
|
||||
stdenv,
|
||||
}:
|
||||
|
||||
@@ -46,31 +44,20 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
cmake
|
||||
doxygen
|
||||
pkg-config
|
||||
]
|
||||
++ lib.optionals pythonSupport [
|
||||
python3Packages.python
|
||||
python3Packages.pythonImportsCheckHook
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
blas
|
||||
ipopt
|
||||
lapack
|
||||
]
|
||||
++ lib.optionals (!pythonSupport) [
|
||||
example-robot-data
|
||||
pinocchio
|
||||
]
|
||||
++ lib.optionals pythonSupport [
|
||||
python3Packages.example-robot-data
|
||||
python3Packages.pinocchio
|
||||
python3Packages.scipy
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
(lib.cmakeBool "INSTALL_DOCUMENTATION" true)
|
||||
(lib.cmakeBool "BUILD_EXAMPLES" pythonSupport)
|
||||
(lib.cmakeBool "BUILD_PYTHON_INTERFACE" pythonSupport)
|
||||
(lib.cmakeBool "BUILD_EXAMPLES" false)
|
||||
(lib.cmakeBool "BUILD_PYTHON_INTERFACE" false)
|
||||
];
|
||||
|
||||
prePatch = ''
|
||||
@@ -81,8 +68,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
pythonImportsCheck = [ "crocoddyl" ];
|
||||
checkInputs = lib.optionals pythonSupport [ python3Packages.scipy ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Crocoddyl optimal control library";
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
{
|
||||
lib,
|
||||
|
||||
toPythonModule,
|
||||
pythonImportsCheckHook,
|
||||
|
||||
crocoddyl,
|
||||
|
||||
example-robot-data,
|
||||
ffmpeg,
|
||||
matplotlib,
|
||||
nbconvert,
|
||||
nbformat,
|
||||
ipykernel,
|
||||
python,
|
||||
scipy,
|
||||
}:
|
||||
toPythonModule (
|
||||
crocoddyl.overrideAttrs (super: {
|
||||
pname = "py-${super.pname}";
|
||||
|
||||
cmakeFlags = super.cmakeFlags ++ [
|
||||
(lib.cmakeBool "BUILD_PYTHON_INTERFACE" true)
|
||||
(lib.cmakeBool "BUILD_STANDALONE_PYTHON_INTERFACE" true)
|
||||
];
|
||||
|
||||
# those are used by CMake at configure/build time
|
||||
nativeBuildInputs = super.nativeBuildInputs ++ [
|
||||
python
|
||||
];
|
||||
|
||||
propagatedBuildInputs = super.propagatedBuildInputs ++ [
|
||||
crocoddyl
|
||||
example-robot-data
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
ffmpeg
|
||||
pythonImportsCheckHook
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
matplotlib
|
||||
nbconvert
|
||||
nbformat
|
||||
ipykernel
|
||||
scipy
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"crocoddyl"
|
||||
];
|
||||
})
|
||||
)
|
||||
@@ -3108,12 +3108,7 @@ self: super: with self; {
|
||||
|
||||
crochet = callPackage ../development/python-modules/crochet { };
|
||||
|
||||
crocoddyl = toPythonModule (
|
||||
pkgs.crocoddyl.override {
|
||||
pythonSupport = true;
|
||||
python3Packages = self;
|
||||
}
|
||||
);
|
||||
crocoddyl = callPackage ../development/python-modules/crocoddyl { inherit (pkgs) crocoddyl; };
|
||||
|
||||
cron-converter = callPackage ../development/python-modules/cron-converter { };
|
||||
|
||||
|
||||
Reference in New Issue
Block a user