From 0bfce5bb4a61de3df465b6fc4ca37c88c622ab3d Mon Sep 17 00:00:00 2001 From: Eric Seidel Date: Tue, 24 Mar 2015 20:54:05 -0700 Subject: [PATCH] pixman: patch for clang36 --- pkgs/development/libraries/pixman/default.nix | 2 ++ pkgs/development/libraries/pixman/fix-clang36.patch | 11 +++++++++++ 2 files changed, 13 insertions(+) create mode 100644 pkgs/development/libraries/pixman/fix-clang36.patch diff --git a/pkgs/development/libraries/pixman/default.nix b/pkgs/development/libraries/pixman/default.nix index d93341b81ff..14529c6c643 100644 --- a/pkgs/development/libraries/pixman/default.nix +++ b/pkgs/development/libraries/pixman/default.nix @@ -14,6 +14,8 @@ stdenv.mkDerivation rec { postInstall = glib.flattenInclude; + patches = stdenv.lib.optional (stdenv.cc.cc.isClang or false) ./fix-clang36.patch; + meta = { homepage = http://pixman.org; description = "A low-level library for pixel manipulation"; diff --git a/pkgs/development/libraries/pixman/fix-clang36.patch b/pkgs/development/libraries/pixman/fix-clang36.patch new file mode 100644 index 00000000000..7db3c7ecaba --- /dev/null +++ b/pkgs/development/libraries/pixman/fix-clang36.patch @@ -0,0 +1,11 @@ +--- a/pixman/pixman-mmx.c 2014-04-24 08:34:14.000000000 +0400 ++++ b/pixman/pixman-mmx.c 2015-01-30 20:19:28.000000000 +0300 +@@ -89,7 +89,7 @@ + return __A; + } + +-# ifdef __OPTIMIZE__ ++# if defined(__OPTIMIZE__) && !(defined (__clang__) && defined(__clang_major__) && defined(__clang_minor__) && __clang_major__ == 3 && __clang_minor__ >= 6) + extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) + _mm_shuffle_pi16 (__m64 __A, int8_t const __N) + {