From a329893fbeed952450e8753f0fa7befa1ec4f049 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aleix=20Bon=C3=A9?= Date: Tue, 16 Dec 2025 14:20:05 +0100 Subject: [PATCH] Add TACUDA through cudaPackages extensions --- overlay.nix | 7 ++++++- pkgs/tacuda/default.nix | 15 +++++++++------ 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/overlay.nix b/overlay.nix index ce4c743..2046ad5 100644 --- a/overlay.nix +++ b/overlay.nix @@ -59,11 +59,16 @@ let stdenvClangOmpss2Nanos6 = final.stdenv.override { cc = final.clangOmpss2Nanos6; allowedRequisites = null; }; stdenvClangOmpss2Nodes = final.stdenv.override { cc = final.clangOmpss2Nodes; allowedRequisites = null; }; stdenvClangOmpss2NodesOmpv = final.stdenv.override { cc = final.clangOmpss2NodesOmpv; allowedRequisites = null; }; - tacuda = callPackage ./pkgs/tacuda/default.nix { }; tagaspi = callPackage ./pkgs/tagaspi/default.nix { }; tampi = callPackage ./pkgs/tampi/default.nix { }; upc-qaire-exporter = prev.callPackage ./pkgs/upc-qaire-exporter/default.nix { }; wxparaver = callPackage ./pkgs/paraver/default.nix { }; + + _cuda = prev._cuda.extend (_: _prev: final.lib.recursiveUpdate _prev { + extensions = _prev.extensions ++ [(finalAttrs: _: { + tacuda = finalAttrs.callPackage ./pkgs/tacuda/default.nix { }; + })]; + }); }; tests = rec { diff --git a/pkgs/tacuda/default.nix b/pkgs/tacuda/default.nix index 2ebe0c8..eba21ad 100644 --- a/pkgs/tacuda/default.nix +++ b/pkgs/tacuda/default.nix @@ -1,5 +1,5 @@ { - stdenv, + backendStdenv, fetchFromGitHub, automake, autoconf, @@ -7,7 +7,9 @@ gnumake, autoreconfHook, boost, - cudaPackages, + cudatoolkit, + libcublas, + cuda_cudart, useGit ? false, gitUrl ? "git@gitlab-internal.bsc.es:task-awareness/tacuda/tacuda.git", @@ -41,12 +43,13 @@ let in -stdenv.mkDerivation { +backendStdenv.mkDerivation { pname = "tacuda"; inherit (source) src version; enableParallelBuilding = true; separateDebugInfo = true; + strictDeps = true; nativeBuildInputs = [ autoreconfHook @@ -58,12 +61,12 @@ stdenv.mkDerivation { patches = [ ./fix_config.patch ]; - configureFlags = [ "--with-cuda-include=${cudaPackages.cudatoolkit}/include" ]; + configureFlags = [ "--with-cuda-include=${cudatoolkit}/include" ]; buildInputs = [ boost - cudaPackages.libcublas - cudaPackages.cuda_cudart + libcublas + cuda_cudart ]; }