All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image
@ 2015-01-19 19:52 Noé Rubinstein
  2015-01-19 19:52 ` [Buildroot] [PATCH 2/3] fs/iso9660: remove obsolete code Noé Rubinstein
                   ` (3 more replies)
  0 siblings, 4 replies; 11+ messages in thread
From: Noé Rubinstein @ 2015-01-19 19:52 UTC (permalink / raw)
  To: buildroot

This adds an option to build an ISO image using ISOLINUX as a
bootloader, as ISOLINUX provides "isohybrid", an utility that enables
using an ISO image as a bootable disk image.

Signed-off-by: No? Rubinstein <nrubinstein@aldebaran.com>
---
 fs/iso9660/Config.in    | 41 ++++++++++++++++++++++++++++++++++++-----
 fs/iso9660/iso9660.mk   | 48 ++++++++++++++++++++++++++++++++++++++++--------
 fs/iso9660/isolinux.cfg |  4 ++++
 3 files changed, 80 insertions(+), 13 deletions(-)
 create mode 100644 fs/iso9660/isolinux.cfg

diff --git a/fs/iso9660/Config.in b/fs/iso9660/Config.in
index 50b4377..900dc43 100644
--- a/fs/iso9660/Config.in
+++ b/fs/iso9660/Config.in
@@ -3,15 +3,46 @@ config BR2_TARGET_ROOTFS_ISO9660
 	depends on (BR2_i386 || BR2_x86_64)
 	depends on BR2_LINUX_KERNEL
 	select BR2_TARGET_ROOTFS_CPIO
-	select BR2_TARGET_GRUB
-	select BR2_TARGET_GRUB_FS_ISO9660
 	help
 	  Build a bootable iso9660 image
 
-config BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU
-	string "Boot menu.lst file"
+choice
+	prompt "bootloader"
+	default BR2_TARGET_ROOTFS_ISO9660_ISOLINUX
+	depends on BR2_TARGET_ROOTFS_ISO9660
+	help
+	  Select the bootloader used on the ISO image
+
+config BR2_TARGET_ROOTFS_ISO9660_ISOLINUX
+	bool "isolinux"
+	select BR2_TARGET_SYSLINUX
+	select BR2_TARGET_SYSLINUX_ISOLINUX
+	help
+	  Select this if you want a hybrid ISO, flashable from either an optical
+	  disk or a flash drive.
+
+config BR2_TARGET_ROOTFS_ISO9660_GRUB
+	bool "grub"
+	select BR2_TARGET_GRUB
+	select BR2_TARGET_GRUB_FS_ISO9660
+
+endchoice
+
+config BR2_TARGET_ROOTFS_ISO9660_CUSTOM_BOOT_CONFIG
+	bool "Use a custom boot config file"
+	depends on BR2_TARGET_ROOTFS_ISO9660
+
+config BR2_TARGET_ROOTFS_ISO9660_CUSTOM_BOOT_CONFIG_PATH
+	string "Path to custom boot config file"
+	depends on BR2_TARGET_ROOTFS_ISO9660_CUSTOM_BOOT_CONFIG
+
+config BR2_TARGET_ROOTFS_ISO9660_BOOT_CONFIG
+	string
 	depends on BR2_TARGET_ROOTFS_ISO9660
-	default "fs/iso9660/menu.lst"
+	default $(BR2_TARGET_ROOTFS_ISO9660_CUSTOM_BOOT_CONFIG_PATH) \
+		if BR2_TARGET_ROOTFS_ISO9660_CUSTOM_BOOT_CONFIG
+	default "fs/iso9660/isolinux.cfg" if BR2_TARGET_ROOTFS_ISO9660_ISOLINUX
+	default "fs/iso9660/menu.lst" if BR2_TARGET_ROOTFS_ISO9660_GRUB
 
 comment "iso image needs a Linux kernel to be built"
 	depends on BR2_i386 || BR2_x86_64
diff --git a/fs/iso9660/iso9660.mk b/fs/iso9660/iso9660.mk
index 5b44ba4..0c6e526 100644
--- a/fs/iso9660/iso9660.mk
+++ b/fs/iso9660/iso9660.mk
@@ -8,41 +8,73 @@
 ################################################################################
 
 ISO9660_TARGET_DIR = $(BUILD_DIR)/iso9660
-ISO9660_BOOT_MENU := $(call qstrip,$(BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU))
+ROOTFS_ISO9660_DEPENDENCIES = host-cdrkit host-fakeroot linux rootfs-cpio
+$(info BR2_TARGET_ROOTFS_ISO9660_BOOT_CONFIG: $(BR2_TARGET_ROOTFS_ISO9660_BOOT_CONFIG))
+ISO9660_BOOT_CONFIG := $(call qstrip,$(BR2_TARGET_ROOTFS_ISO9660_BOOT_CONFIG))
 
-ROOTFS_ISO9660_DEPENDENCIES = grub host-cdrkit host-fakeroot linux rootfs-cpio
+ifeq ($(BR2_TARGET_ROOTFS_ISO9660_GRUB),y)
+ISO9660_BOOT_CONFIG_TARGET := $(ISO9660_TARGET_DIR)/boot/grub/menu.lst
+ISO9660_BOOT_BINARY = boot/grub/stage2_eltorito
+ROOTFS_ISO9660_DEPENDENCIES += grub
+else
+ISO9660_BOOT_CONFIG_TARGET := $(ISO9660_TARGET_DIR)/isolinux/isolinux.cfg
+ISO9660_BOOT_BINARY = isolinux/isolinux.bin
+ISO9660_PROGRAM_OPTS = -c isolinux/boot.cat
+ROOTFS_ISO9660_DEPENDENCIES += syslinux
+endif
 
 $(BINARIES_DIR)/rootfs.iso9660: $(ROOTFS_ISO9660_DEPENDENCIES)
 	@$(call MESSAGE,"Generating root filesystem image rootfs.iso9660")
+
+	$(INSTALL) -D -m 0644 $(ISO9660_BOOT_CONFIG) $(ISO9660_BOOT_CONFIG_TARGET)
+	$(INSTALL) -D -m 0644 $(LINUX_IMAGE_PATH) $(ISO9660_TARGET_DIR)/kernel
+
+ifeq ($(BR2_TARGET_ROOTFS_ISO9660_GRUB),y)
+	# Install Grub
 	$(INSTALL) -D -m 0644 $(GRUB_DIR)/stage2/stage2_eltorito \
 		$(ISO9660_TARGET_DIR)/boot/grub/stage2_eltorito
-	$(INSTALL) -D -m 0644 $(ISO9660_BOOT_MENU) \
-		$(ISO9660_TARGET_DIR)/boot/grub/menu.lst
+
 ifeq ($(BR2_TARGET_GRUB_SPLASH),)
 	$(SED) '/^splashimage/d' $(ISO9660_TARGET_DIR)/boot/grub/menu.lst
 else
 	$(INSTALL) -D -m 0644 boot/grub/splash.xpm.gz \
 		$(ISO9660_TARGET_DIR)/splash.xpm.gz
 endif
-	$(INSTALL) -D -m 0644 $(LINUX_IMAGE_PATH) $(ISO9660_TARGET_DIR)/kernel
+else
+	# Install ISOLINUX
+	mkdir -p $(ISO9660_TARGET_DIR)/isolinux/
+	$(INSTALL) -D -m 0644 $(SYSLINUX_DIR)/bios/core/isolinux.bin \
+		$(ISO9660_TARGET_DIR)/isolinux/
+	$(INSTALL) -D -m 0644 $(SYSLINUX_DIR)/bios/com32/elflink/ldlinux/ldlinux.c32 \
+		$(ISO9660_TARGET_DIR)/isolinux/
+	$(INSTALL) -D -m 0644 $(ISO9660_BOOT_CONFIG) \
+		$(ISO9660_TARGET_DIR)/isolinux/isolinux.cfg
+endif
+
 ifeq ($(BR2_TARGET_ROOTFS_INITRAMFS),y)
-	$(SED) '/initrd/d'  $(ISO9660_TARGET_DIR)/boot/grub/menu.lst
+	$(SED) '/initrd/d'  $(ISO9660_BOOT_CONFIG_TARGET)
 else
 	$(INSTALL) -D -m 0644 $(BINARIES_DIR)/rootfs.cpio$(ROOTFS_CPIO_COMPRESS_EXT) \
 		$(ISO9660_TARGET_DIR)/initrd
 endif
+
 	# Use fakeroot to pretend all target binaries are owned by root
 	rm -f $(FAKEROOT_SCRIPT)
 	echo "chown -h -R 0:0 $(ISO9660_TARGET_DIR)" >> $(FAKEROOT_SCRIPT)
 	# Use fakeroot so mkisofs believes the previous fakery
-	echo "$(HOST_DIR)/usr/bin/genisoimage -R -b boot/grub/stage2_eltorito -no-emul-boot " \
-		"-boot-load-size 4 -boot-info-table -o $@ $(ISO9660_TARGET_DIR)" \
+	echo "$(HOST_DIR)/usr/bin/genisoimage -R -b $(ISO9660_BOOT_BINARY) -no-emul-boot " \
+		"-boot-load-size 4 -boot-info-table $(ISO9660_PROGRAM_OPTS) " \
+		"-o $@ $(ISO9660_TARGET_DIR)" \
 		>> $(FAKEROOT_SCRIPT)
 	chmod a+x $(FAKEROOT_SCRIPT)
 	$(HOST_DIR)/usr/bin/fakeroot -- $(FAKEROOT_SCRIPT)
 	- at rm -f $(FAKEROOT_SCRIPT)
 	- at rm -rf $(ISO9660_TARGET_DIR)
 
+ifeq ($(BR2_TARGET_ROOTFS_ISO9660_ISOLINUX),y)
+	$(HOST_DIR)/usr/bin/isohybrid $@
+endif
+
 rootfs-iso9660: $(BINARIES_DIR)/rootfs.iso9660
 
 rootfs-iso9660-show-depends:
diff --git a/fs/iso9660/isolinux.cfg b/fs/iso9660/isolinux.cfg
new file mode 100644
index 0000000..8874467
--- /dev/null
+++ b/fs/iso9660/isolinux.cfg
@@ -0,0 +1,4 @@
+default 1
+label 1
+	kernel /kernel
+	append initrd=/initrd
-- 
2.1.4

Please ignore the below footer, which is of course irrelevant to this patch.

-- 




*This email and any attachment thereto are confidential and intended solely 
for the use of the individual or entity to whom they are addressed.If you 
are not the intended recipient, please be advised that disclosing, copying, 
distributing or taking any action in reliance on the contents of this email 
is strictly prohibited. In such case, please immediately advise the sender, 
and delete all copies and attachment from your system.This email shall not 
be construed and is not tantamount to an offer, an acceptance of offer, or 
an agreement by Aldebaran Robotics on any discussion or contractual 
document whatsoever. No employee or agent is authorized to represent or 
bind Aldebaran Robotics to third parties by email, or act on behalf of 
Aldebaran Robotics by email, without express written confirmation by 
Aldebaran Robotics? duly authorized representatives.*
------------------------------

*Ce message ?lectronique et ?ventuelles pi?ces jointes sont confidentiels, 
et exclusivement destin?s ? la personne ou l'entit? ? qui ils sont 
adress?s.*

*Si vous n'?tes pas le destinataire vis?, vous ?tes pri? de ne pas 
divulguer, copier, distribuer ou prendre toute d?cision sur la foi de ce 
message ?lectronique. Merci d'en aviser imm?diatement l'exp?diteur et de 
supprimer toutes les copies et ?ventuelles pi?ces jointes de votre syst?me.*

*Ce message ?lectronique n'?quivaut pas ? une offre, ? une acceptation 
d?offre, ou ? un accord d'Aldebaran Robotics sur toute discussion ou 
document contractuel quel qu?il soit, et ne peut ?tre interpr?t? comme tel. 
Aucun employ? ou agent d?Aldebaran Robotics n'est autoris? ? repr?senter ou 
? engager la soci?t? par email, ou ? agir au nom et pour le compte de la 
soci?t? par email, sans qu?une confirmation ?crite soit donn?e par le 
repr?sentant l?gal d?Aldebaran Robotics ou par toute autre personne ayant 
re?u d?l?gation de pouvoir appropri?e.*

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH 2/3] fs/iso9660: remove obsolete code
  2015-01-19 19:52 [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image Noé Rubinstein
@ 2015-01-19 19:52 ` Noé Rubinstein
  2015-01-26 22:27   ` Thomas Petazzoni
  2015-01-19 19:52 ` [Buildroot] [PATCH 3/3] docs/manual/beyond-buildroot: building and testing live-CDs Noé Rubinstein
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 11+ messages in thread
From: Noé Rubinstein @ 2015-01-19 19:52 UTC (permalink / raw)
  To: buildroot

This rule is superseded by a rule defined in fs/common.mk:

    rootfs-$(1)-show-depends:
            @echo $$(ROOTFS_$(2)_DEPENDENCIES)

Signed-off-by: No? Rubinstein <nrubinstein@aldebaran.com>
---
 fs/iso9660/iso9660.mk | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/fs/iso9660/iso9660.mk b/fs/iso9660/iso9660.mk
index 0c6e526..58e90c6 100644
--- a/fs/iso9660/iso9660.mk
+++ b/fs/iso9660/iso9660.mk
@@ -77,9 +77,6 @@ endif
 
 rootfs-iso9660: $(BINARIES_DIR)/rootfs.iso9660
 
-rootfs-iso9660-show-depends:
-	@echo $(ROOTFS_ISO9660_DEPENDENCIES)
-
 ################################################################################
 #
 # Toplevel Makefile options
-- 
2.1.4

Please ignore the below footer, which is of course irrelevant to this patch.

-- 




*This email and any attachment thereto are confidential and intended solely 
for the use of the individual or entity to whom they are addressed.If you 
are not the intended recipient, please be advised that disclosing, copying, 
distributing or taking any action in reliance on the contents of this email 
is strictly prohibited. In such case, please immediately advise the sender, 
and delete all copies and attachment from your system.This email shall not 
be construed and is not tantamount to an offer, an acceptance of offer, or 
an agreement by Aldebaran Robotics on any discussion or contractual 
document whatsoever. No employee or agent is authorized to represent or 
bind Aldebaran Robotics to third parties by email, or act on behalf of 
Aldebaran Robotics by email, without express written confirmation by 
Aldebaran Robotics? duly authorized representatives.*
------------------------------

*Ce message ?lectronique et ?ventuelles pi?ces jointes sont confidentiels, 
et exclusivement destin?s ? la personne ou l'entit? ? qui ils sont 
adress?s.*

*Si vous n'?tes pas le destinataire vis?, vous ?tes pri? de ne pas 
divulguer, copier, distribuer ou prendre toute d?cision sur la foi de ce 
message ?lectronique. Merci d'en aviser imm?diatement l'exp?diteur et de 
supprimer toutes les copies et ?ventuelles pi?ces jointes de votre syst?me.*

*Ce message ?lectronique n'?quivaut pas ? une offre, ? une acceptation 
d?offre, ou ? un accord d'Aldebaran Robotics sur toute discussion ou 
document contractuel quel qu?il soit, et ne peut ?tre interpr?t? comme tel. 
Aucun employ? ou agent d?Aldebaran Robotics n'est autoris? ? repr?senter ou 
? engager la soci?t? par email, ou ? agir au nom et pour le compte de la 
soci?t? par email, sans qu?une confirmation ?crite soit donn?e par le 
repr?sentant l?gal d?Aldebaran Robotics ou par toute autre personne ayant 
re?u d?l?gation de pouvoir appropri?e.*

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH 3/3] docs/manual/beyond-buildroot: building and testing live-CDs
  2015-01-19 19:52 [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image Noé Rubinstein
  2015-01-19 19:52 ` [Buildroot] [PATCH 2/3] fs/iso9660: remove obsolete code Noé Rubinstein
@ 2015-01-19 19:52 ` Noé Rubinstein
  2015-02-02 20:40   ` Thomas De Schampheleire
  2015-07-10 17:18   ` Thomas Petazzoni
  2015-02-02 20:39 ` [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image Thomas De Schampheleire
  2015-02-02 21:13 ` Arnout Vandecappelle
  3 siblings, 2 replies; 11+ messages in thread
From: Noé Rubinstein @ 2015-01-19 19:52 UTC (permalink / raw)
  To: buildroot

Signed-off-by: No? Rubinstein <nrubinstein@aldebaran.com>
---
 docs/manual/beyond-buildroot.txt | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/docs/manual/beyond-buildroot.txt b/docs/manual/beyond-buildroot.txt
index b8b1973..d5d7089 100644
--- a/docs/manual/beyond-buildroot.txt
+++ b/docs/manual/beyond-buildroot.txt
@@ -35,3 +35,29 @@ you should be aware of:
 
 * Buildroot does not currently provide +host-qemu+ and +binfmt+
   correctly built and set for that kind of use.
+
+==== Live-CD
+
+To build a live-CD image, enable _iso image_ in the _Filesystem images_ menu.
+(This works only on x86 and x86_64.)
+
+You can build a live-CD image with either ISOLINUX or Grub as a bootloader,
+but only ISOLINUX supports using this image with a live-USB drive.
+
+You can test your live-CD image using QEMU:
+
+-------------------
+qemu-system-i386 -cdrom output/images/rootfs.iso9660
+-------------------
+
+Or use it as a hard-drive image if it is an hybrid ISO:
+
+-------------------
+qemu-system-i386 -hda output/images/rootfs.iso9660
+-------------------
+
+It can be easily flashed to an USB drive with +dd+:
+
+-------------------
+dd if=output/images/rootfs.iso9660 of=/dev/sdb
+-------------------
-- 
2.1.4

Please ignore the below footer, which is of course irrelevant to this patch.

-- 




*This email and any attachment thereto are confidential and intended solely 
for the use of the individual or entity to whom they are addressed.If you 
are not the intended recipient, please be advised that disclosing, copying, 
distributing or taking any action in reliance on the contents of this email 
is strictly prohibited. In such case, please immediately advise the sender, 
and delete all copies and attachment from your system.This email shall not 
be construed and is not tantamount to an offer, an acceptance of offer, or 
an agreement by Aldebaran Robotics on any discussion or contractual 
document whatsoever. No employee or agent is authorized to represent or 
bind Aldebaran Robotics to third parties by email, or act on behalf of 
Aldebaran Robotics by email, without express written confirmation by 
Aldebaran Robotics? duly authorized representatives.*
------------------------------

*Ce message ?lectronique et ?ventuelles pi?ces jointes sont confidentiels, 
et exclusivement destin?s ? la personne ou l'entit? ? qui ils sont 
adress?s.*

*Si vous n'?tes pas le destinataire vis?, vous ?tes pri? de ne pas 
divulguer, copier, distribuer ou prendre toute d?cision sur la foi de ce 
message ?lectronique. Merci d'en aviser imm?diatement l'exp?diteur et de 
supprimer toutes les copies et ?ventuelles pi?ces jointes de votre syst?me.*

*Ce message ?lectronique n'?quivaut pas ? une offre, ? une acceptation 
d?offre, ou ? un accord d'Aldebaran Robotics sur toute discussion ou 
document contractuel quel qu?il soit, et ne peut ?tre interpr?t? comme tel. 
Aucun employ? ou agent d?Aldebaran Robotics n'est autoris? ? repr?senter ou 
? engager la soci?t? par email, ou ? agir au nom et pour le compte de la 
soci?t? par email, sans qu?une confirmation ?crite soit donn?e par le 
repr?sentant l?gal d?Aldebaran Robotics ou par toute autre personne ayant 
re?u d?l?gation de pouvoir appropri?e.*

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH 2/3] fs/iso9660: remove obsolete code
  2015-01-19 19:52 ` [Buildroot] [PATCH 2/3] fs/iso9660: remove obsolete code Noé Rubinstein
@ 2015-01-26 22:27   ` Thomas Petazzoni
  0 siblings, 0 replies; 11+ messages in thread
From: Thomas Petazzoni @ 2015-01-26 22:27 UTC (permalink / raw)
  To: buildroot

Dear No? Rubinstein,

On Mon, 19 Jan 2015 20:52:56 +0100, No? Rubinstein wrote:
> This rule is superseded by a rule defined in fs/common.mk:
> 
>     rootfs-$(1)-show-depends:
>             @echo $$(ROOTFS_$(2)_DEPENDENCIES)
> 
> Signed-off-by: No? Rubinstein <nrubinstein@aldebaran.com>

No, this is not correct, because iso9660.mk unfortunately does not use
the fs/common.mk code. See the comment at the top of the iso9660.mk
file:

################################################################################
#
# Build the iso96600 root filesystem image
#
# Cannot be converted to the ROOTFS_TARGET infrastructure, because of
# the temporary construction in ISO9660_TARGET_DIR.
#
################################################################################

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image
  2015-01-19 19:52 [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image Noé Rubinstein
  2015-01-19 19:52 ` [Buildroot] [PATCH 2/3] fs/iso9660: remove obsolete code Noé Rubinstein
  2015-01-19 19:52 ` [Buildroot] [PATCH 3/3] docs/manual/beyond-buildroot: building and testing live-CDs Noé Rubinstein
@ 2015-02-02 20:39 ` Thomas De Schampheleire
  2015-02-03  9:43   ` Noé RUBINSTEIN
  2015-02-02 21:13 ` Arnout Vandecappelle
  3 siblings, 1 reply; 11+ messages in thread
From: Thomas De Schampheleire @ 2015-02-02 20:39 UTC (permalink / raw)
  To: buildroot

Hi No?,

On Mon, Jan 19, 2015 at 8:52 PM, No? Rubinstein
<nrubinstein@aldebaran.com> wrote:
> This adds an option to build an ISO image using ISOLINUX as a
> bootloader, as ISOLINUX provides "isohybrid", an utility that enables
> using an ISO image as a bootable disk image.
>
> Signed-off-by: No? Rubinstein <nrubinstein@aldebaran.com>

Thanks for your contribution! Some comments below...

> ---
>  fs/iso9660/Config.in    | 41 ++++++++++++++++++++++++++++++++++++-----
>  fs/iso9660/iso9660.mk   | 48 ++++++++++++++++++++++++++++++++++++++++--------
>  fs/iso9660/isolinux.cfg |  4 ++++
>  3 files changed, 80 insertions(+), 13 deletions(-)
>  create mode 100644 fs/iso9660/isolinux.cfg
>
> diff --git a/fs/iso9660/Config.in b/fs/iso9660/Config.in
> index 50b4377..900dc43 100644
> --- a/fs/iso9660/Config.in
> +++ b/fs/iso9660/Config.in
> @@ -3,15 +3,46 @@ config BR2_TARGET_ROOTFS_ISO9660
>         depends on (BR2_i386 || BR2_x86_64)
>         depends on BR2_LINUX_KERNEL
>         select BR2_TARGET_ROOTFS_CPIO
> -       select BR2_TARGET_GRUB
> -       select BR2_TARGET_GRUB_FS_ISO9660
>         help
>           Build a bootable iso9660 image
>
> -config BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU
> -       string "Boot menu.lst file"
> +choice
> +       prompt "bootloader"
> +       default BR2_TARGET_ROOTFS_ISO9660_ISOLINUX
> +       depends on BR2_TARGET_ROOTFS_ISO9660
> +       help
> +         Select the bootloader used on the ISO image
> +
> +config BR2_TARGET_ROOTFS_ISO9660_ISOLINUX
> +       bool "isolinux"
> +       select BR2_TARGET_SYSLINUX
> +       select BR2_TARGET_SYSLINUX_ISOLINUX
> +       help
> +         Select this if you want a hybrid ISO, flashable from either an optical
> +         disk or a flash drive.
> +
> +config BR2_TARGET_ROOTFS_ISO9660_GRUB
> +       bool "grub"
> +       select BR2_TARGET_GRUB
> +       select BR2_TARGET_GRUB_FS_ISO9660
> +
> +endchoice
> +
> +config BR2_TARGET_ROOTFS_ISO9660_CUSTOM_BOOT_CONFIG
> +       bool "Use a custom boot config file"
> +       depends on BR2_TARGET_ROOTFS_ISO9660

There should be some help text on this option: what is the format of
the config file, what is the default one, ... ?

> +
> +config BR2_TARGET_ROOTFS_ISO9660_CUSTOM_BOOT_CONFIG_PATH
> +       string "Path to custom boot config file"
> +       depends on BR2_TARGET_ROOTFS_ISO9660_CUSTOM_BOOT_CONFIG
> +
> +config BR2_TARGET_ROOTFS_ISO9660_BOOT_CONFIG
> +       string
>         depends on BR2_TARGET_ROOTFS_ISO9660
> -       default "fs/iso9660/menu.lst"
> +       default $(BR2_TARGET_ROOTFS_ISO9660_CUSTOM_BOOT_CONFIG_PATH) \
> +               if BR2_TARGET_ROOTFS_ISO9660_CUSTOM_BOOT_CONFIG
> +       default "fs/iso9660/isolinux.cfg" if BR2_TARGET_ROOTFS_ISO9660_ISOLINUX
> +       default "fs/iso9660/menu.lst" if BR2_TARGET_ROOTFS_ISO9660_GRUB
>
>  comment "iso image needs a Linux kernel to be built"
>         depends on BR2_i386 || BR2_x86_64
> diff --git a/fs/iso9660/iso9660.mk b/fs/iso9660/iso9660.mk
> index 5b44ba4..0c6e526 100644
> --- a/fs/iso9660/iso9660.mk
> +++ b/fs/iso9660/iso9660.mk
> @@ -8,41 +8,73 @@
>  ################################################################################
>
>  ISO9660_TARGET_DIR = $(BUILD_DIR)/iso9660
> -ISO9660_BOOT_MENU := $(call qstrip,$(BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU))
> +ROOTFS_ISO9660_DEPENDENCIES = host-cdrkit host-fakeroot linux rootfs-cpio
> +$(info BR2_TARGET_ROOTFS_ISO9660_BOOT_CONFIG: $(BR2_TARGET_ROOTFS_ISO9660_BOOT_CONFIG))

This $(info) call should be removed.

Best regards,
Thomas

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH 3/3] docs/manual/beyond-buildroot: building and testing live-CDs
  2015-01-19 19:52 ` [Buildroot] [PATCH 3/3] docs/manual/beyond-buildroot: building and testing live-CDs Noé Rubinstein
@ 2015-02-02 20:40   ` Thomas De Schampheleire
  2015-07-10 17:18   ` Thomas Petazzoni
  1 sibling, 0 replies; 11+ messages in thread
From: Thomas De Schampheleire @ 2015-02-02 20:40 UTC (permalink / raw)
  To: buildroot

Hi No?,

On Mon, Jan 19, 2015 at 8:52 PM, No? Rubinstein
<nrubinstein@aldebaran.com> wrote:
> Signed-off-by: No? Rubinstein <nrubinstein@aldebaran.com>
> ---
>  docs/manual/beyond-buildroot.txt | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/docs/manual/beyond-buildroot.txt b/docs/manual/beyond-buildroot.txt
> index b8b1973..d5d7089 100644
> --- a/docs/manual/beyond-buildroot.txt
> +++ b/docs/manual/beyond-buildroot.txt
> @@ -35,3 +35,29 @@ you should be aware of:
>
>  * Buildroot does not currently provide +host-qemu+ and +binfmt+
>    correctly built and set for that kind of use.
> +
> +==== Live-CD
> +
> +To build a live-CD image, enable _iso image_ in the _Filesystem images_ menu.
> +(This works only on x86 and x86_64.)
> +
> +You can build a live-CD image with either ISOLINUX or Grub as a bootloader,
> +but only ISOLINUX supports using this image with a live-USB drive.
> +
> +You can test your live-CD image using QEMU:
> +
> +-------------------
> +qemu-system-i386 -cdrom output/images/rootfs.iso9660
> +-------------------
> +
> +Or use it as a hard-drive image if it is an hybrid ISO:

an hybrid --> a hybrid

> +
> +-------------------
> +qemu-system-i386 -hda output/images/rootfs.iso9660
> +-------------------
> +
> +It can be easily flashed to an USB drive with +dd+:

an USB --> a USB


Best regards,
Thomas

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image
  2015-01-19 19:52 [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image Noé Rubinstein
                   ` (2 preceding siblings ...)
  2015-02-02 20:39 ` [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image Thomas De Schampheleire
@ 2015-02-02 21:13 ` Arnout Vandecappelle
  2015-02-03 14:15   ` Arnout Vandecappelle
  3 siblings, 1 reply; 11+ messages in thread
From: Arnout Vandecappelle @ 2015-02-02 21:13 UTC (permalink / raw)
  To: buildroot

On 19/01/15 20:52, No? Rubinstein wrote:
> This adds an option to build an ISO image using ISOLINUX as a
> bootloader, as ISOLINUX provides "isohybrid", an utility that enables
> using an ISO image as a bootable disk image.
> 
> Signed-off-by: No? Rubinstein <nrubinstein@aldebaran.com>

 Hi No?,

 While you're working on this, there is something else that you may be
interested in doing.

 Currently, the iso image that is generated is not really the root filesystem,
but it contains a cpio image with the real root filesystem. But in fact, there
is no good reason to work that way, and it really complicates the build.
Instead, it would be a lot more logical to create a real iso9660 root filesystem
using the RockRidge extensions.

 That would also allow the iso9660 fs to finally use the ROOTFS_TARGET
infrastructure, removing a lot of cruft.


 If you're willing to work on this, you can add it as an additional patch to
your series. It's very likely that it will need a couple of review cycles, so be
prepared for that :-)


 Regards,
 Arnout

[snip]


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image
  2015-02-02 20:39 ` [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image Thomas De Schampheleire
@ 2015-02-03  9:43   ` Noé RUBINSTEIN
  2015-02-03 14:35     ` Thomas De Schampheleire
  0 siblings, 1 reply; 11+ messages in thread
From: Noé RUBINSTEIN @ 2015-02-03  9:43 UTC (permalink / raw)
  To: buildroot

Hi Thomas, thanks for your review.

2015-02-02 21:39 GMT+01:00 Thomas De Schampheleire <patrickdepinguin@gmail.com>:
> > +config BR2_TARGET_ROOTFS_ISO9660_CUSTOM_BOOT_CONFIG
> > +       bool "Use a custom boot config file"
> > +       depends on BR2_TARGET_ROOTFS_ISO9660
>
> There should be some help text on this option: what is the format of
> the config file, what is the default one, ... ?

This is a bool option, and when toggled it shows option
BR2_TARGET_ROOTFS_ISO9660_BOOT_CONFIG which has a visible default
value. Should I add a link to
http://www.syslinux.org/wiki/index.php/Isolinux.cfg and
http://www.gnu.org/software/grub/manual/html_node/Configuration.html ?

-- 




*This email and any attachment thereto are confidential and intended solely 
for the use of the individual or entity to whom they are addressed.If you 
are not the intended recipient, please be advised that disclosing, copying, 
distributing or taking any action in reliance on the contents of this email 
is strictly prohibited. In such case, please immediately advise the sender, 
and delete all copies and attachment from your system.This email shall not 
be construed and is not tantamount to an offer, an acceptance of offer, or 
an agreement by Aldebaran Robotics on any discussion or contractual 
document whatsoever. No employee or agent is authorized to represent or 
bind Aldebaran Robotics to third parties by email, or act on behalf of 
Aldebaran Robotics by email, without express written confirmation by 
Aldebaran Robotics? duly authorized representatives.*
------------------------------

*Ce message ?lectronique et ?ventuelles pi?ces jointes sont confidentiels, 
et exclusivement destin?s ? la personne ou l'entit? ? qui ils sont 
adress?s.*

*Si vous n'?tes pas le destinataire vis?, vous ?tes pri? de ne pas 
divulguer, copier, distribuer ou prendre toute d?cision sur la foi de ce 
message ?lectronique. Merci d'en aviser imm?diatement l'exp?diteur et de 
supprimer toutes les copies et ?ventuelles pi?ces jointes de votre syst?me.*

*Ce message ?lectronique n'?quivaut pas ? une offre, ? une acceptation 
d?offre, ou ? un accord d'Aldebaran Robotics sur toute discussion ou 
document contractuel quel qu?il soit, et ne peut ?tre interpr?t? comme tel. 
Aucun employ? ou agent d?Aldebaran Robotics n'est autoris? ? repr?senter ou 
? engager la soci?t? par email, ou ? agir au nom et pour le compte de la 
soci?t? par email, sans qu?une confirmation ?crite soit donn?e par le 
repr?sentant l?gal d?Aldebaran Robotics ou par toute autre personne ayant 
re?u d?l?gation de pouvoir appropri?e.*

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image
  2015-02-02 21:13 ` Arnout Vandecappelle
@ 2015-02-03 14:15   ` Arnout Vandecappelle
  0 siblings, 0 replies; 11+ messages in thread
From: Arnout Vandecappelle @ 2015-02-03 14:15 UTC (permalink / raw)
  To: buildroot

On 02/02/15 22:13, Arnout Vandecappelle wrote:
> On 19/01/15 20:52, No? Rubinstein wrote:
>> This adds an option to build an ISO image using ISOLINUX as a
>> bootloader, as ISOLINUX provides "isohybrid", an utility that enables
>> using an ISO image as a bootable disk image.
>>
>> Signed-off-by: No? Rubinstein <nrubinstein@aldebaran.com>
> 
>  Hi No?,
> 
>  While you're working on this, there is something else that you may be
> interested in doing.
> 
>  Currently, the iso image that is generated is not really the root filesystem,
> but it contains a cpio image with the real root filesystem. But in fact, there
> is no good reason to work that way, and it really complicates the build.
> Instead, it would be a lot more logical to create a real iso9660 root filesystem
> using the RockRidge extensions.
> 
>  That would also allow the iso9660 fs to finally use the ROOTFS_TARGET
> infrastructure, removing a lot of cruft.
> 
> 
>  If you're willing to work on this, you can add it as an additional patch to
> your series. It's very likely that it will need a couple of review cycles, so be
> prepared for that :-)


 By the way, take a look at these two very old patches by Jerome Sagnole:
http://patchwork.ozlabs.org/patch/328051/
http://patchwork.ozlabs.org/patch/328052/


 Regards,
 Arnout


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image
  2015-02-03  9:43   ` Noé RUBINSTEIN
@ 2015-02-03 14:35     ` Thomas De Schampheleire
  0 siblings, 0 replies; 11+ messages in thread
From: Thomas De Schampheleire @ 2015-02-03 14:35 UTC (permalink / raw)
  To: buildroot

Hi No?,

On Tue, Feb 3, 2015 at 10:43 AM, No? RUBINSTEIN
<nrubinstein@aldebaran.com> wrote:
> Hi Thomas, thanks for your review.
>
> 2015-02-02 21:39 GMT+01:00 Thomas De Schampheleire <patrickdepinguin@gmail.com>:
>> > +config BR2_TARGET_ROOTFS_ISO9660_CUSTOM_BOOT_CONFIG
>> > +       bool "Use a custom boot config file"
>> > +       depends on BR2_TARGET_ROOTFS_ISO9660
>>
>> There should be some help text on this option: what is the format of
>> the config file, what is the default one, ... ?
>
> This is a bool option, and when toggled it shows option
> BR2_TARGET_ROOTFS_ISO9660_BOOT_CONFIG which has a visible default
> value. Should I add a link to
> http://www.syslinux.org/wiki/index.php/Isolinux.cfg and
> http://www.gnu.org/software/grub/manual/html_node/Configuration.html ?

Yes, that could be a good idea, along with some short explanation on
why a user would want this option, and what the default config file
does...

Thanks,
Thomas

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH 3/3] docs/manual/beyond-buildroot: building and testing live-CDs
  2015-01-19 19:52 ` [Buildroot] [PATCH 3/3] docs/manual/beyond-buildroot: building and testing live-CDs Noé Rubinstein
  2015-02-02 20:40   ` Thomas De Schampheleire
@ 2015-07-10 17:18   ` Thomas Petazzoni
  1 sibling, 0 replies; 11+ messages in thread
From: Thomas Petazzoni @ 2015-07-10 17:18 UTC (permalink / raw)
  To: buildroot

Dear No? Rubinstein,

On Mon, 19 Jan 2015 20:52:57 +0100, No? Rubinstein wrote:
> Signed-off-by: No? Rubinstein <nrubinstein@aldebaran.com>
> ---
>  docs/manual/beyond-buildroot.txt | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)

I've reworded a little bit, mentioned that we supported Grub 2, made it
explicit that there is an option to get the Hybrid image functionality,
and applied.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2015-07-10 17:18 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-19 19:52 [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image Noé Rubinstein
2015-01-19 19:52 ` [Buildroot] [PATCH 2/3] fs/iso9660: remove obsolete code Noé Rubinstein
2015-01-26 22:27   ` Thomas Petazzoni
2015-01-19 19:52 ` [Buildroot] [PATCH 3/3] docs/manual/beyond-buildroot: building and testing live-CDs Noé Rubinstein
2015-02-02 20:40   ` Thomas De Schampheleire
2015-07-10 17:18   ` Thomas Petazzoni
2015-02-02 20:39 ` [Buildroot] [PATCH 1/3] fs/iso9660: allow building a hybrid ISO image Thomas De Schampheleire
2015-02-03  9:43   ` Noé RUBINSTEIN
2015-02-03 14:35     ` Thomas De Schampheleire
2015-02-02 21:13 ` Arnout Vandecappelle
2015-02-03 14:15   ` Arnout Vandecappelle

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.