[Buildroot] [PATCH 1/9 v2] core: add the possibility to provide help for custom rules
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Sat Mar 19 18:05:00 UTC 2016
Hello,
On Fri, 11 Mar 2016 18:41:09 +0100, Yann E. MORIN wrote:
> diff --git a/Makefile b/Makefile
> index 98c8dc7..7bb5f6d 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -966,6 +966,7 @@ endif
> @echo ' source-check - check selected packages for valid download URLs'
> @echo ' external-deps - list external packages used'
> @echo ' legal-info - generate info about license compliance'
> + @echo ' help-custom - print help about custom actions (if any)'
> @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'
> @@ -974,6 +975,12 @@ endif
> @echo 'it on-line at http://buildroot.org/docs.html'
> @echo
>
> +# This rule does nothing, it is expected to be overloaded by
> +# a br2-external tree or a local.mk . However, it must exist,
> +# as we reference it in the main help, above. Making the rule
> +# .PHONY does not work.
> +help-custom:
> +
There is a pretty important problem with this implementation (which
gets even worse when PATCH 2 is applied), but I am not sure why it
happens: the custom help is not taken into account if you don't have a
configuration file defined. This is weird, because BR2_EXTERNAL_FILE
gets included outside of the BR2_HAVE_DOT_CONFIG condition. But still:
thomas at skate:~/projets/buildroot (master)$ cat /tmp/external/external.mk
help-custom:
@echo TEST
thomas at skate:~/projets/buildroot (master)$ make BR2_EXTERNAL=/tmp/external help-custom
make[1]: Nothing to be done for 'help-custom'.
And then, if I create a .config file:
thomas at skate:~/projets/buildroot (master)$ make defconfig
[...]
thomas at skate:~/projets/buildroot (master)$ make BR2_EXTERNAL=/tmp/external help-custom
TEST
This is not expected, since the help text is supposed to be available
even when no configuration has been defined.
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
More information about the buildroot
mailing list