Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To: buildroot@busybox.net
Subject: [Buildroot] [git commit master] buildroot; move defconfigs to configs/ and print in help
Date: Wed, 25 Nov 2009 23:02:13 +0100	[thread overview]
Message-ID: <20091125230213.27e7b090@surf> (raw)
In-Reply-To: <87pr7afeyi.fsf@macbook.be.48ers.dk>

Hello,

Le Sun, 22 Nov 2009 22:05:09 +0100,
Peter Korsgaard <jacmet@uclibc.org> a ?crit :

>  Thomas> Coming back on this old topic, because I really don't like
>  Thomas> the new way.
> 
> I'm sorry to hear. I do kind of like it ;)

Argh, I still don't like it ;)

> It hasn't? I did update it, and it imho is pretty clear:

Sorry for the mistake, it has been updated. I apologize.

> I don't see the different directory as a big problem (E.G. it doesn't
> seem to be an issue for other projects doing the same, like the Linux
> kernel or U-Boot). If people add packages and/or patches for their
> custom stuff (I know people at the company I work for do this) they'll
> need to look outside their target/device/company/board dir anyway.

Sure, but the things in packages and/or patches are not board-specific.
While the Buildroot configuration files and the associated kernel/u-boot
configuration are board/project specific. Therefore, they should be in
the same location.

> Similary, I don't believe name clashes in configs/ are a big problem
> (like in Linux/U-Boot).

I don't think I raised name clashes as an issue, since I don't think
it's one (even in my solution, the names of the _defconfig files should
be unique).

>  Thomas> Moreover, it breaks the idea of having out-of-tree board
>  Thomas> support. Before this change, it was relatively easy since
>  Thomas> the stuff needed to support one board was centralized in one
>  Thomas> directory (see my proposal at
>  Thomas> http://git.buildroot.net/~tpetazzoni/git/buildroot/commit/?id=ed47f42a598c665bf42c4e797187f233b955e285).
> 
> Did you rebase? The link doesn't seem to work any more :/

Strange, because it works here. Just in case, I've pasted the patch at
http://free-electrons.com/~thomas/external-boards-proposal.patch.

The patch is *very* simple because all board-specific things are
concentrated into one directory. With your new solution, I have no idea
how I could implement out-of-tree board support, which is something our
users have been asking for.

>  Thomas> To make them more visible to users, I suggest to reorganize
>  Thomas> target/. All board-stuff should be moved to a top-level
>  Thomas> boards/ directory. This directory would have roughly the same
>  Thomas> architecture as the current target/device/ directory.
> 
> I agree, but that's imho not directly related to where to put
> _defconfigs.

It is not directly. But it would really, really look odd to have :

 boards
  - atmel
    - at91sam9263ek with kernel/uClibc/Busybox config files
    - at91sam9260ek with kernel/uClibc/Busybox config files
  - armadeus
    - apf27 with kernel/uClibc/Busybox config files
  - calao
    - usb-a9263 with kernel/uClibc/Busybox config files
 configs
   at91sam9263ek_defconfig
   at91sam9260ek_defconfig
   armadeus_apf27_defconfig
   calao_usb-a9263_defconfig

The _defconfig files really belong to the boards directory. IMO, having
the _defconfig files in a separate directory makes them disconnected
from their corresponding kernel/uClibc/Busybox configuration files.

>  Thomas> And then, to make the defconfig files visible to users, just
>  Thomas> show them in "make help".
> 
> With a find-all-files-ending-in-_defconfig-under-here thing? Could be
> done, but is kind of ugly - Same for make <foo>_defconfig.

Come on, kind of ugly ? It's a one liner for <foo>_defconfig (something
we already had) :

%_defconfig: $(CONFIG)/conf
	cp $(shell find ./target/ -name $@) .config

The "make help" thing is probably of the same one-liner style.

>  >> The stuff in target/device/ tends to get stale over time, so a bit
>  >> more visibility is imho good.
> 
>  Thomas> Let's move it to boards/ then.
> 
> Optimist! ;) I don't think that will significantly change the
> staleness of it though.

For sure moving things around will not prevent staleness. But:

 * That will make board support more visible, and easier to use for
   board vendors ;

 * We could have a maintainer for each board. At -rc1, all board
   maintainers are asked to check their board support. If they don't
   answer before the final release, the board is marked as broken. And
   removed in the next release if no news.

> Yes, but I'm about to put out -rc1, so we have limited time.

-rc1 is out. But I still don't like this change. I usually don't have a
strong opinion on most changes, but I really don't understand this one.

Sincerely,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.
http://free-electrons.com

  reply	other threads:[~2009-11-25 22:02 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-04 20:20 [Buildroot] [git commit master] buildroot; move defconfigs to configs/ and print in help Peter Korsgaard
2009-10-05  6:48 ` Thomas Petazzoni
2009-10-05  7:09   ` Peter Korsgaard
2009-11-11 14:03     ` Thomas Petazzoni
2009-11-11 18:36       ` Thiago A. Corrêa
2009-11-22 21:05       ` Peter Korsgaard
2009-11-25 22:02         ` Thomas Petazzoni [this message]
2009-11-25 22:16           ` Peter Korsgaard

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=20091125230213.27e7b090@surf \
    --to=thomas.petazzoni@free-electrons.com \
    --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