From: Uladzimir Bely <ubely@ilbers.de>
To: isar-users@googlegroups.com
Subject: [PATCH v2 5/5] api: Rename IMAGE_TYPE to IMAGE_FSTYPES
Date: Tue, 28 Sep 2021 09:13:52 +0200 [thread overview]
Message-ID: <20210928071352.31382-6-ubely@ilbers.de> (raw)
In-Reply-To: <20210928071352.31382-1-ubely@ilbers.de>
The variable is renamed to get closer to OpenEmbedded/Poky
variables naming. If user still uses IMAGE_TYPE, it will be used
with the deprecation warning shown.
Signed-off-by: Uladzimir Bely <ubely@ilbers.de>
---
RECIPE-API-CHANGELOG.md | 5 ++++
doc/user_manual.md | 23 +++++++++++--------
meta-isar/conf/machine/bananapi.conf | 2 +-
meta-isar/conf/machine/container-amd64.conf | 2 +-
meta-isar/conf/machine/de0-nano-soc.conf | 2 +-
meta-isar/conf/machine/hikey.conf | 2 +-
meta-isar/conf/machine/nand-ubi-demo.conf | 2 +-
meta-isar/conf/machine/nanopi-neo.conf | 2 +-
meta-isar/conf/machine/qemuamd64.conf | 2 +-
meta-isar/conf/machine/qemuarm.conf | 2 +-
meta-isar/conf/machine/qemuarm64.conf | 2 +-
meta-isar/conf/machine/qemui386.conf | 2 +-
meta-isar/conf/machine/qemumipsel.conf | 2 +-
meta-isar/conf/machine/qemuriscv64.conf | 2 +-
meta-isar/conf/machine/rpi.conf | 2 +-
meta-isar/conf/machine/sifive-fu540.conf | 2 +-
meta-isar/conf/machine/stm32mp15x.conf | 2 +-
.../conf/multiconfig/qemuamd64-buster.conf | 2 +-
meta/classes/image.bbclass | 6 +++--
scripts/start_vm | 8 +++----
testsuite/start_vm.py | 2 +-
21 files changed, 44 insertions(+), 32 deletions(-)
diff --git a/RECIPE-API-CHANGELOG.md b/RECIPE-API-CHANGELOG.md
index 7312d4d..5583625 100644
--- a/RECIPE-API-CHANGELOG.md
+++ b/RECIPE-API-CHANGELOG.md
@@ -301,3 +301,8 @@ Kernel update with "apt-get" will not work since bootloader configuration will
not be updated. It used to "kind of work" for grub and efi, that hack is gone.
When using the plugins it is advised to name the partition "/boot" and to exclude boot from the follwing rootfs to not waste space.
+
+### Rename IMAGE_TYPE to IMAGE_FSTYPES
+
+The variable is renamed to get closer to OE/Poky variables naming. The old naming
+will still also work, but with deprecation warning shown.
diff --git a/doc/user_manual.md b/doc/user_manual.md
index 01fe701..8b17710 100644
--- a/doc/user_manual.md
+++ b/doc/user_manual.md
@@ -209,7 +209,10 @@ tmp/deploy/images/rpi/isar-image-base.rpi-sdimg
### Generate full disk image
-A bootable disk image is generated if you set IMAGE_TYPE to 'wic-img'. Behind the scenes a tool called `wic` is used to assemble the images. It is controlled by a `.wks` file which you can choose with changing WKS_FILE. Some examples in the tree use that feature already.
+A bootable disk image is generated if you set IMAGE_FSTYPES to 'wic-img'.
+Behind the scenes a tool called `wic` is used to assemble the images.
+It is controlled by a `.wks` file which you can choose with changing WKS_FILE.
+Some examples in the tree use that feature already.
```
# Generate an image for the `i386` target architecture
$ bitbake mc:qemui386-buster:isar-image-base
@@ -245,7 +248,7 @@ https://github.com/intel/bmap-tools
### Generate container image with root filesystem
-A runnable container image is generated if you set IMAGE_TYPE to
+A runnable container image is generated if you set IMAGE_FSTYPES to
'container-img'.
Getting a container image can be the main purpose of an Isar configuration,
but not only.
@@ -286,8 +289,8 @@ The resulting container image archives (only for `docker-archive` and
For one-shot builds (use `local.conf` otherwise):
```
-export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE IMAGE_TYPE CONTAINER_FORMAT"
-export IMAGE_TYPE="container-img"
+export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE IMAGE_FSTYPES CONTAINER_FORMAT"
+export IMAGE_FSTYPES="container-img"
export CONTAINER_FORMAT="docker-archive"
```
@@ -448,7 +451,9 @@ Please refer to `Add a Custom Application` section for more information about wr
## Image Type Selection
-Isar can generate various images types for specific machine. The type of the image to be generated may be specified through the `IMAGE_TYPE` variable. Currently, the following image types are provided:
+Isar can generate various images types for specific machine. The type of the
+image to be generated may be specified through the `IMAGE_FSTYPES` variable.
+Currently, the following image types are provided:
- `ext4` - Raw ext4 filesystem image (default option for `qemuarm` machine).
- `rpi-sdimg` - A complete, partitioned Raspberry Pi SD card image (default option for the `rpi` machine).
@@ -507,7 +512,7 @@ Every machine is described in its configuration file. The file defines the follo
- `KERNEL_IMAGE` - The name of kernel binary that it installed to `/boot` folder in target filesystem. This variable is used by Isar to extract the kernel binary and put it into the deploy folder. This makes sense for embedded devices, where kernel and root filesystem are written to different flash partitions. This variable is optional.
- `INITRD_IMAGE` - The name of `ramdisk` binary. The meaning of this variable is similar to `KERNEL_IMAGE`. This variable is optional.
- `MACHINE_SERIAL` - The name of serial device that will be used for console output.
- - `IMAGE_TYPE` - The type of images to be generated for this machine.
+ - `IMAGE_FSTYPES` - The type of images to be generated for this machine.
Below is an example of machine configuration file for `Raspberry Pi` board:
```
@@ -516,7 +521,7 @@ IMAGE_PREINSTALL = "linux-image-rpi-rpfv \
KERNEL_IMAGE = "vmlinuz-4.4.0-1-rpi"
INITRD_IMAGE = "initrd.img-4.4.0-1-rpi"
MACHINE_SERIAL = "ttyAMA0"
-IMAGE_TYPE = "rpi-sdimg"
+IMAGE_FSTYPES = "rpi-sdimg"
```
To add new machine user should perform the following steps:
@@ -549,7 +554,7 @@ The user may use `meta-isar/recipes-core/images` as a template for new image rec
### General Information
The image recipe in Isar creates a folder with target root filesystem. Its default location is:
```
-tmp/work/${DISTRO}-${DISTRO_ARCH}/${PN}-${MACHINE}-${IMAGE_TYPE}/${PV}-${PR}/rootfs
+tmp/work/${DISTRO}-${DISTRO_ARCH}/${PN}-${MACHINE}-${IMAGE_FSTYPES}/${PV}-${PR}/rootfs
```
Every image type in Isar is implemented as a `bitbake` class. The goal of these classes is to pack root filesystem folder to appropriate format.
@@ -572,7 +577,7 @@ The content of `do_my_image` function can be implemented either in shell or in P
In the machine configuration file, set the following:
```
-IMAGE_TYPE = "my-image"
+IMAGE_FSTYPES = "my-image"
```
### Reference Classes
diff --git a/meta-isar/conf/machine/bananapi.conf b/meta-isar/conf/machine/bananapi.conf
index cec8057..dd3a066 100644
--- a/meta-isar/conf/machine/bananapi.conf
+++ b/meta-isar/conf/machine/bananapi.conf
@@ -9,6 +9,6 @@ KERNEL_NAME ?= "armmp"
IMAGE_INSTALL += "u-boot-script"
-IMAGE_TYPE ?= "wic-img"
+IMAGE_FSTYPES ?= "wic-img"
WKS_FILE ?= "bananapi"
IMAGER_INSTALL += "u-boot-sunxi"
diff --git a/meta-isar/conf/machine/container-amd64.conf b/meta-isar/conf/machine/container-amd64.conf
index d2978c4..1f7669a 100644
--- a/meta-isar/conf/machine/container-amd64.conf
+++ b/meta-isar/conf/machine/container-amd64.conf
@@ -4,4 +4,4 @@
# SPDX-License-Identifier: MIT
DISTRO_ARCH ?= "amd64"
-IMAGE_TYPE ?= "container-img"
+IMAGE_FSTYPES ?= "container-img"
diff --git a/meta-isar/conf/machine/de0-nano-soc.conf b/meta-isar/conf/machine/de0-nano-soc.conf
index 5e35602..f822e24 100644
--- a/meta-isar/conf/machine/de0-nano-soc.conf
+++ b/meta-isar/conf/machine/de0-nano-soc.conf
@@ -11,7 +11,7 @@ PREFERRED_PROVIDER_u-boot-de0-nano-soc = "u-boot-de0-nano-soc"
U_BOOT_CONFIG_de0-nano-soc = "socfpga_de0_nano_soc_defconfig"
U_BOOT_BIN_de0-nano-soc = "u-boot-with-spl.sfp"
-IMAGE_TYPE ?= "wic-img"
+IMAGE_FSTYPES ?= "wic-img"
WKS_FILE ?= "de0-nano-soc.wks.in"
IMAGER_INSTALL += "u-boot-de0-nano-soc"
IMAGER_BUILD_DEPS += "u-boot-de0-nano-soc"
diff --git a/meta-isar/conf/machine/hikey.conf b/meta-isar/conf/machine/hikey.conf
index 09dfaf4..615d674 100644
--- a/meta-isar/conf/machine/hikey.conf
+++ b/meta-isar/conf/machine/hikey.conf
@@ -7,7 +7,7 @@ DISTRO_ARCH = "arm64"
KERNEL_NAME ?= "mainline"
-IMAGE_TYPE = "wic-img"
+IMAGE_FSTYPES = "wic-img"
WKS_FILE ?= "hikey"
IMAGER_INSTALL += "${GRUB_BOOTLOADER_INSTALL}"
diff --git a/meta-isar/conf/machine/nand-ubi-demo.conf b/meta-isar/conf/machine/nand-ubi-demo.conf
index 25ec72f..5be337f 100644
--- a/meta-isar/conf/machine/nand-ubi-demo.conf
+++ b/meta-isar/conf/machine/nand-ubi-demo.conf
@@ -8,6 +8,6 @@ BAUDRATE_TTY ?= "115200"
MKUBIFS_ARGS := "-m 0x1000 -e 0x3e000 -c 1500"
UBINIZE_ARGS = "-vv -m 0x1000 -p 0x40000"
-IMAGE_TYPE ?= "ubi-ubifs-img"
+IMAGE_FSTYPES ?= "ubi-ubifs-img"
DTB_FILES = "imx6q-sabrelite.dtb"
diff --git a/meta-isar/conf/machine/nanopi-neo.conf b/meta-isar/conf/machine/nanopi-neo.conf
index 703b4f4..2475ce9 100644
--- a/meta-isar/conf/machine/nanopi-neo.conf
+++ b/meta-isar/conf/machine/nanopi-neo.conf
@@ -7,7 +7,7 @@ DISTRO_ARCH ?= "armhf"
KERNEL_NAME ?= "armmp"
-IMAGE_TYPE ?= "wic-img"
+IMAGE_FSTYPES ?= "wic-img"
WKS_FILE ?= "nanopi-neo.wks.in"
IMAGE_INSTALL += "u-boot-script"
diff --git a/meta-isar/conf/machine/qemuamd64.conf b/meta-isar/conf/machine/qemuamd64.conf
index dab4f09..ccfde39 100644
--- a/meta-isar/conf/machine/qemuamd64.conf
+++ b/meta-isar/conf/machine/qemuamd64.conf
@@ -6,7 +6,7 @@ DISTRO_ARCH ?= "amd64"
KERNEL_NAME ?= "amd64"
KERNEL_NAME_ubuntu-focal ?= "generic"
-IMAGE_TYPE ?= "wic-img"
+IMAGE_FSTYPES ?= "wic-img"
WKS_FILE ?= "sdimage-efi"
IMAGER_INSTALL += "${GRUB_BOOTLOADER_INSTALL}"
diff --git a/meta-isar/conf/machine/qemuarm.conf b/meta-isar/conf/machine/qemuarm.conf
index fbbdc23..20a71ea 100644
--- a/meta-isar/conf/machine/qemuarm.conf
+++ b/meta-isar/conf/machine/qemuarm.conf
@@ -5,7 +5,7 @@ DISTRO_ARCH ?= "armhf"
KERNEL_NAME ?= "armmp"
-IMAGE_TYPE ?= "ext4-img"
+IMAGE_FSTYPES ?= "ext4-img"
QEMU_ROOTFS_DEV ?= "vda"
diff --git a/meta-isar/conf/machine/qemuarm64.conf b/meta-isar/conf/machine/qemuarm64.conf
index e5e762f..ca23cef 100644
--- a/meta-isar/conf/machine/qemuarm64.conf
+++ b/meta-isar/conf/machine/qemuarm64.conf
@@ -6,7 +6,7 @@ DISTRO_ARCH ?= "arm64"
KERNEL_NAME ?= "arm64"
KERNEL_NAME_ubuntu-focal ?= "generic"
-IMAGE_TYPE ?= "ext4-img"
+IMAGE_FSTYPES ?= "ext4-img"
QEMU_ROOTFS_DEV ?= "vda"
diff --git a/meta-isar/conf/machine/qemui386.conf b/meta-isar/conf/machine/qemui386.conf
index e6afb06..17cff1e 100644
--- a/meta-isar/conf/machine/qemui386.conf
+++ b/meta-isar/conf/machine/qemui386.conf
@@ -4,7 +4,7 @@ DISTRO_ARCH ?= "i386"
KERNEL_NAME ?= "686-pae"
-IMAGE_TYPE ?= "wic-img"
+IMAGE_FSTYPES ?= "wic-img"
WKS_FILE ?= "directdisk-isar"
IMAGER_INSTALL += "${SYSLINUX_BOOTLOADER_INSTALL}"
diff --git a/meta-isar/conf/machine/qemumipsel.conf b/meta-isar/conf/machine/qemumipsel.conf
index 85178ee..b34e46d 100644
--- a/meta-isar/conf/machine/qemumipsel.conf
+++ b/meta-isar/conf/machine/qemumipsel.conf
@@ -5,7 +5,7 @@ DISTRO_ARCH ?= "mipsel"
KERNEL_NAME ?= "4kc-malta"
-IMAGE_TYPE ?= "ext4-img"
+IMAGE_FSTYPES ?= "ext4-img"
QEMU_ROOTFS_DEV ?= "sda"
diff --git a/meta-isar/conf/machine/qemuriscv64.conf b/meta-isar/conf/machine/qemuriscv64.conf
index f4f5312..5c687a0 100644
--- a/meta-isar/conf/machine/qemuriscv64.conf
+++ b/meta-isar/conf/machine/qemuriscv64.conf
@@ -8,7 +8,7 @@ DISTRO_ARCH ?= "riscv64"
KERNEL_NAME ?= "riscv64"
-IMAGE_TYPE ?= "ext4-img"
+IMAGE_FSTYPES ?= "ext4-img"
QEMU_ROOTFS_DEV ?= "vda"
diff --git a/meta-isar/conf/machine/rpi.conf b/meta-isar/conf/machine/rpi.conf
index 31f2219..61852a9 100644
--- a/meta-isar/conf/machine/rpi.conf
+++ b/meta-isar/conf/machine/rpi.conf
@@ -4,4 +4,4 @@
MACHINE_SERIAL ?= "ttyAMA0"
BAUDRATE_TTY ?= "9600"
-IMAGE_TYPE ?= "rpi-sdimg"
+IMAGE_FSTYPES ?= "rpi-sdimg"
diff --git a/meta-isar/conf/machine/sifive-fu540.conf b/meta-isar/conf/machine/sifive-fu540.conf
index c815f4a..d73f047 100644
--- a/meta-isar/conf/machine/sifive-fu540.conf
+++ b/meta-isar/conf/machine/sifive-fu540.conf
@@ -7,7 +7,7 @@ DISTRO_ARCH = "riscv64"
KERNEL_NAME ?= "mainline"
-IMAGE_TYPE ?= "wic-img"
+IMAGE_FSTYPES ?= "wic-img"
WKS_FILE ?= "sifive-fu540"
IMAGER_INSTALL += "opensbi-sifive-fu540"
IMAGER_BUILD_DEPS += "opensbi-sifive-fu540"
diff --git a/meta-isar/conf/machine/stm32mp15x.conf b/meta-isar/conf/machine/stm32mp15x.conf
index e963d08..22e88ea 100644
--- a/meta-isar/conf/machine/stm32mp15x.conf
+++ b/meta-isar/conf/machine/stm32mp15x.conf
@@ -11,7 +11,7 @@ PREFERRED_PROVIDER_u-boot-stm32mp15x = "u-boot-stm32mp15x"
U_BOOT_CONFIG_stm32mp15x = "stm32mp15_trusted_defconfig"
U_BOOT_BIN_stm32mp15x = "u-boot.stm32"
-IMAGE_TYPE ?= "wic-img"
+IMAGE_FSTYPES ?= "wic-img"
WKS_FILE ?= "stm32mp15x.wks.in"
IMAGER_INSTALL += "trusted-firmware-a-stm32mp15x optee-os-stm32mp15x u-boot-stm32mp15x"
IMAGER_BUILD_DEPS += "trusted-firmware-a-stm32mp15x optee-os-stm32mp15x u-boot-stm32mp15x"
diff --git a/meta-isar/conf/multiconfig/qemuamd64-buster.conf b/meta-isar/conf/multiconfig/qemuamd64-buster.conf
index d8139f7..26f4f4c 100644
--- a/meta-isar/conf/multiconfig/qemuamd64-buster.conf
+++ b/meta-isar/conf/multiconfig/qemuamd64-buster.conf
@@ -3,4 +3,4 @@
MACHINE ?= "qemuamd64"
DISTRO ?= "debian-buster"
-IMAGE_TYPE ?= "wic-img targz-img cpiogz-img"
+IMAGE_FSTYPES ?= "wic-img targz-img cpiogz-img"
\ No newline at end of file
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index eecada3..e923318 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -7,7 +7,7 @@ STAMP = "${STAMPS_DIR}/${DISTRO}-${DISTRO_ARCH}/${PN}-${MACHINE}/${PV}-${PR}"
STAMPCLEAN = "${STAMPS_DIR}/${DISTRO}-${DISTRO_ARCH}/${PN}-${MACHINE}/*-*"
IMAGE_INSTALL ?= ""
-IMAGE_TYPE ?= "ext4-img"
+IMAGE_FSTYPES ?= "${@ d.getVar("IMAGE_TYPE", True) if d.getVar("IMAGE_TYPE", True) else "ext4-img"}"
IMAGE_ROOTFS ?= "${WORKDIR}/rootfs"
IMAGE_INSTALL += "${@ ("linux-image-" + d.getVar("KERNEL_NAME", True)) if d.getVar("KERNEL_NAME", True) else ""}"
@@ -36,6 +36,8 @@ BUILDROOT_WORK = "${BUILDCHROOT_DIR}${PP_WORK}"
python(){
if (d.getVar('IMAGE_TRANSIENT_PACKAGES')):
bb.warn("IMAGE_TRANSIENT_PACKAGES is set and no longer supported")
+ if (d.getVar('IMAGE_TYPE')):
+ bb.warn("IMAGE_TYPE is deprecated, please switch to IMAGE_FSTYPES")
}
def cfg_script(d):
@@ -220,4 +222,4 @@ EOSUDO
addtask rootfs_finalize before do_rootfs after do_rootfs_postprocess
# Last so that the image type can overwrite tasks if needed
-inherit ${IMAGE_TYPE}
+inherit ${IMAGE_FSTYPES}
diff --git a/scripts/start_vm b/scripts/start_vm
index 77c4244..5717c7c 100755
--- a/scripts/start_vm
+++ b/scripts/start_vm
@@ -109,10 +109,10 @@ readonly ISARROOT="$(dirname "$0")"/..
readonly MACHINE_CONF=$ISARROOT/meta-isar/conf/machine/qemu$ARCH.conf
eval "$(egrep 'MACHINE_SERIAL|QEMU_' $MACHINE_CONF |bb2sh)"
-eval $(bitbake -e mc:qemu$ARCH-$DISTRO:isar-image-base | grep "\(^IMAGE_TYPE=\|^IMAGE_FULLNAME=\)")
+eval $(bitbake -e mc:qemu$ARCH-$DISTRO:isar-image-base | grep "\(^IMAGE_FSTYPES=\|^IMAGE_FULLNAME=\)")
# Take first image type for VM if there are several defined
-IMAGE_TYPE=$(echo "$IMAGE_TYPE" | sed -e 's/\s.*$//')
-case "$IMAGE_TYPE" in
+IMAGE_FSTYPES=$(echo "$IMAGE_FSTYPES" | sed -e 's/\s.*$//')
+case "$IMAGE_FSTYPES" in
ext4-img)
readonly ROOTFS_IMAGE=$IMAGE_FULLNAME.ext4.img
@@ -135,7 +135,7 @@ case "$IMAGE_TYPE" in
EXTRA_ARGS="$EXTRA_ARGS -snapshot"
;;
*)
- echo "IMAGE_TYPE \"$IMAGE_TYPE\" not supported"
+ echo "IMAGE_FSTYPES \"$IMAGE_FSTYPES\" not supported"
exit 1
;;
esac
diff --git a/testsuite/start_vm.py b/testsuite/start_vm.py
index 06fc935..bbbd2e3 100755
--- a/testsuite/start_vm.py
+++ b/testsuite/start_vm.py
@@ -28,7 +28,7 @@ def format_qemu_cmdline(arch, build, distro):
extra_args = ''
cpu = ['']
- image_type = get_bitbake_var(bb_output, 'IMAGE_TYPE').split()[0]
+ image_type = get_bitbake_var(bb_output, 'IMAGE_FSTYPES').split()[0]
deploy_dir_image = get_bitbake_var(bb_output, 'DEPLOY_DIR_IMAGE')
if image_type == 'ext4-img':
rootfs_image = 'isar-image-base-debian-' + distro + '-qemu' + arch + '.ext4.img'
--
2.20.1
next prev parent reply other threads:[~2021-09-28 7:14 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-28 7:13 [PATCH v2 0/5] Support multiple image types in one build Uladzimir Bely
2021-09-28 7:13 ` [PATCH v2 1/5] image: Make WORKDIR and STAMPs unrelated to IMAGE_TYPE Uladzimir Bely
2021-09-28 7:13 ` [PATCH v2 2/5] wic-img: Set weak default value for WKS_FILE Uladzimir Bely
2021-10-05 8:49 ` Henning Schild
2021-09-28 7:13 ` [PATCH v2 3/5] start_vm: Use the first image type to start VM Uladzimir Bely
2021-10-05 8:52 ` Henning Schild
2021-09-28 7:13 ` [PATCH v2 4/5] meta-isar: Rework mc:qemuamd64-buster configs Uladzimir Bely
2021-10-05 8:54 ` Henning Schild
2021-09-28 7:13 ` Uladzimir Bely [this message]
2021-10-05 8:56 ` [PATCH v2 5/5] api: Rename IMAGE_TYPE to IMAGE_FSTYPES Henning Schild
2021-10-05 9:08 ` [PATCH v2 0/5] Support multiple image types in one build Henning Schild
2021-11-18 13:41 ` Baurzhan Ismagulov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210928071352.31382-6-ubely@ilbers.de \
--to=ubely@ilbers.de \
--cc=isar-users@googlegroups.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox