Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 09/16 v3] core: get rid of our dummy br2-external tree
Date: Sat, 6 Aug 2016 17:37:48 +0200	[thread overview]
Message-ID: <20160806153748.GA5855@free.fr> (raw)
In-Reply-To: <9b15be4d-2a20-cfff-c344-ed3b739bd285@gmail.com>

Romain, All,

On 2016-08-06 17:30 +0200, Romain Naour spake thusly:
> Le 17/07/2016 ? 12:34, Yann E. MORIN a ?crit :
> > Now that we generate a kconfig snippet, we can conditionally include the
> > BR2_EXTERNAL's Config.in only when BR2_EXTERNAL is supplied by the user,
> > which means our empty/dummy Config.in is no longer useful to us.
> > 
> > As for external.mk, we can also include it only when BR2_EXTERNAL is
> > supplied by the user, which means our empty/dummy external.mk is no
> > longer of any use to us.
> > 
> > Ditch both of those files, and:
> > 
> >   - only generate actual content in the Kconfig snippet when we actually
> >     do have a BR2_EXTERNAL provided by the user (i.e. BR2_EXTERNAL is not
> >     empty);
> > 
> >   - add a variable that contains the path to the external.mk provided by
> >     the user, or empty if none, and include the path set in that variable
> >     (make can 'include' nothing without any problem! ;-) )
> 
> Maybe a dumb question but it's true with old make version (i.e 3.81) ?

As discussed on IRC: yes, make-3.81 does not whine.

> Otherwise:
> Reviewed-by: Romain Naour <romain.naour@gmail.com>

Thanks!

I'll wait for your complete review of the series before replying to the
other comments (hwen needed), then I'll fix the series.

Thanks! :-)

Regards,
Yann E. MORIN.

> Best regards,
> Romain
> 
> > 
> > Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> > Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> > Cc: Peter Korsgaard <jacmet@uclibc.org>
> > Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
> > Cc: Arnout Vandecappelle <arnout@mind.be>
> > ---
> >  Makefile                           | 18 +++++++-----------
> >  support/dummy-external/Config.in   |  0
> >  support/dummy-external/external.mk |  0
> >  3 files changed, 7 insertions(+), 11 deletions(-)
> >  delete mode 100644 support/dummy-external/Config.in
> >  delete mode 100644 support/dummy-external/external.mk
> > 
> > diff --git a/Makefile b/Makefile
> > index 86c532e..be2f586 100644
> > --- a/Makefile
> > +++ b/Makefile
> > @@ -147,16 +147,11 @@ $(if $(BASE_DIR),, $(error output directory "$(O)" does not exist))
> >  # on the command line, therefore the file is re-created every time make is run.
> >  #
> >  # When BR2_EXTERNAL is set to an empty value (e.g. explicitly in command
> > -# line), the .br-external file is removed and we point to
> > -# support/dummy-external. This makes sure we can unconditionally include the
> > -# Config.in and external.mk from the BR2_EXTERNAL directory. In this case,
> > -# override is necessary so the user can clear BR2_EXTERNAL from the command
> > -# line, but the dummy path is still used internally.
> > +# line), the .br-external file is removed.
> >  
> >  BR2_EXTERNAL_FILE = $(BASE_DIR)/.br-external
> >  -include $(BR2_EXTERNAL_FILE)
> >  ifeq ($(BR2_EXTERNAL),)
> > -  override BR2_EXTERNAL = support/dummy-external
> >    $(shell rm -f $(BR2_EXTERNAL_FILE))
> >  else
> >    _BR2_EXTERNAL = $(shell cd $(BR2_EXTERNAL) >/dev/null 2>&1 && pwd)
> > @@ -165,6 +160,7 @@ else
> >    endif
> >    override BR2_EXTERNAL := $(_BR2_EXTERNAL)
> >    $(shell echo BR2_EXTERNAL ?= $(BR2_EXTERNAL) > $(BR2_EXTERNAL_FILE))
> > +  BR2_EXTERNAL_MK = $(BR2_EXTERNAL)/external.mk
> >  endif
> >  
> >  # To make sure that the environment variable overrides the .config option,
> > @@ -461,7 +457,8 @@ include boot/common.mk
> >  include linux/linux.mk
> >  include fs/common.mk
> >  
> > -include $(BR2_EXTERNAL)/external.mk
> > +# Nothing to include if no BR2_EXTERNAL tree in use
> > +include $(BR2_EXTERNAL_MK)
> >  
> >  # Now we are sure we have all the packages scanned and defined. We now
> >  # check for each package in the list of enabled packages, that all its
> > @@ -882,13 +879,12 @@ endif
> >  
> >  .PHONY: $(BUILD_DIR)/.br2-external.in
> >  $(BUILD_DIR)/.br2-external.in: $(BUILD_DIR)
> > -	$(Q)( \
> > +	$(Q)if [ -n '$(BR2_EXTERNAL)' ]; then \
> >  		printf "#\n# Automatically generated file; DO NOT EDIT.\n#\n\n"; \
> > -		printf 'menu "User-provided options"\n'; \
> > -		printf '\tdepends on BR2_EXTERNAL != "support/dummy-external"\n\n'; \
> > +		printf 'menu "User-provided options"\n\n'; \
> >  		printf 'source "%s/Config.in"\n\n' $$(cd $(BR2_EXTERNAL) >/dev/null 2>&1 && pwd); \
> >  		printf 'endmenu # User-provided options\n'; \
> > -	) >$@
> > +	fi >$@
> >  
> >  # printvars prints all the variables currently defined in our
> >  # Makefiles. Alternatively, if a non-empty VARS variable is passed,
> > diff --git a/support/dummy-external/Config.in b/support/dummy-external/Config.in
> > deleted file mode 100644
> > index e69de29..0000000
> > diff --git a/support/dummy-external/external.mk b/support/dummy-external/external.mk
> > deleted file mode 100644
> > index e69de29..0000000
> > 
> 

-- 
.-----------------.--------------------.------------------.--------------------.
|  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.  |
'------------------------------^-------^------------------^--------------------'

  reply	other threads:[~2016-08-06 15:37 UTC|newest]

Thread overview: 95+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-17 10:34 [Buildroot] [PATCH 00/16 v3] br2-external: support multiple trees at once (branch yem/multi-br2-external-ID-7) Yann E. MORIN
2016-07-17 10:34 ` [Buildroot] [PATCH 01/16 v3] core: move pkg-utils.mk to support/ Yann E. MORIN
2016-07-24 20:43   ` Romain Naour
2016-08-27 14:11   ` Thomas Petazzoni
2016-07-17 10:34 ` [Buildroot] [PATCH 02/16 v3] core: commonalise the bundled and br2-external %_defconfig rules Yann E. MORIN
2016-07-30 20:48   ` Romain Naour
2016-08-27 14:12   ` Thomas Petazzoni
2016-08-27 14:16     ` Yann E. MORIN
2016-08-27 17:10       ` Arnout Vandecappelle
2016-07-17 10:34 ` [Buildroot] [PATCH 03/16 v3] doc/asciidoc: add possibility to define document dependencies Yann E. MORIN
2016-08-06 15:02   ` Romain Naour
2016-08-27 14:14   ` Thomas Petazzoni
2016-08-27 14:42     ` Yann E. MORIN
2016-08-27 19:58   ` Thomas Petazzoni
2016-07-17 10:34 ` [Buildroot] [PATCH 04/16 v3] core: introduce an intermediate rule before the configurators Yann E. MORIN
2016-08-06 15:13   ` Romain Naour
2016-08-27 14:47     ` Yann E. MORIN
2016-08-27 19:39   ` Thomas Petazzoni
2016-07-17 10:34 ` [Buildroot] [PATCH 05/16 v3] core: move rule to create basic directories Yann E. MORIN
2016-08-06 15:16   ` Romain Naour
2016-08-27 14:14     ` Thomas Petazzoni
2016-08-27 14:34       ` Yann E. MORIN
2016-08-27 19:41   ` Thomas Petazzoni
2016-08-27 22:07     ` Yann E. MORIN
2016-07-17 10:34 ` [Buildroot] [PATCH 06/16 v3] core: introduce a generated kconfig snippet Yann E. MORIN
2016-08-06 15:18   ` Romain Naour
2016-08-27 14:16   ` Thomas Petazzoni
2016-08-27 15:01     ` Yann E. MORIN
2016-08-28 20:50     ` Peter Korsgaard
2016-08-29  7:19       ` Thomas Petazzoni
2016-08-29  7:50         ` Peter Korsgaard
2016-08-29 10:02           ` Thomas Petazzoni
2016-08-29 22:14             ` Arnout Vandecappelle
2016-08-29 22:25               ` Yann E. MORIN
2016-08-29 22:16       ` Yann E. MORIN
2016-08-29 22:46         ` Arnout Vandecappelle
2016-08-30  9:00           ` Yann E. MORIN
2016-08-30  9:40             ` Peter Korsgaard
2016-08-30 20:01             ` Arnout Vandecappelle
2016-09-01 17:52       ` Yann E. MORIN
2016-09-01 18:57         ` Peter Korsgaard
2016-09-01 21:30           ` Arnout Vandecappelle
2016-09-01 21:51             ` Peter Korsgaard
2016-08-27 19:46   ` Thomas Petazzoni
2016-07-17 10:34 ` [Buildroot] [PATCH 07/16 v3] docs/manual: prepare-config can be used as a dependency of documents Yann E. MORIN
2016-08-06 15:19   ` Romain Naour
2016-08-27 19:58   ` Thomas Petazzoni
2016-07-17 10:34 ` [Buildroot] [PATCH 08/16 v3] core: do not hard-code inclusion of br2-external in Kconfig Yann E. MORIN
2016-08-06 15:21   ` Romain Naour
2016-08-27 20:00   ` Thomas Petazzoni
2016-08-27 22:14     ` Yann E. MORIN
2016-07-17 10:34 ` [Buildroot] [PATCH 09/16 v3] core: get rid of our dummy br2-external tree Yann E. MORIN
2016-08-06 15:30   ` Romain Naour
2016-08-06 15:37     ` Yann E. MORIN [this message]
2016-07-17 10:34 ` [Buildroot] [PATCH 10/16 v3] core: introduce per br2-external ID Yann E. MORIN
2016-08-06 15:41   ` Romain Naour
2016-08-27 20:10   ` Thomas Petazzoni
2016-08-27 22:15     ` Yann E. MORIN
2016-08-27 21:49   ` Arnout Vandecappelle
2016-08-27 21:59     ` Yann E. MORIN
2016-08-28 10:48       ` Thomas Petazzoni
2016-07-17 10:34 ` [Buildroot] [PATCH 11/16 v3] docs/manual: document the " Yann E. MORIN
2016-08-06 15:48   ` Romain Naour
2016-08-27 15:05     ` Yann E. MORIN
2016-08-27 20:13   ` Thomas Petazzoni
2016-08-27 22:19     ` Yann E. MORIN
2016-08-30 20:36   ` Arnout Vandecappelle
2016-07-17 10:34 ` [Buildroot] [PATCH 12/16 v3] core: handle .br-external in a make rule Yann E. MORIN
2016-07-24 20:05   ` Romain Naour
2016-07-25 21:13     ` Yann E. MORIN
2016-08-27 15:51       ` Yann E. MORIN
2016-08-27 20:16   ` Thomas Petazzoni
2016-08-27 22:22     ` Yann E. MORIN
2016-08-28 10:49       ` Thomas Petazzoni
2016-07-17 10:34 ` [Buildroot] [PATCH 13/16 v3] core: add support for multiple br2-external trees Yann E. MORIN
2016-07-24 20:25   ` Romain Naour
2016-07-25 21:25     ` Yann E. MORIN
2016-08-27 20:20   ` Thomas Petazzoni
2016-08-29 22:11     ` Yann E. MORIN
2016-07-17 10:34 ` [Buildroot] [PATCH 14/16 v3] support/scripts: teach gen-manual-lists about BR2_EXTERNAL Yann E. MORIN
2016-08-06 15:59   ` Romain Naour
2016-07-17 10:34 ` [Buildroot] [PATCH 15/16 v3] docs/manual: include packages from BR2_EXTERNAL if set Yann E. MORIN
2016-08-06 16:07   ` Romain Naour
2016-07-17 10:34 ` [Buildroot] [PATCH 16/16 v3] docs/manual: document multi br2-external Yann E. MORIN
2016-08-06 16:15   ` Romain Naour
2016-08-30 21:37 ` [Buildroot] [PATCH 00/16 v3] br2-external: support multiple trees at once (branch yem/multi-br2-external-ID-7) Arnout Vandecappelle
2016-08-31  6:15   ` Peter Korsgaard
2016-08-31  7:14     ` Thomas Petazzoni
2016-08-31  9:26       ` Yann E. MORIN
2016-09-01 21:43         ` Arnout Vandecappelle
2016-09-01 21:46           ` Yann E. MORIN
2016-09-01 22:04             ` Arnout Vandecappelle
2016-09-04 18:42           ` Peter Korsgaard
2016-09-04 21:14             ` Yann E. MORIN
2016-09-05 10:31               ` 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=20160806153748.GA5855@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