diff options
| author | Ross Burton <ross@burtonini.com> | 2021-11-02 12:32:34 +0000 |
|---|---|---|
| committer | Khem Raj <raj.khem@gmail.com> | 2021-11-02 08:06:11 -0700 |
| commit | 94fc0589b50f43afd1a19303a40389652929bf38 (patch) | |
| tree | 11fc9d6ebb67e56420d9cf3249ade4c68d7ebac3 | |
| parent | 32d397a06d4cd4b6c05dbacc473d06e84283c1c4 (diff) | |
| download | meta-openembedded-94fc0589b50f43afd1a19303a40389652929bf38.tar.gz | |
python3-imgtool: add recipe
imgtool is part of MCUboot, used to sign images and manage keys.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
| -rw-r--r-- | meta-python/recipes-devtools/python/python3-imgtool/cbor2.patch | 67 | ||||
| -rw-r--r-- | meta-python/recipes-devtools/python/python3-imgtool_1.8.0.bb | 14 |
2 files changed, 81 insertions, 0 deletions
diff --git a/meta-python/recipes-devtools/python/python3-imgtool/cbor2.patch b/meta-python/recipes-devtools/python/python3-imgtool/cbor2.patch new file mode 100644 index 0000000000..3e8c202bce --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-imgtool/cbor2.patch | |||
| @@ -0,0 +1,67 @@ | |||
| 1 | Upstream-Status: Submitted [https://github.com/mcu-tools/mcuboot/pull/1190] | ||
| 2 | Signed-off-by: Ross Burton <ross.burton@arm.com> | ||
| 3 | |||
| 4 | From f9c6f31b936d34df9a6551609cb16ed9c348be88 Mon Sep 17 00:00:00 2001 | ||
| 5 | From: Ross Burton <ross.burton@arm.com> | ||
| 6 | Date: Tue, 2 Nov 2021 11:12:04 +0000 | ||
| 7 | Subject: [PATCH] imgtool: prefer cbor2 over cbor | ||
| 8 | |||
| 9 | The cbor module is unmaintained, with the last release in 2016[1]. The | ||
| 10 | cbor2 module however is under active development and was last released | ||
| 11 | just last month[2]. | ||
| 12 | |||
| 13 | As the APIs are identical, we can import cbor2 and if that fails fall | ||
| 14 | back to cbor. | ||
| 15 | |||
| 16 | [1] https://pypi.org/project/cbor/#history | ||
| 17 | [2] https://pypi.org/project/cbor2/#history | ||
| 18 | |||
| 19 | Closes #1189 | ||
| 20 | |||
| 21 | Signed-off-by: Ross Burton <ross.burton@arm.com> | ||
| 22 | --- | ||
| 23 | scripts/imgtool.nix | 2 +- | ||
| 24 | scripts/imgtool/boot_record.py | 7 +++++-- | ||
| 25 | scripts/requirements.txt | 2 +- | ||
| 26 | scripts/setup.py | 2 +- | ||
| 27 | 4 files changed, 8 insertions(+), 5 deletions(-) | ||
| 28 | |||
| 29 | diff --git a/scripts/imgtool/boot_record.py b/scripts/imgtool/boot_record.py | ||
| 30 | index ac433aa..6f0045e 100644 | ||
| 31 | --- a/scripts/imgtool/boot_record.py | ||
| 32 | +++ b/scripts/imgtool/boot_record.py | ||
| 33 | @@ -16,8 +16,11 @@ | ||
| 34 | # limitations under the License. | ||
| 35 | |||
| 36 | from enum import Enum | ||
| 37 | -import cbor | ||
| 38 | |||
| 39 | +try: | ||
| 40 | + from cbor2 import dumps | ||
| 41 | +except ImportError: | ||
| 42 | + from cbor import dumps | ||
| 43 | |||
| 44 | class SwComponent(int, Enum): | ||
| 45 | """ | ||
| 46 | @@ -46,4 +49,4 @@ def create_sw_component_data(sw_type, sw_version, sw_measurement_description, | ||
| 47 | # list because later it will be modified by the bootloader. | ||
| 48 | properties[SwComponent.MEASUREMENT_VALUE] = sw_measurement_value | ||
| 49 | |||
| 50 | - return cbor.dumps(properties) | ||
| 51 | + return dumps(properties) | ||
| 52 | diff --git a/scripts/setup.py b/scripts/setup.py | ||
| 53 | index a228ea3..692cfb7 100644 | ||
| 54 | --- a/scripts/setup.py | ||
| 55 | +++ b/scripts/setup.py | ||
| 56 | @@ -17,7 +17,7 @@ setuptools.setup( | ||
| 57 | 'cryptography>=2.4.2', | ||
| 58 | 'intelhex>=2.2.1', | ||
| 59 | 'click', | ||
| 60 | - 'cbor>=1.0.0', | ||
| 61 | + 'cbor2', | ||
| 62 | ], | ||
| 63 | entry_points={ | ||
| 64 | "console_scripts": ["imgtool=imgtool.main:imgtool"] | ||
| 65 | -- | ||
| 66 | 2.25.1 | ||
| 67 | |||
diff --git a/meta-python/recipes-devtools/python/python3-imgtool_1.8.0.bb b/meta-python/recipes-devtools/python/python3-imgtool_1.8.0.bb new file mode 100644 index 0000000000..c957fce3ac --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-imgtool_1.8.0.bb | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | SUMMARY = "MCUboot's image signing and key management tool" | ||
| 2 | |||
| 3 | LICENSE = "Apache-2.0" | ||
| 4 | LIC_FILES_CHKSUM = "file://imgtool/main.py;beginline=3;endline=18;md5=9965f09ae52c04886a1f04e13ccdce57" | ||
| 5 | |||
| 6 | SRC_URI += "file://cbor2.patch;striplevel=2" | ||
| 7 | |||
| 8 | SRC_URI[sha256sum] = "4858f5c5f48cfa4a0bb99e60d00aa291172a7ecc2afe4fb77ed96121f59b6e2f" | ||
| 9 | |||
| 10 | inherit pypi setuptools3 | ||
| 11 | |||
| 12 | RDEPENDS:${PN} = "python3-cbor2 python3-click python3-cryptography python3-intelhex" | ||
| 13 | |||
| 14 | BBCLASSEXTEND = "native nativesdk" | ||
