about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2019-08-14 00:02:54 +0000
committerAlyssa Ross <hi@alyssa.is>2019-08-14 00:02:54 +0000
commitf9abd30e11337cf07034f2cc8ad1691aa4a69386 (patch)
treec3b5c34b1c533f5c231dc6707e96795fb3a9a138 /nixpkgs/pkgs/development/libraries
parent44e04ea2730f8e3b863b81b0056babe233c244f6 (diff)
parent1036dc664169b32613ec11b58cc1740c7511a340 (diff)
downloadnixlib-f9abd30e11337cf07034f2cc8ad1691aa4a69386.tar
nixlib-f9abd30e11337cf07034f2cc8ad1691aa4a69386.tar.gz
nixlib-f9abd30e11337cf07034f2cc8ad1691aa4a69386.tar.bz2
nixlib-f9abd30e11337cf07034f2cc8ad1691aa4a69386.tar.lz
nixlib-f9abd30e11337cf07034f2cc8ad1691aa4a69386.tar.xz
nixlib-f9abd30e11337cf07034f2cc8ad1691aa4a69386.tar.zst
nixlib-f9abd30e11337cf07034f2cc8ad1691aa4a69386.zip
Merge commit '1036dc664169b32613ec11b58cc1740c7511a340'
Diffstat (limited to 'nixpkgs/pkgs/development/libraries')
-rw-r--r--nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix27
-rw-r--r--nixpkgs/pkgs/development/libraries/elf-header/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/expat/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/freetds/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/glfw/3.x.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/glib-networking/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gpgme/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/gtk+/3.x.nix5
-rw-r--r--nixpkgs/pkgs/development/libraries/hwloc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/ilmbase/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/jsoncpp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/leatherman/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libdrm/default.nix15
-rw-r--r--nixpkgs/pkgs/development/libraries/libelf/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/libelf/preprocessor-warnings.patch264
-rw-r--r--nixpkgs/pkgs/development/libraries/libinput/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libnxml/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/libow/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/libshout/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libssh2/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/libuv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/liquid-dsp/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/mesa/default.nix295
-rw-r--r--nixpkgs/pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch59
-rw-r--r--nixpkgs/pkgs/development/libraries/mesa/opencl-install-dir.patch12
-rw-r--r--nixpkgs/pkgs/development/libraries/mesa/stubs.nix75
-rw-r--r--nixpkgs/pkgs/development/libraries/mesa/symlink-drivers.patch112
-rw-r--r--nixpkgs/pkgs/development/libraries/openexr/default.nix2
-rw-r--r--nixpkgs/pkgs/development/libraries/openmpi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/packr/default.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/protobuf/3.4.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/protobuf/3.5.nix6
-rw-r--r--nixpkgs/pkgs/development/libraries/protobuf/generic-v3.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/fenics/default.nix8
-rw-r--r--nixpkgs/pkgs/development/libraries/speexdsp/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/spice-gtk/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/spice/default.nix1
-rw-r--r--nixpkgs/pkgs/development/libraries/zlib/default.nix2
38 files changed, 561 insertions, 404 deletions
diff --git a/nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix b/nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix
new file mode 100644
index 000000000000..cd16dea56b18
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/cpp-utilities/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchFromGitHub, cmake, cppunit }:
+
+stdenv.mkDerivation rec {
+  pname = "cpp-utilities";
+  version = "4.17.1";
+
+  src = fetchFromGitHub {
+    owner = "Martchus";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "12088cwg3jbqipmbn4843w1cgxi1q6vwx47gy042rkfvbk6azhxl";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  checkInputs = [ cppunit ];
+  # Otherwise, tests fail since the resulting shared object libc++utilities.so is only available in PWD of the make files
+  checkFlagsArray = [ "LD_LIBRARY_PATH=$(PWD)" ];
+  doCheck = true;
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/Martchus/cpp-utilities";
+    description = "Common C++ classes and routines used by @Martchus' applications featuring argument parser, IO and conversion utilities";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ doronbehar ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/elf-header/default.nix b/nixpkgs/pkgs/development/libraries/elf-header/default.nix
index 47b39eeb7e97..c1764e83c303 100644
--- a/nixpkgs/pkgs/development/libraries/elf-header/default.nix
+++ b/nixpkgs/pkgs/development/libraries/elf-header/default.nix
@@ -17,7 +17,7 @@ stdenvNoCC.mkDerivation {
 
   src = null;
 
-  unpackPhase = "true";
+  dontUnpack = true;
 
   dontBuild = true;
 
diff --git a/nixpkgs/pkgs/development/libraries/expat/default.nix b/nixpkgs/pkgs/development/libraries/expat/default.nix
index 7e4d46c012dd..ef2574019459 100644
--- a/nixpkgs/pkgs/development/libraries/expat/default.nix
+++ b/nixpkgs/pkgs/development/libraries/expat/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "expat-2.2.6";
+  name = "expat-2.2.7";
 
   src = fetchurl {
     url = "mirror://sourceforge/expat/${name}.tar.bz2";
-    sha256 = "1wl1x93b5w457ddsdgj0lh7yjq4q6l7wfbgwhagkc8fm2qkkrd0p";
+    sha256 = "067cfhqwiswm4zynw7xaxl59mrrimaiyjhnn8byxma1i98pi1jfb";
   };
 
   outputs = [ "out" "dev" ]; # TODO: fix referrers
diff --git a/nixpkgs/pkgs/development/libraries/freetds/default.nix b/nixpkgs/pkgs/development/libraries/freetds/default.nix
index d8bb9e8e85b0..ee63ce2f2f9e 100644
--- a/nixpkgs/pkgs/development/libraries/freetds/default.nix
+++ b/nixpkgs/pkgs/development/libraries/freetds/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   version = "1.1.6";
 
   src = fetchurl {
-    url    = "http://www.freetds.org/files/stable/${name}.tar.bz2";
+    url    = "https://www.freetds.org/files/stable/${name}.tar.bz2";
     sha256 = "18rry59npbhxpzjb0l3ib7zlnlzj43srb5adcm65wyklklsh0gn2";
   };
 
diff --git a/nixpkgs/pkgs/development/libraries/glfw/3.x.nix b/nixpkgs/pkgs/development/libraries/glfw/3.x.nix
index 668fe436e915..13bd4a456c97 100644
--- a/nixpkgs/pkgs/development/libraries/glfw/3.x.nix
+++ b/nixpkgs/pkgs/development/libraries/glfw/3.x.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Multi-platform library for creating OpenGL contexts and managing input, including keyboard, mouse, joystick and time";
-    homepage = http://www.glfw.org/;
+    homepage = https://www.glfw.org/;
     license = licenses.zlib;
     maintainers = with maintainers; [ marcweber ];
     platforms = platforms.unix;
diff --git a/nixpkgs/pkgs/development/libraries/glib-networking/default.nix b/nixpkgs/pkgs/development/libraries/glib-networking/default.nix
index a51183e4e11a..4f853e9821ff 100644
--- a/nixpkgs/pkgs/development/libraries/glib-networking/default.nix
+++ b/nixpkgs/pkgs/development/libraries/glib-networking/default.nix
@@ -3,14 +3,14 @@
 
 let
   pname = "glib-networking";
-  version = "2.60.2";
+  version = "2.60.3";
 in
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "0cl74q7hvq4xqqc88vlzmfw1sh5n9hdh1yvn2v1vg9am1z8z68n0";
+    sha256 = "1mfw44qpmwvz6yzj8c6spx6z357wrmkk15byrkc5byagd82860fm";
   };
 
   outputs = [ "out" "dev" ]; # to deal with propagatedBuildInputs
diff --git a/nixpkgs/pkgs/development/libraries/gpgme/default.nix b/nixpkgs/pkgs/development/libraries/gpgme/default.nix
index fc7634128dc0..c462f2e685a2 100644
--- a/nixpkgs/pkgs/development/libraries/gpgme/default.nix
+++ b/nixpkgs/pkgs/development/libraries/gpgme/default.nix
@@ -13,11 +13,11 @@ in
 
 stdenv.mkDerivation rec {
   name = "gpgme-${version}";
-  version = "1.13.0";
+  version = "1.13.1";
 
   src = fetchurl {
     url = "mirror://gnupg/gpgme/${name}.tar.bz2";
-    sha256 = "0c6676g0yhfsmy32i1dgwh5cx0ja8vhcqf4k08zad177m53kxcnl";
+    sha256 = "0imyjfryvvjdbai454p70zcr95m94j9xnzywrlilqdw2fqi0pqy4";
   };
 
   outputs = [ "out" "dev" "info" ];
diff --git a/nixpkgs/pkgs/development/libraries/gtk+/3.x.nix b/nixpkgs/pkgs/development/libraries/gtk+/3.x.nix
index 21f1d4c39990..378f3904d5d1 100644
--- a/nixpkgs/pkgs/development/libraries/gtk+/3.x.nix
+++ b/nixpkgs/pkgs/development/libraries/gtk+/3.x.nix
@@ -53,8 +53,9 @@ stdenv.mkDerivation rec {
     ++ optional cupsSupport cups;
   #TODO: colord?
 
-  # demos fail to install, no idea where's the problem
-  preConfigure = "sed '/^SRC_SUBDIRS /s/demos//' -i Makefile.in";
+  ## (2019-06-12) Demos seem to install fine now. Keeping this around in case it fails again.
+  ## (2014-03-27) demos fail to install, no idea where's the problem
+  #preConfigure = "sed '/^SRC_SUBDIRS /s/demos//' -i Makefile.in";
 
   enableParallelBuilding = true;
 
diff --git a/nixpkgs/pkgs/development/libraries/hwloc/default.nix b/nixpkgs/pkgs/development/libraries/hwloc/default.nix
index 5866d6b8fedb..0f4ce4e6b97c 100644
--- a/nixpkgs/pkgs/development/libraries/hwloc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/hwloc/default.nix
@@ -15,7 +15,7 @@ in stdenv.mkDerivation {
   inherit name;
 
   src = fetchurl {
-    url = "http://www.open-mpi.org/software/hwloc/v${versmm}/downloads/${name}.tar.bz2";
+    url = "https://www.open-mpi.org/software/hwloc/v${versmm}/downloads/${name}.tar.bz2";
     sha256 = "1aa7s208gdijk19vvzzahyl8pglk1va3yd6kdbpfa5pz5ms0ag35";
   };
 
@@ -78,7 +78,7 @@ in stdenv.mkDerivation {
        more.
     '';
 
-    # http://www.open-mpi.org/projects/hwloc/license.php
+    # https://www.open-mpi.org/projects/hwloc/license.php
     license = licenses.bsd3;
     homepage = https://www.open-mpi.org/projects/hwloc/;
     maintainers = with maintainers; [ fpletz markuskowa ];
diff --git a/nixpkgs/pkgs/development/libraries/ilmbase/default.nix b/nixpkgs/pkgs/development/libraries/ilmbase/default.nix
index 42cf77802625..2d22788e1ecd 100644
--- a/nixpkgs/pkgs/development/libraries/ilmbase/default.nix
+++ b/nixpkgs/pkgs/development/libraries/ilmbase/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
   doCheck = stdenv.isx86_64;
 
   meta = with stdenv.lib; {
-    homepage = http://www.openexr.com/;
+    homepage = https://www.openexr.com/;
     license = licenses.bsd3;
     platforms = platforms.all;
   };
diff --git a/nixpkgs/pkgs/development/libraries/jsoncpp/default.nix b/nixpkgs/pkgs/development/libraries/jsoncpp/default.nix
index b543d47a050d..fa2b45ae948e 100644
--- a/nixpkgs/pkgs/development/libraries/jsoncpp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/jsoncpp/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "jsoncpp";
-  version = "1.8.4";
+  version = "1.9.0";
 
   src = fetchFromGitHub {
     owner = "open-source-parsers";
     repo = "jsoncpp";
     rev = version;
-    sha256 = "1z0gj7a6jypkijmpknis04qybs1hkd04d1arr3gy89lnxmp6qzlm";
+    sha256 = "10wnwlq92gp32f5p55kjcc12jfsl0yq6f2y4abb0si6wym12krw9";
   };
 
   /* During darwin bootstrap, we have a cp that doesn't understand the
diff --git a/nixpkgs/pkgs/development/libraries/leatherman/default.nix b/nixpkgs/pkgs/development/libraries/leatherman/default.nix
index 9ab68e578fbf..95924050ff32 100644
--- a/nixpkgs/pkgs/development/libraries/leatherman/default.nix
+++ b/nixpkgs/pkgs/development/libraries/leatherman/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   name = "leatherman-${version}";
-  version = "1.6.0";
+  version = "1.7.0";
 
   src = fetchFromGitHub {
-    sha256 = "1dy1iisc0h1l28ff72pq7vxa4mj5zpq2jflpdghhx8yqksxhii4k";
+    sha256 = "0n6vcbc43hdaxg5inl2b43bsksdkj3k0qxis6gkkclipivp8pz0p";
     rev = version;
     repo = "leatherman";
     owner = "puppetlabs";
diff --git a/nixpkgs/pkgs/development/libraries/libdrm/default.nix b/nixpkgs/pkgs/development/libraries/libdrm/default.nix
index 7415aa754e7d..4ed3ad356a9f 100644
--- a/nixpkgs/pkgs/development/libraries/libdrm/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libdrm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, valgrind-light }:
+{ stdenv, fetchurl, pkgconfig, meson, ninja, libpthreadstubs, libpciaccess, valgrind-light }:
 
 stdenv.mkDerivation rec {
   name = "libdrm-2.4.98";
@@ -10,9 +10,8 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" "bin" ];
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkgconfig meson ninja ];
   buildInputs = [ libpthreadstubs libpciaccess valgrind-light ];
-    # libdrm as of 2.4.70 does not actually do anything with udev.
 
   postPatch = ''
     for a in */*-symbol-check ; do
@@ -20,13 +19,15 @@ stdenv.mkDerivation rec {
     done
   '';
 
-  configureFlags = [ "--enable-install-test-programs" ]
+  mesonFlags =
+    [ "-Dinstall-test-programs=true" ]
     ++ stdenv.lib.optionals (stdenv.isAarch32 || stdenv.isAarch64)
-      [ "--enable-tegra-experimental-api" "--enable-etnaviv-experimental-api" ]
-    ++ stdenv.lib.optional stdenv.isDarwin "-C"
-    ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "--disable-intel"
+      [ "-Dtegra=true" "-Detnaviv=true" ]
+    ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "-Dintel=false"
     ;
 
+  enableParallelBuilding = true;
+
   meta = {
     homepage = https://dri.freedesktop.org/libdrm/;
     description = "Library for accessing the kernel's Direct Rendering Manager";
diff --git a/nixpkgs/pkgs/development/libraries/libelf/default.nix b/nixpkgs/pkgs/development/libraries/libelf/default.nix
index 55a01c75dcf2..5105bf7e73f0 100644
--- a/nixpkgs/pkgs/development/libraries/libelf/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libelf/default.nix
@@ -12,6 +12,9 @@ stdenv.mkDerivation rec {
 
   patches = [
     ./dont-hardcode-ar.patch
+    # Fix warnings from preprocessor instructions.
+    # https://github.com/NixOS/nixpkgs/issues/59929
+    ./preprocessor-warnings.patch
   ];
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/development/libraries/libelf/preprocessor-warnings.patch b/nixpkgs/pkgs/development/libraries/libelf/preprocessor-warnings.patch
new file mode 100644
index 000000000000..e04c8ee202a0
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libelf/preprocessor-warnings.patch
@@ -0,0 +1,264 @@
+diff --git a/lib/elf_repl.h b/lib/elf_repl.h
+index c5cf90f..7e1e8df 100644
+--- a/lib/elf_repl.h
++++ b/lib/elf_repl.h
+@@ -45,7 +45,7 @@ typedef __libelf_u32_t		Elf32_Word;
+ #define ELF32_FSZ_SWORD		4
+ #define ELF32_FSZ_WORD		4
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ 
+ typedef __libelf_u64_t		Elf64_Addr;
+ typedef __libelf_u16_t		Elf64_Half;
+@@ -93,7 +93,7 @@ typedef struct {
+     Elf32_Half		e_shstrndx;
+ } Elf32_Ehdr;
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ typedef struct {
+     unsigned char	e_ident[EI_NIDENT];
+     Elf64_Half		e_type;
+@@ -307,7 +307,7 @@ typedef struct {
+     Elf32_Word		sh_entsize;
+ } Elf32_Shdr;
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ typedef struct {
+     Elf64_Word		sh_name;
+     Elf64_Word		sh_type;
+@@ -434,7 +434,7 @@ typedef struct {
+     Elf32_Half		st_shndx;
+ } Elf32_Sym;
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ typedef struct {
+     Elf64_Word		st_name;
+     unsigned char	st_info;
+@@ -457,7 +457,7 @@ typedef struct {
+ #define ELF32_ST_TYPE(i)	((i)&0xf)
+ #define ELF32_ST_INFO(b,t)	(((b)<<4)+((t)&0xf))
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ #define ELF64_ST_BIND(i)	((i)>>4)
+ #define ELF64_ST_TYPE(i)	((i)&0xf)
+ #define ELF64_ST_INFO(b,t)	(((b)<<4)+((t)&0xf))
+@@ -495,7 +495,7 @@ typedef struct {
+  * Macros for manipulating st_other
+  */
+ #define ELF32_ST_VISIBILITY(o)	((o)&0x3)
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ #define ELF64_ST_VISIBILITY(o)	((o)&0x3)
+ #endif /* __LIBELF64 */
+ 
+@@ -521,7 +521,7 @@ typedef struct {
+     Elf32_Sword		r_addend;
+ } Elf32_Rela;
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ typedef struct {
+     Elf64_Addr		r_offset;
+     Elf64_Xword		r_info;
+@@ -541,7 +541,7 @@ typedef struct {
+ #define ELF32_R_TYPE(i)		((unsigned char)(i))
+ #define ELF32_R_INFO(s,t)	(((s)<<8)+(unsigned char)(t))
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ #define ELF64_R_SYM(i)		((Elf64_Xword)(i)>>32)
+ #define ELF64_R_TYPE(i)		((i)&0xffffffffL)
+ #define ELF64_R_INFO(s,t)	(((Elf64_Xword)(s)<<32)+((t)&0xffffffffL))
+@@ -556,7 +556,7 @@ typedef struct {
+     Elf32_Word		n_type;		/* descriptor type */
+ } Elf32_Nhdr;
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ /* Solaris and GNU use this layout.  Be compatible. */
+ /* XXX: Latest ELF specs say it's 64-bit!!! */
+ typedef struct {
+@@ -587,7 +587,7 @@ typedef struct {
+     Elf32_Word		p_align;
+ } Elf32_Phdr;
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ typedef struct {
+     Elf64_Word		p_type;
+     Elf64_Word		p_flags;
+@@ -654,7 +654,7 @@ typedef struct {
+     } d_un;
+ } Elf32_Dyn;
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ typedef struct {
+     Elf64_Sxword	d_tag;
+     union {
+@@ -798,7 +798,7 @@ typedef struct {
+     Elf32_Half		si_flags;
+ } Elf32_Syminfo;
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ typedef struct {
+     Elf64_Half		si_boundto;
+     Elf64_Half		si_flags;
+@@ -863,7 +863,7 @@ typedef struct {
+ 
+ typedef Elf32_Half	Elf32_Versym;
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ 
+ typedef struct {
+     Elf64_Half		vd_version;
+@@ -933,7 +933,7 @@ typedef Elf64_Half	Elf64_Versym;
+ /*
+  * Move section
+  */
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ 
+ typedef struct {
+     Elf32_Lword		m_value;
+@@ -973,7 +973,7 @@ typedef struct {
+     } c_un;
+ } Elf32_Cap;
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ 
+ typedef struct {
+     Elf64_Xword     	c_tag;
+diff --git a/lib/gelf.h b/lib/gelf.h
+index 5af0558..98a759c 100644
+--- a/lib/gelf.h
++++ b/lib/gelf.h
+@@ -22,15 +22,15 @@
+ #ifndef _GELF_H
+ #define _GELF_H
+ 
+-#if __LIBELF_INTERNAL__
++#if defined(__LIBELF_INTERNAL__)
+ #include <libelf.h>
+ #else /* __LIBELF_INTERNAL__ */
+ #include <libelf/libelf.h>
+ #endif /* __LIBELF_INTERNAL__ */
+ 
+-#if __LIBELF_NEED_LINK_H
++#if defined(__LIBELF_NEED_LINK_H)
+ #include <link.h>
+-#elif __LIBELF_NEED_SYS_LINK_H
++#elif defined(__LIBELF_NEED_SYS_LINK_H)
+ #include <sys/link.h>
+ #endif /* __LIBELF_NEED_LINK_H */
+ 
+@@ -46,7 +46,7 @@ extern "C" {
+ # endif /* __STDC__ || defined(__cplusplus) */
+ #endif /* __P */
+ 
+-#if !__LIBELF64
++#if !defined(__LIBELF64)
+ 
+ #error "GElf is not supported on this system."
+ 
+@@ -71,7 +71,7 @@ typedef Elf64_Sym	GElf_Sym;
+ /*
+  * Symbol versioning
+  */
+-#if __LIBELF_SYMBOL_VERSIONS
++#if defined(__LIBELF_SYMBOL_VERSIONS)
+ typedef Elf64_Verdef	GElf_Verdef;
+ typedef Elf64_Verneed	GElf_Verneed;
+ typedef Elf64_Verdaux	GElf_Verdaux;
+diff --git a/lib/libelf.h b/lib/libelf.h
+index 3ebd0f3..788482d 100644
+--- a/lib/libelf.h
++++ b/lib/libelf.h
+@@ -25,7 +25,7 @@
+ #include <stddef.h>	/* for size_t */
+ #include <sys/types.h>
+ 
+-#if __LIBELF_INTERNAL__
++#if defined(__LIBELF_INTERNAL__)
+ #include <sys_elf.h>
+ #else /* __LIBELF_INTERNAL__ */
+ #include <libelf/sys_elf.h>
+@@ -224,7 +224,7 @@ extern Elf_Data *elf32_xlatetom __P((Elf_Data *__dst, const Elf_Data *__src,
+  */
+ extern long elf32_checksum __P((Elf *__elf));
+ 
+-#if __LIBELF64
++#if defined(__LIBELF64)
+ /*
+  * 64-bit ELF functions
+  * Not available on all platforms
+diff --git a/lib/sys_elf.h.in b/lib/sys_elf.h.in
+index b71a20d..722051b 100644
+--- a/lib/sys_elf.h.in
++++ b/lib/sys_elf.h.in
+@@ -68,7 +68,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+ #ifdef __LIBELF_HEADER_ELF_H
+ # include __LIBELF_HEADER_ELF_H
+ #else /* __LIBELF_HEADER_ELF_H */
+-# if __LIBELF_INTERNAL__
++# if defined(__LIBELF_INTERNAL__)
+ #  include <elf_repl.h>
+ # else /* __LIBELF_INTERNAL__ */
+ #  include <libelf/elf_repl.h>
+@@ -92,7 +92,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+ #  define STN_UNDEF	0
+ # endif /* STN_UNDEF */
+ 
+-# if __LIBELF64
++# if defined(__LIBELF64)
+ 
+ #  ifndef ELF64_FSZ_ADDR
+ #   define ELF64_FSZ_ADDR	8
+@@ -116,7 +116,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+ #   define ELF64_R_INFO(s,t)	(((Elf64_Xword)(s)<<32)+((t)&0xffffffffL))
+ #  endif /* ELF64_R_SYM */
+ 
+-#  if __LIBELF64_LINUX
++#  if defined(__LIBELF64_LINUX)
+ typedef __libelf_u64_t	Elf64_Addr;
+ typedef __libelf_u16_t	Elf64_Half;
+ typedef __libelf_u64_t	Elf64_Off;
+diff --git a/lib/sys_elf.h.w32 b/lib/sys_elf.h.w32
+index 0f93c55..7360104 100644
+--- a/lib/sys_elf.h.w32
++++ b/lib/sys_elf.h.w32
+@@ -68,7 +68,7 @@
+ #ifdef __LIBELF_HEADER_ELF_H

+ # include __LIBELF_HEADER_ELF_H

+ #else /* __LIBELF_HEADER_ELF_H */

+-# if __LIBELF_INTERNAL__

++# if defined(__LIBELF_INTERNAL__)

+ #  include <elf_repl.h>

+ # else /* __LIBELF_INTERNAL__ */

+ #  include <libelf/elf_repl.h>

+@@ -92,7 +92,7 @@
+ #  define STN_UNDEF	0

+ # endif /* STN_UNDEF */

+ 

+-# if __LIBELF64

++# if defined(__LIBELF64)

+ 

+ #  ifndef ELF64_FSZ_ADDR

+ #   define ELF64_FSZ_ADDR	8

+@@ -116,7 +116,7 @@
+ #   define ELF64_R_INFO(s,t)	(((Elf64_Xword)(s)<<32)+((t)&0xffffffffL))

+ #  endif /* ELF64_R_SYM */

+ 

+-#  if __LIBELF64_LINUX

++#  if defined(__LIBELF64_LINUX)

+ typedef __libelf_u64_t	Elf64_Addr;

+ typedef __libelf_u16_t	Elf64_Half;

+ typedef __libelf_u64_t	Elf64_Off;

diff --git a/nixpkgs/pkgs/development/libraries/libinput/default.nix b/nixpkgs/pkgs/development/libraries/libinput/default.nix
index 651c43297082..0c759835183b 100644
--- a/nixpkgs/pkgs/development/libraries/libinput/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libinput/default.nix
@@ -27,11 +27,11 @@ in
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "libinput-${version}";
-  version = "1.13.2";
+  version = "1.13.4";
 
   src = fetchurl {
     url = "https://www.freedesktop.org/software/libinput/${name}.tar.xz";
-    sha256 = "0vbapc90m49n0z8w8w4v0qf1iiwaixw9h79jfmps9pj8hdls17qx";
+    sha256 = "07a0w7rak7rvnh6g4j0akwjxwinxfszc1xi9mrx12fv82k3mgsyk";
   };
 
   outputs = [ "bin" "out" "dev" ];
diff --git a/nixpkgs/pkgs/development/libraries/libnxml/default.nix b/nixpkgs/pkgs/development/libraries/libnxml/default.nix
index 8d97a13b0a08..0a6c58c8a015 100644
--- a/nixpkgs/pkgs/development/libraries/libnxml/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libnxml/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
   buildInputs = [ curl ];
 
   meta = {
-    homepage = http://www.autistici.org/bakunin/libnxml/;
+    homepage = https://www.autistici.org/bakunin/libnxml/;
     description = "C library for parsing, writing and creating XML 1.0 and 1.1 files or streams";
     license = stdenv.lib.licenses.lgpl2;
 
diff --git a/nixpkgs/pkgs/development/libraries/libow/default.nix b/nixpkgs/pkgs/development/libraries/libow/default.nix
index 66cb0762c25a..7797061a71aa 100644
--- a/nixpkgs/pkgs/development/libraries/libow/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libow/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "1-Wire File System full library";
-    homepage = http://owfs.org/;
+    homepage = https://owfs.org/;
     license = licenses.gpl2;
     maintainers = with maintainers; [ disserman ];
     platforms = platforms.unix;
diff --git a/nixpkgs/pkgs/development/libraries/libshout/default.nix b/nixpkgs/pkgs/development/libraries/libshout/default.nix
index 3753a070c639..849c93962f88 100644
--- a/nixpkgs/pkgs/development/libraries/libshout/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libshout/default.nix
@@ -4,11 +4,11 @@
 # need pkgconfig so that libshout installs ${out}/lib/pkgconfig/shout.pc
 
 stdenv.mkDerivation rec {
-  name = "libshout-2.4.2";
+  name = "libshout-2.4.3";
 
   src = fetchurl {
     url = "http://downloads.xiph.org/releases/libshout/${name}.tar.gz";
-    sha256 = "0qgwarqp2p6jy3zadds6dzj8z1jfb2mbwc3lsdlidf527h0a86ym";
+    sha256 = "1zhdshas539cs8fsz8022ljxnnncr5lafhfd1dqr1gs125fzb2hd";
   };
 
   outputs = [ "out" "dev" "doc" ];
diff --git a/nixpkgs/pkgs/development/libraries/libssh2/default.nix b/nixpkgs/pkgs/development/libraries/libssh2/default.nix
index 483a56dcdce6..d4205981499c 100644
--- a/nixpkgs/pkgs/development/libraries/libssh2/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libssh2/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libssh2";
-  version = "1.8.2";
+  version = "1.9.0";
 
   src = fetchurl {
     url = "${meta.homepage}/download/${pname}-${version}.tar.gz";
-    sha256 = "0rqd37pc80nm2pz4sa2m9pfc48axys7jwq1l7z0vii5nyvchg0q8";
+    sha256 = "1zfsz9nldakfz61d2j70pk29zlmj7w2vv46s9l3x2prhcgaqpyym";
   };
 
   outputs = [ "out" "dev" "devdoc" ];
diff --git a/nixpkgs/pkgs/development/libraries/libuv/default.nix b/nixpkgs/pkgs/development/libraries/libuv/default.nix
index f5026da4c3b9..ade3f5796d51 100644
--- a/nixpkgs/pkgs/development/libraries/libuv/default.nix
+++ b/nixpkgs/pkgs/development/libraries/libuv/default.nix
@@ -1,14 +1,14 @@
 { stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkgconfig, ApplicationServices, CoreServices }:
 
 stdenv.mkDerivation rec {
-  version = "1.29.1";
+  version = "1.30.0";
   pname = "libuv";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "0scnircr6khgh7l3bw9zyfzdgx2c11mpfhd9d8qlw47arrvqg7l8";
+    sha256 = "0j26nh799962l1gn3v3sw1x6fnia2dx5irhl33nc77gy2gzayv07";
   };
 
   postPatch = let
diff --git a/nixpkgs/pkgs/development/libraries/liquid-dsp/default.nix b/nixpkgs/pkgs/development/libraries/liquid-dsp/default.nix
index 391606d59e68..99ea6343d70f 100644
--- a/nixpkgs/pkgs/development/libraries/liquid-dsp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/liquid-dsp/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook ];
 
   meta = {
-    homepage = http://liquidsdr.org/;
+    homepage = https://liquidsdr.org/;
     description = "Digital signal processing library for software-defined radios";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.unix;
diff --git a/nixpkgs/pkgs/development/libraries/mesa/default.nix b/nixpkgs/pkgs/development/libraries/mesa/default.nix
index a35bdb5764bb..2c5e4a8e034e 100644
--- a/nixpkgs/pkgs/development/libraries/mesa/default.nix
+++ b/nixpkgs/pkgs/development/libraries/mesa/default.nix
@@ -1,13 +1,13 @@
-{ stdenv, fetchurl, lib
-, pkgconfig, intltool, autoreconfHook
-, file, expat, libdrm, xorg, wayland, wayland-protocols, openssl
+{ stdenv, lib, fetchurl, fetchpatch
+, pkgconfig, intltool, ninja, meson
+, file, flex, bison, expat, libdrm, xorg, wayland, wayland-protocols, openssl
 , llvmPackages, libffi, libomxil-bellagio, libva-minimal
-, libelf, libvdpau, python2, python2Packages
+, libelf, libvdpau, python3Packages
 , libglvnd
 , enableRadv ? true
-, galliumDrivers ? null
-, driDrivers ? null
-, vulkanDrivers ? null
+, galliumDrivers ? ["auto"]
+, driDrivers ? ["auto"]
+, vulkanDrivers ? ["auto"]
 , eglPlatforms ? [ "x11" ] ++ lib.optionals stdenv.isLinux [ "wayland" "drm" ]
 , OpenGL, Xplugin
 , withValgrind ? stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch32, valgrind-light
@@ -27,49 +27,13 @@
 with stdenv.lib;
 
 let
-  # platforms that have PCIe slots and thus can use most non-integrated GPUs
-  pciePlatform = !stdenv.hostPlatform.isAarch32 && !stdenv.hostPlatform.isAarch64;
-  defaultGalliumDrivers = optionals (elem "drm" eglPlatforms) ([ "virgl" ]
-    ++ lib.optionals pciePlatform [ "r300" "r600" "radeonsi" ]
-    ++ lib.optionals (pciePlatform || stdenv.hostPlatform.isAarch32 || stdenv.hostPlatform.isAarch64) [ "nouveau" ]
-    ++ lib.optionals stdenv.hostPlatform.isx86 [ "i915" "svga" ]
-    ++ lib.optionals (stdenv.hostPlatform.isAarch32 || stdenv.hostPlatform.isAarch64) [ "vc4" ]
-    ++ lib.optionals stdenv.hostPlatform.isAarch64 [ "freedreno" "etnaviv" "imx" ]
-  );
-  defaultDriDrivers = optionals (elem "drm" eglPlatforms) ([ ]
-    ++ lib.optionals pciePlatform [ "radeon" "r200" ]
-    ++ lib.optionals (pciePlatform || stdenv.hostPlatform.isAarch32 || stdenv.hostPlatform.isAarch64) [ "nouveau" ]
-    ++ lib.optionals stdenv.hostPlatform.isx86 [ "i915" "i965" ]);
-  defaultVulkanDrivers = optionals stdenv.hostPlatform.isLinux ([ ]
-    ++ lib.optional stdenv.hostPlatform.isx86 "intel"
-    ++ lib.optional enableRadv "radeon");
-in
-
-let gallium_ = galliumDrivers; dri_ = driDrivers; vulkan_ = vulkanDrivers; in
-
-let
-  galliumDrivers =
-    (if gallium_ == null
-          then defaultGalliumDrivers
-          else gallium_)
-    ++ lib.optional stdenv.isLinux "swrast";
-  driDrivers =
-    (if dri_ == null
-      then optionals (elem "drm" eglPlatforms) defaultDriDrivers
-      else dri_) ++ lib.optional stdenv.isLinux "swrast";
-  vulkanDrivers =
-    if vulkan_ == null
-    then defaultVulkanDrivers
-    else vulkan_;
-in
-
-let
-  version = "18.3.4";
+  version = "19.1.1";
   branch  = head (splitString "." version);
 in
 
-let self = stdenv.mkDerivation {
-  name = "mesa-${version}";
+stdenv.mkDerivation rec {
+  pname = "mesa";
+  inherit version;
 
   src =  fetchurl {
     urls = [
@@ -78,7 +42,7 @@ let self = stdenv.mkDerivation {
       "ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz"
       "https://mesa.freedesktop.org/archive/mesa-${version}.tar.xz"
     ];
-    sha256 = "01xv03ah4l5lcfx015n3fg1620dh4nbbv6gmhh6zhdsx6sj4sc9j";
+    sha256 = "10amy5sdmpjbskr3xazgk0jyli8xpgi0y1nsmjr76hx8nhb4n4bj";
   };
 
   prePatch = "patchShebangs .";
@@ -87,60 +51,58 @@ let self = stdenv.mkDerivation {
   #  revive ./dricore-gallium.patch when it gets ported (from Ubuntu), as it saved
   #  ~35 MB in $drivers; watch https://launchpad.net/ubuntu/+source/mesa/+changelog
   patches = [
-    ./symlink-drivers.patch
     ./missing-includes.patch # dev_t needs sys/stat.h, time_t needs time.h, etc.-- fixes build w/musl
+    ./opencl-install-dir.patch
     ./disk_cache-include-dri-driver-path-in-cache-key.patch
-  ];
+  ] # do not prefix user provided dri-drivers-path
+    ++ lib.optional (lib.versionOlder version "19.0.0") (fetchpatch {
+      url = "https://gitlab.freedesktop.org/mesa/mesa/commit/f6556ec7d126b31da37c08d7cb657250505e01a0.patch";
+      sha256 = "0z6phi8hbrbb32kkp1js7ggzviq7faz1ria36wi4jbc4in2392d9";
+    })
+    ++ lib.optionals (lib.versionOlder version "19.1.0") [
+      # do not prefix user provided d3d-drivers-path
+      (fetchpatch {
+        url = "https://gitlab.freedesktop.org/mesa/mesa/commit/dcc48664197c7e44684ccfb970a4ae083974d145.patch";
+        sha256 = "1nhs0xpx3hiy8zfb5gx1zd7j7xha6h0hr7yingm93130a5902lkb";
+      })
+
+      # don't build libGLES*.so with GLVND
+      (fetchpatch {
+        url = "https://gitlab.freedesktop.org/mesa/mesa/commit/b01524fff05eef66e8cd24f1c5aacefed4209f03.patch";
+        sha256 = "1pszr6acx2xw469zq89n156p3bf3xf84qpbjw5fr1sj642lbyh7c";
+      })
+    ];
 
-  outputs = [ "out" "dev" "drivers" ]
-            ++ lib.optional (elem "swrast" galliumDrivers) "osmesa";
+  outputs = [ "out" "dev" "drivers" "osmesa" ];
 
   # TODO: Figure out how to enable opencl without having a runtime dependency on clang
-  configureFlags = [
-    "--sysconfdir=${libglvnd.driverLink}/etc"
-    "--localstatedir=/var"
-    "--with-dri-driverdir=$(drivers)/lib/dri"
-    "--with-dri-searchpath=${libglvnd.driverLink}/lib/dri"
-    "--with-platforms=${concatStringsSep "," eglPlatforms}"
-    "--with-gallium-drivers=${concatStringsSep "," galliumDrivers}"
-    "--with-dri-drivers=${concatStringsSep "," driDrivers}"
-    "--with-vulkan-drivers=${concatStringsSep "," vulkanDrivers}"
-    "--enable-texture-float"
-    (enableFeature stdenv.isLinux "dri3")
-    (enableFeature stdenv.isLinux "nine") # Direct3D in Wine
-    (enableFeature stdenv.isLinux "libglvnd")
-    "--enable-dri"
-    "--enable-driglx-direct"
-    "--enable-gles1"
-    "--enable-gles2"
-    "--enable-glx"
-    # https://bugs.freedesktop.org/show_bug.cgi?id=35268
-    (enableFeature (!stdenv.hostPlatform.isMusl) "glx-tls")
-    # used by wine
-    (enableFeature (elem "swrast" galliumDrivers) "gallium-osmesa")
-    "--enable-llvm"
-    (enableFeature stdenv.isLinux "egl")
-    (enableFeature stdenv.isLinux "xa") # used in vmware driver
-    (enableFeature stdenv.isLinux "gbm")
-    "--enable-xvmc"
-    "--enable-vdpau"
-    "--enable-shared-glapi"
-    "--enable-llvm-shared-libs"
-    (enableFeature stdenv.isLinux "omx-bellagio")
-    (enableFeature stdenv.isLinux "va")
-    "--disable-opencl"
-  ];
-
-  nativeBuildInputs = [
-    autoreconfHook intltool pkgconfig file
-    python2 python2Packages.Mako
+  mesonFlags = [
+    "--sysconfdir=/etc"
+
+    # Don't build in debug mode
+    # https://gitlab.freedesktop.org/mesa/mesa/blob/master/docs/meson.html#L327
+    "-Db_ndebug=true"
+
+    "-Ddisk-cache-key=${placeholder "drivers"}"
+    "-Ddri-search-path=${libglvnd.driverLink}/lib/dri"
+
+    "-Dplatforms=${concatStringsSep "," eglPlatforms}"
+    "-Ddri-drivers=${concatStringsSep "," driDrivers}"
+    "-Dgallium-drivers=${concatStringsSep "," galliumDrivers}"
+    "-Dvulkan-drivers=${concatStringsSep "," vulkanDrivers}"
+
+    "-Ddri-drivers-path=${placeholder "drivers"}/lib/dri"
+    "-Dvdpau-libs-path=${placeholder "drivers"}/lib/vdpau"
+    "-Dxvmc-libs-path=${placeholder "drivers"}/lib"
+    "-Domx-libs-path=${placeholder "drivers"}/lib/bellagio"
+    "-Dva-libs-path=${placeholder "drivers"}/lib/dri"
+    "-Dd3d-drivers-path=${placeholder "drivers"}/lib/d3d"
+  ] ++ optionals stdenv.isLinux [
+    "-Dglvnd=true"
+    "-Dosmesa=gallium" # used by wine
+    "-Dgallium-nine=true" # Direct3D in Wine
   ];
 
-  propagatedBuildInputs = with xorg; [
-    libXdamage libXxf86vm
-  ] ++ optional stdenv.isLinux libdrm
-    ++ optionals stdenv.isDarwin [ OpenGL Xplugin ];
-
   buildInputs = with xorg; [
     expat llvmPackages.llvm libglvnd xorgproto
     libX11 libXext libxcb libXt libXfixes libxshmfence libXrandr
@@ -150,50 +112,38 @@ let self = stdenv.mkDerivation {
     ++ lib.optionals stdenv.isLinux [ libomxil-bellagio libva-minimal ]
     ++ lib.optional withValgrind valgrind-light;
 
+  nativeBuildInputs = [
+    pkgconfig meson ninja
+    intltool bison flex file
+    python3Packages.python python3Packages.Mako
+  ];
+
+  propagatedBuildInputs = with xorg; [
+    libXdamage libXxf86vm
+  ] ++ optional stdenv.isLinux libdrm
+    ++ optionals stdenv.isDarwin [ OpenGL Xplugin ];
+
   enableParallelBuilding = true;
   doCheck = false;
 
-  installFlags = [
-    "sysconfdir=\${drivers}/etc"
-    "localstatedir=\${TMPDIR}"
-    "vendorjsondir=\${out}/share/glvnd/egl_vendor.d"
-  ];
-
-  # TODO: probably not all .la files are completely fixed, but it shouldn't matter;
   postInstall = ''
     # Some installs don't have any drivers so this directory is never created.
-    mkdir -p $drivers
-  '' + optionalString (galliumDrivers != []) ''
+    mkdir -p $drivers $osmesa
+  '' + optionalString stdenv.isLinux ''
+    mkdir -p $drivers/lib
+
     # move gallium-related stuff to $drivers, so $out doesn't depend on LLVM
-    mv -t "$drivers/lib/"    \
-      $out/lib/libXvMC*      \
-      $out/lib/d3d           \
-      $out/lib/vdpau         \
-      $out/lib/bellagio      \
+    mv -t $drivers/lib       \
       $out/lib/libxatracker* \
       $out/lib/libvulkan_*
 
     # Move other drivers to a separate output
-    mv $out/lib/dri/* $drivers/lib/dri # */
-    rmdir "$out/lib/dri"
     mv $out/lib/lib*_mesa* $drivers/lib
 
     # move libOSMesa to $osmesa, as it's relatively big
-    mkdir -p {$osmesa,$drivers}/lib/
+    mkdir -p $osmesa/lib
     mv -t $osmesa/lib/ $out/lib/libOSMesa*
 
-    # now fix references in .la files
-    sed "/^libdir=/s,$out,$osmesa," -i $osmesa/lib/libOSMesa*.la
-
-    # set the default search path for DRI drivers; used e.g. by X server
-    substituteInPlace "$dev/lib/pkgconfig/dri.pc" --replace '$(drivers)' "${libglvnd.driverLink}"
-
-    # remove GLES libraries; they are provided by libglvnd
-    rm $out/lib/lib{GLESv1_CM,GLESv2}.*
-
-    # remove pkgconfig files for GL/GLES/EGL; they are provided by libGL.
-    rm $dev/lib/pkgconfig/{gl,egl,glesv1_cm,glesv2}.pc
-
     # move vendor files
     mv $out/share/ $drivers/
 
@@ -202,11 +152,6 @@ let self = stdenv.mkDerivation {
       substituteInPlace "$js" --replace '"libEGL_' '"'"$drivers/lib/libEGL_"
     done
 
-    # Update search path used by pkg-config
-    for pc in $dev/lib/pkgconfig/{d3d,dri,xatracker}.pc; do
-      substituteInPlace "$pc" --replace $out $drivers
-    done
-  '' + optionalString (vulkanDrivers != []) ''
     # Update search path used by Vulkan (it's pointing to $out but
     # drivers are in $drivers)
     for js in $drivers/share/vulkan/icd.d/*.json; do
@@ -217,7 +162,18 @@ let self = stdenv.mkDerivation {
   # TODO:
   #  check $out doesn't depend on llvm: builder failures are ignored
   #  for some reason grep -qv '${llvmPackages.llvm}' -R "$out";
-  postFixup = optionalString (galliumDrivers != []) ''
+  postFixup = optionalString stdenv.isLinux ''
+    # set the default search path for DRI drivers; used e.g. by X server
+    substituteInPlace "$dev/lib/pkgconfig/dri.pc" --replace "$drivers" "${libglvnd.driverLink}"
+
+    # remove pkgconfig files for GL/EGL; they are provided by libGL.
+    rm $dev/lib/pkgconfig/{gl,egl}.pc
+
+    # Update search path used by pkg-config
+    for pc in $dev/lib/pkgconfig/{d3d,dri,xatracker}.pc; do
+      substituteInPlace "$pc" --replace $out $drivers
+    done
+
     # add RPATH so the drivers can find the moved libgallium and libdricore9
     # moved here to avoid problems with stripping patchelfed files
     for lib in $drivers/lib/*.so* $drivers/lib/*/*.so*; do
@@ -227,81 +183,11 @@ let self = stdenv.mkDerivation {
     done
   '';
 
+  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-fno-common";
+
   passthru = {
-    inherit libdrm version;
+    inherit libdrm;
     inherit (libglvnd) driverLink;
-
-    # Use stub libraries from libglvnd and headers from Mesa.
-    stubs = stdenv.mkDerivation {
-      name = "libGL-${libglvnd.version}";
-      outputs = [ "out" "dev" ];
-
-      # On macOS, libglvnd is not supported, so we just use what mesa
-      # build. We need to also include OpenGL.framework, and some
-      # extra tricks to go along with. We add mesa’s libGLX to support
-      # the X extensions to OpenGL.
-      buildCommand = if stdenv.hostPlatform.isDarwin then ''
-        mkdir -p $out/nix-support $dev
-        echo ${OpenGL} >> $out/nix-support/propagated-build-inputs
-        ln -s ${self.out}/lib $out/lib
-
-        mkdir -p $dev/lib/pkgconfig $dev/nix-support
-        echo "$out" > $dev/nix-support/propagated-build-inputs
-        ln -s ${self.dev}/include $dev/include
-
-        cat <<EOF >$dev/lib/pkgconfig/gl.pc
-      Name: gl
-      Description: gl library
-      Version: ${self.version}
-      Libs: -L${self.out}/lib -lGL
-      Cflags: -I${self.dev}/include
-      EOF
-
-        cat <<EOF >$dev/lib/pkgconfig/glesv1_cm.pc
-      Name: glesv1_cm
-      Description: glesv1_cm library
-      Version: ${self.version}
-      Libs: -L${self.out}/lib -lGLESv1_CM
-      Cflags: -I${self.dev}/include
-      EOF
-
-        cat <<EOF >$dev/lib/pkgconfig/glesv2.pc
-      Name: glesv2
-      Description: glesv2 library
-      Version: ${self.version}
-      Libs: -L${self.out}/lib -lGLESv2
-      Cflags: -I${self.dev}/include
-      EOF
-      ''
-
-      # Otherwise, setup gl stubs to use libglvnd.
-      else ''
-        mkdir -p $out/nix-support
-        ln -s ${libglvnd.out}/lib $out/lib
-
-        mkdir -p $dev/{,lib/pkgconfig,nix-support}
-        echo "$out" > $dev/nix-support/propagated-build-inputs
-        ln -s ${self.dev}/include $dev/include
-
-        genPkgConfig() {
-          local name="$1"
-          local lib="$2"
-
-          cat <<EOF >$dev/lib/pkgconfig/$name.pc
-        Name: $name
-        Description: $lib library
-        Version: ${self.version}
-        Libs: -L${libglvnd.out}/lib -l$lib
-        Cflags: -I${self.dev}/include
-        EOF
-        }
-
-        genPkgConfig gl GL
-        genPkgConfig egl EGL
-        genPkgConfig glesv1_cm GLESv1_CM
-        genPkgConfig glesv2 GLESv2
-      '';
-    };
   };
 
   meta = with stdenv.lib; {
@@ -311,5 +197,4 @@ let self = stdenv.mkDerivation {
     platforms = platforms.mesaPlatforms;
     maintainers = with maintainers; [ vcunat ];
   };
-};
-in self
+}
diff --git a/nixpkgs/pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch b/nixpkgs/pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch
index 37813db89347..1e280b64ee5f 100644
--- a/nixpkgs/pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch
+++ b/nixpkgs/pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch
@@ -6,29 +6,30 @@ Subject: [PATCH] disk_cache: include dri driver path in cache key
 This fixes invalid cache hits on NixOS where all shared library
 timestamps in /nix/store are zero.
 ---
- src/util/Makefile.am  | 3 +++
+ meson_options.txt     | 6 ++++++
  src/util/disk_cache.c | 3 +++
- 2 files changed, 6 insertions(+)
+ src/util/meson.build  | 7 ++++++-
+ 3 files changed, 15 insertions(+), 1 deletion(-)
 
-diff --git a/src/util/Makefile.am b/src/util/Makefile.am
-index bafb57439a..a22e2e41eb 100644
---- a/src/util/Makefile.am
-+++ b/src/util/Makefile.am
-@@ -35,6 +35,9 @@ noinst_LTLIBRARIES = \
- 	libmesautil.la \
- 	libxmlconfig.la
- 
-+AM_CFLAGS = \
-+	-DDISK_CACHE_KEY=\"$(drivers)\"
-+
- AM_CPPFLAGS = \
- 	$(PTHREAD_CFLAGS) \
- 	-I$(top_srcdir)/include
+diff --git a/meson_options.txt b/meson_options.txt
+index a723b5406cf..65a8954291f 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -330,3 +330,9 @@ option(
+   value : true,
+   description : 'Enable direct rendering in GLX and EGL for DRI',
+ )
++option(
++  'disk-cache-key',
++  type : 'string',
++  value : '',
++  description : 'Mesa cache key.'
++)
 diff --git a/src/util/disk_cache.c b/src/util/disk_cache.c
-index 368ec41792..071220b2ba 100644
+index 0aa2646a9bb..bd784d38e21 100644
 --- a/src/util/disk_cache.c
 +++ b/src/util/disk_cache.c
-@@ -388,8 +388,10 @@ disk_cache_create(const char *gpu_name, const char *driver_id,
+@@ -389,8 +389,10 @@ disk_cache_create(const char *gpu_name, const char *driver_id,
  
     /* Create driver id keys */
     size_t id_size = strlen(driver_id) + 1;
@@ -39,7 +40,7 @@ index 368ec41792..071220b2ba 100644
     cache->driver_keys_blob_size += gpu_name_size;
  
     /* We sometimes store entire structs that contains a pointers in the cache,
-@@ -410,6 +412,7 @@ disk_cache_create(const char *gpu_name, const char *driver_id,
+@@ -411,6 +413,7 @@ disk_cache_create(const char *gpu_name, const char *driver_id,
     uint8_t *drv_key_blob = cache->driver_keys_blob;
     DRV_KEY_CPY(drv_key_blob, &cache_version, cv_size)
     DRV_KEY_CPY(drv_key_blob, driver_id, id_size)
@@ -47,6 +48,24 @@ index 368ec41792..071220b2ba 100644
     DRV_KEY_CPY(drv_key_blob, gpu_name, gpu_name_size)
     DRV_KEY_CPY(drv_key_blob, &ptr_size, ptr_size_size)
     DRV_KEY_CPY(drv_key_blob, &driver_flags, driver_flags_size)
+diff --git a/src/util/meson.build b/src/util/meson.build
+index 397c2228129..77013563e5d 100644
+--- a/src/util/meson.build
++++ b/src/util/meson.build
+@@ -120,7 +120,12 @@ libmesa_util = static_library(
+   [files_mesa_util, format_srgb],
+   include_directories : inc_common,
+   dependencies : [dep_zlib, dep_clock, dep_thread, dep_atomic, dep_m],
+-  c_args : [c_msvc_compat_args, c_vis_args],
++  c_args : [
++    c_msvc_compat_args, c_vis_args,
++    '-DDISK_CACHE_KEY="@0@"'.format(
++      get_option('disk-cache-key')
++    ),
++  ],
+   build_by_default : false
+ )
+ 
 -- 
-2.19.1
+2.19.2
 
diff --git a/nixpkgs/pkgs/development/libraries/mesa/opencl-install-dir.patch b/nixpkgs/pkgs/development/libraries/mesa/opencl-install-dir.patch
new file mode 100644
index 000000000000..fe85d2c90bb2
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/mesa/opencl-install-dir.patch
@@ -0,0 +1,12 @@
+diff --git a/src/gallium/targets/opencl/meson.build b/src/gallium/targets/opencl/meson.build
+index 317ad8dab4a..5567308caf0 100644
+--- a/src/gallium/targets/opencl/meson.build
++++ b/src/gallium/targets/opencl/meson.build
+@@ -68,6 +68,6 @@ if with_opencl_icd
+     input : 'mesa.icd.in',
+     output : 'mesa.icd',
+     install : true,
+-    install_dir : join_paths(get_option('sysconfdir'), 'OpenCL', 'vendors'),
++    install_dir : join_paths(get_option('prefix'), 'etc', 'OpenCL', 'vendors'),
+   )
+ endif
diff --git a/nixpkgs/pkgs/development/libraries/mesa/stubs.nix b/nixpkgs/pkgs/development/libraries/mesa/stubs.nix
new file mode 100644
index 000000000000..5cb6ac3d4d13
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/mesa/stubs.nix
@@ -0,0 +1,75 @@
+{ stdenv
+, libglvnd, mesa
+, OpenGL }:
+
+stdenv.mkDerivation {
+  inherit (libglvnd) version;
+  pname = "libGL";
+  outputs = [ "out" "dev" ];
+
+  # On macOS, libglvnd is not supported, so we just use what mesa
+  # build. We need to also include OpenGL.framework, and some
+  # extra tricks to go along with. We add mesa’s libGLX to support
+  # the X extensions to OpenGL.
+  buildCommand = if stdenv.hostPlatform.isDarwin then ''
+    mkdir -p $out/nix-support $dev
+    echo ${OpenGL} >> $out/nix-support/propagated-build-inputs
+    ln -s ${mesa.out}/lib $out/lib
+
+    mkdir -p $dev/lib/pkgconfig $dev/nix-support
+    echo "$out" > $dev/nix-support/propagated-build-inputs
+    ln -s ${mesa.dev}/include $dev/include
+
+    cat <<EOF >$dev/lib/pkgconfig/gl.pc
+  Name: gl
+  Description: gl library
+  Version: ${mesa.version}
+  Libs: -L${mesa.out}/lib -lGL
+  Cflags: -I${mesa.dev}/include
+  EOF
+
+    cat <<EOF >$dev/lib/pkgconfig/glesv1_cm.pc
+  Name: glesv1_cm
+  Description: glesv1_cm library
+  Version: ${mesa.version}
+  Libs: -L${mesa.out}/lib -lGLESv1_CM
+  Cflags: -I${mesa.dev}/include
+  EOF
+
+    cat <<EOF >$dev/lib/pkgconfig/glesv2.pc
+  Name: glesv2
+  Description: glesv2 library
+  Version: ${mesa.version}
+  Libs: -L${mesa.out}/lib -lGLESv2
+  Cflags: -I${mesa.dev}/include
+  EOF
+  ''
+
+  # Otherwise, setup gl stubs to use libglvnd.
+  else ''
+    mkdir -p $out/nix-support
+    ln -s ${libglvnd.out}/lib $out/lib
+
+    mkdir -p $dev/{,lib/pkgconfig,nix-support}
+    echo "$out" > $dev/nix-support/propagated-build-inputs
+    ln -s ${mesa.dev}/include $dev/include
+
+    genPkgConfig() {
+      local name="$1"
+      local lib="$2"
+
+      cat <<EOF >$dev/lib/pkgconfig/$name.pc
+    Name: $name
+    Description: $lib library
+    Version: ${mesa.version}
+    Libs: -L${libglvnd.out}/lib -l$lib
+    Cflags: -I${mesa.dev}/include
+    EOF
+    }
+
+    genPkgConfig gl GL
+    genPkgConfig egl EGL
+    genPkgConfig glesv1_cm GLESv1_CM
+    genPkgConfig glesv2 GLESv2
+  '';
+}
diff --git a/nixpkgs/pkgs/development/libraries/mesa/symlink-drivers.patch b/nixpkgs/pkgs/development/libraries/mesa/symlink-drivers.patch
deleted file mode 100644
index af2ec9fdb096..000000000000
--- a/nixpkgs/pkgs/development/libraries/mesa/symlink-drivers.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-diff -ru -x '*~' mesa-12.0.3-orig/src/gallium/targets/dri/Makefile.am mesa-12.0.3/src/gallium/targets/dri/Makefile.am
---- mesa-12.0.3-orig/src/gallium/targets/dri/Makefile.am	2016-09-08 18:57:48.000000000 +0200
-+++ mesa-12.0.3/src/gallium/targets/dri/Makefile.am	2016-09-22 14:42:19.173575498 +0200
-@@ -134,14 +134,13 @@
- 	done;
- endif
- 
--# hardlink each megadriver instance, but don't actually have
--# gallium_dri.so in the set of final installed files.
-+# symlink each megadriver instance.
- install-data-hook:
- 	for i in $(TARGET_DRIVERS); do                                  \
--		ln -f $(DESTDIR)$(dridir)/gallium_dri.so                \
-+		ln -srf $(DESTDIR)$(dridir)/gallium_dri.so              \
- 		      $(DESTDIR)$(dridir)/$${i}_dri.so;                 \
- 	done;                                                           \
--	$(RM) $(DESTDIR)$(dridir)/gallium_dri.*;                        \
-+	$(RM) $(DESTDIR)$(dridir)/gallium_dri.la                        \
- 	$(RM) -d $(DESTDIR)$(dridir) &>/dev/null || true
- 
- uninstall-hook:
- 	for i in $(TARGET_DRIVERS); do                                  \
-diff -ru -x '*~' mesa-12.0.3-orig/src/gallium/targets/va/Makefile.am mesa-12.0.3/src/gallium/targets/va/Makefile.am
---- mesa-12.0.3-orig/src/gallium/targets/va/Makefile.am	2016-09-08 18:57:48.000000000 +0200
-+++ mesa-12.0.3/src/gallium/targets/va/Makefile.am	2016-09-22 14:45:39.635963339 +0200
-@@ -71,10 +71,10 @@
- # gallium_drv_video.so in the set of final installed files.
- install-data-hook:
- 	for i in $(TARGET_DRIVERS); do                                  \
--		ln -f $(DESTDIR)$(vadir)/gallium_drv_video.so                \
-+		ln -srf $(DESTDIR)$(vadir)/gallium_drv_video.so                \
- 		      $(DESTDIR)$(vadir)/$${i}_drv_video.so;                 \
- 	done;                                                           \
--	$(RM) $(DESTDIR)$(vadir)/gallium_drv_video.*
-+	$(RM) $(DESTDIR)$(vadir)/gallium_drv_video.la
- 
- uninstall-hook:
- 	for i in $(TARGET_DRIVERS); do                                  \
-diff -ru -x '*~' mesa-12.0.3-orig/src/gallium/targets/vdpau/Makefile.am mesa-12.0.3/src/gallium/targets/vdpau/Makefile.am
---- mesa-12.0.3-orig/src/gallium/targets/vdpau/Makefile.am	2016-05-24 21:19:37.000000000 +0200
-+++ mesa-12.0.3/src/gallium/targets/vdpau/Makefile.am	2016-09-22 14:42:19.173575498 +0200
-@@ -103,15 +103,14 @@
- 	done;
- endif
- 
--# hardlink each megadriver instance, but don't actually have
--# libvdpau_gallium.so in the set of final installed files.
-+# symlink each megadriver instance.
- install-data-hook:
- 	$(AM_V_GEN)dest_dir=$(DESTDIR)/$(vdpaudir);			\
- 	for i in $(TARGET_DRIVERS); do					\
- 		j=libvdpau_gallium.$(LIB_EXT);				\
- 		k=libvdpau_$${i}.$(LIB_EXT);				\
- 		l=$${k}.$(VDPAU_MAJOR).$(VDPAU_MINOR).0;		\
--		ln -f $${dest_dir}/$${j}.$(VDPAU_MAJOR).$(VDPAU_MINOR).0 \
-+		ln -srf $${dest_dir}/$${j}.$(VDPAU_MAJOR).$(VDPAU_MINOR).0 \
- 		      $${dest_dir}/$${l};				\
- 		ln -sf $${l}						\
- 		       $${dest_dir}/$${k}.$(VDPAU_MAJOR).$(VDPAU_MINOR); \
-@@ -120,7 +119,7 @@
- 		ln -sf $${l}						\
- 		       $${dest_dir}/$${k};				\
- 	done;								\
--	$(RM) $${dest_dir}/libvdpau_gallium.*;				\
-+	$(RM) $${dest_dir}/libvdpau_gallium.la				\
- 	$(RM) -d $${dest_dir} &>/dev/null || true
- 
- uninstall-hook:
- 	for i in $(TARGET_DRIVERS); do					\
-diff -ru -x '*~' mesa-12.0.3-orig/src/gallium/targets/xvmc/Makefile.am mesa-12.0.3/src/gallium/targets/xvmc/Makefile.am
---- mesa-12.0.3-orig/src/gallium/targets/xvmc/Makefile.am	2016-05-24 21:19:37.000000000 +0200
-+++ mesa-12.0.3/src/gallium/targets/xvmc/Makefile.am	2016-09-22 14:54:22.291014543 +0200
-@@ -73,7 +73,7 @@
- 		j=libXvMCgallium.$(LIB_EXT);				\
- 		k=libXvMC$${i}.$(LIB_EXT);				\
- 		l=$${k}.$(XVMC_MAJOR).$(XVMC_MINOR).0;			\
--		ln -f $${dest_dir}/$${j}.$(XVMC_MAJOR).$(XVMC_MINOR).0	\
-+		ln -srf $${dest_dir}/$${j}.$(XVMC_MAJOR).$(XVMC_MINOR).0 \
- 		      $${dest_dir}/$${l};				\
- 		ln -sf $${l}						\
- 		       $${dest_dir}/$${k}.$(XVMC_MAJOR).$(XVMC_MINOR);	\
-@@ -82,7 +82,7 @@
- 		ln -sf $${l}						\
- 		       $${dest_dir}/$${k};				\
- 	done;								\
--	$(RM) $${dest_dir}/libXvMCgallium.*;				\
-+	$(RM) $${dest_dir}/libXvMCgallium.la				\
- 	$(RM) -d $${dest_dir} &>/dev/null || true
- 
- uninstall-hook:
- 	for i in $(TARGET_DRIVERS); do					\
-diff -ru -x '*~' mesa-12.0.3-orig/src/mesa/drivers/dri/Makefile.am mesa-12.0.3/src/mesa/drivers/dri/Makefile.am
---- mesa-12.0.3-orig/src/mesa/drivers/dri/Makefile.am	2016-09-08 18:57:48.000000000 +0200
-+++ mesa-12.0.3/src/mesa/drivers/dri/Makefile.am	2016-09-22 14:42:19.173575498 +0200
-@@ -94,14 +94,13 @@
- 	done;
- endif
- 
--# hardlink each megadriver instance, but don't actually have
--# mesa_dri_drivers.so in the set of final installed files.
-+# symink each megadriver instance.
- install-data-hook:
- 	for i in $(MEGADRIVERS); do \
--		ln -f $(DESTDIR)$(dridir)/mesa_dri_drivers.so \
-+		ln -srf $(DESTDIR)$(dridir)/mesa_dri_drivers.so \
- 		      $(DESTDIR)$(dridir)/$$i; \
- 	done;
--	$(RM) $(DESTDIR)$(dridir)/mesa_dri_drivers.*
-+	$(RM) $(DESTDIR)$(dridir)/mesa_dri_drivers.la
- 
- uninstall-hook:
- 	for i in $(MEGADRIVERS); do \
diff --git a/nixpkgs/pkgs/development/libraries/openexr/default.nix b/nixpkgs/pkgs/development/libraries/openexr/default.nix
index 54b617fdc014..072848d7bbca 100644
--- a/nixpkgs/pkgs/development/libraries/openexr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openexr/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
   doCheck = false; # fails 1 of 1 tests
 
   meta = with stdenv.lib; {
-    homepage = http://www.openexr.com/;
+    homepage = https://www.openexr.com/;
     license = licenses.bsd3;
     platforms = platforms.all;
   };
diff --git a/nixpkgs/pkgs/development/libraries/openmpi/default.nix b/nixpkgs/pkgs/development/libraries/openmpi/default.nix
index e597a26dad9f..17ad9e53005b 100644
--- a/nixpkgs/pkgs/development/libraries/openmpi/default.nix
+++ b/nixpkgs/pkgs/development/libraries/openmpi/default.nix
@@ -15,7 +15,7 @@ in stdenv.mkDerivation rec {
   name = "openmpi-${version}";
 
   src = with stdenv.lib.versions; fetchurl {
-    url = "http://www.open-mpi.org/software/ompi/v${major version}.${minor version}/downloads/${name}.tar.bz2";
+    url = "https://www.open-mpi.org/software/ompi/v${major version}.${minor version}/downloads/${name}.tar.bz2";
     sha256 = "02cpzcp113gj5hb0j2xc0cqma2fn04i2i0bzf80r71120p9bdryc";
   };
 
@@ -52,7 +52,7 @@ in stdenv.mkDerivation rec {
   doCheck = true;
 
   meta = with stdenv.lib; {
-    homepage = http://www.open-mpi.org/;
+    homepage = https://www.open-mpi.org/;
     description = "Open source MPI-3 implementation";
     longDescription = "The Open MPI Project is an open source MPI-3 implementation that is developed and maintained by a consortium of academic, research, and industry partners. Open MPI is therefore able to combine the expertise, technologies, and resources from all across the High Performance Computing community in order to build the best MPI library available. Open MPI offers advantages for system and software vendors, application developers and computer science researchers.";
     maintainers = with maintainers; [ markuskowa ];
diff --git a/nixpkgs/pkgs/development/libraries/packr/default.nix b/nixpkgs/pkgs/development/libraries/packr/default.nix
index c44695cb70a3..bc8133aaf822 100644
--- a/nixpkgs/pkgs/development/libraries/packr/default.nix
+++ b/nixpkgs/pkgs/development/libraries/packr/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "packr";
-  version = "2.5.1";
+  version = "2.5.2";
 
   src = fetchFromGitHub {
     owner = "gobuffalo";
     repo = pname;
     rev = "v${version}";
-    sha256 = "070hpnsr5w1r1cg9wl80cafmhkx4z3s29wq04fa7rk49hmwml4jy";
+    sha256 = "1ciffa5xbd93fylwz93wr4m4fj83dcla55dmdshaqz28rbsapnc1";
   };
 
-  modSha256 = "0xvpk9jjcqac44s4fp0jwpljxvs0ypjwc5qfg0w90s2r7jn50fxn";
+  modSha256 = "086gydrl3i35hawb5m7rsb4a0llcpdpgid1xfw2z9n6jkwkclw4n";
 
   meta = with lib; {
     description = "The simple and easy way to embed static files into Go binaries";
diff --git a/nixpkgs/pkgs/development/libraries/protobuf/3.4.nix b/nixpkgs/pkgs/development/libraries/protobuf/3.4.nix
deleted file mode 100644
index 5a9034a56a80..000000000000
--- a/nixpkgs/pkgs/development/libraries/protobuf/3.4.nix
+++ /dev/null
@@ -1,6 +0,0 @@
-{ callPackage, lib, ... }:
-
-lib.overrideDerivation (callPackage ./generic-v3.nix {
-  version = "3.4.1";
-  sha256 = "1lzxmbqlnmi34kymnf399azv86gmdbrf71xiad6wc24bzpkzqybb";
-}) (attrs: { NIX_CFLAGS_COMPILE = "-Wno-error"; })
diff --git a/nixpkgs/pkgs/development/libraries/protobuf/3.5.nix b/nixpkgs/pkgs/development/libraries/protobuf/3.5.nix
deleted file mode 100644
index db9cb6f0371b..000000000000
--- a/nixpkgs/pkgs/development/libraries/protobuf/3.5.nix
+++ /dev/null
@@ -1,6 +0,0 @@
-{ callPackage, lib, ... }:
-
-lib.overrideDerivation (callPackage ./generic-v3.nix {
-  version = "3.5.1.1";
-  sha256 = "1h4xydr5j2zg1888ncn8a1jvqq8fgpgckrmjg6lqzy9jpkvqvfdk";
-}) (attrs: { NIX_CFLAGS_COMPILE = "-Wno-error"; })
diff --git a/nixpkgs/pkgs/development/libraries/protobuf/generic-v3.nix b/nixpkgs/pkgs/development/libraries/protobuf/generic-v3.nix
index 610efcfef298..a98521a2d1ee 100644
--- a/nixpkgs/pkgs/development/libraries/protobuf/generic-v3.nix
+++ b/nixpkgs/pkgs/development/libraries/protobuf/generic-v3.nix
@@ -40,10 +40,6 @@ mkProtobufDerivation = buildProtobuf: stdenv: stdenv.mkDerivation rec {
 
   dontDisableStatic = true;
 
-  NIX_CFLAGS_COMPILE = with stdenv.lib;
-    # gcc before 6 doesn't know this option
-    optionalString (hasPrefix "gcc-6" stdenv.cc.cc.name) "-Wno-error=misleading-indentation";
-
   meta = {
     description = "Google's data interchange format";
     longDescription =
diff --git a/nixpkgs/pkgs/development/libraries/science/math/fenics/default.nix b/nixpkgs/pkgs/development/libraries/science/math/fenics/default.nix
index 8134cc63eb02..4ae5ea522555 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/fenics/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/fenics/default.nix
@@ -83,7 +83,7 @@ let
     '';
     meta = {
       description = "A domain-specific language for finite element variational forms";
-      homepage = http://fenicsproject.org/;
+      homepage = https://fenicsproject.org/;
       platforms = stdenv.lib.platforms.all;
       license = stdenv.lib.licenses.lgpl3;
     };
@@ -102,7 +102,7 @@ let
     '';
     meta = {
       description = "A compiler for finite element variational forms";
-      homepage = http://fenicsproject.org/;
+      homepage = https://fenicsproject.org/;
       platforms = stdenv.lib.platforms.all;
       license = stdenv.lib.licenses.lgpl3;
     };
@@ -117,7 +117,7 @@ let
     buildInputs = [ numpy six ];
     meta = {
       description = "Instant inlining of C and C++ code in Python";
-      homepage = http://fenicsproject.org/;
+      homepage = https://fenicsproject.org/;
       platforms = stdenv.lib.platforms.all;
       license = stdenv.lib.licenses.lgpl3;
     };
@@ -162,7 +162,7 @@ stdenv.mkDerivation {
   postInstall = "source $out/share/dolfin/dolfin.conf";
   meta = {
     description = "The FEniCS Problem Solving Environment in Python and C++";
-    homepage = http://fenicsproject.org/;
+    homepage = https://fenicsproject.org/;
     platforms = stdenv.lib.platforms.darwin;
     license = stdenv.lib.licenses.lgpl3;
   };
diff --git a/nixpkgs/pkgs/development/libraries/speexdsp/default.nix b/nixpkgs/pkgs/development/libraries/speexdsp/default.nix
index 16be9fa1e3b1..4d74c7e05598 100644
--- a/nixpkgs/pkgs/development/libraries/speexdsp/default.nix
+++ b/nixpkgs/pkgs/development/libraries/speexdsp/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, autoreconfHook, pkgconfig, fftw }:
 
 stdenv.mkDerivation rec {
-  name = "speexdsp-1.2rc3";
+  name = "speexdsp-1.2.0";
 
   src = fetchurl {
     url = "http://downloads.us.xiph.org/releases/speex/${name}.tar.gz";
-    sha256 = "1wcjyrnwlkayb20zdhp48y260rfyzg925qpjpljd5x9r01h8irja";
+    sha256 = "0wa7sqpk3x61zz99m7lwkgr6yv62ml6lfgs5xja65vlvdzy44838";
   };
 
   patches = [ ./build-fix.patch ];
diff --git a/nixpkgs/pkgs/development/libraries/spice-gtk/default.nix b/nixpkgs/pkgs/development/libraries/spice-gtk/default.nix
index d597fd16ad07..079d61ca3d58 100644
--- a/nixpkgs/pkgs/development/libraries/spice-gtk/default.nix
+++ b/nixpkgs/pkgs/development/libraries/spice-gtk/default.nix
@@ -109,7 +109,6 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_POLKIT_GOBJECT_1_POLICYDIR = "${placeholder "out"}/share/polkit-1/actions";
 
   mesonFlags = [
-    "-Dauto_features=enabled"
     "-Dcelt051=disabled"
     "-Dpulse=disabled" # is deprecated upstream
   ];
diff --git a/nixpkgs/pkgs/development/libraries/spice/default.nix b/nixpkgs/pkgs/development/libraries/spice/default.nix
index 9e50a3b86b94..d2c4ddb8631e 100644
--- a/nixpkgs/pkgs/development/libraries/spice/default.nix
+++ b/nixpkgs/pkgs/development/libraries/spice/default.nix
@@ -77,7 +77,6 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-fno-stack-protector";
 
   mesonFlags = [
-    "-Dauto_features=enabled"
     "-Dgstreamer=1.0"
     "-Dcelt051=disabled"
   ];
diff --git a/nixpkgs/pkgs/development/libraries/zlib/default.nix b/nixpkgs/pkgs/development/libraries/zlib/default.nix
index 3a5638b22814..7fb5be1c3434 100644
--- a/nixpkgs/pkgs/development/libraries/zlib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/zlib/default.nix
@@ -86,5 +86,5 @@ stdenv.mkDerivation (rec {
     export CHOST=${stdenv.hostPlatform.config}
   '';
 } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.libc == "msvcrt") {
-  configurePhase = ":";
+  dontConfigure = true;
 })