From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 5/8] linux: add the generic help rules
Date: Thu, 10 Mar 2016 21:34:38 +0100 [thread overview]
Message-ID: <20160310203438.GF3424@free.fr> (raw)
In-Reply-To: <20160310103934.0aaef6d1@free-electrons.com>
Thomas, All,
On 2016-03-10 10:39 +0100, Thomas Petazzoni spake thusly:
> On Thu, 10 Mar 2016 10:21:17 +0100, J?r?me Pouiller wrote:
>
> > > So now this will be printed on a single line, instead of being split
> > > like it was before. Well, J?r?me's patch already did that as well I
> > > guess.
> > In fact, my patch correctly support this case if you use two separate
> > strings:
> >
> > EXTRA_HELP += \
> > "linux-update-defconfig : Save the Linux configuration to the path specified" \
> > " by BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE"
>
> This is not super great either IMO.
>
> What about doing something more Buildroot-esque and use the concept of
> hooks that we already use everywhere ?
>
> For example:
>
> diff --git a/Makefile b/Makefile
> index f2822a2..db9aee0 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -969,6 +969,7 @@ endif
> @echo
> @echo ' make V=0|1 - 0 => quiet build (default), 1 => verbose build'
> @echo ' make O=dir - Locate all output files in "dir", including .config'
> + $(foreach hook,$(HELP_HOOKS),$(call $(hook)$(sep)))
> @echo
> @echo 'For further details, see README, generate the Buildroot manual, or consult'
> @echo 'it on-line at http://buildroot.org/docs.html'
> diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk
> index 7c904c8..1a0b09c 100644
> --- a/package/busybox/busybox.mk
> +++ b/package/busybox/busybox.mk
> @@ -250,4 +250,10 @@ $(error No BusyBox configuration file specified, check your BR2_PACKAGE_BUSYBOX_
> endif
> endif
>
> +define BUSYBOX_HELP
> + @echo ' busybox-baz - do stuff'
> +endef
There is one thing here that bothers me: duplicating the layout of the
help text in that many locations.
Having the macro be used means we can change that layout (e.g. to
accomodate for larger rules) in a single place, and
magically^Wautomatically see all the help texts all properly indented
at once.
Regards,
Yann E. MORIN.
> +HELP_HOOKS += BUSYBOX_HELP
To be done in pkg-generic, of course. ;-)
> $(eval $(kconfig-package))
>
> This way, it is just a function call, and the package, or external.mk
> can do whatever it wants in terms of formatting the help text.
> Including iterating on variables, showing the contents of a file, or
> whatever.
Well, remember that all this is *only* about documented the
package-specific rules, not any arbitrary package help.
Do we want to allow for any arbitrary package help? No; please, no.
Regards,
Yann E. MORIN.
> Best regards,
>
> Thomas
> --
> Thomas Petazzoni, CTO, Free Electrons
> Embedded Linux, Kernel and Android engineering
> http://free-electrons.com
--
.-----------------.--------------------.------------------.--------------------.
| 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. |
'------------------------------^-------^------------------^--------------------'
next prev parent reply other threads:[~2016-03-10 20:34 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-09 22:22 [Buildroot] [PATCH 0/8] core: allow for custom, local help; rearrange package-specific help (branch yem/help) Yann E. MORIN
2016-03-09 22:22 ` [Buildroot] [PATCH 1/8] core: add the possibility to provide help for local, custom rules Yann E. MORIN
2016-03-09 23:35 ` Arnout Vandecappelle
2016-03-10 20:22 ` Yann E. MORIN
2016-03-11 0:01 ` Arnout Vandecappelle
2016-03-09 22:22 ` [Buildroot] [PATCH 2/8] core/pkg-utils: add a macro to pretty-print a help entry Yann E. MORIN
2016-03-09 23:37 ` Arnout Vandecappelle
2016-03-10 9:31 ` Jérôme Pouiller
2016-03-10 20:27 ` Yann E. MORIN
2016-03-10 20:24 ` Yann E. MORIN
2016-03-09 22:22 ` [Buildroot] [PATCH 3/8] core/pkg-generic: add help about package-specific rules Yann E. MORIN
2016-03-09 23:38 ` Arnout Vandecappelle
2016-03-09 22:22 ` [Buildroot] [PATCH 4/8] package/busybox: use the generic help rules Yann E. MORIN
2016-03-09 23:38 ` Arnout Vandecappelle
2016-03-09 22:22 ` [Buildroot] [PATCH 5/8] linux: add " Yann E. MORIN
2016-03-09 23:47 ` Arnout Vandecappelle
2016-03-10 9:21 ` Jérôme Pouiller
2016-03-10 9:39 ` Thomas Petazzoni
2016-03-10 9:52 ` Arnout Vandecappelle
2016-03-10 10:12 ` Thomas Petazzoni
2016-03-10 20:34 ` Yann E. MORIN [this message]
2016-03-10 20:58 ` Thomas Petazzoni
2016-03-10 20:29 ` Yann E. MORIN
2016-03-09 22:22 ` [Buildroot] [PATCH 6/8] package/uclibc: use " Yann E. MORIN
2016-03-09 23:47 ` Arnout Vandecappelle
2016-03-09 22:22 ` [Buildroot] [PATCH 7/8] boot/barebox: " Yann E. MORIN
2016-03-09 23:47 ` Arnout Vandecappelle
2016-03-09 22:22 ` [Buildroot] [PATCH 8/8] docs/manual: document the br2-external help-local Yann E. MORIN
2016-03-09 23:35 ` [Buildroot] [PATCH 0/8] core: allow for custom, local help; rearrange package-specific help (branch yem/help) Arnout Vandecappelle
2016-03-10 8:31 ` Thomas Petazzoni
2016-03-10 20:20 ` Yann E. MORIN
2016-03-10 21:01 ` Thomas Petazzoni
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=20160310203438.GF3424@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