Re: [PATCH] kbuild: package: use --transform option to prefix paths in tar

From: Masahiro Yamada
Date: Thu Nov 23 2017 - 09:20:03 EST


2017-11-15 18:17 GMT+09:00 Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>:
> 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. That
> means, 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@xxxxxxxxxxxxx>
> ---


Applied to linux-kbuild.


--
Best Regards
Masahiro Yamada