diff --git a/pkgs/development/libraries/level-zero/default.nix b/pkgs/development/libraries/level-zero/default.nix index fb5c3ba283b6f8..74dc4a09f389e9 100644 --- a/pkgs/development/libraries/level-zero/default.nix +++ b/pkgs/development/libraries/level-zero/default.nix @@ -1,23 +1,35 @@ { lib -, stdenv -, fetchFromGitHub , addOpenGLRunpath , cmake +, fetchFromGitHub +, fmt_9 +, spdlog +, stdenv +, substituteAll }: stdenv.mkDerivation rec { pname = "level-zero"; - version = "1.16.1"; + version = "1.16.11"; src = fetchFromGitHub { owner = "oneapi-src"; repo = "level-zero"; rev = "refs/tags/v${version}"; - hash = "sha256-iPWEZ9aJ3uI4cAKRgur78zdVwGtD6q1TqwNpK+mg5hw="; + hash = "sha256-ER7ceIC7d00uH8NTBgwtKgQ/YMPr9ardAE8+D+RVHmY="; }; + patches = [ + (substituteAll { + src = ./system-spdlog.diff; + spdlog = lib.getDev spdlog; + }) + ]; + nativeBuildInputs = [ cmake addOpenGLRunpath ]; + buildInputs = [ fmt_9 ]; + postFixup = '' addOpenGLRunpath $out/lib/libze_loader.so ''; diff --git a/pkgs/development/libraries/level-zero/system-spdlog.diff b/pkgs/development/libraries/level-zero/system-spdlog.diff new file mode 100644 index 00000000000000..dee5432d0f7f9c --- /dev/null +++ b/pkgs/development/libraries/level-zero/system-spdlog.diff @@ -0,0 +1,66 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 5e4af80..a54eecb 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,6 +1,9 @@ + # Copyright (C) 2020-2024 Intel Corporation + # SPDX-License-Identifier: MIT + ++add_compile_definitions(SPDLOG_FMT_EXTERNAL) ++add_compile_definitions(FMT_HEADER_ONLY) ++ + cmake_minimum_required(VERSION 3.2.0 FATAL_ERROR) + set(CMAKE_CXX_STANDARD 14) + set(CMAKE_CXX_STANDARD_REQUIRED ON) +@@ -58,7 +60,7 @@ elseif(Git_FOUND) + endif() + + include(FetchContent) +-set(SPDLOG_ROOT "${FETCHCONTENT_BASE_DIR}/spdlog-src") ++set(SPDLOG_ROOT "@spdlog@") + + # Update other relevant variables to include the patch + set(PROJECT_VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}") +diff --git a/source/utils/CMakeLists.txt b/source/utils/CMakeLists.txt +index cb6cfb1..599338a 100644 +--- a/source/utils/CMakeLists.txt ++++ b/source/utils/CMakeLists.txt +@@ -1,16 +1,6 @@ + # Copyright (C) 2024 Intel Corporation + # SPDX-License-Identifier: MIT + +-include(FetchContent) +-set(SPDLOG_REPO https://github.com/gabime/spdlog) +-set(SPDLOG_TAG v1.13.0) +-FetchContent_Declare( +- spdlog +- GIT_REPOSITORY ${SPDLOG_REPO} +- GIT_TAG ${SPDLOG_TAG} +-) +-FetchContent_makeAvailable(spdlog) +- + add_library(utils + STATIC + "logging.h" +@@ -19,5 +9,5 @@ add_library(utils + + target_include_directories(utils + PUBLIC +- ${FETCHCONTENT_BASE_DIR}/spdlog-src/include ++ @spdlog@/include + ) +diff --git a/source/utils/logging.h b/source/utils/logging.h +index 4aad451..c8c4cc3 100644 +--- a/source/utils/logging.h ++++ b/source/utils/logging.h +@@ -16,8 +16,8 @@ + #include + #include + +-#include "spdlog/sinks/basic_file_sink.h" +-#include "spdlog/spdlog.h" ++#include ++#include + + namespace loader { +