python3Packages.mmcv: cleanup, skip crashing test on x86_64-darwin (#486329)

This commit is contained in:
kirillrdy
2026-02-02 19:48:05 +00:00
committed by GitHub
@@ -36,7 +36,7 @@ let
inherit (torch) cudaCapabilities cudaPackages cudaSupport;
inherit (cudaPackages) backendStdenv;
in
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "mmcv";
version = "2.2.0";
pyproject = true;
@@ -44,7 +44,7 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "open-mmlab";
repo = "mmcv";
tag = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-NNF9sLJWV1q6uBE73LUW4UWwYm4TBMTBJjJkFArBmsc=";
};
@@ -57,7 +57,7 @@ buildPythonPackage rec {
''
substituteInPlace setup.py \
--replace-fail "cpu_use = 4" "cpu_use = $NIX_BUILD_CORES" \
--replace-fail "return locals()['__version__']" "return '${version}'"
--replace-fail "return locals()['__version__']" "return '${finalAttrs.version}'"
'';
nativeBuildInputs = [
@@ -93,17 +93,16 @@ buildPythonPackage rec {
# torch
];
env.CUDA_HOME = lib.optionalString cudaSupport (lib.getDev cudaPackages.cuda_nvcc);
preConfigure = ''
export MMCV_WITH_OPS=1
''
+ lib.optionalString cudaSupport ''
export CC=${lib.getExe' backendStdenv.cc "cc"}
export CXX=${lib.getExe' backendStdenv.cc "c++"}
export TORCH_CUDA_ARCH_LIST="${lib.concatStringsSep ";" cudaCapabilities}"
export FORCE_CUDA=1
'';
env = {
CUDA_HOME = lib.optionalString cudaSupport (lib.getDev cudaPackages.cuda_nvcc);
MMCV_WITH_OPS = 1;
}
// lib.optionalAttrs cudaSupport {
CC = lib.getExe' backendStdenv.cc "cc";
CXX = lib.getExe' backendStdenv.cc "c++";
TORCH_CUDA_ARCH_LIST = lib.concatStringsSep ";" cudaCapabilities;
FORCE_CUDA = 1;
};
pythonImportsCheck = [ "mmcv" ];
@@ -141,13 +140,17 @@ buildPythonPackage rec {
"test_ycbcr2rgb"
"test_ycbcr2bgr"
"test_tensor2imgs"
]
++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [
# Fatal Python error: Segmentation fault
"test_transform"
];
meta = {
description = "Foundational Library for Computer Vision Research";
homepage = "https://github.com/open-mmlab/mmcv";
changelog = "https://github.com/open-mmlab/mmcv/releases/tag/v${version}";
changelog = "https://github.com/open-mmlab/mmcv/releases/tag/${finalAttrs.src.tag}";
license = with lib.licenses; [ asl20 ];
maintainers = with lib.maintainers; [ rxiao ];
};
}
})