diff --git a/overlay.nix b/overlay.nix index 2c0686a..0b3f88f 100644 --- a/overlay.nix +++ b/overlay.nix @@ -61,7 +61,6 @@ 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 { }; @@ -69,6 +68,12 @@ let wxparaver = callPackage ./pkgs/paraver/default.nix { }; gromacs = callPackage ./pkgs/gromacs/default.nix { enableSYCL = true; }; + + _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 ]; }