aboutsummaryrefslogtreecommitdiff
path: root/configs/olimex_a64_olinuxino_defconfig
diff options
context:
space:
mode:
authorGravatar Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>2020-02-14 20:57:33 +0100
committerGravatar Peter Korsgaard <peter@korsgaard.com>2020-02-17 22:19:33 +0100
commit509db3b88a8de704ae19e2d38246990fb5f6f2de (patch)
tree318386d0cdca41abb72a0d3825c617ae86b9e6f7 /configs/olimex_a64_olinuxino_defconfig
parent5abe7e4ce3e098ddb7a060e24f2f8aa60b0353a7 (diff)
downloadbuildroot-master.tar.gz
buildroot-master.tar.bz2
core: fix packages-file-list.txt after an incremental buildHEADmaster
The package instrumentation step 'step_pkg_size' is populating the files: output/build/packages-file-list.txt output/build/packages-file-list-staging.txt output/build/packages-file-list-host.txt by comparing the list of files before and after installation of a package, with some clever tricks to detect changes to existing files etc. As an optimization, instead of gathering this list before and after each package, where the 'after-state' of one package is the same as the 'before-state' of the next package, only the 'after-state' is used and is shared between packages. This works fine, except at the end of the build, as explained next. In the target-finalize step, many files will be touched. For example, files like /etc/hosts, /etc/os-release, but also all object files that are stripped, and all files touched by post-build scripts or created by rootfs overlays. This means that the 'after-state' of the last package does not reflect the actual situation after target-finalize is run. For a single complete build this poses no problem. But, if one incrementally rebuilds a package after the initial build, e.g. with 'make foo-rebuild', then all changes that happened in target-finalize at the end of the initial build (the 'after-state' of the last package built) will be detected as changes caused by the rebuild of package foo. As a result, all these files will incorrectly be treated as 'owned' by package foo. Correct this situation by capturing a new state at the end of target-finalize, so that the 'before-state' of an incremental build will be correct. Note: the reasoning above talks about packages-file-list.txt and target-finalize, but also applies to packages-file-list-staging.txt/staging-finalize and packages-file-list-host.txt/host-finalize. Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Diffstat (limited to 'configs/olimex_a64_olinuxino_defconfig')
0 files changed, 0 insertions, 0 deletions