Unverified Commit c4253260 authored by Gaétan Lepage's avatar Gaétan Lepage Committed by GitHub
Browse files

python312Packages.pyopencl: try to enable tests (#337923)

parents b28b81cf 53cdf12e
Loading
Loading
Loading
Loading
+22 −14
Original line number Diff line number Diff line
@@ -6,17 +6,19 @@

  # build-system
  cmake,
  scikit-build-core,
  ninja,
  nanobind,
  ninja,
  numpy,
  scikit-build-core,

  # dependencies
  # buildInputs
  opencl-headers,
  pybind11,
  darwin,
  numpy,
  ocl-icd,
  opencl-headers,

  # dependencies
  platformdirs,
  pybind11,
  pytools,

  # tests
@@ -24,7 +26,8 @@
}:

let
  os-specific-buildInputs = if stdenv.isDarwin then [ darwin.apple_sdk.frameworks.OpenCL ] else [ ocl-icd ];
  os-specific-buildInputs =
    if stdenv.isDarwin then [ darwin.apple_sdk.frameworks.OpenCL ] else [ ocl-icd ];
in
buildPythonPackage rec {
  pname = "pyopencl";
@@ -65,25 +68,30 @@ buildPythonPackage rec {
  preCheck = ''
    export HOME=$(mktemp -d)

    # import from $out
    rm -r pyopencl
    # https://github.com/NixOS/nixpkgs/issues/255262
    cd $out
  '';

  # pyopencl._cl.LogicError: clGetPlatformIDs failed: PLATFORM_NOT_FOUND_KHR
  # https://github.com/inducer/pyopencl/issues/784 Note that these failing
  # tests are all the tests that are available.
  doCheck = false;

  pythonImportsCheck = [
    "pyopencl"
    "pyopencl.array"
    "pyopencl.cltypes"
    "pyopencl.compyte"
    "pyopencl.elementwise"
    "pyopencl.tools"
  ];

  meta = with lib; {
    changelog = "https://github.com/inducer/pyopencl/releases/tag/v${version}";
  meta = {
    description = "Python wrapper for OpenCL";
    homepage = "https://github.com/inducer/pyopencl";
    license = licenses.mit;
    homepage = "https://github.com/pyopencl/pyopencl";
    changelog = "https://github.com/inducer/pyopencl/releases/tag/v${version}";
    license = lib.licenses.mit;
    maintainers = with lib.maintainers; [ GaetanLepage ];
    # ld: symbol(s) not found for architecture arm64
    broken = stdenv.isDarwin && stdenv.isAarch64;
  };
}