git: ddf819c18a79 - main - devel/cargo-llvm-cov: New port: Rust: Cargo subcommand to easily use LLVM source-based code coverage

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Sun, 19 May 2024 01:32:26 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=ddf819c18a79aef1ed859aae04887a44b06f9588

commit ddf819c18a79aef1ed859aae04887a44b06f9588
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2024-05-19 01:31:52 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2024-05-19 01:31:52 +0000

    devel/cargo-llvm-cov: New port: Rust: Cargo subcommand to easily use LLVM source-based code coverage
---
 devel/Makefile                 |   1 +
 devel/cargo-llvm-cov/Makefile  | 103 +++++++++++++++++++++++++++
 devel/cargo-llvm-cov/distinfo  | 157 +++++++++++++++++++++++++++++++++++++++++
 devel/cargo-llvm-cov/pkg-descr |  12 ++++
 4 files changed, 273 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 838b53176e8b..7728018e5384 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -356,6 +356,7 @@
     SUBDIR += cargo-generate
     SUBDIR += cargo-hack
     SUBDIR += cargo-leptos
+    SUBDIR += cargo-llvm-cov
     SUBDIR += cargo-mutants
     SUBDIR += cask
     SUBDIR += catch
diff --git a/devel/cargo-llvm-cov/Makefile b/devel/cargo-llvm-cov/Makefile
new file mode 100644
index 000000000000..2ffaa1a02094
--- /dev/null
+++ b/devel/cargo-llvm-cov/Makefile
@@ -0,0 +1,103 @@
+PORTNAME=	cargo-llvm-cov
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.6.9
+CATEGORIES=	devel
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Rust: Cargo subcommand to easily use LLVM source-based code coverage
+WWW=		https://github.com/taiki-e/cargo-llvm-cov
+
+LICENSE=	APACHE20 MIT
+LICENSE_COMB=	dual
+LICENSE_FILE_APACHE20=	${WRKSRC}/LICENSE-APACHE
+LICENSE_FILE_MIT=	${WRKSRC}/LICENSE-MIT
+
+USES=		cargo
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	taiki-e
+
+CARGO_CRATES=	aho-corasick-1.1.3 \
+		anyhow-1.0.86 \
+		autocfg-1.3.0 \
+		bitflags-1.3.2 \
+		bitflags-2.5.0 \
+		bstr-1.9.1 \
+		byteorder-1.5.0 \
+		camino-1.1.7 \
+		cargo-config2-0.1.26 \
+		cfg-if-1.0.0 \
+		derive_more-0.99.17 \
+		duct-0.13.7 \
+		easy-ext-1.0.1 \
+		equivalent-1.0.1 \
+		errno-0.3.9 \
+		fastrand-2.1.0 \
+		filetime-0.2.23 \
+		fs-err-2.11.0 \
+		glob-0.3.1 \
+		hashbrown-0.14.5 \
+		home-0.5.9 \
+		indexmap-2.2.6 \
+		is_executable-1.0.1 \
+		itoa-1.0.11 \
+		lcov2cobertura-1.0.3 \
+		lexopt-0.3.0 \
+		libc-0.2.155 \
+		linux-raw-sys-0.4.14 \
+		memchr-2.7.2 \
+		normpath-1.2.0 \
+		once_cell-1.19.0 \
+		opener-0.7.1 \
+		os_pipe-1.1.5 \
+		proc-macro2-1.0.82 \
+		quick-xml-0.31.0 \
+		quote-1.0.36 \
+		redox_syscall-0.4.1 \
+		regex-1.10.4 \
+		regex-automata-0.4.6 \
+		regex-syntax-0.8.3 \
+		rustc-demangle-0.1.24 \
+		rustix-0.38.34 \
+		rustversion-1.0.17 \
+		ruzstd-0.6.0 \
+		ryu-1.0.18 \
+		same-file-1.0.6 \
+		serde-1.0.202 \
+		serde_derive-1.0.202 \
+		serde_json-1.0.117 \
+		serde_spanned-0.6.6 \
+		shared_child-1.0.0 \
+		shell-escape-0.1.5 \
+		syn-1.0.109 \
+		syn-2.0.64 \
+		tar-0.4.40 \
+		tempfile-3.10.1 \
+		termcolor-1.4.1 \
+		toml_datetime-0.6.6 \
+		toml_edit-0.22.13 \
+		unicode-ident-1.0.12 \
+		walkdir-2.5.0 \
+		winapi-0.3.9 \
+		winapi-i686-pc-windows-gnu-0.4.0 \
+		winapi-util-0.1.8 \
+		winapi-x86_64-pc-windows-gnu-0.4.0 \
+		windows-sys-0.52.0 \
+		windows-targets-0.52.5 \
+		windows_aarch64_gnullvm-0.52.5 \
+		windows_aarch64_msvc-0.52.5 \
+		windows_i686_gnu-0.52.5 \
+		windows_i686_gnullvm-0.52.5 \
+		windows_i686_msvc-0.52.5 \
+		windows_x86_64_gnu-0.52.5 \
+		windows_x86_64_gnullvm-0.52.5 \
+		windows_x86_64_msvc-0.52.5 \
+		winnow-0.6.8 \
+		xattr-1.3.1
+
+PLIST_FILES=	bin/${PORTNAME}
+
+post-install:
+	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/${PORTNAME}
+
+.include <bsd.port.mk>
diff --git a/devel/cargo-llvm-cov/distinfo b/devel/cargo-llvm-cov/distinfo
new file mode 100644
index 000000000000..8e8b2fbf254d
--- /dev/null
+++ b/devel/cargo-llvm-cov/distinfo
@@ -0,0 +1,157 @@
+TIMESTAMP = 1716081742
+SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916
+SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311
+SHA256 (rust/crates/anyhow-1.0.86.crate) = b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da
+SIZE (rust/crates/anyhow-1.0.86.crate) = 46741
+SHA256 (rust/crates/autocfg-1.3.0.crate) = 0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0
+SIZE (rust/crates/autocfg-1.3.0.crate) = 16524
+SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
+SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
+SHA256 (rust/crates/bitflags-2.5.0.crate) = cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1
+SIZE (rust/crates/bitflags-2.5.0.crate) = 43821
+SHA256 (rust/crates/bstr-1.9.1.crate) = 05efc5cfd9110c8416e471df0e96702d58690178e206e61b7173706673c93706
+SIZE (rust/crates/bstr-1.9.1.crate) = 380305
+SHA256 (rust/crates/byteorder-1.5.0.crate) = 1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b
+SIZE (rust/crates/byteorder-1.5.0.crate) = 23288
+SHA256 (rust/crates/camino-1.1.7.crate) = e0ec6b951b160caa93cc0c7b209e5a3bff7aae9062213451ac99493cd844c239
+SIZE (rust/crates/camino-1.1.7.crate) = 36204
+SHA256 (rust/crates/cargo-config2-0.1.26.crate) = d83ce0be8bd1479e5de6202def660e6c7e27e4e0599bffa4fed05bd380ec2ede
+SIZE (rust/crates/cargo-config2-0.1.26.crate) = 63535
+SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
+SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
+SHA256 (rust/crates/derive_more-0.99.17.crate) = 4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321
+SIZE (rust/crates/derive_more-0.99.17.crate) = 55771
+SHA256 (rust/crates/duct-0.13.7.crate) = e4ab5718d1224b63252cd0c6f74f6480f9ffeb117438a2e0f5cf6d9a4798929c
+SIZE (rust/crates/duct-0.13.7.crate) = 30055
+SHA256 (rust/crates/easy-ext-1.0.1.crate) = 49457524c7e65648794c98283282a0b7c73b10018e7091f1cdcfff314fd7ae59
+SIZE (rust/crates/easy-ext-1.0.1.crate) = 27914
+SHA256 (rust/crates/equivalent-1.0.1.crate) = 5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5
+SIZE (rust/crates/equivalent-1.0.1.crate) = 6615
+SHA256 (rust/crates/errno-0.3.9.crate) = 534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba
+SIZE (rust/crates/errno-0.3.9.crate) = 10690
+SHA256 (rust/crates/fastrand-2.1.0.crate) = 9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a
+SIZE (rust/crates/fastrand-2.1.0.crate) = 14907
+SHA256 (rust/crates/filetime-0.2.23.crate) = 1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd
+SIZE (rust/crates/filetime-0.2.23.crate) = 14942
+SHA256 (rust/crates/fs-err-2.11.0.crate) = 88a41f105fe1d5b6b34b2055e3dc59bb79b46b48b2040b9e6c7b4b5de097aa41
+SIZE (rust/crates/fs-err-2.11.0.crate) = 20449
+SHA256 (rust/crates/glob-0.3.1.crate) = d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b
+SIZE (rust/crates/glob-0.3.1.crate) = 18880
+SHA256 (rust/crates/hashbrown-0.14.5.crate) = e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1
+SIZE (rust/crates/hashbrown-0.14.5.crate) = 141498
+SHA256 (rust/crates/home-0.5.9.crate) = e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5
+SIZE (rust/crates/home-0.5.9.crate) = 8760
+SHA256 (rust/crates/indexmap-2.2.6.crate) = 168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26
+SIZE (rust/crates/indexmap-2.2.6.crate) = 82420
+SHA256 (rust/crates/is_executable-1.0.1.crate) = fa9acdc6d67b75e626ad644734e8bc6df893d9cd2a834129065d3dd6158ea9c8
+SIZE (rust/crates/is_executable-1.0.1.crate) = 9550
+SHA256 (rust/crates/itoa-1.0.11.crate) = 49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b
+SIZE (rust/crates/itoa-1.0.11.crate) = 10563
+SHA256 (rust/crates/lcov2cobertura-1.0.3.crate) = 13dbf995693421c277b440a71144e33246d8a76808418f7430329e44b2e95c03
+SIZE (rust/crates/lcov2cobertura-1.0.3.crate) = 10335
+SHA256 (rust/crates/lexopt-0.3.0.crate) = baff4b617f7df3d896f97fe922b64817f6cd9a756bb81d40f8883f2f66dcb401
+SIZE (rust/crates/lexopt-0.3.0.crate) = 24767
+SHA256 (rust/crates/libc-0.2.155.crate) = 97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c
+SIZE (rust/crates/libc-0.2.155.crate) = 743539
+SHA256 (rust/crates/linux-raw-sys-0.4.14.crate) = 78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89
+SIZE (rust/crates/linux-raw-sys-0.4.14.crate) = 1826665
+SHA256 (rust/crates/memchr-2.7.2.crate) = 6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d
+SIZE (rust/crates/memchr-2.7.2.crate) = 96220
+SHA256 (rust/crates/normpath-1.2.0.crate) = 5831952a9476f2fed74b77d74182fa5ddc4d21c72ec45a333b250e3ed0272804
+SIZE (rust/crates/normpath-1.2.0.crate) = 20107
+SHA256 (rust/crates/once_cell-1.19.0.crate) = 3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92
+SIZE (rust/crates/once_cell-1.19.0.crate) = 33046
+SHA256 (rust/crates/opener-0.7.1.crate) = f8df34be653210fbe9ffaff41d3b92721c56ce82dfee58ee684f9afb5e3a90c0
+SIZE (rust/crates/opener-0.7.1.crate) = 19186
+SHA256 (rust/crates/os_pipe-1.1.5.crate) = 57119c3b893986491ec9aa85056780d3a0f3cf4da7cc09dd3650dbd6c6738fb9
+SIZE (rust/crates/os_pipe-1.1.5.crate) = 11430
+SHA256 (rust/crates/proc-macro2-1.0.82.crate) = 8ad3d49ab951a01fbaafe34f2ec74122942fe18a3f9814c3268f1bb72042131b
+SIZE (rust/crates/proc-macro2-1.0.82.crate) = 48452
+SHA256 (rust/crates/quick-xml-0.31.0.crate) = 1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33
+SIZE (rust/crates/quick-xml-0.31.0.crate) = 172236
+SHA256 (rust/crates/quote-1.0.36.crate) = 0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7
+SIZE (rust/crates/quote-1.0.36.crate) = 28507
+SHA256 (rust/crates/redox_syscall-0.4.1.crate) = 4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa
+SIZE (rust/crates/redox_syscall-0.4.1.crate) = 24858
+SHA256 (rust/crates/regex-1.10.4.crate) = c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c
+SIZE (rust/crates/regex-1.10.4.crate) = 253191
+SHA256 (rust/crates/regex-automata-0.4.6.crate) = 86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea
+SIZE (rust/crates/regex-automata-0.4.6.crate) = 617565
+SHA256 (rust/crates/regex-syntax-0.8.3.crate) = adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56
+SIZE (rust/crates/regex-syntax-0.8.3.crate) = 347497
+SHA256 (rust/crates/rustc-demangle-0.1.24.crate) = 719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f
+SIZE (rust/crates/rustc-demangle-0.1.24.crate) = 29047
+SHA256 (rust/crates/rustix-0.38.34.crate) = 70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f
+SIZE (rust/crates/rustix-0.38.34.crate) = 365160
+SHA256 (rust/crates/rustversion-1.0.17.crate) = 955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6
+SIZE (rust/crates/rustversion-1.0.17.crate) = 17621
+SHA256 (rust/crates/ruzstd-0.6.0.crate) = 5174a470eeb535a721ae9fdd6e291c2411a906b96592182d05217591d5c5cf7b
+SIZE (rust/crates/ruzstd-0.6.0.crate) = 53210
+SHA256 (rust/crates/ryu-1.0.18.crate) = f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f
+SIZE (rust/crates/ryu-1.0.18.crate) = 47713
+SHA256 (rust/crates/same-file-1.0.6.crate) = 93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502
+SIZE (rust/crates/same-file-1.0.6.crate) = 10183
+SHA256 (rust/crates/serde-1.0.202.crate) = 226b61a0d411b2ba5ff6d7f73a476ac4f8bb900373459cd00fab8512828ba395
+SIZE (rust/crates/serde-1.0.202.crate) = 77722
+SHA256 (rust/crates/serde_derive-1.0.202.crate) = 6048858004bcff69094cd972ed40a32500f153bd3be9f716b2eed2e8217c4838
+SIZE (rust/crates/serde_derive-1.0.202.crate) = 55867
+SHA256 (rust/crates/serde_json-1.0.117.crate) = 455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3
+SIZE (rust/crates/serde_json-1.0.117.crate) = 146921
+SHA256 (rust/crates/serde_spanned-0.6.6.crate) = 79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0
+SIZE (rust/crates/serde_spanned-0.6.6.crate) = 9120
+SHA256 (rust/crates/shared_child-1.0.0.crate) = b0d94659ad3c2137fef23ae75b03d5241d633f8acded53d672decfa0e6e0caef
+SIZE (rust/crates/shared_child-1.0.0.crate) = 8939
+SHA256 (rust/crates/shell-escape-0.1.5.crate) = 45bb67a18fa91266cc7807181f62f9178a6873bfad7dc788c42e6430db40184f
+SIZE (rust/crates/shell-escape-0.1.5.crate) = 6847
+SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237
+SIZE (rust/crates/syn-1.0.109.crate) = 237611
+SHA256 (rust/crates/syn-2.0.64.crate) = 7ad3dee41f36859875573074334c200d1add8e4a87bb37113ebd31d926b7b11f
+SIZE (rust/crates/syn-2.0.64.crate) = 264945
+SHA256 (rust/crates/tar-0.4.40.crate) = b16afcea1f22891c49a00c751c7b63b2233284064f11a200fc624137c51e2ddb
+SIZE (rust/crates/tar-0.4.40.crate) = 51844
+SHA256 (rust/crates/tempfile-3.10.1.crate) = 85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1
+SIZE (rust/crates/tempfile-3.10.1.crate) = 33653
+SHA256 (rust/crates/termcolor-1.4.1.crate) = 06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755
+SIZE (rust/crates/termcolor-1.4.1.crate) = 18773
+SHA256 (rust/crates/toml_datetime-0.6.6.crate) = 4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf
+SIZE (rust/crates/toml_datetime-0.6.6.crate) = 11698
+SHA256 (rust/crates/toml_edit-0.22.13.crate) = c127785850e8c20836d49732ae6abfa47616e60bf9d9f57c43c250361a9db96c
+SIZE (rust/crates/toml_edit-0.22.13.crate) = 103518
+SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b
+SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168
+SHA256 (rust/crates/walkdir-2.5.0.crate) = 29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b
+SIZE (rust/crates/walkdir-2.5.0.crate) = 23951
+SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419
+SIZE (rust/crates/winapi-0.3.9.crate) = 1200382
+SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6
+SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = 2918815
+SHA256 (rust/crates/winapi-util-0.1.8.crate) = 4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b
+SIZE (rust/crates/winapi-util-0.1.8.crate) = 12416
+SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
+SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998
+SHA256 (rust/crates/windows-sys-0.52.0.crate) = 282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d
+SIZE (rust/crates/windows-sys-0.52.0.crate) = 2576877
+SHA256 (rust/crates/windows-targets-0.52.5.crate) = 6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb
+SIZE (rust/crates/windows-targets-0.52.5.crate) = 6376
+SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.5.crate) = 7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263
+SIZE (rust/crates/windows_aarch64_gnullvm-0.52.5.crate) = 433266
+SHA256 (rust/crates/windows_aarch64_msvc-0.52.5.crate) = 9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6
+SIZE (rust/crates/windows_aarch64_msvc-0.52.5.crate) = 827944
+SHA256 (rust/crates/windows_i686_gnu-0.52.5.crate) = 88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670
+SIZE (rust/crates/windows_i686_gnu-0.52.5.crate) = 875699
+SHA256 (rust/crates/windows_i686_gnullvm-0.52.5.crate) = 87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9
+SIZE (rust/crates/windows_i686_gnullvm-0.52.5.crate) = 473064
+SHA256 (rust/crates/windows_i686_msvc-0.52.5.crate) = db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf
+SIZE (rust/crates/windows_i686_msvc-0.52.5.crate) = 895404
+SHA256 (rust/crates/windows_x86_64_gnu-0.52.5.crate) = 4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9
+SIZE (rust/crates/windows_x86_64_gnu-0.52.5.crate) = 831539
+SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.5.crate) = 852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596
+SIZE (rust/crates/windows_x86_64_gnullvm-0.52.5.crate) = 433246
+SHA256 (rust/crates/windows_x86_64_msvc-0.52.5.crate) = bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0
+SIZE (rust/crates/windows_x86_64_msvc-0.52.5.crate) = 827905
+SHA256 (rust/crates/winnow-0.6.8.crate) = c3c52e9c97a68071b23e836c9380edae937f17b9c4667bd021973efc689f618d
+SIZE (rust/crates/winnow-0.6.8.crate) = 159453
+SHA256 (rust/crates/xattr-1.3.1.crate) = 8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f
+SIZE (rust/crates/xattr-1.3.1.crate) = 12580
+SHA256 (taiki-e-cargo-llvm-cov-v0.6.9_GH0.tar.gz) = 0a1b63922cfb6f2526a61bc5e13868c3f3345aa3af7337df07a69eab3d4b243e
+SIZE (taiki-e-cargo-llvm-cov-v0.6.9_GH0.tar.gz) = 98691
diff --git a/devel/cargo-llvm-cov/pkg-descr b/devel/cargo-llvm-cov/pkg-descr
new file mode 100644
index 000000000000..dde1f0557e53
--- /dev/null
+++ b/devel/cargo-llvm-cov/pkg-descr
@@ -0,0 +1,12 @@
+cargo-llvm-cov is a Cargo subcommand to easily use LLVM source-based code
+coverage.
+
+This is a wrapper around rustc instrument-coverage command and provides:
+- Generate very precise coverage data. (line, region, and branch coverage.
+  branch coverage is currently optional and requires nightly, etc)
+- Support `cargo test`, `cargo run`, and `cargo nextest` with command-line
+  interface compatible with cargo.
+- Support for proc-macro, including coverage of UI tests.
+- Support for doc tests. (this is currently optional and requires nightly.
+- Fast because it does not introduce extra layers between rustc, cargo, and
+  llvm-tools.