* [PATCH] scripts/package/builddeb: upgrade to current practices
@ 2012-07-17 17:57 Martin-Éric Racine
2012-07-17 19:39 ` Jonathan Nieder
0 siblings, 1 reply; 11+ messages in thread
From: Martin-Éric Racine @ 2012-07-17 17:57 UTC (permalink / raw)
To: Linux Kernel Mailing List
This patch sanitizes and updates the Debian package building script:
1) Updates $fwpackagename to 'firmware-linux' as used by Debian,
2) Removes trailing whitespace,
3) Updates Linus' copyright in the generated packaging files,
4) Updates URL of Linus' GIT tree in the generated packaging files,
5) Removes obsolete references to linux-2.6,
6) Adds installation of missing subarch components to header package,
7) Adds dependency relationships to the firmware package.
Signed-off-by: Martin-Éric Racine <martin-eric.racine@iki.fi>
---
scripts/package/builddeb | 25 ++++++++++++++-----------
1 file changed, 14 insertions(+), 11 deletions(-)
diff --git a/scripts/package/builddeb b/scripts/package/builddeb
index c95fdda..44ef3d1 100644
--- a/scripts/package/builddeb
+++ b/scripts/package/builddeb
@@ -79,9 +79,9 @@ fwdir="$objtree/debian/fwtmp"
kernel_headers_dir="$objtree/debian/hdrtmp"
libc_headers_dir="$objtree/debian/headertmp"
packagename=linux-image-$version
-fwpackagename=linux-firmware-image
kernel_headers_packagename=linux-headers-$version
libc_headers_packagename=linux-libc-dev
+fwpackagename=firmware-linux
if [ "$ARCH" = "um" ] ; then
packagename=user-mode-linux-$version
@@ -109,7 +109,7 @@ if [ "$ARCH" = "um" ] ; then
cp .config "$tmpdir/usr/share/doc/$packagename/config"
gzip "$tmpdir/usr/share/doc/$packagename/config"
cp $KBUILD_IMAGE "$tmpdir/usr/bin/linux-$version"
-else
+else
cp System.map "$tmpdir/boot/System.map-$version"
cp .config "$tmpdir/boot/config-$version"
# Not all arches include the boot path in KBUILD_IMAGE
@@ -188,17 +188,17 @@ This is a packacked upstream version of the Linux kernel.
The sources may be found at most Linux ftp sites, including:
ftp://ftp.kernel.org/pub/linux/kernel
-Copyright: 1991 - 2009 Linus Torvalds and others.
+Copyright: 1991-2012 Linus Torvalds and others.
-The git repository for mainline kernel development is at:
-git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
+The GIT repository for mainline kernel development is at:
+git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 dated June, 1991.
On Debian GNU/Linux systems, the complete text of the GNU General Public
-License version 2 can be found in \`/usr/share/common-licenses/GPL-2'.
+License version 2 can be found in /usr/share/common-licenses/GPL-2.
EOF
# Generate a control file
@@ -215,7 +215,7 @@ if [ "$ARCH" = "um" ]; then
cat <<EOF >> debian/control
Package: $packagename
-Provides: linux-image, linux-image-2.6, linux-modules-$version
+Provides: linux-image, linux-modules-$version
Architecture: any
Description: User Mode Linux kernel, version $version
User-mode Linux is a port of the Linux kernel to its own system call
@@ -232,7 +232,7 @@ else
cat <<EOF >> debian/control
Package: $packagename
-Provides: linux-image, linux-image-2.6, linux-modules-$version
+Provides: linux-image, linux-modules-$version
Suggests: $fwpackagename
Architecture: any
Description: Linux kernel, version $version
@@ -243,7 +243,7 @@ EOF
fi
# Build header package
-(cd $srctree; find . -name Makefile -o -name Kconfig\* -o -name \*.pl > "$objtree/debian/hdrsrcfiles")
+(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 .config Module.symvers include scripts -type f >> "$objtree/debian/hdrobjfiles")
destdir=$kernel_headers_dir/usr/src/linux-headers-$version
@@ -257,12 +257,12 @@ arch=$(dpkg --print-architecture)
cat <<EOF >> debian/control
Package: $kernel_headers_packagename
-Provides: linux-headers, linux-headers-2.6
+Provides: linux-headers
Architecture: $arch
Description: Linux kernel headers for $KERNELRELEASE on $arch
This package provides kernel header files for $KERNELRELEASE on $arch
.
- This is useful for people who need to build external modules
+ This is useful for people who need to build external modules.
EOF
# Do we have firmware? Move it out of the way and build it into a package.
@@ -273,6 +273,9 @@ if [ -e "$tmpdir/lib/firmware" ]; then
Package: $fwpackagename
Architecture: all
+Conflicts: firmware-linux-free, firmware-linux-nonfree
+Provides: firmware-linux-free, firmware-linux-nonfree
+Replaces: firmware-linux-free, firmware-linux-nonfree
Description: Linux kernel firmware, version $version
This package contains firmware from the Linux kernel, version $version.
EOF
--
1.7.10.4
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH] scripts/package/builddeb: upgrade to current practices
2012-07-17 17:57 [PATCH] scripts/package/builddeb: upgrade to current practices Martin-Éric Racine
@ 2012-07-17 19:39 ` Jonathan Nieder
2012-07-17 19:46 ` Martin-Éric Racine
0 siblings, 1 reply; 11+ messages in thread
From: Jonathan Nieder @ 2012-07-17 19:39 UTC (permalink / raw)
To: Martin-Éric Racine
Cc: Linux Kernel Mailing List, linux-kbuild, debian-kernel
Hi,
Martin-Éric Racine wrote:
> Signed-off-by: Martin-Éric Racine <martin-eric.racine@iki.fi>
Thanks. This patch does many things at once instead of the usual
practice of "one patch per logical change", but oh well.
[...]
> --- a/scripts/package/builddeb
> +++ b/scripts/package/builddeb
> @@ -79,9 +79,9 @@ fwdir="$objtree/debian/fwtmp"
> kernel_headers_dir="$objtree/debian/hdrtmp"
> libc_headers_dir="$objtree/debian/headertmp"
> packagename=linux-image-$version
> -fwpackagename=linux-firmware-image
> kernel_headers_packagename=linux-headers-$version
> libc_headers_packagename=linux-libc-dev
> +fwpackagename=firmware-linux
Micronit: any reason the lines are reordered here?
> @@ -188,17 +188,17 @@ This is a packacked upstream version of the Linux kernel.
> The sources may be found at most Linux ftp sites, including:
> ftp://ftp.kernel.org/pub/linux/kernel
>
> -Copyright: 1991 - 2009 Linus Torvalds and others.
> +Copyright: 1991-2012 Linus Torvalds and others.
>
> -The git repository for mainline kernel development is at:
> -git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
> +The GIT repository for mainline kernel development is at:
> +git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
I personally like to spell it as "Git". ;-)
[...]
> @@ -273,6 +273,9 @@ if [ -e "$tmpdir/lib/firmware" ]; then
>
> Package: $fwpackagename
> Architecture: all
> +Conflicts: firmware-linux-free, firmware-linux-nonfree
> +Provides: firmware-linux-free, firmware-linux-nonfree
> +Replaces: firmware-linux-free, firmware-linux-nonfree
I assume you mean Breaks+Replaces. Do the files actually overlap,
or is this change being overly cautious? I would expect the files
not to overlap because the package build with deb-pkg puts firmware
in a versioned subdirectory "/lib/firmware/<version>".
Hope that helps,
Jonathan
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] scripts/package/builddeb: upgrade to current practices
2012-07-17 19:39 ` Jonathan Nieder
@ 2012-07-17 19:46 ` Martin-Éric Racine
2012-07-17 21:23 ` maximilian attems
2012-08-14 15:46 ` Jan Engelhardt
0 siblings, 2 replies; 11+ messages in thread
From: Martin-Éric Racine @ 2012-07-17 19:46 UTC (permalink / raw)
To: Jonathan Nieder; +Cc: Linux Kernel Mailing List, linux-kbuild, debian-kernel
2012/7/17 Jonathan Nieder <jrnieder@gmail.com>:
> Hi,
>
> Martin-Éric Racine wrote:
>
>> Signed-off-by: Martin-Éric Racine <martin-eric.racine@iki.fi>
>
> Thanks. This patch does many things at once instead of the usual
> practice of "one patch per logical change", but oh well.
>
> [...]
>> --- a/scripts/package/builddeb
>> +++ b/scripts/package/builddeb
>> @@ -79,9 +79,9 @@ fwdir="$objtree/debian/fwtmp"
>> kernel_headers_dir="$objtree/debian/hdrtmp"
>> libc_headers_dir="$objtree/debian/headertmp"
>> packagename=linux-image-$version
>> -fwpackagename=linux-firmware-image
>> kernel_headers_packagename=linux-headers-$version
>> libc_headers_packagename=linux-libc-dev
>> +fwpackagename=firmware-linux
>
> Micronit: any reason the lines are reordered here?
Mostly to differenciate between versioned and non-versioned package targets.
>> @@ -188,17 +188,17 @@ This is a packacked upstream version of the Linux kernel.
>> The sources may be found at most Linux ftp sites, including:
>> ftp://ftp.kernel.org/pub/linux/kernel
>>
>> -Copyright: 1991 - 2009 Linus Torvalds and others.
>> +Copyright: 1991-2012 Linus Torvalds and others.
>>
>> -The git repository for mainline kernel development is at:
>> -git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
>> +The GIT repository for mainline kernel development is at:
>> +git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>
> I personally like to spell it as "Git". ;-)
That works for me too. Actually, what's the official spelling for it?
> [...]
>> @@ -273,6 +273,9 @@ if [ -e "$tmpdir/lib/firmware" ]; then
>>
>> Package: $fwpackagename
>> Architecture: all
>> +Conflicts: firmware-linux-free, firmware-linux-nonfree
>> +Provides: firmware-linux-free, firmware-linux-nonfree
>> +Replaces: firmware-linux-free, firmware-linux-nonfree
>
> I assume you mean Breaks+Replaces. Do the files actually overlap,
> or is this change being overly cautious? I would expect the files
> not to overlap because the package build with deb-pkg puts firmware
> in a versioned subdirectory "/lib/firmware/<version>".
AFAIK they would overlap, hence the Conflicts.
Martin-Éric
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] scripts/package/builddeb: upgrade to current practices
2012-07-17 19:46 ` Martin-Éric Racine
@ 2012-07-17 21:23 ` maximilian attems
2012-07-17 23:19 ` Martin-Éric Racine
2012-08-14 15:46 ` Jan Engelhardt
1 sibling, 1 reply; 11+ messages in thread
From: maximilian attems @ 2012-07-17 21:23 UTC (permalink / raw)
To: Martin-Éric Racine
Cc: Jonathan Nieder, Linux Kernel Mailing List, linux-kbuild, debian-kernel
On Tue, Jul 17, 2012 at 10:46:23PM +0300, Martin-Éric Racine wrote:
> 2012/7/17 Jonathan Nieder <jrnieder@gmail.com>:
> >>
> >> Package: $fwpackagename
> >> Architecture: all
> >> +Conflicts: firmware-linux-free, firmware-linux-nonfree
> >> +Provides: firmware-linux-free, firmware-linux-nonfree
> >> +Replaces: firmware-linux-free, firmware-linux-nonfree
> >
> > I assume you mean Breaks+Replaces. Do the files actually overlap,
> > or is this change being overly cautious? I would expect the files
> > not to overlap because the package build with deb-pkg puts firmware
> > in a versioned subdirectory "/lib/firmware/<version>".
>
> AFAIK they would overlap, hence the Conflicts.
This is wrong and properly fixed in -next.
--
maks
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] scripts/package/builddeb: upgrade to current practices
2012-07-17 21:23 ` maximilian attems
@ 2012-07-17 23:19 ` Martin-Éric Racine
2012-07-17 23:27 ` Jonathan Nieder
2012-07-18 6:56 ` maximilian attems
0 siblings, 2 replies; 11+ messages in thread
From: Martin-Éric Racine @ 2012-07-17 23:19 UTC (permalink / raw)
To: maximilian attems
Cc: Jonathan Nieder, Linux Kernel Mailing List, linux-kbuild, debian-kernel
2012/7/18 maximilian attems <max@stro.at>:
> On Tue, Jul 17, 2012 at 10:46:23PM +0300, Martin-Éric Racine wrote:
>> 2012/7/17 Jonathan Nieder <jrnieder@gmail.com>:
>> >>
>> >> Package: $fwpackagename
>> >> Architecture: all
>> >> +Conflicts: firmware-linux-free, firmware-linux-nonfree
>> >> +Provides: firmware-linux-free, firmware-linux-nonfree
>> >> +Replaces: firmware-linux-free, firmware-linux-nonfree
>> >
>> > I assume you mean Breaks+Replaces. Do the files actually overlap,
>> > or is this change being overly cautious? I would expect the files
>> > not to overlap because the package build with deb-pkg puts firmware
>> > in a versioned subdirectory "/lib/firmware/<version>".
>>
>> AFAIK they would overlap, hence the Conflicts.
>
> This is wrong and properly fixed in -next.
Max,
Exactly what is wrong with this fix? Could you tell us exactly what
you did differently and why?
Martin-Éric
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] scripts/package/builddeb: upgrade to current practices
2012-07-17 23:19 ` Martin-Éric Racine
@ 2012-07-17 23:27 ` Jonathan Nieder
2012-07-18 6:56 ` maximilian attems
1 sibling, 0 replies; 11+ messages in thread
From: Jonathan Nieder @ 2012-07-17 23:27 UTC (permalink / raw)
To: Martin-Éric Racine
Cc: maximilian attems, Linux Kernel Mailing List, linux-kbuild,
debian-kernel
Martin-Éric Racine wrote:
> Could you tell us exactly what
> you did differently and why?
At least the "what" should be answerable by looking at what is in
linux-next.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] scripts/package/builddeb: upgrade to current practices
2012-07-17 23:19 ` Martin-Éric Racine
2012-07-17 23:27 ` Jonathan Nieder
@ 2012-07-18 6:56 ` maximilian attems
2012-07-18 7:21 ` Martin-Éric Racine
2012-07-18 7:47 ` Bjørn Mork
1 sibling, 2 replies; 11+ messages in thread
From: maximilian attems @ 2012-07-18 6:56 UTC (permalink / raw)
To: Martin-Éric Racine; +Cc: Jonathan Nieder, linux-kbuild, debian-kernel
On Wed, Jul 18, 2012 at 02:19:25AM +0300, Martin-Éric Racine wrote:
> 2012/7/18 maximilian attems <max@stro.at>:
> > On Tue, Jul 17, 2012 at 10:46:23PM +0300, Martin-Éric Racine wrote:
> >> 2012/7/17 Jonathan Nieder <jrnieder@gmail.com>:
> >> >>
> >> >> Package: $fwpackagename
> >> >> Architecture: all
> >> >> +Conflicts: firmware-linux-free, firmware-linux-nonfree
> >> >> +Provides: firmware-linux-free, firmware-linux-nonfree
> >> >> +Replaces: firmware-linux-free, firmware-linux-nonfree
> >> >
> >> > I assume you mean Breaks+Replaces. Do the files actually overlap,
> >> > or is this change being overly cautious? I would expect the files
> >> > not to overlap because the package build with deb-pkg puts firmware
> >> > in a versioned subdirectory "/lib/firmware/<version>".
> >>
> >> AFAIK they would overlap, hence the Conflicts.
> >
> > This is wrong and properly fixed in -next.
>
> Exactly what is wrong with this fix? Could you tell us exactly what
> you did differently and why?
Jonathan already answered it, saying that firmwares are put
in versioned dir.
Just use git to look it up, easy:
~/src/linux-next (master %=)$ git log scripts/package/builddeb
6607ddadf93d19c7f64139f1475c342152f39fe5
Your conflict would mean to kick out the official debian firmware
packages which is not something we want!
--
maks
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] scripts/package/builddeb: upgrade to current practices
2012-07-18 6:56 ` maximilian attems
@ 2012-07-18 7:21 ` Martin-Éric Racine
2012-07-18 8:05 ` Bjørn Mork
2012-07-18 7:47 ` Bjørn Mork
1 sibling, 1 reply; 11+ messages in thread
From: Martin-Éric Racine @ 2012-07-18 7:21 UTC (permalink / raw)
To: maximilian attems; +Cc: Jonathan Nieder, linux-kbuild, debian-kernel
2012/7/18 maximilian attems <max@stro.at>:
> On Wed, Jul 18, 2012 at 02:19:25AM +0300, Martin-Éric Racine wrote:
>> 2012/7/18 maximilian attems <max@stro.at>:
>> > On Tue, Jul 17, 2012 at 10:46:23PM +0300, Martin-Éric Racine wrote:
>> >> 2012/7/17 Jonathan Nieder <jrnieder@gmail.com>:
>> >> >>
>> >> >> Package: $fwpackagename
>> >> >> Architecture: all
>> >> >> +Conflicts: firmware-linux-free, firmware-linux-nonfree
>> >> >> +Provides: firmware-linux-free, firmware-linux-nonfree
>> >> >> +Replaces: firmware-linux-free, firmware-linux-nonfree
>> >> >
>> >> > I assume you mean Breaks+Replaces. Do the files actually overlap,
>> >> > or is this change being overly cautious? I would expect the files
>> >> > not to overlap because the package build with deb-pkg puts firmware
>> >> > in a versioned subdirectory "/lib/firmware/<version>".
>> >>
>> >> AFAIK they would overlap, hence the Conflicts.
>> >
>> > This is wrong and properly fixed in -next.
>>
>> Exactly what is wrong with this fix? Could you tell us exactly what
>> you did differently and why?
>
> Jonathan already answered it, saying that firmwares are put
> in versioned dir.
Does the kernel look for modules in versioned, then non-versioned
directories, in that order? More importantly, does it even attempt
looking in the versioned directory at all?
Martin-Éric
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] scripts/package/builddeb: upgrade to current practices
2012-07-18 6:56 ` maximilian attems
2012-07-18 7:21 ` Martin-Éric Racine
@ 2012-07-18 7:47 ` Bjørn Mork
1 sibling, 0 replies; 11+ messages in thread
From: Bjørn Mork @ 2012-07-18 7:47 UTC (permalink / raw)
To: maximilian attems
Cc: Martin-Éric Racine, Jonathan Nieder, linux-kbuild, debian-kernel
maximilian attems <max@stro.at> writes:
> Jonathan already answered it, saying that firmwares are put
> in versioned dir.
>
> Just use git to look it up, easy:
> ~/src/linux-next (master %=)$ git log scripts/package/builddeb
>
> 6607ddadf93d19c7f64139f1475c342152f39fe5
But..but.. won't that prevent installing firmware for more than one
builddeb kernel? I.e., shouldn't the fw package name also be versioned
if you are going to do this (which it seems you are)?
But then again, I thought versioned firmware was dropped from the
official packages for good reasons. Any reason why you couldn't add
/lib/firmware/something (where "something" is fixed and independent of
version) to the firmware.agent search path, and use that for unofficial
linux-firmware packages?
That would allow unofficial firmware packages from different kernel
versions to continue sharing their package name without conflicting with
the official packages in any way.
Bjørn
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] scripts/package/builddeb: upgrade to current practices
2012-07-18 7:21 ` Martin-Éric Racine
@ 2012-07-18 8:05 ` Bjørn Mork
0 siblings, 0 replies; 11+ messages in thread
From: Bjørn Mork @ 2012-07-18 8:05 UTC (permalink / raw)
To: martin-eric.racine
Cc: maximilian attems, Jonathan Nieder, linux-kbuild, debian-kernel
Martin-Éric Racine <martin-eric.racine@iki.fi> writes:
> Does the kernel look for modules in versioned, then non-versioned
> directories, in that order? More importantly, does it even attempt
> looking in the versioned directory at all?
/lib/udev/firmware.agent does this:
FIRMWARE_DIRS="/lib/firmware/$(uname -r) /lib/firmware /usr/local/lib/firmware /usr/lib/hotplug/firmware"
for DIR in $FIRMWARE_DIRS; do
[ -e "$DIR/$FIRMWARE" ] || continue
Bjørn
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] scripts/package/builddeb: upgrade to current practices
2012-07-17 19:46 ` Martin-Éric Racine
2012-07-17 21:23 ` maximilian attems
@ 2012-08-14 15:46 ` Jan Engelhardt
1 sibling, 0 replies; 11+ messages in thread
From: Jan Engelhardt @ 2012-08-14 15:46 UTC (permalink / raw)
To: Martin-Éric Racine
Cc: Jonathan Nieder, Linux Kernel Mailing List, linux-kbuild, debian-kernel
On Tuesday 2012-07-17 21:46, Martin-Éric Racine wrote:
>>> @@ -188,17 +188,17 @@ This is a packacked upstream version of the Linux kernel.
>>> The sources may be found at most Linux ftp sites, including:
>>> ftp://ftp.kernel.org/pub/linux/kernel
>>>
>>> -Copyright: 1991 - 2009 Linus Torvalds and others.
>>> +Copyright: 1991-2012 Linus Torvalds and others.
>>>
>>> -The git repository for mainline kernel development is at:
>>> -git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
>>> +The GIT repository for mainline kernel development is at:
>>> +git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>>
>> I personally like to spell it as "Git". ;-)
>
>That works for me too. Actually, what's the official spelling for it?
The acronymic usage of "GIT" to mean Global Information Tracker has
not caught on. Therefore most likely "Git"; like "Linux", a noun, a
name.
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2012-08-14 15:46 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-07-17 17:57 [PATCH] scripts/package/builddeb: upgrade to current practices Martin-Éric Racine
2012-07-17 19:39 ` Jonathan Nieder
2012-07-17 19:46 ` Martin-Éric Racine
2012-07-17 21:23 ` maximilian attems
2012-07-17 23:19 ` Martin-Éric Racine
2012-07-17 23:27 ` Jonathan Nieder
2012-07-18 6:56 ` maximilian attems
2012-07-18 7:21 ` Martin-Éric Racine
2012-07-18 8:05 ` Bjørn Mork
2012-07-18 7:47 ` Bjørn Mork
2012-08-14 15:46 ` Jan Engelhardt
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.