instrumentation: extend packages-file-list.txt with symlinks and directories
authorThomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Sun, 5 Feb 2017 13:45:07 +0000 (14:45 +0100)
committerArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Wed, 2 Aug 2017 22:16:41 +0000 (00:16 +0200)
commitda32b49f0091ee9dfb613e0f00973bf6893bfa84
treef1e22ace9d5bf2652c93309cfd63dc48998f732e
parenta7ec12543f5312d3cd60c692f8f56f89af700d4d
instrumentation: extend packages-file-list.txt with symlinks and directories

Using the package instrumentation hooks, a file packages-file-list.txt is
created containing the list of files installed by a package with their size.

Due to the use of 'find -type f', symbolic links to files are not included
in this file list. Since the original purpose of this file was to calculate
the total size of a package and symbolic links have file size 0, this was
not a problem.

However, if packages-file-list.txt is reused for other purposes, for example
to get a complete list of files installed by a package regardless of size,
symbolic links to files are important too.

Likewise, to get a complete view of what a package installs, directories
should be included too.

Update the instrumentation hook accordingly.
Although for files an md5sum is taken, we cannot do this for directories.
Instead, mimic the output of md5sum with a fake hash string.

Note: for directories that are used by several packages, e.g. /etc/init.d/,
the package that created the directory will be treated as the 'owner' of
that directory.  This gives a somewhat distorted view of ownership.
Similarly, the package size reported by 'make graph-size' (based on
packages-file-list.txt) will include the 'size' of a directory for that
owner, which is reported as e.g. 4096 bytes.

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
package/pkg-generic.mk