kbuild: pkg: use -f $(srctree)/Makefile to recurse to top Makefile
authorMasahiro Yamada <yamada.masahiro@socionext.com>
Thu, 14 Feb 2019 03:05:14 +0000 (12:05 +0900)
committerMasahiro Yamada <yamada.masahiro@socionext.com>
Wed, 20 Feb 2019 00:42:46 +0000 (09:42 +0900)
'$(MAKE) KBUILD_SRC=' changes the working directory back and forth
between objtree and srctree.

It is better to recurse to the top-level Makefile directly.

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

index 453fecee62f0670e999f95a4a4e5f7f6c53e5a7d..aa39c2b5e46ac78d9e50e1c9949b4c2b56ff3ede 100644 (file)
@@ -59,7 +59,7 @@ rpm-pkg: FORCE
 # binrpm-pkg
 # ---------------------------------------------------------------------------
 binrpm-pkg: FORCE
-       $(MAKE) KBUILD_SRC=
+       $(MAKE) -f $(srctree)/Makefile
        $(CONFIG_SHELL) $(MKSPEC) prebuilt > $(objtree)/binkernel.spec
        +rpmbuild $(RPMOPTS) --define "_builddir $(objtree)" --target \
                $(UTS_MACHINE) -bb $(objtree)/binkernel.spec
@@ -102,7 +102,7 @@ clean-dirs += $(objtree)/snap/
 # tarball targets
 # ---------------------------------------------------------------------------
 tar%pkg: FORCE
-       $(MAKE) KBUILD_SRC=
+       $(MAKE) -f $(srctree)/Makefile
        $(CONFIG_SHELL) $(srctree)/scripts/package/buildtar $@
 
 clean-dirs += $(objtree)/tar-install/
index f43a274f4f1d5b820c00826d939b20d325b2311f..8ac25d10a6ad68d10bb436e4ece0c678b36590e0 100755 (executable)
@@ -86,12 +86,12 @@ cp "$($MAKE -s -f $srctree/Makefile image_name)" "$tmpdir/$installed_image_path"
 if grep -q "^CONFIG_OF_EARLY_FLATTREE=y" $KCONFIG_CONFIG ; then
        # Only some architectures with OF support have this target
        if [ -d "${srctree}/arch/$SRCARCH/boot/dts" ]; then
-               $MAKE KBUILD_SRC= INSTALL_DTBS_PATH="$tmpdir/usr/lib/$packagename" dtbs_install
+               $MAKE -f $srctree/Makefile INSTALL_DTBS_PATH="$tmpdir/usr/lib/$packagename" dtbs_install
        fi
 fi
 
 if grep -q '^CONFIG_MODULES=y' $KCONFIG_CONFIG ; then
-       INSTALL_MOD_PATH="$tmpdir" $MAKE KBUILD_SRC= modules_install
+       INSTALL_MOD_PATH="$tmpdir" $MAKE -f $srctree/Makefile modules_install
        rm -f "$tmpdir/lib/modules/$version/build"
        rm -f "$tmpdir/lib/modules/$version/source"
        if [ "$ARCH" = "um" ] ; then
@@ -113,14 +113,14 @@ if grep -q '^CONFIG_MODULES=y' $KCONFIG_CONFIG ; then
                # resign stripped modules
                MODULE_SIG_ALL="$(grep -s '^CONFIG_MODULE_SIG_ALL=y' $KCONFIG_CONFIG || true)"
                if [ -n "$MODULE_SIG_ALL" ]; then
-                       INSTALL_MOD_PATH="$tmpdir" $MAKE KBUILD_SRC= modules_sign
+                       INSTALL_MOD_PATH="$tmpdir" $MAKE -f $srctree/Makefile modules_sign
                fi
        fi
 fi
 
 if [ "$ARCH" != "um" ]; then
-       $MAKE headers_check KBUILD_SRC=
-       $MAKE headers_install KBUILD_SRC= INSTALL_HDR_PATH="$libc_headers_dir/usr"
+       $MAKE -f $srctree/Makefile headers_check
+       $MAKE -f $srctree/Makefile headers_install INSTALL_HDR_PATH="$libc_headers_dir/usr"
 fi
 
 # Install the maintainer scripts
index d624a07a4e77abf000fd7323138f6556fbedf034..cfd2a4a3fe42db1bf21e61ac93cc36f280b8c15b 100755 (executable)
@@ -57,7 +57,7 @@ dirs=boot
 # Try to install modules
 #
 if grep -q '^CONFIG_MODULES=y' "${KCONFIG_CONFIG}"; then
-       make ARCH="${ARCH}" O="${objtree}" KBUILD_SRC= INSTALL_MOD_PATH="${tmpdir}" modules_install
+       make ARCH="${ARCH}" -f ${srctree}/Makefile INSTALL_MOD_PATH="${tmpdir}" modules_install
        dirs="$dirs lib"
 fi
 
index edcad61fe3cdae66b8e8fe497f7f52329591ee0a..f030961c5165b444806a38c424b132e0e15ca7b4 100755 (executable)
@@ -205,13 +205,15 @@ EOF
 cat <<EOF > debian/rules
 #!$(command -v $MAKE) -f
 
+srctree ?= .
+
 build:
        \$(MAKE) KERNELRELEASE=${version} ARCH=${ARCH} \
-       KBUILD_BUILD_VERSION=${revision} KBUILD_SRC=
+       KBUILD_BUILD_VERSION=${revision} -f \$(srctree)/Makefile
 
 binary-arch:
        \$(MAKE) KERNELRELEASE=${version} ARCH=${ARCH} \
-       KBUILD_BUILD_VERSION=${revision} KBUILD_SRC= intdeb-pkg
+       KBUILD_BUILD_VERSION=${revision} -f \$(srctree)/Makefile intdeb-pkg
 
 clean:
        rm -rf debian/*tmp debian/files