[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [PATCH v4] scripts/package/builddeb: split generating packaging and build



Hi Riku,


2018-02-21 19:10 GMT+09:00  <riku.voipio@linaro.org>:
> From: Riku Voipio <riku.voipio@linaro.org>
>
> Move debian/ directory generation out of builddeb to a new script,
> mkdebian. The package build commands are kept in builddeb, which
> is now an internal command called from debian/rules.
>
> With these changes in place, we can now use dpkg-buildpackage from
> deb-pkg and bindeb-pkg removing need for handrolled source/changes
> generation.
>
> This patch is based on the criticism of the current state of builddeb
> discussed on:
>
> https://patchwork.kernel.org/patch/9656403/
>
> Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
> ---

Sorry for the delay.


> changes since v3:
> - removed hack from make clean target
> - updated copyright year
> - verified works with make 4.2


I have to say the same comment as in v3.

This patch does not work for me if I use Make 4.2 or newer.


I compared v3 and v4, and the diff is just below:

diff --git a/scripts/package/mkdebian b/scripts/package/mkdebian
index a151646..7944776 100755
--- a/scripts/package/mkdebian
+++ b/scripts/package/mkdebian
@@ -119,7 +119,7 @@ This is a packacked upstream version of the Linux kernel.
 The sources may be found at most Linux archive sites, including:
 https://www.kernel.org/pub/linux/kernel

-Copyright: 1991 - 2017 Linus Torvalds and others.
+Copyright: 1991 - 2018 Linus Torvalds and others.

 The git repository for mainline kernel development is at:
 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
@@ -181,9 +181,7 @@ binary-arch:

 clean:
        rm -rf debian/*tmp debian/files
-       mv debian/ debian.backup # debian/ might be cleaned away
        \$(MAKE) clean
-       mv debian.backup debian

 binary: binary-arch
 EOF




I still see the fork bomb problem on my machine, like the same as before.
It is curious you mention this is working on your machine.


So, something is different between your build machine and mine.

Perhaps, dpkg-buildpackage version?


I use Ubuntu 16.04 LTS.

My version:

$ dpkg-buildpackage --version
Debian dpkg-buildpackage version 1.18.4.

This is free software; see the GNU General Public License version 2 or
later for copying conditions. There is NO warranty.




Could you apply the following patch to get the log?


diff --git a/scripts/package/Makefile b/scripts/package/Makefile
index 19ce021..849058e 100644
--- a/scripts/package/Makefile
+++ b/scripts/package/Makefile
@@ -68,6 +68,7 @@ binrpm-pkg: FORCE
 clean-files += $(objtree)/*.spec

 deb-pkg: FORCE
+       echo MAKEFLAGS for deb-pkg: $(MAKEFLAGS) > deb_pkg_log.txt
        $(MAKE) clean
        $(CONFIG_SHELL) $(srctree)/scripts/package/mkdebian
        $(call cmd,src_tar,$(KDEB_SOURCENAME))
diff --git a/scripts/package/mkdebian b/scripts/package/mkdebian
index 7944776..158b121 100755
--- a/scripts/package/mkdebian
+++ b/scripts/package/mkdebian
@@ -174,6 +174,7 @@ cat <<EOF > debian/rules
 #!/usr/bin/make -f

 build:
+       echo MAKEFLAGS for mkdebian internal: \$(MAKEFLAGS) >> deb_pkg_log.txt
        \$(MAKE) KERNELRELEASE=${version} ARCH=${ARCH} KBUILD_SRC=

 binary-arch:



Run the following:

$ make -s tinyconfig
$ make -j8 deb-pkg


Then, can you provide the content of deb_pkg_log.txt, please?


If I use GNU Make 4.0

$ cat deb_pkg_log.txt
MAKEFLAGS for deb-pkg: rR -I/home/masahiro/ref/linux -j
--jobserver-fds=3,4 --no-print-directory -- obj=scripts/package
MAKEFLAGS for mkdebian internal: rR -I/home/masahiro/ref/linux -j
--jobserver-fds=3,4 --no-print-directory -- obj=scripts/package



If I use GNU Make 4.2

$ cat deb_pkg_log.txt
MAKEFLAGS for deb-pkg: rR -I/home/masahiro/ref/linux -j8
--jobserver-auth=3,4 --no-print-directory -- obj=scripts/package
MAKEFLAGS for mkdebian internal: rR -I/home/masahiro/ref/linux -j
--jobserver-fds=5,6 --no-print-directory -- obj=scripts/package






-- 
Best Regards
Masahiro Yamada


Reply to: