]> git.baikalelectronics.ru Git - kernel.git/commit
kbuild: pkg: use --transform option to prefix paths in tar
authorMasahiro Yamada <yamada.masahiro@socionext.com>
Wed, 15 Nov 2017 09:17:07 +0000 (18:17 +0900)
committerMasahiro Yamada <yamada.masahiro@socionext.com>
Thu, 23 Nov 2017 14:12:04 +0000 (23:12 +0900)
commit187e398088d8e41a04643f603c665965c7076af3
tree7f39e7a37e8050bc51b2f7fb5b4278adadcbe9c5
parent4dcd9b85661849c36eaefb63c62d7ea59ff431b8
kbuild: pkg: use --transform option to prefix paths in tar

For rpm-pkg and deb-pkg, a source tar file is created.  All paths in
the archive must be prefixed with the base name of the tar so that
everything is contained in the directory when you extract it.

Currently, scripts/package/Makefile uses a symlink for that, and
removes it after the tar is created.

If you terminate the build during the tar creation, the symlink is
left over.  Then, at the next package build, you will see a warning
like follows:

  ln: '.' and 'kernel-4.14.0+/.' are the same file

It is possible to fix it by adding -n (--no-dereference) option to
the "ln" command, but a cleaner way is to use --transform option
of "tar" command.  This option is GNU extension, but it should not
hurt to use it in the Linux build system.

The 'S' flag is needed to exclude symlinks from the path fixup.
Without it, symlinks in the kernel are broken.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
scripts/package/Makefile