From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH RFC] core: enable per-package log files
Date: Wed, 18 Oct 2017 19:42:15 +0200 [thread overview]
Message-ID: <20171018174215.GB2833@scaer> (raw)
In-Reply-To: <20171018133651.0a8ea508@windsurf.home>
Thomas, Arnout, Anisse, All,
On 2017-10-18 13:36 +0200, Thomas Petazzoni spake thusly:
> On Wed, 18 Oct 2017 12:57:30 +0200, Arnout Vandecappelle wrote:
> > As I said a couple of times already, I don't think we should enforce -Orecurse.
>
> As I replied in another e-mail, I disagree :)
>
> > About the BR2_PARALLEL_BUILD option, it may be useful, but for the time being I
> > would continue asking the user to remove the .NOTPARALLEL line.
Eventually, when everything is fully parallel-safe, I believe we will
want to remove BR2_JLEVEL altogether, and let users directly call
"make -jN".
As for the -O option, it all depends on the oldest make we are supposed
to support. It appeared only in make 4.0, released in October 2013.
So I think we'll have to come up with an alternative solution (and I am
sad that we do, I would have prefered we require 4.0, but it is not old
enough :-/ ).
However, I'll repeat my position: having top-level parallel build (TLP)
is important. If we can't find a viable, simple and maintainable
solution, then we should just ignore the problem and still implement
TLP.
I am not much happy with any of the external wrapper, because it is
relatively fragile, and we have to use it everywhere we need to write a
make rule (which is not a package, fs, or bootloader CMDS).
For example, we also need to use it for:
- the step_start and step_end hooks
- the intermediate commands [0] [1]
- ech commands in the finalise-target, legal-info and all similar ones
- and I suspect countless other locations...
[0] for example, it is needed for the for-loop there:
package/pkg-generic.mk:
145 $(BUILD_DIR)/%/.stamp_downloaded:
146 ? $(foreach hook,$($(PKG)_PRE_DOWNLOAD_HOOKS),$(call $(hook))$(sep))
147 # Only show the download message if it isn't already downloaded
148 ? $(Q)for p in $($(PKG)_ALL_DOWNLOADS); do \
149 ? ? if test ! -e $(DL_DIR)/`basename $$p` ; then \
150 ? ? ? $(call MESSAGE,"Downloading") ; \
151 ? ? ? break ; \
152 ? ? fi ; \
153 ? done
154 ? $(foreach p,$($(PKG)_ALL_DOWNLOADS),$(call DOWNLOAD,$(p))$(sep))
155 ? $(foreach hook,$($(PKG)_POST_DOWNLOAD_HOOKS),$(call $(hook))$(sep))
156 ? $(Q)mkdir -p $(@D)
157 ? $(Q)touch $@
[1] for example, it is needed for each of mkdir, chmod and touch there:
package/pkg-generic.mk:
166 $(BUILD_DIR)/%/.stamp_extracted:
167 ? @$(call step_start,extract)
168 ? @$(call MESSAGE,"Extracting")
169 ? $(foreach hook,$($(PKG)_PRE_EXTRACT_HOOKS),$(call $(hook))$(sep))
170 ? $(Q)mkdir -p $(@D)
171 ? $($(PKG)_EXTRACT_CMDS)
172 # some packages have messed up permissions inside
173 ? $(Q)chmod -R +rw $(@D)
174 ? $(foreach hook,$($(PKG)_POST_EXTRACT_HOOKS),$(call $(hook))$(sep))
175 ? @$(call step_end,extract)
176 ? $(Q)touch $@
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| 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:[~2017-10-18 17:42 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-11 8:58 [Buildroot] Discussion on per-package logging Thomas Petazzoni
2017-10-11 9:05 ` Arnout Vandecappelle
2017-10-11 9:55 ` Thomas Petazzoni
2017-10-11 13:08 ` Yann E. MORIN
2017-10-11 13:19 ` Thomas Petazzoni
2017-10-11 14:10 ` Yann E. MORIN
2017-10-16 16:20 ` [Buildroot] [PATCH RFC] core: enable per-package log files Anisse Astier
2017-10-16 16:23 ` Anisse Astier
2017-10-16 16:52 ` Thomas Petazzoni
2017-10-16 21:18 ` Anisse Astier
2017-10-17 7:11 ` Thomas Petazzoni
2017-10-17 12:01 ` Arnout Vandecappelle
2017-10-17 12:11 ` Thomas Petazzoni
2017-10-17 14:44 ` Arnout Vandecappelle
2017-10-17 19:03 ` Thomas Petazzoni
2017-10-17 23:11 ` Arnout Vandecappelle
2017-10-18 6:57 ` Thomas Petazzoni
2017-10-18 7:44 ` Anisse Astier
2017-10-18 7:58 ` Thomas Petazzoni
2017-10-18 8:09 ` Anisse Astier
2017-10-18 8:11 ` Thomas Petazzoni
2017-10-18 9:05 ` Anisse Astier
2017-10-18 9:10 ` Thomas Petazzoni
2017-10-18 10:54 ` Arnout Vandecappelle
2017-10-18 11:36 ` Thomas Petazzoni
2017-10-18 10:57 ` Arnout Vandecappelle
2017-10-18 11:36 ` Thomas Petazzoni
2017-10-18 17:42 ` Yann E. MORIN [this message]
2017-10-17 15:45 ` Anisse Astier
2017-10-17 22:58 ` Arnout Vandecappelle
2017-10-18 6:53 ` Thomas Petazzoni
2017-10-18 7:34 ` Anisse Astier
2017-10-17 15:53 ` Anisse Astier
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=20171018174215.GB2833@scaer \
--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