lol
at 22.05-pre 81 lines 2.1 kB view raw
1{ lib 2, stdenv 3, fetchurl 4, boost 5, gfortran 6, lhapdf 7, ncurses 8, perl 9, python ? null 10, swig 11, yoda 12, zlib 13, withPython ? false 14}: 15 16stdenv.mkDerivation rec { 17 pname = "fastnlo_toolkit"; 18 version = "2.5.0-2826"; 19 20 src = fetchurl { 21 url = "https://fastnlo.hepforge.org/code/v25/fastnlo_toolkit-${version}.tar.gz"; 22 sha256 = "sha256-7aIMYCOkHC/17CHYiEfrxvtSJxTDivrS7BQ32cGiEy0="; 23 }; 24 25 buildInputs = [ 26 boost 27 gfortran 28 gfortran.cc.lib 29 lhapdf 30 yoda 31 ] ++ lib.optional withPython python 32 ++ lib.optional (withPython && python.isPy3k) ncurses; 33 34 propagatedBuildInputs = [ 35 zlib 36 ] ++ lib.optional withPython swig; 37 38 preConfigure = '' 39 substituteInPlace ./fastnlotoolkit/Makefile.in \ 40 --replace "-fext-numeric-literals" "" 41 42 # disable test that fails due to strict floating-point number comparison 43 echo "#!/usr/bin/env perl" > check/fnlo-tk-stattest.pl.in 44 chmod +x check/fnlo-tk-stattest.pl.in 45 ''; 46 47 configureFlags = [ 48 "--with-yoda=${yoda}" 49 ] ++ lib.optional withPython "--enable-pyext"; 50 51 enableParallelBuilding = true; 52 53 doCheck = true; 54 checkInputs = [ 55 perl 56 lhapdf.pdf_sets.CT10nlo 57 ]; 58 preCheck = '' 59 patchShebangs --build check 60 ''; 61 enableParallelChecking = false; 62 63 meta = with lib; { 64 homepage = "http://fastnlo.hepforge.org"; 65 description = "Fast pQCD calculations for hadron-induced processes"; 66 longDescription = '' 67 The fastNLO project provides computer code to create and evaluate fast 68 interpolation tables of pre-computed coefficients in perturbation theory 69 for observables in hadron-induced processes. 70 71 This allows fast theory predictions of these observables for arbitrary 72 parton distribution functions (of regular shape), renormalization or 73 factorization scale choices, and/or values of alpha_s(Mz) as e.g. needed 74 in PDF fits or in systematic studies. Very time consuming complete 75 recalculations are thus avoided. 76 ''; 77 license = licenses.gpl3Plus; 78 maintainers = with maintainers; [ veprbl ]; 79 platforms = platforms.unix; 80 }; 81}