Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
To: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Herve Codina <herve.codina@bootlin.com>,
	Naumann Andreas <ANaumann@ultratronik.de>,
	Peter Seiderer <ps.report@gmx.net>,
	Julien Corjon <corjon.j@ecagroup.com>,
	buildroot@buildroot.org,
	Ricardo Martincoski <ricardo.martincoski@gmail.com>
Subject: Re: [Buildroot] [PATCH v3 07/16] package/pkg-generic.mk: detect files overwritten in TARGET_DIR and HOST_DIR
Date: Sun, 29 Aug 2021 14:51:21 +0200	[thread overview]
Message-ID: <20210829125121.GA1053080@scaer> (raw)
In-Reply-To: <20210829133955.74d921e9@windsurf>

Thomas, Hervé, All,

On 2021-08-29 13:39 +0200, Thomas Petazzoni spake thusly:
> On Sun, 29 Aug 2021 00:47:40 +0200
> "Yann E. MORIN" <yann.morin.1998@free.fr> wrote:
> > However, what prompted me from applying for now, is that this new
> > detection is a hard error.
[--SNIP--]
> We had some discussion with Hervé back when he worked on this, and I
> disagreed with adding an option. When BR2_PER_PACKAGE_DIRECTORIES=y, a
> file overwrite must be a hard error, as the result of the build is
> incorrect if there is an overwrite. It's not the "latest" package that
> wins in an overwrite situation, like it does in a non-PPD case.

So, existing builds that succeed with PPD, and for which an overwrite
is not an issue even at runtime, will now be broken at build time.

After all, we _know_ there are users that already use PPD (for TLPB),
and those users have working systems, but I highly doubt these builds
have no file overwrite whatsoever...

> So I really think this must be a hard error for PPD builds, and just a
> warning for non-PPD builds.

For non-PPD, that code is not even used, because the macros are only
defined if BR2_PER_PACKAGE_DIRECTORIES=y; so for non-PPD, we will not
even get a warning.

> Yes, for PPD builds, it means users will get failures, but those
> failures are pointing to real problems.

I fully agree, but in practice, some of those overwrites may be totally
innocusous when running the system. Think the gnu info db: we 100% don't
care about it at runtime, but this is an overwrite (yes, we already
fixed that one, but it was in this cycle, so users of previous releases
who use PPD do have overwrites that they don't care about).

> So, my preference would be to merge as an unconditional check, and see
> how it goes.

OK, I am aligning with that position. Unless someone else beats me to
it, I'll resume work on this series later in the WE, or early next
week...

> Perhaps the situation will be so bad that we will have to
> make it conditional, but I would prefer to have it unconditional first
> and see the impact.

Note that my proposal would have unconditionally enabled it in the
autobuilders, so we would have noticed as well, so we can still do that
if we later decide to make the hard error conditional.

Finally, as a side note: there is still a case of file overwrite that we
do not detect, even with this series: if two packages that are not part
of the same dependency chain (i.e. they do not depend one on the other),
and they both install the same file, then the file-overwrite will only
happen when we eventually assemble the global target/ and host/ from the
individual PPD target/ and host/ and we still have to add a detection
for that case (which is not a pre-requisite before we apply the current
series, of course).

Regards,
Yann E. MORIN.

> Best regards,
> 
> Thomas
> -- 
> Thomas Petazzoni, co-owner and CEO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

  reply	other threads:[~2021-08-29 12:51 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-17  8:39 [Buildroot] [PATCH v3 00/16] Overwritten file detection and fixes, one more step to TLP build Herve Codina
2021-08-17  8:39 ` [Buildroot] [PATCH v3 01/16] package/pkg-python: fix PKG_PYTHON_FIXUP_SYSCONFIGDATA Herve Codina
2021-08-17  8:39 ` [Buildroot] [PATCH v3 02/16] package/pkg-python: invalidate precompiled _sysconfigdata*.pyc Herve Codina
2021-08-17  8:39 ` [Buildroot] [PATCH v3 03/16] package/pkg-generic.mk: move python fixup to generic package infrastructure Herve Codina
2021-08-17  8:39 ` [Buildroot] [PATCH v3 04/16] package/owfs: remove Python sysconfigdata fixup Herve Codina
2021-08-17  8:39 ` [Buildroot] [PATCH v3 05/16] qt5: Fix sporadic build failure during top-level parallel build Herve Codina
2021-08-28 16:38   ` Yann E. MORIN
2021-08-28 17:39     ` Yann E. MORIN
2021-08-28 20:19   ` Yann E. MORIN
2021-08-17  8:39 ` [Buildroot] [PATCH v3 06/16] package/pkg-qmake.mk: Move QT5_QT_CONF_FIXUP to post-prepare hook Herve Codina
2021-08-28 20:19   ` Yann E. MORIN
2021-08-17  8:39 ` [Buildroot] [PATCH v3 07/16] package/pkg-generic.mk: detect files overwritten in TARGET_DIR and HOST_DIR Herve Codina
2021-08-28 22:47   ` Yann E. MORIN
2021-08-29 11:39     ` Thomas Petazzoni
2021-08-29 12:51       ` Yann E. MORIN [this message]
2021-08-29 16:40         ` Yann E. MORIN
2021-08-30  9:46           ` Arnout Vandecappelle
2021-08-29 15:01       ` Arnout Vandecappelle
2021-08-31 15:35         ` Andreas Naumann
2021-09-17 19:43   ` Yann E. MORIN
2021-08-17  8:39 ` [Buildroot] [PATCH v3 08/16] package/pkg-generic.mk: generate final rsync exclude file list Herve Codina
2021-08-17  8:39 ` [Buildroot] [PATCH v3 09/16] Makefile: rsync global {TARGET, HOST}_DIR using exclusion " Herve Codina
2021-08-17  8:39 ` [Buildroot] [PATCH v3 10/16] Makefile: breaks hardlinks in global {TARGET, HOST}_DIR on per-package build Herve Codina
2021-09-17 19:51   ` Yann E. MORIN
2023-10-01 12:56   ` Peter Korsgaard
2023-10-13 14:36     ` Peter Korsgaard
2021-08-17  8:39 ` [Buildroot] [PATCH v3 11/16] package/pkg-generic.mk: fix per-package <pkg>-{reconfigure, rebuild, reinstall} Herve Codina
2021-08-17  8:39 ` [Buildroot] [PATCH v3 12/16] package/pkg-generic.mk: remove .files-final-rsync.before temporary file Herve Codina
2021-08-17  8:39 ` [Buildroot] [PATCH v3 13/16] support/testing/infra: add log_file_path() function Herve Codina
2021-08-29 10:42   ` Yann E. MORIN
2021-08-17  8:39 ` [Buildroot] [PATCH v3 14/16] support/testing/tests: add test for check_bin_arch Herve Codina
2021-08-29 10:46   ` Yann E. MORIN
2021-08-17  8:39 ` [Buildroot] [PATCH v3 15/16] support/testing/tests: add test for file overwrite detection Herve Codina
2021-08-17  8:39 ` [Buildroot] [PATCH v3 16/16] package/pkg-generic.mk: move fixup-libtool-files to post-prepare hook Herve Codina
2021-08-28 14:47 ` [Buildroot] [PATCH v3 00/16] Overwritten file detection and fixes, one more step to TLP build Yann E. MORIN

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=20210829125121.GA1053080@scaer \
    --to=yann.morin.1998@free.fr \
    --cc=ANaumann@ultratronik.de \
    --cc=buildroot@buildroot.org \
    --cc=corjon.j@ecagroup.com \
    --cc=herve.codina@bootlin.com \
    --cc=ps.report@gmx.net \
    --cc=ricardo.martincoski@gmail.com \
    --cc=thomas.petazzoni@bootlin.com \
    /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