about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/pixman
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/pixman')
-rw-r--r--nixpkgs/pkgs/development/libraries/pixman/default.nix33
1 files changed, 28 insertions, 5 deletions
diff --git a/nixpkgs/pkgs/development/libraries/pixman/default.nix b/nixpkgs/pkgs/development/libraries/pixman/default.nix
index ffdaeaef035a..76ec2244c833 100644
--- a/nixpkgs/pkgs/development/libraries/pixman/default.nix
+++ b/nixpkgs/pkgs/development/libraries/pixman/default.nix
@@ -1,12 +1,29 @@
-{ lib, stdenv, fetchurl, pkg-config, libpng, glib /*just passthru*/ }:
+{ lib
+, stdenv
+, fetchurl
+, pkg-config
+, libpng
+, glib /*just passthru*/
+
+# for passthru.tests
+, cairo
+, qemu
+, scribus
+, tigervnc
+, wlroots
+, xwayland
+}:
 
 stdenv.mkDerivation rec {
   pname = "pixman";
-  version = "0.38.4";
+  version = "0.42.2";
 
   src = fetchurl {
-    url = "mirror://xorg/individual/lib/${pname}-${version}.tar.bz2";
-    sha256 = "0l0m48lnmdlmnaxn2021qi5cj366d9fzfjxkqgcj9bs14pxbgaw4";
+    urls = [
+      "mirror://xorg/individual/lib/${pname}-${version}.tar.gz"
+      "https://cairographics.org/releases/${pname}-${version}.tar.gz"
+    ];
+    hash = "sha256-6hSA762i/ZSLx1Nm98NJ4cltMpfQmj/mJibjjiNKYl4=";
   };
 
   separateDebugInfo = !stdenv.hostPlatform.isStatic;
@@ -15,7 +32,9 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ libpng ];
 
-  configureFlags = lib.optional stdenv.isAarch32 "--disable-arm-iwmmxt";
+  configureFlags = lib.optional stdenv.isAarch32 "--disable-arm-iwmmxt"
+    # Disable until https://gitlab.freedesktop.org/pixman/pixman/-/issues/46 is resolved
+    ++ lib.optional (stdenv.isAarch64 && !stdenv.cc.isGNU) "--disable-arm-a64-neon";
 
   preConfigure = ''
     # https://gitlab.freedesktop.org/pixman/pixman/-/issues/62
@@ -26,6 +45,10 @@ stdenv.mkDerivation rec {
 
   postInstall = glib.flattenInclude;
 
+  passthru.tests = {
+    inherit cairo qemu scribus tigervnc wlroots xwayland;
+  };
+
   meta = with lib; {
     homepage = "http://pixman.org";
     description = "A low-level library for pixel manipulation";