[Buildroot] [PATCH 4/9 v2] fs/initramfs: cleanup and enhance comments

Yann E. MORIN yann.morin.1998 at free.fr
Mon Mar 28 21:36:54 UTC 2016


Romain, All,

On 2016-03-28 20:05 +0200, Romain Naour spake thusly:
> Le 11/03/2016 19:41, Yann E. MORIN a écrit :
> > rootfs-initramfs is not using the generic fs infrastructure, because
> > there is virtually nothing to do to build the initramfs image: there is
> > no actual image to be built to begin with.
> > 
> > The only purpose of rootfs-initramfs is to ensure the rootfs.cpio image
> > is built and then that the Linux kernel is rebuilt with that rootfs.cpio
> > as initramfs source.
> > 
> > Using variables of the fs infra like if it were used is misleading. It
> > looked nice as long as there was the possibility that rootfs-initramfs
> > would one day use the fs infra. But there's no way that will happen any
> > time soon.
> > 
> > Furthermore, the linux' rule linux-rebuild-with-initramfs now already
> > depends on rootfs-cpio by itself, so we need not duplicate this
> > dependency in rootfs-initramfs.
> > LINUX_DIR
> > Still, we want to advertise that the dependency is on rootfs-cpio, so
> > we get nice dependency graphs (and not expose the internal
> > linux-rebuild-with-initramfs rule to the users).
> > 
> > So, remove the variables and directly define the rules.
> > 
> > Signed-off-by: "Yann E. MORIN" <yann.morin.1998 at free.fr>
> > Cc: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
> > ---
> >  fs/initramfs/initramfs.mk | 22 +++++++++++++++-------
> >  1 file changed, 15 insertions(+), 7 deletions(-)
> > 
> > diff --git a/fs/initramfs/initramfs.mk b/fs/initramfs/initramfs.mk
> > index db50812..9aca9c8 100644
> > --- a/fs/initramfs/initramfs.mk
> > +++ b/fs/initramfs/initramfs.mk
> > @@ -5,17 +5,25 @@
> >  #
> >  ################################################################################
> >  
> > -ROOTFS_INITRAMFS_DEPENDENCIES += rootfs-cpio
> > -
> > -ROOTFS_INITRAMFS_POST_TARGETS += linux-rebuild-with-initramfs
> > -
> > -
> >  # The generic fs infrastructure isn't very useful here.
> > +#
> > +# The initramfs image does not actually build an image; its only purpose is:
> > +# 1- to ensure rootfs.cpio is generated,
> > +# 2- to then rebuild the kernel with rootfs.cpio as initramfs
> > +#
> > +# Note: ordering of the dependencies is not guaranteed here, but in
> > +# linux/linux.mk, via the .stamp_initramfs_rebuilt stamp file, which depends
> > +# on the rootfs-cpio filesystem rule.
> 
> As said previously, there is no more .stamp_initramfs_rebuilt file.

Fixed.

> Otherwise
> Reviewed-by: Romain Naour <romain.naour at gmail.com>

Thanks! :-)

Regards,
Yann E. MORIN.

> Best regards,
> Romain
> 
> > +#
> > +# Note: the trick here is that we directly depend on rebuilding the Linux
> > +# kernel image (which itself depends on the rootfs-cpio rule), while we
> > +# advertise that our dependency is on the rootfs-cpio rule, which is
> > +# cleaner in the dependency graph.
> >  
> > -rootfs-initramfs: $(ROOTFS_INITRAMFS_DEPENDENCIES) $(ROOTFS_INITRAMFS_POST_TARGETS)
> > +rootfs-initramfs: linux-rebuild-with-initramfs
> >  
> >  rootfs-initramfs-show-depends:
> > -	@echo $(ROOTFS_INITRAMFS_DEPENDENCIES)
> > +	@echo rootfs-cpio
> >  
> >  .PHONY: rootfs-initramfs rootfs-initramfs-show-depends
> >  
> > 
> 

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'



More information about the buildroot mailing list