diff options
Diffstat (limited to 'pkgs/development/libraries')
-rw-r--r-- | pkgs/development/libraries/science/math/magma/default.nix | 19 | ||||
-rw-r--r-- | pkgs/development/libraries/zeroc-ice/3.6.nix | 57 | ||||
-rw-r--r-- | pkgs/development/libraries/zeroc-ice/default.nix | 61 |
3 files changed, 115 insertions, 22 deletions
diff --git a/pkgs/development/libraries/science/math/magma/default.nix b/pkgs/development/libraries/science/math/magma/default.nix index d036e39d01ae..c428fbab588b 100644 --- a/pkgs/development/libraries/science/math/magma/default.nix +++ b/pkgs/development/libraries/science/math/magma/default.nix @@ -1,24 +1,31 @@ -{ stdenv, fetchurl, cmake, gfortran, cudatoolkit, libpthreadstubs, liblapack }: +{ stdenv, fetchurl, cmake, gfortran, cudatoolkit, libpthreadstubs, liblapack +, mklSupport ? false, mkl ? null +}: + +assert !mklSupport || mkl != null; with stdenv.lib; -let version = "2.0.2"; +let version = "2.5.0"; in stdenv.mkDerivation { pname = "magma"; inherit version; src = fetchurl { url = "https://icl.cs.utk.edu/projectsfiles/magma/downloads/magma-${version}.tar.gz"; - sha256 = "0w3z6k1npfh0d3r8kpw873f1m7lny29sz2bvvfxzk596d4h083lk"; + sha256 = "0czspk93cv1fy37zyrrc9k306q4yzfxkhy1y4lj937dx8rz5rm2g"; name = "magma-${version}.tar.gz"; }; - buildInputs = [ gfortran cudatoolkit libpthreadstubs liblapack cmake ]; + buildInputs = [ gfortran cudatoolkit libpthreadstubs cmake ] + ++ (if mklSupport then [ mkl ] else [ liblapack ]); doCheck = false; - #checkTarget = "tests"; + + MKLROOT = optionalString mklSupport "${mkl}"; enableParallelBuilding=true; + buildFlags = [ "magma" "magma_sparse" ]; # MAGMA's default CMake setup does not care about installation. So we copy files directly. installPhase = '' @@ -42,6 +49,6 @@ in stdenv.mkDerivation { license = licenses.bsd3; homepage = http://icl.cs.utk.edu/magma/index.html; platforms = platforms.unix; - maintainers = with maintainers; [ ianwookim ]; + maintainers = with maintainers; [ tbenst ]; }; } diff --git a/pkgs/development/libraries/zeroc-ice/3.6.nix b/pkgs/development/libraries/zeroc-ice/3.6.nix new file mode 100644 index 000000000000..13797f927c1c --- /dev/null +++ b/pkgs/development/libraries/zeroc-ice/3.6.nix @@ -0,0 +1,57 @@ +{ stdenv, lib, fetchFromGitHub, mcpp, bzip2, expat, openssl, db5 +, darwin, libiconv, Security +, cpp11 ? false +}: + +stdenv.mkDerivation rec { + pname = "zeroc-ice"; + version = "3.6.3"; + + src = fetchFromGitHub { + owner = "zeroc-ice"; + repo = "ice"; + rev = "v${version}"; + sha256 = "05xympbns32aalgcfcpxwfd7bvg343f16xpg6jv5s335ski3cjy2"; + }; + + buildInputs = [ mcpp bzip2 expat openssl db5 ] + ++ lib.optionals stdenv.isDarwin [ darwin.cctools libiconv Security ]; + + postUnpack = '' + sourceRoot=$sourceRoot/cpp + ''; + + prePatch = lib.optional stdenv.isDarwin '' + substituteInPlace config/Make.rules.Darwin \ + --replace xcrun "" + ''; + + preBuild = '' + makeFlagsArray+=( + "prefix=$out" + "OPTIMIZE=yes" + "USR_DIR_INSTALL=yes" + "CONFIGS=${if cpp11 then "cpp11-shared" else "shared"}" + "SKIP=slice2py" # provided by a separate package + ) + ''; + + # cannot find -lIceXML (linking bin/transformdb) + enableParallelBuilding = false; + + outputs = [ "out" "bin" "dev" ]; + + postInstall = '' + mkdir -p $bin $dev/share + mv $out/bin $bin + mv $out/share/Ice-* $dev/share/ice + rm -rf $out/share/slice + ''; + + meta = with stdenv.lib; { + homepage = http://www.zeroc.com/ice.html; + description = "The internet communications engine"; + license = licenses.gpl2; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/libraries/zeroc-ice/default.nix b/pkgs/development/libraries/zeroc-ice/default.nix index a2e60eacf989..9a69d3168c5d 100644 --- a/pkgs/development/libraries/zeroc-ice/default.nix +++ b/pkgs/development/libraries/zeroc-ice/default.nix @@ -1,41 +1,70 @@ -{ stdenv, fetchFromGitHub, mcpp, bzip2, expat, openssl, db5 +{ stdenv, lib, fetchFromGitHub, mcpp, bzip2, expat, openssl, lmdb , darwin, libiconv, Security +, cpp11 ? false }: -stdenv.mkDerivation rec { +let + zeroc_mcpp = mcpp.overrideAttrs (self: rec { + pname = "zeroc-mcpp"; + version = "2.7.2.14"; + + src = fetchFromGitHub { + owner = "zeroc-ice"; + repo = "mcpp"; + rev = "v${version}"; + sha256 = "1psryc2ql1cp91xd3f8jz84mdaqvwzkdq2pr96nwn03ds4cd88wh"; + }; + + installFlags = [ "PREFIX=$(out)" ]; + }); + +in stdenv.mkDerivation rec { pname = "zeroc-ice"; - version = "3.6.3"; + version = "3.7.2"; src = fetchFromGitHub { owner = "zeroc-ice"; repo = "ice"; rev = "v${version}"; - sha256 = "05xympbns32aalgcfcpxwfd7bvg343f16xpg6jv5s335ski3cjy2"; + sha256 = "0m9lh79dfpcwcp2jhmj0wqdcsw3rl633x2hzfw9n2i34jjv64fvg"; }; - patches = [ ./makefile.patch ]; + buildInputs = [ zeroc_mcpp bzip2 expat openssl lmdb ] + ++ lib.optionals stdenv.isDarwin [ darwin.cctools libiconv Security ]; - buildInputs = [ mcpp bzip2 expat openssl db5 ] - ++ stdenv.lib.optionals stdenv.isDarwin [ darwin.cctools libiconv Security ]; - - postUnpack = '' - sourceRoot=$sourceRoot/cpp + prePatch = lib.optional stdenv.isDarwin '' + substituteInPlace Make.rules.Darwin \ + --replace xcrun "" ''; - prePatch = '' - substituteInPlace config/Make.rules.Darwin \ - --replace xcrun "" + preBuild = '' + makeFlagsArray+=( + "prefix=$out" + "OPTIMIZE=yes" + "USR_DIR_INSTALL=yes" + "LANGUAGES=cpp" + "CONFIGS=${if cpp11 then "cpp11-shared" else "shared"}" + "SKIP=slice2py" # provided by a separate package + ) ''; - makeFlags = [ "prefix=$(out)" "OPTIMIZE=yes" ]; + buildFlags = [ "srcs" ]; # no tests; they require network + + enableParallelBuilding = true; - # cannot find -lIceXML (linking bin/transformdb) - #enableParallelBuilding = true; + outputs = [ "out" "bin" "dev" ]; + + postInstall = '' + mkdir -p $bin $dev/share + mv $out/bin $bin + mv $out/share/ice $dev/share + ''; meta = with stdenv.lib; { homepage = http://www.zeroc.com/ice.html; description = "The internet communications engine"; license = licenses.gpl2; platforms = platforms.unix; + maintainers = with maintainers; [ abbradar ]; }; } |