Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 07/12] fs/iso9660: prepare cleaner kernel/initrd path handling
Date: Sat, 6 Jun 2015 00:06:26 +0200	[thread overview]
Message-ID: <20150605220626.GH3641@free.fr> (raw)
In-Reply-To: <1433430330-2166-8-git-send-email-thomas.petazzoni@free-electrons.com>

Thomas, All,

On 2015-06-04 17:05 +0200, Thomas Petazzoni spake thusly:
> The iso9660.mk modifies the menu.lst file from Grub to set the correct
> initrd/kernel image locations. However, with the upcoming support of
> other bootloaders for iso9660 filesystems, we need to modify a bit
> this logic.
> 
> Instead of relying on the specific details of the grub menu.lst
> syntax, we introduce the __KERNEL_PATH__ and __INITRD_PATH__ magic
> keywords, which iso9660.mk will replace by the appropriate
> values. They can therefore be used where needed in grub menu.lst, and
> in similar configuration files of other bootloaders, as will be
> supported in the following commits.

You forgot to document in the commit log that you are also moving the
locations where the kernel image and initrd files are now stored.

I understand this is needed later on when we add support for using the
iso9660 directly as the rootfs, because the kernel will be forcibly
installed in the target (with the appropriate Kconfig option), and that
you also move the initrd to match.

Still, this is missing in the commit log (and I forgot to write this in
my previous mail, sorry).

However, I trust you to come up with a delightfull-to-read explanation,
so my Acked-by still stands! ;-)

Regards,
Yann E. MORIN.

> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> ---
>  fs/iso9660/Config.in  |  5 +++++
>  fs/iso9660/iso9660.mk | 11 ++++++++---
>  fs/iso9660/menu.lst   |  4 ++--
>  3 files changed, 15 insertions(+), 5 deletions(-)
> 
> diff --git a/fs/iso9660/Config.in b/fs/iso9660/Config.in
> index 9d00ab8..111158b 100644
> --- a/fs/iso9660/Config.in
> +++ b/fs/iso9660/Config.in
> @@ -13,6 +13,11 @@ if BR2_TARGET_ROOTFS_ISO9660
>  config BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU
>  	string "Boot menu.lst file"
>  	default "fs/iso9660/menu.lst"
> +	help
> +	  Use this option to provide a custom Grub menu.lst file. Note
> +	  that the strings __KERNEL_PATH__ and __INITRD_PATH__ will
> +	  automatically be replaced by the path to the kernel and
> +	  initrd images respectively.
>  
>  endif
>  
> diff --git a/fs/iso9660/iso9660.mk b/fs/iso9660/iso9660.mk
> index 80971d3..2a8a447 100644
> --- a/fs/iso9660/iso9660.mk
> +++ b/fs/iso9660/iso9660.mk
> @@ -22,12 +22,14 @@ endif
>  
>  ifeq ($(BR2_TARGET_ROOTFS_INITRAMFS),y)
>  define ROOTFS_ISO9660_INITRD
> -	$(SED) '/initrd/d'  $(ROOTFS_ISO9660_TARGET_DIR)/boot/grub/menu.lst
> +	$(SED) '/__INITRD_PATH__/d'  $(ROOTFS_ISO9660_TARGET_DIR)/boot/grub/menu.lst
>  endef
>  else
>  define ROOTFS_ISO9660_INITRD
>  	$(INSTALL) -D -m 0644 $(BINARIES_DIR)/rootfs.cpio$(ROOTFS_CPIO_COMPRESS_EXT) \
> -		$(ROOTFS_ISO9660_TARGET_DIR)/initrd
> +		$(ROOTFS_ISO9660_TARGET_DIR)/boot/initrd
> +	$(SED) "s%__INITRD_PATH__%/boot/initrd%" \
> +		$(ROOTFS_ISO9660_TARGET_DIR)/boot/grub/menu.lst
>  endef
>  endif
>  
> @@ -36,7 +38,10 @@ define ROOTFS_ISO9660_PREPARATION
>  		$(ROOTFS_ISO9660_TARGET_DIR)/boot/grub/stage2_eltorito
>  	$(INSTALL) -D -m 0644 $(ROOTFS_ISO9660_BOOT_MENU) \
>  		$(ROOTFS_ISO9660_TARGET_DIR)/boot/grub/menu.lst
> -	$(INSTALL) -D -m 0644 $(LINUX_IMAGE_PATH) $(ROOTFS_ISO9660_TARGET_DIR)/kernel
> +	$(INSTALL) -D -m 0644 $(LINUX_IMAGE_PATH) \
> +		$(ROOTFS_ISO9660_TARGET_DIR)/boot/$(LINUX_IMAGE_NAME)
> +	$(SED) "s%__KERNEL_PATH__%/boot/$(LINUX_IMAGE_NAME)%" \
> +		$(ROOTFS_ISO9660_TARGET_DIR)/boot/grub/menu.lst
>  	$(ROOTFS_ISO9660_SPLASHSCREEN)
>  	$(ROOTFS_ISO9660_INITRD)
>  endef
> diff --git a/fs/iso9660/menu.lst b/fs/iso9660/menu.lst
> index fd5c76a..8e8309f 100644
> --- a/fs/iso9660/menu.lst
> +++ b/fs/iso9660/menu.lst
> @@ -12,8 +12,8 @@ foreground 	000000
>  background 	cccccc
>  
>  title		Buildroot ISO9660 image
> -kernel		/kernel
> -initrd		/initrd
> +kernel		__KERNEL_PATH__
> +initrd		__INITRD_PATH__
>  
>  title		Hard Drive (first partition)
>  rootnoverify	(hd0)
> -- 
> 2.1.0
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  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.  |
'------------------------------^-------^------------------^--------------------'

  parent reply	other threads:[~2015-06-05 22:06 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-04 15:05 [Buildroot] [PATCH 00/12] iso9660 support improvements Thomas Petazzoni
2015-06-04 15:05 ` [Buildroot] [PATCH 01/12] fs/common: add <fs>_POST_GEN_HOOKS support Thomas Petazzoni
2015-06-05  9:43   ` Samuel Martin
2015-06-05 20:49   ` Yann E. MORIN
2015-06-04 15:05 ` [Buildroot] [PATCH 02/12] fs/iso9660: convert to the filesystem infrastructure Thomas Petazzoni
2015-06-05 11:59   ` Samuel Martin
2015-06-05 13:34     ` Thomas Petazzoni
2015-06-05 20:58   ` Yann E. MORIN
2015-06-06  0:42     ` Thomas Petazzoni
2015-06-06  9:01       ` Yann E. MORIN
2015-06-06 14:57         ` Thomas Petazzoni
2015-06-06 16:03           ` Yann E. MORIN
2015-06-05 22:44   ` Arnout Vandecappelle
2015-06-06  0:43     ` Thomas Petazzoni
2015-06-07 19:53       ` Yann E. MORIN
2015-06-04 15:05 ` [Buildroot] [PATCH 03/12] fs/iso9660: use if ... endif block instead of depends on Thomas Petazzoni
2015-06-05 12:01   ` Samuel Martin
2015-06-05 21:00   ` Yann E. MORIN
2015-06-04 15:05 ` [Buildroot] [PATCH 04/12] fs/iso9660: enable Joliet extension Thomas Petazzoni
2015-06-05 12:06   ` Samuel Martin
2015-06-05 21:18   ` Yann E. MORIN
2015-06-06  0:46     ` Thomas Petazzoni
2015-06-06  9:02       ` Yann E. MORIN
2015-06-04 15:05 ` [Buildroot] [PATCH 05/12] fs/iso9660: rename all variables to use the ROOTFS_ISO9660 prefix Thomas Petazzoni
2015-06-05 12:08   ` Samuel Martin
2015-06-05 21:20   ` Yann E. MORIN
2015-06-04 15:05 ` [Buildroot] [PATCH 06/12] fs/iso9660: change the location of the splash image Thomas Petazzoni
2015-06-05 12:09   ` Samuel Martin
2015-06-05 21:30   ` Yann E. MORIN
2015-06-04 15:05 ` [Buildroot] [PATCH 07/12] fs/iso9660: prepare cleaner kernel/initrd path handling Thomas Petazzoni
2015-06-05 12:11   ` Samuel Martin
2015-06-05 21:43   ` Yann E. MORIN
2015-06-05 22:06   ` Yann E. MORIN [this message]
2015-06-04 15:05 ` [Buildroot] [PATCH 08/12] fs/iso9660: support building a real iso9660 filesystem Thomas Petazzoni
2015-06-05 12:57   ` Samuel Martin
2015-06-05 22:13   ` Yann E. MORIN
2015-06-04 15:05 ` [Buildroot] [PATCH 09/12] fs/iso9660: add support for isolinux Thomas Petazzoni
2015-06-05 13:02   ` Samuel Martin
2015-06-05 22:38   ` Yann E. MORIN
2015-06-06  1:03     ` Thomas Petazzoni
2015-06-06  9:25       ` Yann E. MORIN
2015-06-04 15:05 ` [Buildroot] [PATCH 10/12] fs/iso9660: add hybrid image support Thomas Petazzoni
2015-06-05 13:07   ` Samuel Martin
2015-06-05 22:51   ` Yann E. MORIN
2015-06-04 15:05 ` [Buildroot] [PATCH 11/12] grub2: prepare and install El Torito image Thomas Petazzoni
2015-06-05 13:21   ` Samuel Martin
2015-06-05 22:55   ` Yann E. MORIN
2015-06-05 23:09   ` Yann E. MORIN
2015-06-06  0:57     ` Thomas Petazzoni
2015-06-06  9:31       ` Yann E. MORIN
2015-06-04 15:05 ` [Buildroot] [PATCH 12/12] fs/iso9660: add support for grub2 Thomas Petazzoni
2015-06-05 13:30   ` Samuel Martin
2015-06-05 23:07   ` Yann E. MORIN
2015-06-06  0:59     ` Thomas Petazzoni
2015-06-06  9:18       ` Yann E. MORIN

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=20150605220626.GH3641@free.fr \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@busybox.net \
    /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