From b129c9631e4637bec4b8245d856e64122c1eecc0 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Wed, 3 Aug 2022 12:31:21 +0200
Subject: [PATCH v4 13/37] gnu: Add rust-parking-lot-core-0.9.

* gnu/packages/crates-io.scm (rust-parking-lot-core-0.8): New variable.

diff --git a/gnu/local.mk b/gnu/local.mk
index 10c3192ade..dacf3d0eaa 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1790,6 +1790,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/rust-nettle-disable-vendor.patch		 \
   %D%/packages/patches/rust-nettle-sys-disable-vendor.patch	 \
   %D%/packages/patches/rust-openssl-sys-no-vendor.patch	\
+  %D%/packages/patches/rust-parking-lot-core-0.9.patch	\
   %D%/packages/patches/rust-shell2batch-lint-fix.patch		\
   %D%/packages/patches/rust-wl-clipboard-rs-newer-wl.patch      \
   %D%/packages/patches/sbc-fix-build-non-x86.patch		\
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index bcf79220cf..79ebff8b81 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -41276,8 +41276,36 @@ (define-public rust-parking-lot-0.7
         ("rust-rand" ,rust-rand-0.4)
         ("rust-rustc-version" ,rust-rustc-version-0.2))))))
 
+(define-public rust-parking-lot-core-0.9
+  (package
+    (name "rust-parking-lot-core")
+    (version "0.9.3")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "parking_lot_core" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (patches (search-patches "rust-parking-lot-core-0.9.patch"))
+              (sha256
+               (base32
+                "0ab95rljb99rm51wcic16jgbajcr6lgbqkrr21w7bc2wyb5pk8h9"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs (("rust-backtrace" ,rust-backtrace-0.3)
+                       ("rust-cfg-if" ,rust-cfg-if-1)
+                       ("rust-libc" ,rust-libc-0.2)
+                       ("rust-petgraph" ,rust-petgraph-0.6)
+                       ("rust-redox-syscall" ,rust-redox-syscall-0.2)
+                       ("rust-smallvec" ,rust-smallvec-1)
+                       ("rust-thread-id" ,rust-thread-id-4))))
+    (home-page "https://github.com/Amanieu/parking_lot")
+    (synopsis "API for creating custom synchronization primitives")
+    (description "This package provides an advanced API for creating custom
+synchronization primitives.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-parking-lot-core-0.8
   (package
+    (inherit rust-parking-lot-core-0.9)
     (name "rust-parking-lot-core")
     (version "0.8.4")
     (source
@@ -41306,12 +41334,7 @@ (define-public rust-parking-lot-core-0.8
         ("rust-redox-syscall" ,rust-redox-syscall-0.2)
         ("rust-smallvec" ,rust-smallvec-1)
         ("rust-thread-id" ,rust-thread-id-4)
-        ("rust-winapi" ,rust-winapi-0.3))))
-    (home-page "https://github.com/Amanieu/parking_lot")
-    (synopsis "API for creating custom synchronization primitives")
-    (description "This package provides an advanced API for creating custom
-synchronization primitives.")
-    (license (list license:asl2.0 license:expat))))
+        ("rust-winapi" ,rust-winapi-0.3))))))
 
 (define-public rust-parking-lot-core-0.7
   (package
diff --git a/gnu/packages/patches/rust-parking-lot-core-0.9.patch b/gnu/packages/patches/rust-parking-lot-core-0.9.patch
new file mode 100644
index 0000000000..b7786ba546
--- /dev/null
+++ b/gnu/packages/patches/rust-parking-lot-core-0.9.patch
@@ -0,0 +1,15 @@
+--- parking_lot_core-0.9.3/Cargo.toml	2022-08-03 15:35:04.256541546 +0200
++++ parking_lot_core-0.9.3/Cargo.toml	2022-08-03 15:35:23.056614747 +0200
+@@ -57,12 +57,3 @@
+ 
+ [target."cfg(unix)".dependencies.libc]
+ version = "0.2.95"
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.36.0"
+-features = [
+-    "Win32_Foundation",
+-    "Win32_System_LibraryLoader",
+-    "Win32_System_SystemServices",
+-    "Win32_System_WindowsProgramming",
+-]
-- 
2.37.0