[master/dunfell,V4,12/12] images: Build tisdk-bootstrap-image with tisdk-core-bundle

Message ID 20220319123310.8546-13-nm@ti.com
State Superseded
Headers show
Series recipes-core: Add a bootstrap Linux image | expand

Commit Message

Nishanth Menon March 19, 2022, 12:33 p.m. UTC
Add tisdk-bootstrap-image to the list of TARGET_IMAGES for
tisdk-core-bundle.

Signed-off-by: Nishanth Menon <nm@ti.com>
---
Changes Since V3: None.

V3: https://lore.kernel.org/all/20220318184045.11246-13-nm@ti.com/

 meta-arago-distro/recipes-core/images/tisdk-core-bundle.inc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Denys Dmytriyenko March 22, 2022, 4:55 a.m. UTC | #1
On Sat, Mar 19, 2022 at 07:33:10AM -0500, Nishanth Menon wrote:
> Add tisdk-bootstrap-image to the list of TARGET_IMAGES for
> tisdk-core-bundle.

I just realized - this won't work (and the patch hasn't been tested).

As you can see, there was no tiny image in this list. The reason is that tiny 
image has package management disabled for additional size savings, but that 
also breaks the way SDK installer bundle gets processed for the SW manifest. 
That means any other images that are based on tiny or that disable package 
management, cannot be listed in TARGET_IMAGES of the SDK installer bundle.


> Signed-off-by: Nishanth Menon <nm@ti.com>
> ---
> Changes Since V3: None.
> 
> V3: https://lore.kernel.org/all/20220318184045.11246-13-nm@ti.com/
> 
>  meta-arago-distro/recipes-core/images/tisdk-core-bundle.inc | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/meta-arago-distro/recipes-core/images/tisdk-core-bundle.inc b/meta-arago-distro/recipes-core/images/tisdk-core-bundle.inc
> index 5ce688ef24b7..db73abd27fc2 100644
> --- a/meta-arago-distro/recipes-core/images/tisdk-core-bundle.inc
> +++ b/meta-arago-distro/recipes-core/images/tisdk-core-bundle.inc
> @@ -32,7 +32,7 @@ DTB_FILTER_am65xx = "am65"
>  DTB_FILTER_j7 = "j721e"
>  
>  # List of target side images to build for the SDK
> -TARGET_IMAGES = "tisdk-base-image tisdk-default-image tisdk-thinlinux-image"
> +TARGET_IMAGES = "tisdk-base-image tisdk-default-image tisdk-thinlinux-image tisdk-bootstrap-image"
>  
>  # dra71 lcard requires an initramfs with modules for NFS boot
>  TARGET_IMAGES_append_dra7xx-evm = " netboot-initrd"
> -- 
> 2.31.1
>
Nishanth Menon March 22, 2022, 12:44 p.m. UTC | #2
On 00:55-20220322, Denys Dmytriyenko wrote:
> On Sat, Mar 19, 2022 at 07:33:10AM -0500, Nishanth Menon wrote:
> > Add tisdk-bootstrap-image to the list of TARGET_IMAGES for
> > tisdk-core-bundle.
> 
> I just realized - this won't work (and the patch hasn't been tested).
> 
> As you can see, there was no tiny image in this list. The reason is that tiny 
> image has package management disabled for additional size savings, but that 
> also breaks the way SDK installer bundle gets processed for the SW manifest. 
> That means any other images that are based on tiny or that disable package 
> management, cannot be listed in TARGET_IMAGES of the SDK installer bundle.


I think you mean IMAGE_FEATURES_remove = "package-management" in
tiny-image.inc

I did do MACHINE=xxx bitbake tisdk-core-bundle, but I did'nt wait for it
to complete (got to 99%).

I also do see ipks in build/arago-tmp-external-arm-glibc/deploy/ipk/all
and in build/arago-tmp-external-arm-glibc/deploy/ipk/aarch64/

During the build, I did notice:
WARNING: bootstrap-initrd-1.0-r0 do_package: Manifest /workdir/pub-sdk/oe-layersetup/build/arago-tmp-external-arm-glibc/sstate-control/manifest-x86_64_x86_64-nativesdk-tisdk-bootstrap-base-image.packagedata not found in j7_evm aarch64 allarch x86_64_x86_64-nativesdk (variant '')?

And once I waited for the complete build, I got this:
https://gist.github.com/nmenon/3ef33a14df77d9c7869f4c87fcfbc990

I guess I have to see how to introduce packagemanagement back in for
bootstrap image?
Nishanth Menon March 22, 2022, 1:47 p.m. UTC | #3
On 07:44-20220322, Nishanth Menon via lists.yoctoproject.org wrote:
> On 00:55-20220322, Denys Dmytriyenko wrote:
> > On Sat, Mar 19, 2022 at 07:33:10AM -0500, Nishanth Menon wrote:
> > > Add tisdk-bootstrap-image to the list of TARGET_IMAGES for
> > > tisdk-core-bundle.
> > 
> > I just realized - this won't work (and the patch hasn't been tested).
> > 
> > As you can see, there was no tiny image in this list. The reason is that tiny 
> > image has package management disabled for additional size savings, but that 
> > also breaks the way SDK installer bundle gets processed for the SW manifest. 
> > That means any other images that are based on tiny or that disable package 
> > management, cannot be listed in TARGET_IMAGES of the SDK installer bundle.
> 
> 
> I think you mean IMAGE_FEATURES_remove = "package-management" in
> tiny-image.inc
> 
> I did do MACHINE=xxx bitbake tisdk-core-bundle, but I did'nt wait for it
> to complete (got to 99%).
> 
> I also do see ipks in build/arago-tmp-external-arm-glibc/deploy/ipk/all
> and in build/arago-tmp-external-arm-glibc/deploy/ipk/aarch64/
> 
> During the build, I did notice:
> WARNING: bootstrap-initrd-1.0-r0 do_package: Manifest /workdir/pub-sdk/oe-layersetup/build/arago-tmp-external-arm-glibc/sstate-control/manifest-x86_64_x86_64-nativesdk-tisdk-bootstrap-base-image.packagedata not found in j7_evm aarch64 allarch x86_64_x86_64-nativesdk (variant '')?
> 
> And once I waited for the complete build, I got this:
> https://gist.github.com/nmenon/3ef33a14df77d9c7869f4c87fcfbc990
> 
> I guess I have to see how to introduce packagemanagement back in for
> bootstrap image?
> 

Denys: This seems to resolve the build error..  Thoughts?

diff --git a/meta-arago-distro/recipes-core/images/arago-tiny-image.inc b/meta-arago-distro/recipes-core/images/arago-tiny-image.inc
index 79c8f6075911..958dd8bb9399 100644
--- a/meta-arago-distro/recipes-core/images/arago-tiny-image.inc
+++ b/meta-arago-distro/recipes-core/images/arago-tiny-image.inc
@@ -2,7 +2,7 @@ ARAGO_SYSVINIT = "1"
 
 require arago-image.inc
 
-IMAGE_FEATURES_remove = "package-management splash"
+IMAGE_FEATURES_remove = "splash"
 
 IMAGE_INSTALL = " \
 	packagegroup-arago-sysvinit-boot \
diff --git a/meta-arago-distro/recipes-core/images/tisdk-tiny-image.bb b/meta-arago-distro/recipes-core/images/tisdk-tiny-image.bb
index 210bc32444f9..528efa2746b4 100644
--- a/meta-arago-distro/recipes-core/images/tisdk-tiny-image.bb
+++ b/meta-arago-distro/recipes-core/images/tisdk-tiny-image.bb
@@ -12,6 +12,8 @@ ARAGO_TINY_IMAGE_EXTRA_INSTALL ?= ""
 
 require arago-tiny-image.inc
 
+IMAGE_FEATURES_remove += "package-management"
+
 IMAGE_FSTYPES += "cpio cpio.xz"
 
 IMAGE_INSTALL += " \
Denys Dmytriyenko March 22, 2022, 5:35 p.m. UTC | #4
On Tue, Mar 22, 2022 at 08:47:50AM -0500, Nishanth Menon wrote:
> On 07:44-20220322, Nishanth Menon via lists.yoctoproject.org wrote:
> > On 00:55-20220322, Denys Dmytriyenko wrote:
> > > On Sat, Mar 19, 2022 at 07:33:10AM -0500, Nishanth Menon wrote:
> > > > Add tisdk-bootstrap-image to the list of TARGET_IMAGES for
> > > > tisdk-core-bundle.
> > > 
> > > I just realized - this won't work (and the patch hasn't been tested).
> > > 
> > > As you can see, there was no tiny image in this list. The reason is that tiny 
> > > image has package management disabled for additional size savings, but that 
> > > also breaks the way SDK installer bundle gets processed for the SW manifest. 
> > > That means any other images that are based on tiny or that disable package 
> > > management, cannot be listed in TARGET_IMAGES of the SDK installer bundle.
> > 
> > 
> > I think you mean IMAGE_FEATURES_remove = "package-management" in
> > tiny-image.inc
> > 
> > I did do MACHINE=xxx bitbake tisdk-core-bundle, but I did'nt wait for it
> > to complete (got to 99%).
> > 
> > I also do see ipks in build/arago-tmp-external-arm-glibc/deploy/ipk/all
> > and in build/arago-tmp-external-arm-glibc/deploy/ipk/aarch64/
> > 
> > During the build, I did notice:
> > WARNING: bootstrap-initrd-1.0-r0 do_package: Manifest /workdir/pub-sdk/oe-layersetup/build/arago-tmp-external-arm-glibc/sstate-control/manifest-x86_64_x86_64-nativesdk-tisdk-bootstrap-base-image.packagedata not found in j7_evm aarch64 allarch x86_64_x86_64-nativesdk (variant '')?
> > 
> > And once I waited for the complete build, I got this:
> > https://gist.github.com/nmenon/3ef33a14df77d9c7869f4c87fcfbc990
> > 
> > I guess I have to see how to introduce packagemanagement back in for
> > bootstrap image?
> > 
> 
> Denys: This seems to resolve the build error..  Thoughts?
> 
> diff --git a/meta-arago-distro/recipes-core/images/arago-tiny-image.inc b/meta-arago-distro/recipes-core/images/arago-tiny-image.inc
> index 79c8f6075911..958dd8bb9399 100644
> --- a/meta-arago-distro/recipes-core/images/arago-tiny-image.inc
> +++ b/meta-arago-distro/recipes-core/images/arago-tiny-image.inc
> @@ -2,7 +2,7 @@ ARAGO_SYSVINIT = "1"
>  
>  require arago-image.inc
>  
> -IMAGE_FEATURES_remove = "package-management splash"
> +IMAGE_FEATURES_remove = "splash"
>  
>  IMAGE_INSTALL = " \
>  	packagegroup-arago-sysvinit-boot \
> diff --git a/meta-arago-distro/recipes-core/images/tisdk-tiny-image.bb b/meta-arago-distro/recipes-core/images/tisdk-tiny-image.bb
> index 210bc32444f9..528efa2746b4 100644
> --- a/meta-arago-distro/recipes-core/images/tisdk-tiny-image.bb
> +++ b/meta-arago-distro/recipes-core/images/tisdk-tiny-image.bb
> @@ -12,6 +12,8 @@ ARAGO_TINY_IMAGE_EXTRA_INSTALL ?= ""
>  
>  require arago-tiny-image.inc
>  
> +IMAGE_FEATURES_remove += "package-management"

s/+=/=/


> +
>  IMAGE_FSTYPES += "cpio cpio.xz"
>  
>  IMAGE_INSTALL += " \

Yeah, this should work.

Patch

diff --git a/meta-arago-distro/recipes-core/images/tisdk-core-bundle.inc b/meta-arago-distro/recipes-core/images/tisdk-core-bundle.inc
index 5ce688ef24b7..db73abd27fc2 100644
--- a/meta-arago-distro/recipes-core/images/tisdk-core-bundle.inc
+++ b/meta-arago-distro/recipes-core/images/tisdk-core-bundle.inc
@@ -32,7 +32,7 @@  DTB_FILTER_am65xx = "am65"
 DTB_FILTER_j7 = "j721e"
 
 # List of target side images to build for the SDK
-TARGET_IMAGES = "tisdk-base-image tisdk-default-image tisdk-thinlinux-image"
+TARGET_IMAGES = "tisdk-base-image tisdk-default-image tisdk-thinlinux-image tisdk-bootstrap-image"
 
 # dra71 lcard requires an initramfs with modules for NFS boot
 TARGET_IMAGES_append_dra7xx-evm = " netboot-initrd"