diff options
author | Masahiro Yamada <yamada.masahiro@socionext.com> | 2017-12-06 05:32:57 -0500 |
---|---|---|
committer | Masahiro Yamada <yamada.masahiro@socionext.com> | 2017-12-12 10:07:00 -0500 |
commit | 262dad68e152fda06e5c5666b3186c23dfd6ae2f (patch) | |
tree | b11ecc81e2ecb6c40222850352937a3d4caae9ca | |
parent | 5704d4557f279962a1fa9ee9c5b562eb27376103 (diff) |
kbuild: pkg: make out-of-tree rpm/deb-pkg build immediately fail
We do not support out-of-tree building of rpm-pkg / deb-pkg. If O=
is given, the build should be terminated, but the "false" command is
not effective since it is not the last command in the cmd_src_tar.
Then, rpm-pkg / deb-pkg tries to continue building, and fails for a
different reason.
Set -e option so that the "false" terminates the building immediately.
I also put the error messages to stderr, and made it stand out more.
For example, "make O=foo rpm-pkg" will fail as follows:
/bin/bash ../scripts/package/mkspec >./kernel.spec
TAR kernel-4.15.0_rc2+.tar.gz
ERROR:
Building source tarball is not possible outside the
kernel source tree. Don't set KBUILD_OUTPUT, or use the
binrpm-pkg or bindeb-pkg target instead.
../scripts/package/Makefile:53: recipe for target 'rpm-pkg' failed
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Tested-by: Jim Davis <jim.epost@gmail.com>
-rw-r--r-- | scripts/package/Makefile | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/scripts/package/Makefile b/scripts/package/Makefile index 61e29da374cc..9fbcf5ed0ca7 100644 --- a/scripts/package/Makefile +++ b/scripts/package/Makefile | |||
@@ -32,10 +32,14 @@ MKSPEC := $(srctree)/scripts/package/mkspec | |||
32 | 32 | ||
33 | quiet_cmd_src_tar = TAR $(2).tar.gz | 33 | quiet_cmd_src_tar = TAR $(2).tar.gz |
34 | cmd_src_tar = \ | 34 | cmd_src_tar = \ |
35 | set -e; \ | ||
35 | if test "$(objtree)" != "$(srctree)"; then \ | 36 | if test "$(objtree)" != "$(srctree)"; then \ |
36 | echo "Building source tarball is not possible outside the"; \ | 37 | echo >&2; \ |
37 | echo "kernel source tree. Don't set KBUILD_OUTPUT, or use the"; \ | 38 | echo >&2 " ERROR:"; \ |
38 | echo "binrpm-pkg or bindeb-pkg target instead."; \ | 39 | echo >&2 " Building source tarball is not possible outside the"; \ |
40 | echo >&2 " kernel source tree. Don't set KBUILD_OUTPUT, or use the"; \ | ||
41 | echo >&2 " binrpm-pkg or bindeb-pkg target instead."; \ | ||
42 | echo >&2; \ | ||
39 | false; \ | 43 | false; \ |
40 | fi ; \ | 44 | fi ; \ |
41 | $(srctree)/scripts/setlocalversion --save-scmversion; \ | 45 | $(srctree)/scripts/setlocalversion --save-scmversion; \ |