Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib 2, stdenv 3, fetchFromGitHub 4, cmake 5, pkg-config 6, intel-gmmlib 7, intel-graphics-compiler 8, level-zero 9, libva 10}: 11 12stdenv.mkDerivation rec { 13 pname = "intel-compute-runtime"; 14 version = "24.22.29735.20"; 15 16 src = fetchFromGitHub { 17 owner = "intel"; 18 repo = "compute-runtime"; 19 rev = version; 20 hash = "sha256-M+buuVTd0w1Js6eDKln+LFhQgeNU4KCbN6vK8PyUdG8="; 21 }; 22 23 nativeBuildInputs = [ cmake pkg-config ]; 24 25 buildInputs = [ intel-gmmlib intel-graphics-compiler libva level-zero ]; 26 27 cmakeFlags = [ 28 "-DSKIP_UNIT_TESTS=1" 29 "-DIGC_DIR=${intel-graphics-compiler}" 30 "-DOCL_ICD_VENDORDIR=${placeholder "out"}/etc/OpenCL/vendors" 31 # The install script assumes this path is relative to CMAKE_INSTALL_PREFIX 32 "-DCMAKE_INSTALL_LIBDIR=lib" 33 ]; 34 35 outputs = [ "out" "drivers" ]; 36 37 # causes redefinition of _FORTIFY_SOURCE 38 hardeningDisable = [ "fortify3" ]; 39 40 postInstall = '' 41 # Avoid clash with intel-ocl 42 mv $out/etc/OpenCL/vendors/intel.icd $out/etc/OpenCL/vendors/intel-neo.icd 43 44 mkdir -p $drivers/lib 45 mv -t $drivers/lib $out/lib/libze_intel* 46 ''; 47 48 postFixup = '' 49 patchelf --set-rpath ${lib.makeLibraryPath [ intel-gmmlib intel-graphics-compiler libva stdenv.cc.cc.lib ]} \ 50 $out/lib/intel-opencl/libigdrcl.so 51 ''; 52 53 meta = with lib; { 54 description = "Intel Graphics Compute Runtime for OpenCL. Replaces Beignet for Gen8 (Broadwell) and beyond"; 55 mainProgram = "ocloc"; 56 homepage = "https://github.com/intel/compute-runtime"; 57 changelog = "https://github.com/intel/compute-runtime/releases/tag/${version}"; 58 license = licenses.mit; 59 platforms = [ "x86_64-linux" "aarch64-linux" ]; 60 maintainers = with maintainers; [ SuperSandro2000 ]; 61 }; 62}