Go to file
Yann E. MORIN 9c32b9286d support/graph-depends: use the new make-based dependency tree
Now that we can get the whole dependency tree from make, use it to
speed up things considerably.

So far, we had three functions to get the dependencies information:
get_depends(), get_rdepends(), and, somehow unrelated, get_version().

Because of the way %-show-{,r}depends works, getting the dependency tree
was expensive, the three functions all took a set of packages for which
to get the dependencies, in an attempt to limit the time it took to get
that tree, but we still had to call these functions iteratively, until
they returned no new dependency. This was pretty costly.

Now, getting the tree is much, much less costly, and we can get the
whole tree as cheaply as we previously got only the first-level
dependencies.

Furthermore, we can now also get the version information at the same
time, and that also brings in whether the package is virtual or not,
target or host.

So, we drop all three helper functions, and replace them with a single
one that returns all that information in one go: full dependency trees
(direct and reverse), per-package type, and per-package version.

Note: since commit 2d29fd96a (pkg-virtual: remove VERSION/SOURCE),
virtual packages are no longer reported as having a 'virtual' version,
so have since been displayed as regular packages in the graphs. Although
noone complained, this patch incidentally restores the initial
behaviour, and virtual packages are now correctly displayed as such
again.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-03-25 19:31:02 +01:00
arch arch/mips: add (Marvell) Octeon III processor 2019-02-04 17:30:18 +01:00
board configs/imx8mpico: new defconfig 2019-03-17 17:35:17 +01:00
boot boot/arm-trusted-firmware: support debug mode 2019-03-20 22:57:12 +01:00
configs configs/freescale_imx8mqevk: bump packages to imx_4.14.78_1.0.0_ga 2019-03-24 09:11:34 +01:00
docs package/pkg-golang: add support for building host packages 2019-03-17 17:21:10 +01:00
fs core: add make-based full-dependency list 2019-03-17 15:39:12 +01:00
linux linux: allow BR2_LINUX_KERNEL_IMAGE on RISC-V 2019-03-19 22:06:15 +01:00
package package/pkg-generic: mark some rule PHONY 2019-03-25 19:27:04 +01:00
support support/graph-depends: use the new make-based dependency tree 2019-03-25 19:31:02 +01:00
system system/skeleton: remove password expiration from shadow 2019-03-20 23:06:29 +01:00
toolchain toolchain: set the ssp gcc option in kconfig 2019-03-13 00:01:55 +01:00
utils utils/test-pkg: generate package config if it is not specified 2019-03-17 10:03:34 +01:00
.defconfig
.flake8 .flake8: ignore utils/diffconfig 2018-03-13 22:37:54 +01:00
.gitignore
.gitlab-ci.yml configs/imx8mpico: new defconfig 2019-03-17 17:35:17 +01:00
.gitlab-ci.yml.in .gitlab-ci.yml: use "extends" keyword 2019-02-06 11:40:28 +01:00
CHANGES Update for 2019.02 2019-03-04 22:49:56 +01:00
Config.in toolchain: set the ssp gcc option in kconfig 2019-03-13 00:01:55 +01:00
Config.in.legacy package/ffmpeg: bump to version 4.1.2 2019-03-25 18:37:58 +01:00
COPYING
DEVELOPERS gummiboot: Add to DEVELOPERS file 2019-03-24 09:00:50 +01:00
Makefile core: add make-based full-dependency list 2019-03-17 15:39:12 +01:00
Makefile.legacy
README

Buildroot is a simple, efficient and easy-to-use tool to generate embedded
Linux systems through cross-compilation.

The documentation can be found in docs/manual. You can generate a text
document with 'make manual-text' and read output/docs/manual/manual.text.
Online documentation can be found at http://buildroot.org/docs.html

To build and use the buildroot stuff, do the following:

1) run 'make menuconfig'
2) select the target architecture and the packages you wish to compile
3) run 'make'
4) wait while it compiles
5) find the kernel, bootloader, root filesystem, etc. in output/images

You do not need to be root to build or run buildroot.  Have fun!

Buildroot comes with a basic configuration for a number of boards. Run
'make list-defconfigs' to view the list of provided configurations.

Please feed suggestions, bug reports, insults, and bribes back to the
buildroot mailing list: buildroot@buildroot.org
You can also find us on #buildroot on Freenode IRC.

If you would like to contribute patches, please read
https://buildroot.org/manual.html#submitting-patches