[Buildroot] [PATCH v6 1/5] package/bmap-tools: new package
Yann E. MORIN
yann.morin.1998 at free.fr
Fri Jun 25 12:35:14 UTC 2021
Thomas, All,
On 2021-06-21 23:01 +0200, Thomas Petazzoni spake thusly:
> From: Nicolas Carrier <nicolas.carrier at orolia.com>
>
> Signed-off-by: Nicolas Carrier <nicolas.carrier at orolia.com>
> [Thomas: numerous reworks, add myself in DEVELOPERS]
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
I am not too sure what bmap provides over 'dd conv=sparse'...
dd has a blocking size, which can be adjusted to the underlying device,
and does not need the input file to actually be sparse (i.e. any
block-aligned runs of zeroes will not be transfered)...
Also, we have seen in the past that not writing zero-blocks on the
destination device, can lead to filesystem corruption, because all-zero
filesystem metadata suddenly may no longer be all-zero...
But oh well...
Applied to master, thanks.
Regards,
Yann E. MORIN.
> ---
> DEVELOPERS | 2 ++
> package/Config.in | 1 +
> package/bmap-tools/Config.in | 44 ++++++++++++++++++++++++++++++
> package/bmap-tools/bmap-tools.hash | 3 ++
> package/bmap-tools/bmap-tools.mk | 13 +++++++++
> 5 files changed, 63 insertions(+)
> create mode 100644 package/bmap-tools/Config.in
> create mode 100644 package/bmap-tools/bmap-tools.hash
> create mode 100644 package/bmap-tools/bmap-tools.mk
>
> diff --git a/DEVELOPERS b/DEVELOPERS
> index f6621e9670..ad6ad79ade 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1985,6 +1985,7 @@ F: board/intel/galileo/
> F: configs/galileo_defconfig
>
> N: Nicolas Carrier <nicolas.carrier at orolia.com>
> +F: package/bmap-tools/
> F: package/php-xdebug/
>
> N: Nicolas Cavallari <nicolas.cavallari at green-communications.fr>
> @@ -2635,6 +2636,7 @@ F: configs/stm32mp157c_dk2_defconfig
> F: package/android-tools/
> F: package/b43-firmware/
> F: package/b43-fwcutter/
> +F: package/bmap-tools/
> F: package/c-periphery/
> F: package/cdrkit/
> F: package/cifs-utils/
> diff --git a/package/Config.in b/package/Config.in
> index cb8ece4919..f3d6503427 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -196,6 +196,7 @@ menu "Filesystem and flash utilities"
> source "package/aufs/Config.in"
> source "package/aufs-util/Config.in"
> source "package/autofs/Config.in"
> + source "package/bmap-tools/Config.in"
> source "package/btrfs-progs/Config.in"
> source "package/cifs-utils/Config.in"
> source "package/cpio/Config.in"
> diff --git a/package/bmap-tools/Config.in b/package/bmap-tools/Config.in
> new file mode 100644
> index 0000000000..83b4d92786
> --- /dev/null
> +++ b/package/bmap-tools/Config.in
> @@ -0,0 +1,44 @@
> +config BR2_PACKAGE_BMAP_TOOLS
> + bool "bmap-tools"
> + depends on BR2_PACKAGE_PYTHON3 || BR2_PACKAGE_PYTHON
> + select BR2_PACKAGE_PYTHON3_PYEXPAT if BR2_PACKAGE_PYTHON3 # runtime
> + select BR2_PACKAGE_PYTHON_PYEXPAT if BR2_PACKAGE_PYTHON # runtime
> + select BR2_PACKAGE_PYTHON_SETUPTOOLS # runtime, pkg_resources
> + select BR2_PACKAGE_PYTHON_SIX # runtime
> + help
> + Tool to flash image files to block devices using the block map
> + bmaptool is a generic tool for creating the block map (bmap)
> + for a file, and copying files using the block map. The idea is
> + that large file containing unused blocks, like raw system
> + image files, can be copied or flashed a lot faster with
> + bmaptool than with traditional tools like "dd" or "cp".
> +
> + Relevant optional dependencies:
> +
> + - Busybox compiled with CONFIG_BZIP2, or BR2_PACKAGE_BZIP2,
> + to support bz2 compressed images
> +
> + - BR2_PACKAGE_PIGZ for optimized gzip decompression
> +
> + - Busybox compiled with CONFIG_LZOP, or BR2_PACKAGE_LZOP, to
> + support lzo compressed images.
> +
> + - BR2_PACKAGE_ZIP to support zip compressed images
> +
> + - BR2_PACKAGE_LZ4 to support lz4 compressed images
> +
> + - BR2_PACKAGE_ZSTD to support zstd compressed images
> +
> + - Busybox compiled CONFIG_FEATURE_SEAMLESS_* or
> + BR2_PACKAGE_TAR to support tar compressed images
> +
> + - BR2_PACKAGE_OPENSSH to retrieve images over SSH.
> +
> + - BR2_PACKAGE_SSHPASS to retrieve images over SSH if
> + password authentication is used.
> +
> + Image signature verification is not supported as
> + python-gpgme is not available. Optimized bzip2 decompression
> + is not supported as pbzip2 is not available.
> +
> + https://github.com/intel/bmap-tools
> diff --git a/package/bmap-tools/bmap-tools.hash b/package/bmap-tools/bmap-tools.hash
> new file mode 100644
> index 0000000000..82a570ecac
> --- /dev/null
> +++ b/package/bmap-tools/bmap-tools.hash
> @@ -0,0 +1,3 @@
> +# Locally calculated
> +sha256 0658afb972e7221aa16fece3f84e29e5102e901c929253d7fb6040bde28243f7 bmap-tools-3.6.tar.gz
> +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
> diff --git a/package/bmap-tools/bmap-tools.mk b/package/bmap-tools/bmap-tools.mk
> new file mode 100644
> index 0000000000..c8b41c225f
> --- /dev/null
> +++ b/package/bmap-tools/bmap-tools.mk
> @@ -0,0 +1,13 @@
> +################################################################################
> +#
> +# bmap-tools
> +#
> +################################################################################
> +
> +BMAP_TOOLS_VERSION = 3.6
> +BMAP_TOOLS_SITE = $(call github,intel,bmap-tools,v$(BMAP_TOOLS_VERSION))
> +BMAP_TOOLS_LICENSE = GPL-2.0
> +BMAP_TOOLS_LICENSE_FILES = COPYING
> +BMAP_TOOLS_SETUP_TYPE = setuptools
> +
> +$(eval $(python-package))
> --
> 2.31.1
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
More information about the buildroot
mailing list