Go to file
Yann E. MORIN 8f1487d6fa Revert "package/pkg-utils.mk: break hardlinks in global {TARGET, HOST}_DIR on per-package build"
Commit 21d52e52d8 (package/pkg-utils.mk: break hardlinks in global
{TARGET, HOST}_DIR on per-package build) stopped hardlink the source and
destination when rsyncing per-package directory, on the rationale that
modifying files in-place after the rsync would also modify the original
file, and that break foo-rebuild and can cause issues with post-build
scripts.

However, what 21d52e52d8 did not envision, is that copying instead of
hard-linking has two nasty side effects:

  - the size increase for the build directory increase with the number
    of packages and with the depth of th dependency chains for those
    packages: a (relatively small) build that was previously totalling
    ~13GiB in output/, now totals north of 122GiB, an almost 10-time
    increase;

  - the build time increases, as it takes more time to read+write files
    than it takes to create a new link to a file; the same build saw an
    increase of build time from 5min 10s to 7min 30s, a 45% increase.

These regressions are both serious, so revert the change; we'll come up
with a stopgap measure in follow-up commits.

This reverts commit 21d52e52d8.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Herve Codina <herve.codina@bootlin.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Reviewed-by: Herve Codina <herve.codina@bootlin.com>
2023-10-21 21:08:24 +02:00
arch arch/powerpc: drop ABI selection 2023-08-20 23:22:27 +02:00
board board/raspberrypi: fix typo in comment 2023-10-15 10:56:40 +02:00
boot boot/at91bootstrap: disable PIE and stack-protector build flags 2023-10-01 11:02:03 +02:00
configs configs/zynq_microzed_defconfig: bump to xilinx-v2023.2 2023-10-18 11:42:00 +02:00
docs docs/website: Update for 2023.02.6 2023-10-16 11:52:17 +02:00
fs fs/cpio: allow users to provide their own dracut modules 2023-02-06 22:46:35 +01:00
linux {linux, linux-headers}: bump 6.1.x series 2023-10-18 11:35:23 +02:00
package Revert "package/pkg-utils.mk: break hardlinks in global {TARGET, HOST}_DIR on per-package build" 2023-10-21 21:08:24 +02:00
support Update for 2023.08.2 2023-10-16 11:34:39 +02:00
system package/skeleton-init-systemd: add option to use overlayfs on /var 2023-10-08 20:12:01 +02:00
toolchain package/gcc/gcc-final: add a target variant in charge of target installation 2023-09-30 14:49:51 +02:00
utils utils/getdeveloperlib.py: handle file removal 2023-09-11 22:08:22 +02:00
.checkpackageignore .checkpackageignore: drop now removed network-manager patches 2023-10-17 10:35:53 +02:00
.clang-format
.defconfig
.flake8
.gitignore
.gitlab-ci.yml support/misc/gitlab-ci.yml.in: retry a job only if it failed due to a runner issue 2023-08-27 10:09:37 +02:00
.shellcheckrc
CHANGES Update for 2023.02.6 2023-10-16 11:46:01 +02:00
Config.in Config.in: introduce BR2_TIME_BITS_64 option for Y2038 compatibility 2023-10-01 21:14:06 +02:00
Config.in.legacy package/linux-headers: drop 6.4.x option 2023-09-27 21:06:30 +02:00
COPYING
DEVELOPERS package/opencv4-contrib: properly note dependencies between modules 2023-10-15 20:50:55 +02:00
Makefile Makefile: fix SDK relocation for per-package-dirs 2023-10-15 20:20:36 +02: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 OFTC IRC.

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