diff --git a/pkgs/development/libraries/libdevil/default.nix b/pkgs/development/libraries/libdevil/default.nix index d3053b4d2a5f..6cbbddfdba83 100644 --- a/pkgs/development/libraries/libdevil/default.nix +++ b/pkgs/development/libraries/libdevil/default.nix @@ -16,6 +16,15 @@ stdenv.mkDerivation rec { configureFlags = [ "--enable-ILU" "--enable-ILUT" ]; + preConfigure = '' + sed -i 's, -std=gnu99,,g' configure + sed -i 's,malloc.h,stdlib.h,g' src-ILU/ilur/ilur.c + ''; + + postConfigure = '' + sed -i '/RESTRICT_KEYWORD/d' include/IL/config.h + ''; + patches = [ ( fetchurl { url = http://patch-tracker.debian.org/patch/series/dl/devil/1.7.8-6.1/03_CVE-2009-3994.diff; diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix index 7073adb85dde..4811659ac413 100644 --- a/pkgs/servers/x11/xorg/overrides.nix +++ b/pkgs/servers/x11/xorg/overrides.nix @@ -102,8 +102,11 @@ in # Note: most of these are in Requires.private, so maybe builder.sh # should propagate them automatically. libXt = attrs: attrs // { - preConfigure = setMalloc0ReturnsNullCrossCompiling; + preConfigure = setMalloc0ReturnsNullCrossCompiling + '' + sed 's,^as_dummy.*,as_dummy="\$PATH",' -i configure + ''; propagatedBuildInputs = [ xorg.libSM ]; + CPP = stdenv.lib.optionalString stdenv.isDarwin "clang -E -"; }; # See https://bugs.freedesktop.org/show_bug.cgi?id=47792 diff --git a/pkgs/stdenv/adapters.nix b/pkgs/stdenv/adapters.nix index 09c92b552d48..c57f1d00f0a5 100644 --- a/pkgs/stdenv/adapters.nix +++ b/pkgs/stdenv/adapters.nix @@ -299,4 +299,9 @@ rec { ''; # */ in overrideGCC stdenv (stdenv.gcc.override { binutils = binutils'; }); + dropCxx = drv: drv.override { + stdenv = if pkgs.stdenv.isDarwin + then pkgs.allStdenvs.stdenvDarwinNaked + else pkgs.stdenv; + }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 22d35e03d594..623d464d30ee 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4574,7 +4574,7 @@ let coredumper = callPackage ../development/libraries/coredumper { }; - ctl = callPackage ../development/libraries/ctl { }; + ctl = dropCxx (callPackage ../development/libraries/ctl { }); cpp-netlib = callPackage ../development/libraries/cpp-netlib { }; @@ -5079,7 +5079,7 @@ let ilixi = callPackage ../development/libraries/ilixi { }; - ilmbase = callPackage ../development/libraries/ilmbase { }; + ilmbase = dropCxx (callPackage ../development/libraries/ilmbase { }); imlib = callPackage ../development/libraries/imlib { libpng = libpng12; @@ -5253,7 +5253,7 @@ let libdc1394avt = callPackage ../development/libraries/libdc1394avt { }; - libdevil = callPackage ../development/libraries/libdevil { }; + libdevil = dropCxx (callPackage ../development/libraries/libdevil { }); libdiscid = callPackage ../development/libraries/libdiscid { }; @@ -5994,7 +5994,7 @@ let # this ctl version is needed by openexr_viewers openexr_ctl = callPackage ../development/libraries/openexr_ctl { }; - openexr = callPackage ../development/libraries/openexr { }; + openexr = dropCxx (callPackage ../development/libraries/openexr { }); openldap = callPackage ../development/libraries/openldap { stdenv = if stdenv.isDarwin