All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeremy Kerr <jk@ozlabs.org>
To: buildroot@busybox.net
Subject: [Buildroot] [RFC, PATCH 6/8] package/petitboot: Add petitboot, the userspace bootloader
Date: Fri, 28 Feb 2014 13:39:23 +0800	[thread overview]
Message-ID: <5310210B.70605@ozlabs.org> (raw)
In-Reply-To: <20140130215159.432d7c13@skate>

Hi Thomas,

> I don't think we want a dependency here, as it's not necessarily
> obvious that this needs a kexec implementation. Therefore, I think we
> should have something like:
> 
> 	select BR2_PACKAGE_KEXEC_LITE if !BR2_PACKAGE_KEXEC
> 
> So that at least one implementation is guaranteed to be selected.

OK, done.

>> +PETITBOOT_SITE = git://git.ozlabs.org/home/jk/git/petitboot
>> +PETITBOOT_DEPENDENCIES = ncurses udev
> 
> If kexec is only a runtime dependency (and not a build dependency),
> then there should be a comment above the "select" of kexec in the
> Config.in that says it's only a runtime dependency.
> 
> Same thing for powerpc-utils.

I've noted this in the Config.in file now.

>> +PETITBOOT_LICENSE = GPLv2
>> +PETITBOOT_LICENSE_FILES = COPYING
>> +
>> +PETITBOOT_CONF_OPT += --with-ncurses --without-twin-x11 --without-twin-fbdev \
>> +		      --localstatedir=/var --with-tftp=busybox \
> 
> The --with-tftp=busybox seems to implies that Busybox is used.
> Technically speaking, Buildroot allows to build a root filesystem
> without Busybox. So either you should support both Busybox-based and
> non-Busybox based filesystems, or depend/select Busybox.

Petitboot supports both busybox tftp and tftp-hpa, but by specifying
this to configure allows petitboot to skip a check at runtime. It's just
a little optimisation, and I'll make it conditional on BR2_PACKAGE_BUSYBOX.

>> +		      HOST_PROG_KEXEC=/usr/sbin/kexec \
>> +		      HOST_PROG_SHUTDOWN=/usr/libexec/petitboot/bb-kexec-reboot
>> +
>> +ifdef PETITBOOT_DEBUG
> 
> Where is PETITBOOT_DEBUG defined?

This is a little hack I use to build petitboot with debug enabled (so we
get more verbose log output), by specifying PETITBOOT_DEBUG=1 on the
make invocation. If this isn't acceptable, I can work around it :)

>> +PETITBOOT_CONF_OPT += --enable-debug
>> +endif
>> +
>> +ifeq ($(BR2_PACKAGE_NCURSES_WIDEC),y)
>> +PETITBOOT_CONF_OPT += --with-ncursesw MENU_LIB=-lmenuw FORM_LIB=-lformw
>> +endif
>> +
>> +define PETITBOOT_PRE_CONFIGURE_BOOTSTRAP
>> +	(cd $(@D) && ./bootstrap $(PETITBOOT_VERSION))
>> +endef
>> +
>> +PETITBOOT_PRE_CONFIGURE_HOOKS += PETITBOOT_PRE_CONFIGURE_BOOTSTRAP
> 
> It's unfortunate that we can't use the normal <pkg>_AUTORECONF = YES
> logic, due to how configure.ac is generated from configure.ac.in.
> Anyway, if you do want to call the bootstrap script, you need to make
> this package depend on host-autoconf, host-automake and maybe
> host-libtool if you're using libtool.
> 
> Also, I see in your configure.ac.in that you use Lex and Yacc.
> Therefore, your package should depend on host-bison and host-flex.
> These are not mandatory dependencies of Buildroot.

OK, updated.

I'm planning to fix the autoreconf bits in a future petitboot change, so
this should get a little simpler later.

Thanks for the review, I'll post a new series soon.

Cheers,


Jeremy

  reply	other threads:[~2014-02-28  5:39 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-16  8:52 [Buildroot] [RFC, PATCH 0/8] Enable a buildroot-based petitboot bootloader Jeremy Kerr
2014-01-16  8:52 ` [Buildroot] [RFC,PATCH 8/8] Add powerpc petitboot defconfig Jeremy Kerr
2014-01-16  8:52 ` [Buildroot] [RFC, PATCH 6/8] package/petitboot: Add petitboot, the userspace bootloader Jeremy Kerr
2014-01-30 20:51   ` Thomas Petazzoni
2014-02-28  5:39     ` Jeremy Kerr [this message]
2014-01-16  8:52 ` [Buildroot] [RFC, PATCH 3/8] package/ncurses: Allow building wide char support Jeremy Kerr
2014-01-30 19:44   ` Thomas Petazzoni
2014-02-28  2:53     ` Jeremy Kerr
2014-01-16  8:52 ` [Buildroot] [RFC, PATCH 4/8] package/powerpc-utils: Add powerpc hardware utilities Jeremy Kerr
2014-01-16  9:30   ` Baruch Siach
2014-01-16 13:11   ` Jerzy Grzegorek
2014-01-29  8:12   ` Thomas Petazzoni
2014-01-30  1:51     ` Jeremy Kerr
2014-01-16  8:52 ` [Buildroot] [RFC, PATCH 5/8] package/kexec-lite: Add a package for the kexec-lite tools Jeremy Kerr
2014-01-16  9:36   ` Baruch Siach
2014-01-17  1:51     ` Jeremy Kerr
2014-01-16 13:17   ` Jerzy Grzegorek
2014-01-30 19:46   ` Thomas Petazzoni
2014-02-03  5:37     ` Jeremy Kerr
2014-02-03  7:04       ` Thomas Petazzoni
2014-02-28  7:11       ` Jeremy Kerr
2014-02-28  7:37         ` Thomas Petazzoni
2014-01-30 19:47   ` Thomas Petazzoni
2014-01-16  8:52 ` [Buildroot] [RFC, PATCH 7/8] package/iprutils: Add IBM Power RAID utilities Jeremy Kerr
2014-01-16 13:24   ` Jerzy Grzegorek
2014-01-17  1:58     ` Jeremy Kerr
2014-01-30 20:54   ` Thomas Petazzoni
2014-01-16  8:52 ` [Buildroot] [RFC, PATCH 2/8] package/dropbear: Add separate configuration options for client and server Jeremy Kerr
2014-03-03 23:46   ` Yann E. MORIN
2014-03-03 23:54     ` Jeremy Kerr
2014-03-04  0:14   ` Gustavo Zacarias
2014-03-04  1:07     ` Jeremy Kerr
2014-03-04  1:44       ` Gustavo Zacarias
2014-03-04  1:51         ` Jeremy Kerr
2014-03-04 18:36           ` Yann E. MORIN
2014-01-16  8:52 ` [Buildroot] [RFC, PATCH 1/8] package/busybox: Add facility for DHCP hooks Jeremy Kerr
2014-03-04 20:01   ` Yann E. MORIN
2014-01-17  2:16 ` [Buildroot] [RFC, PATCH 0/8] Enable a buildroot-based petitboot bootloader Jeremy Kerr

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=5310210B.70605@ozlabs.org \
    --to=jk@ozlabs.org \
    --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 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.