diff options
author | Andrew Dunham <andrew@du.nham.ca> | 2020-07-12 17:35:06 -0700 |
---|---|---|
committer | Andrew Dunham <andrew@du.nham.ca> | 2020-07-16 17:59:24 -0700 |
commit | f856cb8a9ed5653a50ca1ea0d22726e8b8513ca6 (patch) | |
tree | a5954bd63ab7dd59e2b39c01b5b81d8120a18555 | |
parent | 5601d7483d2497db606bf1c9df284bd47beb5607 (diff) | |
download | nixpkgs-f856cb8a9ed5653a50ca1ea0d22726e8b8513ca6.tar nixpkgs-f856cb8a9ed5653a50ca1ea0d22726e8b8513ca6.tar.gz nixpkgs-f856cb8a9ed5653a50ca1ea0d22726e8b8513ca6.tar.bz2 nixpkgs-f856cb8a9ed5653a50ca1ea0d22726e8b8513ca6.tar.lz nixpkgs-f856cb8a9ed5653a50ca1ea0d22726e8b8513ca6.tar.xz nixpkgs-f856cb8a9ed5653a50ca1ea0d22726e8b8513ca6.tar.zst nixpkgs-f856cb8a9ed5653a50ca1ea0d22726e8b8513ca6.zip |
it++: init at 4.3.1
-rw-r--r-- | pkgs/development/libraries/science/math/itpp/default.nix | 55 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 2 |
2 files changed, 57 insertions, 0 deletions
diff --git a/pkgs/development/libraries/science/math/itpp/default.nix b/pkgs/development/libraries/science/math/itpp/default.nix new file mode 100644 index 00000000000..d7fae9ae479 --- /dev/null +++ b/pkgs/development/libraries/science/math/itpp/default.nix @@ -0,0 +1,55 @@ +{ stdenv +, fetchurl +, cmake +, gtest +, blas +, fftw +, liblapack +, gfortran +}: + +stdenv.mkDerivation rec { + pname = "it++"; + version = "4.3.1"; + + src = fetchurl { + url = "mirror://sourceforge/itpp/itpp-${version}.tar.bz2"; + sha256 = "0xxqag9wi0lg78xgw7b40rp6wxqp5grqlbs9z0ifvdfzqlhpcwah"; + }; + + nativeBuildInputs = [ cmake gfortran ]; + buildInputs = [ + fftw + liblapack + + # NOTE: OpenBLAS doesn't work here because IT++ doesn't pass aligned + # buffers, which causes segfaults in the optimized kernels :-( + blas + ]; + + cmakeFlags = [ + "-DBLAS_FOUND:BOOL=TRUE" + "-DBLAS_LIBRARIES:STRING=${blas}/lib/libblas.so" + "-DLAPACK_FOUND:BOOL=TRUE" + "-DLAPACK_LIBRARIES:STRING=${liblapack}/lib/liblapack.so" + "-DGTEST_DIR:PATH=${gtest.src}/googletest" + ]; + + enableParallelBuilding = true; + + doCheck = true; + + checkPhase = '' + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/itpp + export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH''${DYLD_LIBRARY_PATH:+:}$PWD/itpp + ./gtests/itpp_gtests + ''; + + meta = with stdenv.lib; { + description = "IT++ is a C++ library of mathematical, signal processing and communication classes and functions."; + homepage = http://itpp.sourceforge.net/; + license = licenses.gpl3; + platforms = platforms.unix; + maintainers = with maintainers; [ andrew-d ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1a38c97ab90..febc0476d7c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16961,6 +16961,8 @@ in irqbalance = callPackage ../os-specific/linux/irqbalance { }; + itpp = callPackage ../development/libraries/science/math/itpp { }; + iw = callPackage ../os-specific/linux/iw { }; iwd = callPackage ../os-specific/linux/iwd { }; |