summary refs log tree commit diff
path: root/pkgs/development/libraries
diff options
context:
space:
mode:
authorFrederik Rietdijk <fridh@fridh.nl>2019-09-06 23:36:57 +0200
committerFrederik Rietdijk <fridh@fridh.nl>2019-09-06 23:36:57 +0200
commit60db597e86e289ef61dcac551060f571fb366f8e (patch)
treed72dd418d8ae501096ebabd36b7c7e8524460675 /pkgs/development/libraries
parent3263254cfb3163ec5b036d135b7d516f175014da (diff)
parent4d4545185a7953165e8b8c612f7b713102290dc0 (diff)
downloadnixpkgs-60db597e86e289ef61dcac551060f571fb366f8e.tar
nixpkgs-60db597e86e289ef61dcac551060f571fb366f8e.tar.gz
nixpkgs-60db597e86e289ef61dcac551060f571fb366f8e.tar.bz2
nixpkgs-60db597e86e289ef61dcac551060f571fb366f8e.tar.lz
nixpkgs-60db597e86e289ef61dcac551060f571fb366f8e.tar.xz
nixpkgs-60db597e86e289ef61dcac551060f571fb366f8e.tar.zst
nixpkgs-60db597e86e289ef61dcac551060f571fb366f8e.zip
Merge staging-next into staging
Diffstat (limited to 'pkgs/development/libraries')
-rw-r--r--pkgs/development/libraries/libglvnd/default.nix2
-rw-r--r--pkgs/development/libraries/libomxil-bellagio/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/magma/default.nix19
-rw-r--r--pkgs/development/libraries/zeroc-ice/3.6.nix57
-rw-r--r--pkgs/development/libraries/zeroc-ice/default.nix61
5 files changed, 121 insertions, 22 deletions
diff --git a/pkgs/development/libraries/libglvnd/default.nix b/pkgs/development/libraries/libglvnd/default.nix
index 2b64d5b7220..b976c9c36b8 100644
--- a/pkgs/development/libraries/libglvnd/default.nix
+++ b/pkgs/development/libraries/libglvnd/default.nix
@@ -25,6 +25,8 @@ stdenv.mkDerivation rec {
     "-UDEFAULT_EGL_VENDOR_CONFIG_DIRS"
     # FHS paths are added so that non-NixOS applications can find vendor files.
     "-DDEFAULT_EGL_VENDOR_CONFIG_DIRS=\"${addOpenGLRunpath.driverLink}/share/glvnd/egl_vendor.d:/etc/glvnd/egl_vendor.d:/usr/share/glvnd/egl_vendor.d\""
+
+    "-Wno-error=array-bounds"
   ] ++ lib.optional stdenv.cc.isClang "-Wno-error";
 
   # Indirectly: https://bugs.freedesktop.org/show_bug.cgi?id=35268
diff --git a/pkgs/development/libraries/libomxil-bellagio/default.nix b/pkgs/development/libraries/libomxil-bellagio/default.nix
index 7c14d8102fb..4d45c6872e4 100644
--- a/pkgs/development/libraries/libomxil-bellagio/default.nix
+++ b/pkgs/development/libraries/libomxil-bellagio/default.nix
@@ -16,6 +16,10 @@ stdenv.mkDerivation rec {
 
   doCheck = false; # fails
 
+  # Fix for #40213, probably permanent, because upstream doesn't seem to be
+  # developed anymore. Alternatively, gcc7Stdenv could be used.
+  NIX_CFLAGS_COMPILE = "-Wno-error=array-bounds";
+
   meta = with stdenv.lib; {
     homepage = https://sourceforge.net/projects/omxil/;
     description = "An opensource implementation of the Khronos OpenMAX Integration Layer API to access multimedia components";
diff --git a/pkgs/development/libraries/science/math/magma/default.nix b/pkgs/development/libraries/science/math/magma/default.nix
index d036e39d01a..c428fbab588 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 00000000000..13797f927c1
--- /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 a2e60eacf98..9a69d3168c5 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 ];
   };
 }