Loading pkgs/development/libraries/rocfft/default.nix +41 −15 Original line number Diff line number Diff line Loading @@ -19,6 +19,11 @@ }: let name-zero = "librocfft-device-0.so.0.1"; name-one = "librocfft-device-1.so.0.1"; name-two = "librocfft-device-2.so.0.1"; name-three = "librocfft-device-3.so.0.1"; # This is over 3GB, to allow hydra caching we separate it rf = stdenv.mkDerivation (finalAttrs: { pname = "rocfft"; Loading @@ -26,6 +31,10 @@ let outputs = [ "out" "libzero" "libone" "libtwo" "libthree" ] ++ lib.optionals buildTests [ "test" ] ++ lib.optionals buildBenchmarks [ Loading Loading @@ -58,7 +67,7 @@ let openmp ]; propogatedBuildInputs = lib.optionals buildTests [ propagatedBuildInputs = lib.optionals buildTests [ fftw fftwFloat ]; Loading @@ -80,7 +89,16 @@ let "-DBUILD_CLIENTS_SAMPLES=ON" ]; postInstall = lib.optionalString buildTests '' postInstall = '' mv $out/lib/${name-zero} $libzero mv $out/lib/${name-one} $libone mv $out/lib/${name-two} $libtwo mv $out/lib/${name-three} $libthree ln -s $libzero $out/lib/${name-zero} ln -s $libone $out/lib/${name-one} ln -s $libtwo $out/lib/${name-two} ln -s $libthree $out/lib/${name-three} '' + lib.optionalString buildTests '' mkdir -p $test/{bin,lib/fftw} cp -a $out/bin/* $test/bin ln -s ${fftw}/lib/libfftw*.so $test/lib/fftw Loading Loading @@ -113,23 +131,31 @@ let }; }); rf-zero = runCommand "librocfft-device-0.so.0.1" { preferLocalBuild = true; } '' cp -a ${rf}/lib/$name $out rf-zero = runCommand name-zero { preferLocalBuild = true; } '' cp -a ${rf.libzero} $out ''; rf-one = runCommand "librocfft-device-1.so.0.1" { preferLocalBuild = true; } '' cp -a ${rf}/lib/$name $out rf-one = runCommand name-one { preferLocalBuild = true; } '' cp -a ${rf.libone} $out ''; rf-two = runCommand "librocfft-device-2.so.0.1" { preferLocalBuild = true; } '' cp -a ${rf}/lib/$name $out rf-two = runCommand name-two { preferLocalBuild = true; } '' cp -a ${rf.libtwo} $out ''; rf-three = runCommand "librocfft-device-3.so.0.1" { preferLocalBuild = true; } '' cp -a ${rf}/lib/$name $out rf-three = runCommand name-three { preferLocalBuild = true; } '' cp -a ${rf.libthree} $out ''; in stdenv.mkDerivation { inherit (rf) pname version outputs src passthru meta; inherit (rf) pname version src passthru meta; outputs = [ "out" ] ++ lib.optionals buildTests [ "test" ] ++ lib.optionals buildBenchmarks [ "benchmark" ]; dontUnpack = true; dontPatch = true; Loading @@ -140,10 +166,10 @@ in stdenv.mkDerivation { runHook preInstall mkdir -p $out/lib cp -as ${rf-zero} $out/lib/${rf-zero.name} cp -as ${rf-one} $out/lib/${rf-one.name} cp -as ${rf-two} $out/lib/${rf-two.name} cp -as ${rf-three} $out/lib/${rf-three.name} ln -sf ${rf-zero} $out/lib/${name-zero} ln -sf ${rf-one} $out/lib/${name-one} ln -sf ${rf-two} $out/lib/${name-two} ln -sf ${rf-three} $out/lib/${name-three} cp -an ${rf}/* $out '' + lib.optionalString buildTests '' cp -a ${rf.test} $test Loading Loading
pkgs/development/libraries/rocfft/default.nix +41 −15 Original line number Diff line number Diff line Loading @@ -19,6 +19,11 @@ }: let name-zero = "librocfft-device-0.so.0.1"; name-one = "librocfft-device-1.so.0.1"; name-two = "librocfft-device-2.so.0.1"; name-three = "librocfft-device-3.so.0.1"; # This is over 3GB, to allow hydra caching we separate it rf = stdenv.mkDerivation (finalAttrs: { pname = "rocfft"; Loading @@ -26,6 +31,10 @@ let outputs = [ "out" "libzero" "libone" "libtwo" "libthree" ] ++ lib.optionals buildTests [ "test" ] ++ lib.optionals buildBenchmarks [ Loading Loading @@ -58,7 +67,7 @@ let openmp ]; propogatedBuildInputs = lib.optionals buildTests [ propagatedBuildInputs = lib.optionals buildTests [ fftw fftwFloat ]; Loading @@ -80,7 +89,16 @@ let "-DBUILD_CLIENTS_SAMPLES=ON" ]; postInstall = lib.optionalString buildTests '' postInstall = '' mv $out/lib/${name-zero} $libzero mv $out/lib/${name-one} $libone mv $out/lib/${name-two} $libtwo mv $out/lib/${name-three} $libthree ln -s $libzero $out/lib/${name-zero} ln -s $libone $out/lib/${name-one} ln -s $libtwo $out/lib/${name-two} ln -s $libthree $out/lib/${name-three} '' + lib.optionalString buildTests '' mkdir -p $test/{bin,lib/fftw} cp -a $out/bin/* $test/bin ln -s ${fftw}/lib/libfftw*.so $test/lib/fftw Loading Loading @@ -113,23 +131,31 @@ let }; }); rf-zero = runCommand "librocfft-device-0.so.0.1" { preferLocalBuild = true; } '' cp -a ${rf}/lib/$name $out rf-zero = runCommand name-zero { preferLocalBuild = true; } '' cp -a ${rf.libzero} $out ''; rf-one = runCommand "librocfft-device-1.so.0.1" { preferLocalBuild = true; } '' cp -a ${rf}/lib/$name $out rf-one = runCommand name-one { preferLocalBuild = true; } '' cp -a ${rf.libone} $out ''; rf-two = runCommand "librocfft-device-2.so.0.1" { preferLocalBuild = true; } '' cp -a ${rf}/lib/$name $out rf-two = runCommand name-two { preferLocalBuild = true; } '' cp -a ${rf.libtwo} $out ''; rf-three = runCommand "librocfft-device-3.so.0.1" { preferLocalBuild = true; } '' cp -a ${rf}/lib/$name $out rf-three = runCommand name-three { preferLocalBuild = true; } '' cp -a ${rf.libthree} $out ''; in stdenv.mkDerivation { inherit (rf) pname version outputs src passthru meta; inherit (rf) pname version src passthru meta; outputs = [ "out" ] ++ lib.optionals buildTests [ "test" ] ++ lib.optionals buildBenchmarks [ "benchmark" ]; dontUnpack = true; dontPatch = true; Loading @@ -140,10 +166,10 @@ in stdenv.mkDerivation { runHook preInstall mkdir -p $out/lib cp -as ${rf-zero} $out/lib/${rf-zero.name} cp -as ${rf-one} $out/lib/${rf-one.name} cp -as ${rf-two} $out/lib/${rf-two.name} cp -as ${rf-three} $out/lib/${rf-three.name} ln -sf ${rf-zero} $out/lib/${name-zero} ln -sf ${rf-one} $out/lib/${name-one} ln -sf ${rf-two} $out/lib/${name-two} ln -sf ${rf-three} $out/lib/${name-three} cp -an ${rf}/* $out '' + lib.optionalString buildTests '' cp -a ${rf.test} $test Loading