From: Carlos Santos <casantos@datacom.com.br>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 50/50 v2] support/scripts: don't draw most of busybox' dependencies
Date: Sun, 8 Jul 2018 22:41:25 -0300 (BRT) [thread overview]
Message-ID: <1404383141.2223862.1531100485070.JavaMail.zimbra@datacom.com.br> (raw)
In-Reply-To: <7d4417e280d8c1db48496f8e35895c4819cae957.1531043163.git.yann.morin.1998@free.fr>
> From: "Yann Morin" <yann.morin.1998@free.fr>
> To: "buildroot" <buildroot@buildroot.org>
> Cc: "Yann Morin" <yann.morin.1998@free.fr>, "DATACOM" <casantos@datacom.com.br>
> Sent: Sunday, July 8, 2018 6:46:15 AM
> Subject: [PATCH 50/50 v2] support/scripts: don't draw most of busybox' dependencies
> Since most dependencies of busybox' are there to guarantee that busybox
> does not install applets that are already provided by other packages,
> they are not really functional dependencies, and mostly clutter the
> dependency graph.
>
> Only the dependencies on libraries are interesting, so that is all we
> keep.
>
> Even though that function is only called with pkg set to 'busybox', we
> still pass it as an argument, for symetry with the other functions that
> removes the dependencies of a package.
>
> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> Reviewed-by: Matt Weber <matthew.weber@rockwellcollins.com>
> Cc: Carlos Santos <casantos@datacom.com.br>
>
> ---
> Changes v1 -> v2:
> - carry tag from Matt
> - clarify linux-pam case (Carlos)
> ---
> support/scripts/graph-depends | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/support/scripts/graph-depends b/support/scripts/graph-depends
> index 621e603278..0a3bc11be7 100755
> --- a/support/scripts/graph-depends
> +++ b/support/scripts/graph-depends
> @@ -181,6 +181,15 @@ def remove_mandatory_deps(pkg, deps):
> return [p for p in deps[pkg] if p not in ['toolchain', 'skeleton']]
>
>
> +# This function removes all dependencies of busybox, except its
> +# dependencies on libraries (of which libpam, from linux-pam) and
> +# host-pkgconf.
> +def remove_busybox_deps(pkg, deps):
> + busybox_dep_whitelist = ['linux-pam', 'host-pkgconf']
> + return [p for p in deps[pkg]
> + if p.startswith('lib') or p in busybox_dep_whitelist]
> +
> +
> # This function will check that there is no loop in the dependency chain
> # As a side effect, it builds up the dependency cache.
> def check_circular_deps(deps):
> @@ -211,6 +220,8 @@ def check_circular_deps(deps):
> # This functions trims down the dependency list of all packages.
> # It applies in sequence all the dependency-elimination methods.
> def remove_extra_deps(deps, transitive):
> + if 'busybox' in list(deps.keys()):
> + deps['busybox'] = remove_busybox_deps('busybox', deps)
> for pkg in list(deps.keys()):
> if not pkg == 'all':
> deps[pkg] = remove_mandatory_deps(pkg, deps)
> --
> 2.14.1
Reviewed-by: Carlos Santos <casantos@datacom.com.br>
--
Carlos Santos (Casantos) - DATACOM, P&D
?Marched towards the enemy, spear upright, armed with the certainty
that only the ignorant can have.? ? Epitaph of a volunteer
next prev parent reply other threads:[~2018-07-09 1:41 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-08 9:46 [Buildroot] [PATCH 00/50 v2] package/busybox: invert dependencies Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 01/50 v2] package/busybox: update to 1.29.0 Yann E. MORIN
2018-07-08 10:34 ` Arnout Vandecappelle
2018-07-08 9:45 ` [Buildroot] [PATCH 02/50 v2] package/busybox: invert dependency with whois Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 03/50 v2] package/busybox: invert dependency with wget Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 04/50 v2] package/busybox: invert dependency with vim Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 05/50 v2] package/busybox: invert dependency with util-linux Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 06/50 v2] package/busybox: invert dependency with usbutils Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 07/50 v2] package/busybox: invert dependency with unzip Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 08/50 v2] package/busybox: invert dependency with traceroute Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 09/50 v2] package/busybox: invert dependency with tftpd Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 10/50 v2] package/busybox: invert dependency with tar Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 11/50 v2] package/busybox: invert dependency with sysvinit Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 12/50 v2] package/busybox: invert dependency with systemd Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 13/50 v2] package/busybox: invert dependency with syslog-ng Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 14/50 v2] package/busybox: invert dependency with sysklogd Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 15/50 v2] package/busybox: invert dependency with start-stop-daemon Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 16/50 v2] package/busybox: invert dependency with rsyslog Yann E. MORIN
2018-07-09 1:39 ` Carlos Santos
2018-07-08 9:45 ` [Buildroot] [PATCH 17/50 v2] package/busybox: invert dependency with psmisc Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 18/50 v2] package/busybox: invert dependency with procps-ng Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 19/50 v2] package/busybox: invert dependency with pciutils Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 20/50 v2] package/busybox: invert dependency with ntp Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 21/50 v2] package/busybox: invert dependency with nmap Yann E. MORIN
2018-07-08 11:12 ` Arnout Vandecappelle
2018-07-08 12:38 ` Yann E. MORIN
2018-07-08 14:03 ` Arnout Vandecappelle
2018-07-08 9:45 ` [Buildroot] [PATCH 22/50 v2] package/busybox: invert dependency with netcat-openbsd Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 23/50 v2] package/busybox: invert dependency with netcat Yann E. MORIN
2018-07-08 11:00 ` Arnout Vandecappelle
2018-07-08 9:45 ` [Buildroot] [PATCH 24/50 v2] package/busybox: invert dependency with net-tools Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 25/50 v2] package/busybox: invert dependency with mtd Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 26/50 v2] package/busybox: invert dependency with lsof Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 27/50 v2] package/busybox: invert dependency with less Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 28/50 v2] package/busybox: invert dependency with kmod Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 29/50 v2] package/busybox: invert dependency with iputils Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 30/50 v2] package/busybox: invert dependency with iproute2 Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 31/50 v2] package/busybox: invert dependency with ifupdown Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 32/50 v2] package/busybox: invert dependency with ifplugd Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 33/50 v2] package/busybox: invert dependency with ifenslave Yann E. MORIN
2018-07-08 9:45 ` [Buildroot] [PATCH 34/50 v2] package/busybox: invert dependency with i2c-tools Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 35/50 v2] package/busybox: invert dependency with gzip Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 36/50 v2] package/busybox: invert dependency with grep Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 37/50 v2] package/busybox: invert dependency with gawk Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 38/50 v2] package/busybox: invert dependency with fbset Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 39/50 v2] package/busybox: invert dependency with e2fsprogs Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 40/50 v2] package/busybox: invert dependency with dos2unix Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 41/50 v2] package/busybox: invert dependency with diffutils Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 42/50 v2] package/busybox: invert dependency with debianutils Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 43/50 v2] package/busybox: invert dependency with dcron Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 44/50 v2] package/busybox: invert dependency with cpio Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 45/50 v2] package/busybox: invert dependency with coreutils Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 46/50 v2] package/busybox: invert dependency with binutils Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 47/50 v2] package/busybox: invert dependency with bc Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 48/50 v2] package/busybox: invert dependency with bash Yann E. MORIN
2018-07-08 11:06 ` Arnout Vandecappelle
2018-07-08 12:34 ` Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 49/50 v2] package/busybox: add dependency on attr Yann E. MORIN
2018-07-08 11:09 ` Arnout Vandecappelle
2018-07-08 12:35 ` Yann E. MORIN
2018-07-08 9:46 ` [Buildroot] [PATCH 50/50 v2] support/scripts: don't draw most of busybox' dependencies Yann E. MORIN
2018-07-08 11:25 ` Arnout Vandecappelle
2018-07-08 12:42 ` Yann E. MORIN
2018-07-08 14:05 ` Arnout Vandecappelle
2018-07-09 1:41 ` Carlos Santos [this message]
2018-07-09 2:03 ` Carlos Santos
2018-07-09 19:33 ` Arnout Vandecappelle
2018-07-08 11:14 ` [Buildroot] [PATCH 00/50 v2] package/busybox: invert dependencies Arnout Vandecappelle
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=1404383141.2223862.1531100485070.JavaMail.zimbra@datacom.com.br \
--to=casantos@datacom.com.br \
--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