From 4b227488a13f9bd476b53cad2e2df8628efec485 Mon Sep 17 00:00:00 2001 From: rowanG077 Date: Thu, 5 May 2022 14:44:35 +0200 Subject: [PATCH] intel-graphics-compiler: 1.0.8744 -> 1.0.11061 --- .../intel-graphics-compiler/default.nix | 29 +++++++++++++++---- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/pkgs/development/compilers/intel-graphics-compiler/default.nix b/pkgs/development/compilers/intel-graphics-compiler/default.nix index 176affd047c9..75318351de7c 100644 --- a/pkgs/development/compilers/intel-graphics-compiler/default.nix +++ b/pkgs/development/compilers/intel-graphics-compiler/default.nix @@ -9,6 +9,8 @@ , lld_11 , opencl-clang , python3 +, spirv-tools +, spirv-headers , spirv-llvm-translator , buildWithPatches ? true @@ -18,8 +20,8 @@ let vc_intrinsics_src = fetchFromGitHub { owner = "intel"; repo = "vc-intrinsics"; - rev = "e5ad7e02aa4aa21a3cd7b3e5d1f3ec9b95f58872"; - sha256 = "Vg1mngwpIQ3Tik0GgRXPG22lE4sLEAEFch492G2aIXs="; + rev = "v0.3.0"; + sha256 = "sha256-1Rm4TCERTOcPGWJF+yNoKeB9x3jfqnh7Vlv+0Xpmjbk="; }; llvmPkgs = llvmPackages_11 // { inherit spirv-llvm-translator; @@ -31,18 +33,18 @@ in stdenv.mkDerivation rec { pname = "intel-graphics-compiler"; - version = "1.0.8744"; + version = "1.0.11061"; src = fetchFromGitHub { owner = "intel"; repo = "intel-graphics-compiler"; rev = "igc-${version}"; - sha256 = "G5+dYD8uZDPkRyn1sgXsRngdq4NJndiCJCYTRXyUgTA="; + sha256 = "sha256-qS/+GTqHtp3T6ggPKrCDsrTb7XvVOUaNbMzGU51jTu4="; }; nativeBuildInputs = [ clang cmake bison flex python3 ]; - buildInputs = [ clang opencl-clang spirv-llvm-translator llvm lld_11 ]; + buildInputs = [ spirv-headers spirv-tools clang opencl-clang spirv-llvm-translator llvm lld_11 ]; strictDeps = true; @@ -52,6 +54,21 @@ stdenv.mkDerivation rec { # https://github.com/intel/intel-graphics-compiler/issues/98 doCheck = false; + patchPhase = '' + substituteInPlace ./external/SPIRV-Tools/CMakeLists.txt \ + --replace '$'''{SPIRV-Tools_DIR}../../..' \ + '${spirv-tools}' \ + --replace 'SPIRV-Headers_INCLUDE_DIR "/usr/include"' \ + 'SPIRV-Headers_INCLUDE_DIR "${spirv-headers}/include"' \ + --replace 'set_target_properties(SPIRV-Tools' \ + 'set_target_properties(SPIRV-Tools-shared' \ + --replace 'IGC_BUILD__PROJ__SPIRV-Tools SPIRV-Tools' \ + 'IGC_BUILD__PROJ__SPIRV-Tools SPIRV-Tools-shared' + substituteInPlace ./IGC/AdaptorOCL/igc-opencl.pc.in \ + --replace '/@CMAKE_INSTALL_INCLUDEDIR@' "/include" \ + --replace '/@CMAKE_INSTALL_LIBDIR@' "/lib" + ''; + # Handholding the braindead build script # cmake requires an absolute path prebuilds = runCommandLocal "igc-cclang-prebuilds" { } '' @@ -64,7 +81,9 @@ stdenv.mkDerivation rec { ''; cmakeFlags = [ + "-Wno-dev" "-DVC_INTRINSICS_SRC=${vc_intrinsics_src}" + "-DIGC_OPTION__SPIRV_TOOLS_MODE=Prebuilds" "-DINSTALL_SPIRVDLL=0" "-DCCLANG_BUILD_PREBUILDS=ON" "-DCCLANG_BUILD_PREBUILDS_DIR=${prebuilds}"