Bladeren bron

package/hyperfine: new package

hyperfine is a benchmark tool written in Rust. It evaluates
execution time of a command passed in arguments and make
a relative comparison if multiple arguments are used at the
same time.
It can be convinient for purposes of Rust-written systems as
it runs in a stable version of Rust.

The package has been checked with correct formatting and
without typos:
./utils/check-package package/hyperfine/*

A CI test was run on gitlab.com to verify toolchain compatibilities.

Signed-off-by: Nicolas Tran <nicolas.tran@smile.fr>
Reviewed-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Nicolas Tran 3 jaren geleden
bovenliggende
commit
321cec7b9c
5 gewijzigde bestanden met toevoegingen van 31 en 0 verwijderingen
  1. 3 0
      DEVELOPERS
  2. 1 0
      package/Config.in
  3. 11 0
      package/hyperfine/Config.in
  4. 4 0
      package/hyperfine/hyperfine.hash
  5. 12 0
      package/hyperfine/hyperfine.mk

+ 3 - 0
DEVELOPERS

@@ -2173,6 +2173,9 @@ N:	Nicolas Serafini <nicolas.serafini@ik.me>
 F:	package/exiv2/
 F:	package/exiv2/
 F:	package/ofono/
 F:	package/ofono/
 
 
+N:	Nicolas Tran <nicolas.tran@smile.fr>
+F:	package/hyperfine/
+
 N:	Niklas Cassel <niklas.cassel@wdc.com>
 N:	Niklas Cassel <niklas.cassel@wdc.com>
 F:	configs/qemu_riscv64_nommu_virt_defconfig
 F:	configs/qemu_riscv64_nommu_virt_defconfig
 
 

+ 1 - 0
package/Config.in

@@ -106,6 +106,7 @@ menu "Debugging, profiling and benchmark"
 	source "package/fwts/Config.in"
 	source "package/fwts/Config.in"
 	source "package/gdb/Config.in"
 	source "package/gdb/Config.in"
 	source "package/google-breakpad/Config.in"
 	source "package/google-breakpad/Config.in"
+	source "package/hyperfine/Config.in"
 	source "package/iozone/Config.in"
 	source "package/iozone/Config.in"
 	source "package/kexec/Config.in"
 	source "package/kexec/Config.in"
 	source "package/kexec-lite/Config.in"
 	source "package/kexec-lite/Config.in"

+ 11 - 0
package/hyperfine/Config.in

@@ -0,0 +1,11 @@
+config BR2_PACKAGE_HYPERFINE
+	bool "hyperfine"
+	depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS
+	select BR2_PACKAGE_HOST_RUSTC
+	help
+	  hyperfine is a benchmark tool written in Rust. It evaluates
+	  execution time of a command passed in arguments and make a
+	  relative comparison if multiple arguments are used at the
+	  same time.
+
+	  https://github.com/sharkdp/hyperfine

+ 4 - 0
package/hyperfine/hyperfine.hash

@@ -0,0 +1,4 @@
+# Locally computed
+sha256  28fcd72c556b4ca2150577217a4d7d51907b7e00ff86b764943d068202a92ace  hyperfine-1.14.0.tar.gz
+sha256  c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4  LICENSE-APACHE
+sha256  1dfee18c2ff07ce551de4d6a1d2db158c0380746b488a7f0d08c8e0d3568b7c3  LICENSE-MIT

+ 12 - 0
package/hyperfine/hyperfine.mk

@@ -0,0 +1,12 @@
+################################################################################
+#
+# hyperfine
+#
+################################################################################
+
+HYPERFINE_VERSION = 1.14.0
+HYPERFINE_SITE = $(call github,sharkdp,hyperfine,v$(HYPERFINE_VERSION))
+HYPERFINE_LICENSE = Apache-2.0 or MIT
+HYPERFINE_LICENSE_FILES = LICENSE-APACHE LICENSE-MIT
+
+$(eval $(cargo-package))