From: Deepesh Varatharajan <[email protected]> ripgrep is a fast, line-oriented search tool written in Rust. Add recipe for the latest release (15.1.0)
- Recursively searches the current directory using a regex pattern - Respects .gitignore rules - Provides first-class support on Linux - 'rg' is significantly faster than grep More information: https://crates.io/crates/ripgrep Upstream Benchmarks: Task ripgrep GNU grep Speedup vs grep Basic search (Unicode) 536 lines, 0.082s 536 lines, 0.273s ripgrep ~3.3× faster Ignoring gitignore files 447 lines, 0.063s 447 lines, 0.674s ripgrep ~10× faster Large single file (~13GB) 7882 lines, 1.042s 7882 lines, 6.577s ripgrep ~6.3× faster Bechmarks inside qemu (ripgrep built from this recipe): Tool & Command Real Time User Time Sys Time Speedup vs grep ripgrep (rg "printf" /usr) 0.496 s 0.511 s 0.604 s 3.1× faster grep (grep -R "printf" /usr) 1.533 s 0.633 s 0.897 s — Signed-off-by: Deepesh Varatharajan <[email protected]> --- .../ripgrep/ripgrep-crates.inc | 116 ++++++++++++++++++ .../ripgrep/ripgrep_15.1.0.bb | 22 ++++ 2 files changed, 138 insertions(+) create mode 100644 meta-oe/recipes-extended/ripgrep/ripgrep-crates.inc create mode 100644 meta-oe/recipes-extended/ripgrep/ripgrep_15.1.0.bb diff --git a/meta-oe/recipes-extended/ripgrep/ripgrep-crates.inc b/meta-oe/recipes-extended/ripgrep/ripgrep-crates.inc new file mode 100644 index 0000000000..aa7e3f9dd2 --- /dev/null +++ b/meta-oe/recipes-extended/ripgrep/ripgrep-crates.inc @@ -0,0 +1,116 @@ +# Autogenerated with 'bitbake -c update_crates ripgrep' + +# from Cargo.lock +SRC_URI += " \ + crate://crates.io/aho-corasick/1.1.3 \ + crate://crates.io/anyhow/1.0.100 \ + crate://crates.io/bstr/1.12.0 \ + crate://crates.io/cc/1.2.41 \ + crate://crates.io/cfg-if/1.0.4 \ + crate://crates.io/crossbeam-deque/0.8.6 \ + crate://crates.io/crossbeam-epoch/0.9.18 \ + crate://crates.io/crossbeam-utils/0.8.21 \ + crate://crates.io/encoding_rs/0.8.35 \ + crate://crates.io/encoding_rs_io/0.1.7 \ + crate://crates.io/find-msvc-tools/0.1.4 \ + crate://crates.io/getrandom/0.3.4 \ + crate://crates.io/globset/0.4.18 \ + crate://crates.io/grep/0.4.1 \ + crate://crates.io/grep-cli/0.1.12 \ + crate://crates.io/grep-matcher/0.1.8 \ + crate://crates.io/grep-pcre2/0.1.9 \ + crate://crates.io/grep-printer/0.3.1 \ + crate://crates.io/grep-regex/0.1.14 \ + crate://crates.io/grep-searcher/0.1.16 \ + crate://crates.io/ignore/0.4.24 \ + crate://crates.io/itoa/1.0.15 \ + crate://crates.io/jobserver/0.1.34 \ + crate://crates.io/lexopt/0.3.1 \ + crate://crates.io/libc/0.2.177 \ + crate://crates.io/log/0.4.28 \ + crate://crates.io/memchr/2.7.6 \ + crate://crates.io/memmap2/0.9.9 \ + crate://crates.io/pcre2/0.2.11 \ + crate://crates.io/pcre2-sys/0.2.10 \ + crate://crates.io/pkg-config/0.3.32 \ + crate://crates.io/proc-macro2/1.0.101 \ + crate://crates.io/quote/1.0.41 \ + crate://crates.io/r-efi/5.3.0 \ + crate://crates.io/regex-automata/0.4.13 \ + crate://crates.io/regex-syntax/0.8.8 \ + crate://crates.io/ryu/1.0.20 \ + crate://crates.io/same-file/1.0.6 \ + crate://crates.io/serde/1.0.228 \ + crate://crates.io/serde_core/1.0.228 \ + crate://crates.io/serde_derive/1.0.228 \ + crate://crates.io/serde_json/1.0.145 \ + crate://crates.io/shlex/1.3.0 \ + crate://crates.io/syn/2.0.107 \ + crate://crates.io/termcolor/1.4.1 \ + crate://crates.io/textwrap/0.16.2 \ + crate://crates.io/tikv-jemalloc-sys/0.6.1+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7 \ + crate://crates.io/tikv-jemallocator/0.6.1 \ + crate://crates.io/unicode-ident/1.0.20 \ + crate://crates.io/walkdir/2.5.0 \ + crate://crates.io/wasip2/1.0.1+wasi-0.2.4 \ + crate://crates.io/winapi-util/0.1.11 \ + crate://crates.io/windows-link/0.2.1 \ + crate://crates.io/windows-sys/0.61.2 \ + crate://crates.io/wit-bindgen/0.46.0 \ +" + +SRC_URI[aho-corasick-1.1.3.sha256sum] = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +SRC_URI[anyhow-1.0.100.sha256sum] = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" +SRC_URI[bstr-1.12.0.sha256sum] = "234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4" +SRC_URI[cc-1.2.41.sha256sum] = "ac9fe6cdbb24b6ade63616c0a0688e45bb56732262c158df3c0c4bea4ca47cb7" +SRC_URI[cfg-if-1.0.4.sha256sum] = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" +SRC_URI[crossbeam-deque-0.8.6.sha256sum] = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" +SRC_URI[crossbeam-epoch-0.9.18.sha256sum] = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +SRC_URI[crossbeam-utils-0.8.21.sha256sum] = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" +SRC_URI[encoding_rs-0.8.35.sha256sum] = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" +SRC_URI[encoding_rs_io-0.1.7.sha256sum] = "1cc3c5651fb62ab8aa3103998dade57efdd028544bd300516baa31840c252a83" +SRC_URI[find-msvc-tools-0.1.4.sha256sum] = "52051878f80a721bb68ebfbc930e07b65ba72f2da88968ea5c06fd6ca3d3a127" +SRC_URI[getrandom-0.3.4.sha256sum] = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" +SRC_URI[globset-0.4.18.sha256sum] = "52dfc19153a48bde0cbd630453615c8151bce3a5adfac7a0aebfbf0a1e1f57e3" +SRC_URI[grep-0.4.1.sha256sum] = "309217bc53e2c691c314389c7fa91f9cd1a998cda19e25544ea47d94103880c3" +SRC_URI[grep-cli-0.1.12.sha256sum] = "cf32d263c5d5cc2a23ce587097f5ddafdb188492ba2e6fb638eaccdc22453631" +SRC_URI[grep-matcher-0.1.8.sha256sum] = "36d7b71093325ab22d780b40d7df3066ae4aebb518ba719d38c697a8228a8023" +SRC_URI[grep-pcre2-0.1.9.sha256sum] = "667bb90a3ee51f8f6e2aadf1d0f106ea42efca4cf28f0e71f0fdec1137d7f9b0" +SRC_URI[grep-printer-0.3.1.sha256sum] = "fd76035e87871f51c1ee5b793e32122b3ccf9c692662d9622ef1686ff5321acb" +SRC_URI[grep-regex-0.1.14.sha256sum] = "0ce0c256c3ad82bcc07b812c15a45ec1d398122e8e15124f96695234db7112ef" +SRC_URI[grep-searcher-0.1.16.sha256sum] = "ac63295322dc48ebb20a25348147905d816318888e64f531bfc2a2bc0577dc34" +SRC_URI[ignore-0.4.24.sha256sum] = "81776e6f9464432afcc28d03e52eb101c93b6f0566f52aef2427663e700f0403" +SRC_URI[itoa-1.0.15.sha256sum] = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" +SRC_URI[jobserver-0.1.34.sha256sum] = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" +SRC_URI[lexopt-0.3.1.sha256sum] = "9fa0e2a1fcbe2f6be6c42e342259976206b383122fc152e872795338b5a3f3a7" +SRC_URI[libc-0.2.177.sha256sum] = "2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976" +SRC_URI[log-0.4.28.sha256sum] = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" +SRC_URI[memchr-2.7.6.sha256sum] = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273" +SRC_URI[memmap2-0.9.9.sha256sum] = "744133e4a0e0a658e1374cf3bf8e415c4052a15a111acd372764c55b4177d490" +SRC_URI[pcre2-0.2.11.sha256sum] = "9e970b0fcce0c7ee6ef662744ff711f21ccd6f11b7cf03cd187a80e89797fc67" +SRC_URI[pcre2-sys-0.2.10.sha256sum] = "18b9073c1a2549bd409bf4a32c94d903bb1a09bf845bc306ae148897fa0760a4" +SRC_URI[pkg-config-0.3.32.sha256sum] = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" +SRC_URI[proc-macro2-1.0.101.sha256sum] = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" +SRC_URI[quote-1.0.41.sha256sum] = "ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1" +SRC_URI[r-efi-5.3.0.sha256sum] = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" +SRC_URI[regex-automata-0.4.13.sha256sum] = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c" +SRC_URI[regex-syntax-0.8.8.sha256sum] = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58" +SRC_URI[ryu-1.0.20.sha256sum] = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +SRC_URI[same-file-1.0.6.sha256sum] = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +SRC_URI[serde-1.0.228.sha256sum] = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" +SRC_URI[serde_core-1.0.228.sha256sum] = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" +SRC_URI[serde_derive-1.0.228.sha256sum] = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" +SRC_URI[serde_json-1.0.145.sha256sum] = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" +SRC_URI[shlex-1.3.0.sha256sum] = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" +SRC_URI[syn-2.0.107.sha256sum] = "2a26dbd934e5451d21ef060c018dae56fc073894c5a7896f882928a76e6d081b" +SRC_URI[termcolor-1.4.1.sha256sum] = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" +SRC_URI[textwrap-0.16.2.sha256sum] = "c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057" +SRC_URI[tikv-jemalloc-sys-0.6.1+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7.sha256sum] = "cd8aa5b2ab86a2cefa406d889139c162cbb230092f7d1d7cbc1716405d852a3b" +SRC_URI[tikv-jemallocator-0.6.1.sha256sum] = "0359b4327f954e0567e69fb191cf1436617748813819c94b8cd4a431422d053a" +SRC_URI[unicode-ident-1.0.20.sha256sum] = "462eeb75aeb73aea900253ce739c8e18a67423fadf006037cd3ff27e82748a06" +SRC_URI[walkdir-2.5.0.sha256sum] = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +SRC_URI[wasip2-1.0.1+wasi-0.2.4.sha256sum] = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7" +SRC_URI[winapi-util-0.1.11.sha256sum] = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" +SRC_URI[windows-link-0.2.1.sha256sum] = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" +SRC_URI[windows-sys-0.61.2.sha256sum] = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +SRC_URI[wit-bindgen-0.46.0.sha256sum] = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" diff --git a/meta-oe/recipes-extended/ripgrep/ripgrep_15.1.0.bb b/meta-oe/recipes-extended/ripgrep/ripgrep_15.1.0.bb new file mode 100644 index 0000000000..7bb6be1cb6 --- /dev/null +++ b/meta-oe/recipes-extended/ripgrep/ripgrep_15.1.0.bb @@ -0,0 +1,22 @@ +SUMMARY = "ripgrep - Fast, recursive search tool like grep, written in Rust" +HOMEPAGE = "https://crates.io/crates/ripgrep" +DESCRIPTION = "ripgrep recursively searches directories for a regex pattern \ + while respecting .gitignore. It's fast, safe, and written \ + entirely in Rust." + +LICENSE = "MIT" +LIC_FILES_CHKSUM = " \ + file://LICENSE-MIT;md5=8d0d0aa488af0ab9aafa3b85a7fc8e12 \ +" + +SRC_URI = "crate://crates.io/ripgrep/${PV};name=ripgrep" +SRC_URI[ripgrep.sha256sum] = "f388c4955f85477c28a8667355819844a06614b083c23517f0e86bd1d6d82b73" +S = "${CARGO_VENDORING_DIRECTORY}/ripgrep-${PV}" + +inherit cargo cargo-update-recipe-crates + +DEPENDS += "libstd-rs" + +require ${BPN}-crates.inc + +BBCLASSEXTEND = "native" -- 2.49.0
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#122403): https://lists.openembedded.org/g/openembedded-devel/message/122403 Mute This Topic: https://lists.openembedded.org/mt/116691253/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
