From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6667603680306397184 X-Received: by 2002:adf:ce07:: with SMTP id p7mr123266wrn.24.1552640570924; Fri, 15 Mar 2019 02:02:50 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:adf:dc0e:: with SMTP id t14ls1644283wri.6.gmail; Fri, 15 Mar 2019 02:02:50 -0700 (PDT) X-Google-Smtp-Source: APXvYqzQnviEwWhq3VIvg4r+o4H8/Cc3ZY7AypNlmaU1Ab4Bd88MSeVqkpqSBkbcPaVMaVdcBJ8l X-Received: by 2002:a5d:4642:: with SMTP id j2mr126098wrs.21.1552640570429; Fri, 15 Mar 2019 02:02:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1552640570; cv=none; d=google.com; s=arc-20160816; b=LvlJgMucsItsUQ/lm8C1QGq6zP3NVBZ0/CFgwgKXJ1oeKLeE4XUP6vrpKbEmyt6eRX H74ytl0wnng3uClnQHQwfUAkNjX+XxVD0awjoZi9hR4llF6S9z+qPlwj9+Zxzbk4tDMo qrTLTZE5lAZv7zllgLEf959w9oWjWfTSRPBdWJlLLaMmLB++Za1j6TvsvyALg6B3ea4y KwhzvDU1VSapb0MFiEr96dBpge1JFrB/E2PYjcz3N4E7+WR+sKBsLE/16hB6/KMNifoP iUhVvXOSQBcvoDnwbC6sN65yHdMyLq1xiPI/4yWScvrmdMei6sAWwR5gOt9KxTnbAtZb tXnQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:content-language:in-reply-to:mime-version :user-agent:date:message-id:organization:from:references:to:subject; bh=wa+2Z80pNTUZLox/d2+chUqXy8mgEY+7v9npDiie0aY=; b=FXmbZOex/NSvLqoWo8oAFJyYxSDn3ToJ9b1SpVIQGnl7ZZ7SH6PQNFvdVMaA1cvtVr 0rzy2F1vQFaPIcYYnHdo3N5ulYbnNzRN0jx40r/CYLWYXszoWq5WLDEvnKeBoUmCtxwq YGCsu/tZrVEBKzxNmpYGNQhR8XBjB05XlIKhhUiu2luhvk0BcO+dX2VxTnJO9bJ4pe2h Fs4ZvjX3WwdZHmgLW63DscHEcx6dNl3uEK7fiJNeztMPffrT4aDpYA3HGRJBgE6Z0qRi Ix6K16QrupWp7lxUH14GNaXg2G7LiA//gRYYucyLoKiv+JZF7MbXE1en4Mv1xfUwcJvt /rYw== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of mosipov@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=mosipov@ilbers.de Return-Path: Received: from shymkent.ilbers.de (shymkent.ilbers.de. [85.214.156.166]) by gmr-mx.google.com with ESMTPS id f185si167019wme.1.2019.03.15.02.02.50 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 15 Mar 2019 02:02:50 -0700 (PDT) Received-SPF: pass (google.com: domain of mosipov@ilbers.de designates 85.214.156.166 as permitted sender) client-ip=85.214.156.166; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of mosipov@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=mosipov@ilbers.de Received: from [192.168.50.163] (d51A48A80.access.telenet.be [81.164.138.128]) (authenticated bits=0) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8) with ESMTPSA id x2F92mVF029932 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 15 Mar 2019 10:02:49 +0100 Subject: Re: [PATCH 1/2] meta-isar: Separate images per MACHINE To: Claudius Heine , isar-users@googlegroups.com References: <20190312202713.18792-1-mosipov@ilbers.de> <7984d051-8bf0-dff1-804d-104ad2a17af7@siemens.com> From: "Maxim Yu. Osipov" Organization: ilbers GmbH Message-ID: <91c1cdc1-9e63-7833-1518-e64dd144f102@ilbers.de> Date: Fri, 15 Mar 2019 10:02:48 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.5.1 MIME-Version: 1.0 In-Reply-To: <7984d051-8bf0-dff1-804d-104ad2a17af7@siemens.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-TUID: 6F+6m+v0w0/r Hi Claudius, Thank you for your fast feedback. On 3/14/19 8:21 AM, Claudius Heine wrote: > Hi Maxim, > > On 13/03/2019 17.42, Maxim Yu. Osipov wrote: >> Hi everybody, >> >> Any feedback on this patch? >> This is a "fast track" patch as it fixes problem which delayed the >> release. >> >> Thanks, >> Maxim. >> >> On 3/12/19 9:27 PM, Maxim Yu. Osipov wrote: >>> Image directory gets overwritten when running for two targets >>> with the same pair DISTRO and DISTRO_ARCH, resulting >>> start_vm script failure. >>> >>> Note: >>> This patch affects the bitbake multiconfig target calling syntax: >>> PREVIOUS: "multiconfig:$MACHINE-$DISTRO:isar-image-base" >>> NEW: "multiconfig:$MACHINE-$DISTRO:isar-image-base-$MACHINE" >>> >>> Suggested-by: Jan Kiszka >>> Signed-off-by: Maxim Yu. Osipov >>> --- >>>   meta-isar/conf/conf-notes.txt                    |  6 ++-- >>>   meta-isar/recipes-core/images/isar-image-base.bb |  2 ++ >>>   meta-isar/recipes-core/images/isar-image-ubi.bb  |  2 ++ >>>   scripts/ci_build.sh                              | 40 >>> ++++++++++++------------ >>>   scripts/start_vm                                 | 16 +++++----- >>>   5 files changed, 35 insertions(+), 31 deletions(-) >>> >>> diff --git a/meta-isar/conf/conf-notes.txt >>> b/meta-isar/conf/conf-notes.txt >>> index 87bd2dc..84049e1 100644 >>> --- a/meta-isar/conf/conf-notes.txt >>> +++ b/meta-isar/conf/conf-notes.txt >>> @@ -1,4 +1,4 @@ >>>   Common targets are: >>> -    multiconfig:qemuarm-stretch:isar-image-base >>> -    multiconfig:qemuamd64-stretch:isar-image-base >>> -    multiconfig:rpi-jessie:isar-image-base >>> +    multiconfig:qemuarm-stretch:isar-image-base-qemuarm >>> +    multiconfig:qemuamd64-stretch:isar-image-base-qemuamd64 >>> +    multiconfig:rpi-jessie:isar-image-base-rpi > > I am not a big fan of having to specify the machine when building a image. > > Would it be possible to have virtual recipes? > > IMO all isar-image-base-* would provide a isar-image-base. Not sure that I got your point. OK, let's add two line to isar-image-base.bb PF .= "-${MACHINE}" PROVIDES += "isar-image-base" Let's call 'bitbake multiconfig:qemuarm-stretch:isar-image-base' - (UX is untouched - that's fine), but the problem that exactly 'isar-image-base' directory will be created under "tmp/work/debian-stretch-armhf" tmp/work/debian-stretch-armhf$ ls -l total 52 drwxr-xr-x 4 myo myo 4096 Mar 15 09:53 buildchroot-host drwxr-xr-x 4 myo myo 4096 Mar 15 09:55 buildchroot-target drwxr-xr-x 4 myo myo 4096 Mar 15 09:59 enable-fsck-1.0-r0 drwxr-xr-x 6 myo myo 4096 Mar 15 09:59 example-module-armmp-1.0-r0 drwxr-xr-x 4 myo myo 4096 Mar 15 09:58 example-raw-0.3-r0 drwxr-xr-x 4 myo myo 4096 Mar 15 09:59 hello-isar-0.3-a18c14c-r0 drwxr-xr-x 3 myo myo 4096 Mar 15 09:51 isar-apt-1.0-r0 drwxr-xr-x 4 myo myo 4096 Mar 15 09:51 isar-bootstrap-host-debian-stretch-amd64 drwxr-xr-x 4 myo myo 4096 Mar 15 09:51 isar-bootstrap-target drwxr-xr-x 4 myo myo 4096 Mar 15 09:59 isar-cfg-localepurge-1.0-r0 drwxr-xr-x 4 myo myo 4096 Mar 15 09:59 isar-cfg-rootpw-1.0-r0 drwxr-xr-x 5 myo myo 4096 Mar 15 09:59 isar-image-base drwxr-xr-x 4 myo myo 4096 Mar 15 09:58 libhello-0.1-98f2e41-r0 myo@tiberius:~/work/isar/src/isar/build/tmp/work/debian-stretch-armhf$ so this doesn't help to fix the problem. > >>> diff --git a/meta-isar/recipes-core/images/isar-image-base.bb >>> b/meta-isar/recipes-core/images/isar-image-base.bb >>> index c86e63b..0ac0c44 100644 >>> --- a/meta-isar/recipes-core/images/isar-image-base.bb >>> +++ b/meta-isar/recipes-core/images/isar-image-base.bb >>> @@ -11,3 +11,5 @@ LIC_FILES_CHKSUM = >>> "file://${LAYERDIR_core}/licenses/COPYING.GPLv2;md5=751419260 >>>   PV = "1.0" >>>   inherit isar-image >>> + >>> +PN .= "-${MACHINE}" >>> diff --git a/meta-isar/recipes-core/images/isar-image-ubi.bb >>> b/meta-isar/recipes-core/images/isar-image-ubi.bb >>> index 4b7e109..8059105 100644 >>> --- a/meta-isar/recipes-core/images/isar-image-ubi.bb >>> +++ b/meta-isar/recipes-core/images/isar-image-ubi.bb >>> @@ -12,6 +12,8 @@ LIC_FILES_CHKSUM = >>> "file://${LAYERDIR_core}/licenses/COPYING.GPLv2;md5=751419260 >>>   inherit isar-image >>> +PN .= "-${MACHINE}" >>> + >>>   SRC_URI += "file://ubinize.cfg.tmpl \ >>>               file://fitimage.its.tmpl" >>> diff --git a/scripts/ci_build.sh b/scripts/ci_build.sh >>> index bcc7545..b4df70e 100755 >>> --- a/scripts/ci_build.sh >>> +++ b/scripts/ci_build.sh >>> @@ -1,7 +1,7 @@ >>>   # Script for CI system build >>>   # >>>   # Alexander Smirnov >>> -# Copyright (c) 2016-2018 ilbers GmbH >>> +# Copyright (c) 2016-2019 ilbers GmbH >>>   #!/bin/sh >>> @@ -21,21 +21,21 @@ BUILD_DIR=./build >>>   BB_ARGS="-v" >>>   TARGETS_SET="\ >>> -            multiconfig:qemuarm-jessie:isar-image-base \ >>> -            multiconfig:qemuarm-stretch:isar-image-base \ >>> -            multiconfig:qemuarm-buster:isar-image-base \ >>> -            multiconfig:qemuarm64-stretch:isar-image-base \ >>> -            multiconfig:qemui386-jessie:isar-image-base \ >>> -            multiconfig:qemui386-stretch:isar-image-base \ >>> -            multiconfig:qemui386-buster:isar-image-base \ >>> -            multiconfig:qemuamd64-jessie:isar-image-base \ >>> -            multiconfig:qemuamd64-stretch:isar-image-base \ >>> -            multiconfig:qemuamd64-buster:isar-image-base \ >>> -            multiconfig:qemuamd64-buster-tgz:isar-image-base \ >>> -            multiconfig:nand-ubi-demo-buster:isar-image-ubi \ >>> -            multiconfig:rpi-jessie:isar-image-base" >>> +            multiconfig:qemuarm-jessie:isar-image-base-qemuarm \ >>> +            multiconfig:qemuarm-stretch:isar-image-base-qemuarm \ >>> +            multiconfig:qemuarm-buster:isar-image-base-qemuarm \ >>> +            multiconfig:qemuarm64-stretch:isar-image-base-qemuarm64 \ >>> +            multiconfig:qemui386-jessie:isar-image-base-qemui386 \ >>> +            multiconfig:qemui386-stretch:isar-image-base-qemui386 \ >>> +            multiconfig:qemui386-buster:isar-image-base-qemui386 \ >>> +            multiconfig:qemuamd64-jessie:isar-image-base-qemuamd64 \ >>> +            multiconfig:qemuamd64-stretch:isar-image-base-qemuamd64 \ >>> +            multiconfig:qemuamd64-buster:isar-image-base-qemuamd64 \ >>> + >>> multiconfig:qemuamd64-buster-tgz:isar-image-base-qemuamd64 \ >>> + multiconfig:nand-ubi-demo-buster:isar-image-ubi-nand-ubi-demo \ >>> +            multiconfig:rpi-jessie:isar-image-base-rpi" >>>             # qemu-user-static of <= buster too old to build that >>> -          # multiconfig:qemuarm64-buster:isar-image-base >>> +          # multiconfig:qemuarm64-buster:isar-image-base-qemuarm64 >>>   show_help() { >>> @@ -85,9 +85,9 @@ do >>>           FAST_BUILD="1" >>>           CROSS_BUILD="1" >>>           TARGETS_SET="\ >>> -                     multiconfig:qemuarm-stretch:isar-image-base \ >>> -                     multiconfig:qemuarm64-stretch:isar-image-base \ >>> -                     multiconfig:qemuamd64-stretch:isar-image-base" >>> + multiconfig:qemuarm-stretch:isar-image-base-qemuarm \ >>> + multiconfig:qemuarm64-stretch:isar-image-base-qemuarm64 \ >>> + multiconfig:qemuamd64-stretch:isar-image-base-qemuamd64 " >>>           ;; >>>       -q|--quiet) >>>           BB_ARGS="" >>> @@ -129,12 +129,12 @@ bitbake $BB_ARGS $TARGETS_SET >>>   # parallel build with the same target arch (armhf) fails. >>>   # The problem is being investigated >>>   if [ -n "$FAST_BUILD" ]; then >>> -    bitbake $BB_ARGS multiconfig:de0-nano-soc-stretch:isar-image-base >>> +    bitbake $BB_ARGS >>> multiconfig:de0-nano-soc-stretch:isar-image-base-de0-nano-soc >>>   fi >>>   cp -a "${ISARROOT}/meta/classes/dpkg-base.bbclass" >>> "${ISARROOT}/meta/classes/dpkg-base.bbclass.ci-backup" >>>   echo -e "do_fetch_append() {\n\n}" >> >>> "${ISARROOT}/meta/classes/dpkg-base.bbclass" >>> -bitbake $BB_ARGS multiconfig:qemuamd64-stretch:isar-image-base >>> +bitbake $BB_ARGS >>> multiconfig:qemuamd64-stretch:isar-image-base-qemuamd64 >>>   mv "${ISARROOT}/meta/classes/dpkg-base.bbclass.ci-backup" >>> "${ISARROOT}/meta/classes/dpkg-base.bbclass" >>> diff --git a/scripts/start_vm b/scripts/start_vm >>> index 1da0742..0c007bf 100755 >>> --- a/scripts/start_vm >>> +++ b/scripts/start_vm >>> @@ -1,7 +1,7 @@ >>>   #!/bin/sh >>>   # >>>   # This software is a part of ISAR. >>> -# Copyright (C) 2015-2017 ilbers GmbH >>> +# Copyright (C) 2015-2019 ilbers GmbH >>>   set -e >>> @@ -46,7 +46,7 @@ show_help() { >>>       echo "                          Supported: arm, i386, amd64, >>> arm64." >>>       echo "    -b, --build BUILD     set path to build directory." >>>       echo "    -d, --distro DISTRO   set isar Debian distribution." >>> -    echo "                          Supported: jessie, stretch." >>> +    echo "                          Supported: jessie, stretch, buster" > > Well that change together with the copyright update should be moved in a > different patch. It has nothing to do with 'Separate images per MACHINE' > IMO. Well...formally you are right, but in my opinion such "copyright" commits just litter the patch queue. Thanks, Maxim. > regards, > Claudius > >>>       echo "    -o, --out FILE        Route QEMU console output to" >>>       echo "                          specified file." >>>       echo "    -p, --pid FILE        Store QEMU pid to file." >>> @@ -101,7 +101,7 @@ do >>>       shift >>>   done >>> -eval $(bitbake -e multiconfig:qemu$ARCH-$DISTRO:isar-image-base | >>> grep "^DEPLOY_DIR_IMAGE=") >>> +eval $(bitbake -e >>> multiconfig:qemu$ARCH-$DISTRO:isar-image-base-qemu$ARCH | grep >>> "^DEPLOY_DIR_IMAGE=") >>>   readonly IMAGE_DIR=$DEPLOY_DIR_IMAGE >>>   readonly ISARROOT="$(dirname "$0")"/.. >>> @@ -112,13 +112,13 @@ eval "$(egrep 'MACHINE_SERIAL' $MACHINE_CONF >>> |bb2sh)" >>>   readonly >>> CONFIG_CONF=$ISARROOT/meta-isar/conf/multiconfig/qemu$ARCH-$DISTRO.conf >>>   eval "$(egrep 'QEMU_' $CONFIG_CONF |bb2sh)" >>> -eval $(bitbake -e multiconfig:qemu$ARCH-$DISTRO:isar-image-base | >>> grep "^IMAGE_TYPE=") >>> +eval $(bitbake -e >>> multiconfig:qemu$ARCH-$DISTRO:isar-image-base-qemu$ARCH | grep >>> "^IMAGE_TYPE=") >>>   case "$IMAGE_TYPE" in >>>       ext4-img) >>> -    readonly >>> ROOTFS_IMAGE=isar-image-base-debian-$DISTRO-qemu$ARCH.ext4.img >>> +    readonly >>> ROOTFS_IMAGE=isar-image-base-qemu$ARCH-debian-$DISTRO-qemu$ARCH.ext4.img >>> -    eval $(bitbake -e multiconfig:qemu$ARCH-$DISTRO:isar-image-base >>> | grep "^KERNEL_IMAGE=") >>> -    eval $(bitbake -e multiconfig:qemu$ARCH-$DISTRO:isar-image-base >>> | grep "^INITRD_IMAGE=") >>> +    eval $(bitbake -e >>> multiconfig:qemu$ARCH-$DISTRO:isar-image-base-qemu$ARCH | grep >>> "^KERNEL_IMAGE=") >>> +    eval $(bitbake -e >>> multiconfig:qemu$ARCH-$DISTRO:isar-image-base-qemu$ARCH | grep >>> "^INITRD_IMAGE=") >>>       QKERNEL=$IMAGE_DIR/${KERNEL_IMAGE} >>>       QINITRD=/dev/null >>>       [ -n "$INITRD_IMAGE" ] && QINITRD=$IMAGE_DIR/${INITRD_IMAGE} >>> @@ -128,7 +128,7 @@ case "$IMAGE_TYPE" in >>>       KARGS="console=$MACHINE_SERIAL root=/dev/$QEMU_ROOTFS_DEV rw" >>>       ;; >>>       wic-img) >>> -    readonly >>> ROOTFS_IMAGE=isar-image-base-debian-$DISTRO-qemu$ARCH.wic.img >>> +    readonly >>> ROOTFS_IMAGE=isar-image-base-qemu$ARCH-debian-$DISTRO-qemu$ARCH.wic.img >>>       EXTRA_ARGS="$EXTRA_ARGS -snapshot" >>>       ;; >>>       *) >>> >> >> > -- Maxim Osipov ilbers GmbH Maria-Merian-Str. 8 85521 Ottobrunn Germany +49 (151) 6517 6917 mosipov@ilbers.de http://ilbers.de/ Commercial register Munich, HRB 214197 General Manager: Baurzhan Ismagulov