Skip to contentSkip to conversation

scripts/package/builddeb: include generated header files

PATCH In review Harald Dunkel 2 participants 5 messages May 26, 2012 – Jun 7, 2012 Kbuild

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 scripts/package/builddeb: include generated header files

Building the linux-headers*.deb file on amd64 it seems that scripts/\
package/builddeb forgets to include some generated header files from the build directory. It uses other header files generated in the source directory instead.

	arch/x86/include/generated/asm/unistd_32_ia32.h
	arch/x86/include/generated/asm/unistd_64_x32.h

are lost. AFAICS this problem was introduced by
9b4ce7bce5f30712fd926ab4599a803314a07719 .

Below is a patch.

This is the very first patch I am trying to get into the kernel source tree. Please excuse and correct me if I don't follow the blessed procedure.

Thanx for your patience.

Harri
-----------------------------------------------------------------------------------
commit 43aa35286ac190fc64998587e54bade3e53487ef

Author: Harald Dunkel <[email protected]>
Date:   Sat May 26 15:41:24 2012 +0200

kbuild: add generated header files for 'make deb-pkg'

9b4ce7bce5f30712fd926ab4599a803314a07719 introduced a regression: The header files generated in $objtree/arch/$SRCARCH/include are not included in the linux-headers*.deb package. This breaks building some 3rd-party modules due to a missing unistd_32_ia32.h file.

Further the temporary "hdrobjfiles" list of files is not properly reset.

This patch fixes these problem.

scripts/package/builddeb +1 -0
index eee5f8e..1cf6352 100644
@@ -245,6 +245,7 @@ fi
 # Build header package
 (cd $srctree; find . -name Makefile -o -name Kconfig\* -o -name \*.pl > "$objtree/debian/hdrsrcfiles")
 (cd $srctree; find arch/$SRCARCH/include include scripts -type f >> "$objtree/debian/hdrsrcfiles")
+(cd $objtree; find arch/$SRCARCH/include -type f -name \*.h > "$objtree/debian/hdrobjfiles")
 (cd $objtree; find .config Module.symvers include scripts -type f >> "$objtree/debian/hdrobjfiles")
 destdir=$kernel_headers_dir/usr/src/linux-headers-$version
 mkdir -p "$destdir"
#1 lore raw
Quoted 5 lines · Harald Dunkel

Building the linux-headers*.deb file on amd64 it seems that scripts/\
package/builddeb forgets to include some generated header files from the build directory. It uses other header files generated in the source directory instead.

Quoted 7 lines
	arch/x86/include/generated/asm/unistd_32_ia32.h
	arch/x86/include/generated/asm/unistd_64_x32.h

are lost. AFAICS this problem was introduced by
9b4ce7bce5f30712fd926ab4599a803314a07719 .

Below is a patch.

Thanks. There was already a patch fixing this by someone else:
http://www.spinics.net/lists/linux-kbuild/msg06313.html, so I applied that one.

Quoted 3 lines

This is the very first patch I am trying to get into the kernel source tree. Please excuse and correct me if I don't follow the blessed procedure.

You make easier for the receiving party if you send patches using git send-email. And lkml should be always CCed in addition to the maintainer and/or subsystem mailing list. Otherwise, the patch itself was OK.

Michal

#2 lore raw

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Quoted 2 lines · Michal Marek
Quoted 1 line · Harald Dunkel

Below is a patch.

:

Quoted 3 lines

Thanks. There was already a patch fixing this by someone else: http://www.spinics.net/lists/linux-kbuild/msg06313.html, so I applied that one.

Thats fine with me. Peter's patch looks almost the same.

Quoted 3 lines

You make easier for the receiving party if you send patches using git send-email. And lkml should be always CCed in addition to the maintainer and/or subsystem mailing list. Otherwise, the patch itself was OK.

I tried to follow the doc on kernelnewbies, but I haven't seen the git command line. It would help very much if you could send me a pointer to some more up-to-date information, if you have it at hand.

Many thanx anyway

Harri
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iEYEARECAAYFAk/BUyMACgkQUTlbRTxpHjfLYACgkG1JzxpdO8rxRI46Di2f69Gi 9+IAn0CqrwzqG/koBRtGiIpQCTZellAY
=ieYU
-----END PGP SIGNATURE-----

#3 lore raw
Quoted 9 lines · Harald Dunkel
Quoted 5 lines

You make easier for the receiving party if you send patches using git send-email. And lkml should be always CCed in addition to the maintainer and/or subsystem mailing list. Otherwise, the patch itself was OK.

I tried to follow the doc on kernelnewbies, but I haven't seen the git command line. It would help very much if you could send me a pointer to some more up-to-date information, if you have it at hand.

The commandline is

git send-email --to=... --cc=... --cc=... ... <base> or
git send-email --to=... --cc=... --cc=... ... <base>..<end>

<base> is the commit you based your changes on. So you usually do

git checkout -b my-fix master
<hack hack hack>
git send-email ... master..my-fix

Then the receiver can simply pipe the email(s) to 'git am' to apply the changes. Of course git send-email is not mandatory, but if you use it, you can be sure that the patch will be applicable without further processing.

Michal

#4 lore raw
In reply to Harald Dunkel

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Quoted 10 lines · Harald Dunkel
Quoted 2 lines · Michal Marek
Quoted 1 line · Harald Dunkel

Below is a patch.

:

Quoted 1 line

Thanks. There was already a patch fixing this by someone else: http://www.spinics.net/lists/linux-kbuild/msg06313.html, so I applied that one.

Thats fine with me. Peter's patch looks almost the same.

Question:

Do we really have to include all the

	.syscalls_32.h.cmd
	.unistd_32.h.cmd
	.unistd_64.h.cmd

files in the linux-headers package? These files don't look like C code.

If not, then I would still recommend my patch instead.

Regards

Harri
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iEYEARECAAYFAk/QKPgACgkQUTlbRTxpHjci+gCfc3vQsfziOFZiDIj+1mgjGvEk tXEAmwUWGfo2B2OO500gz+vzRUpEAzwe
=2s5i
-----END PGP SIGNATURE-----