From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH] support/scripts/check-uniq-files: ignore reinstalled packages
Date: Sat, 28 Apr 2018 23:29:16 +0200 [thread overview]
Message-ID: <20180428212916.GA11792@scaer> (raw)
In-Reply-To: <20180427113119.591e8441.john@metanate.com>
John, Henrique, All,
On 2018-04-27 11:31 +0100, John Keeping spake thusly:
> On Thu, 26 Apr 2018 15:22:35 -0300 (BRT)
> Henrique Marks <henrique.marks@datacom.ind.br> wrote:
> > ----- Mensagem original -----
> > > De: "John Keeping" <john@metanate.com>
> > > Para: buildroot at buildroot.org
> > > Cc: "John Keeping" <john@metanate.com>
> > > Enviadas: Quinta-feira, 26 de abril de 2018 13:27:31
> > > Assunto: [Buildroot] [PATCH] support/scripts/check-uniq-files:
> > > ignore reinstalled packages
> >
> > > If a package is rebuilt, then any files it installs will be listed
> > > multiple times in the file list and check-uniq-files will report
> > > that these files are touched by more than one package even though
> > > it is the same package listed multiple times.
> > >
> > > Switch to storing the package names in a set so that each package
> > > can only appear once.
> >
> > I can confirm we have problems rebuilding packages using buildroot
> > 2018-02.1. The 3 files "package-file-list" are increasing in size
> > when we rebuild packages (make <pkg>-rebuild or make
> > <pkg>-reinstall), and the compilation time is increasing linearly
> > with every rebuild, but the increase is noticeable.
>
> I hadn't considered this aspect of the problem. Maybe we are better
> fixing the root cause of the problem with a patch like this:
>
> -- >8 --
> diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk
> index 1c9dd1d734..edc2c9349c 100644
> --- a/package/pkg-generic.mk
> +++ b/package/pkg-generic.mk
> @@ -64,6 +64,7 @@ GLOBAL_INSTRUMENTATION_HOOKS += step_time
> # $(3): suffix of file (optional)
> define step_pkg_size_inner
> cd $(2); \
> + $(SED) '/^$(1),/d' $(BUILD_DIR)/packages-file-list$(3).txt; \
This means that a file that was previously installed by that package,
but no longer is (e.g. because the install comands were "fixed" to no
longer install it), will now be orphaned, and belong to no package.
But I don't care about that situation, since only a clean build from
scratch is known to provide good results anyway, and that is the only
thing we want to ensure.
So, please resend an updated patch to use this new solution.
Please provide an extensive commit log that explains why we do remove
the existign entries, and the limitations it has (e.g. orphaned files).
Regards,
Yann E. MORIN.
> find . \( -type f -o -type l \) \
> -newer $($(PKG)_DIR)/.stamp_built \
> -exec printf '$(1),%s\n' {} + \
> -- 8< --
>
> But I don't know enough about the build process to know if this is safe
> in the presence of top-level parallel build.
>
>
> Regards,
> John
> _______________________________________________
> buildroot mailing list
> buildroot at 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 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:[~2018-04-28 21:29 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-26 16:27 [Buildroot] [PATCH] support/scripts/check-uniq-files: ignore reinstalled packages John Keeping
2018-04-26 18:22 ` Henrique Marks
2018-04-27 10:31 ` John Keeping
2018-04-28 21:29 ` Yann E. MORIN [this message]
2018-05-03 16:27 ` Angelo Compagnucci
2018-05-03 16:36 ` John Keeping
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=20180428212916.GA11792@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