No DEB packages when setlocalversion echos non-empty
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
kernel-package (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: kernel-package
I use make-kpkg for compiling my kernels and building DEB packages, which I can then transfer over to other machines. I'm using upstream sources for this (e.g. the torvalds git tree).
The thing is that there is a script "scripts/
This was not a problem before but now I get the following situation: when make-kpkg runs it replaces the placeholders inside the debian/control file with the version string unmodified and so the additional "+" sign don't make it into the "debian/control" file and one will get the same error as in issue #58307, comment #7:
dpkg-gencontrol -DArchitecture=
dpkg-gencontrol: error: package linux-image-
make[2]: *** [debian/
make[2]: Leaving directory `/srv/dev/
make[1]: *** [debian/
make[1]: Leaving directory `/srv/dev/
make: *** [kernel-image] Error 2
The output explains this:
...
sed -e 's/=V/2.
-e 's/=D/2.
-e 's/=SA//g' \
-e 's/=I//g' \
-e 's/=CV/2.6/g' \
-e 's/=M/Unknown Kernel Package Maintainer <email address hidden>/g' \
-e 's/=ST/linux/g' -e 's/=B/x86_64/g' \
...
And as the placeholder for the package includes "V": "Package: =ST-image-=V=SA" it surely can't make it in. So in the end the version string that is generated into "include/
echo "2.6.35-
...does not match the variable "version" that is used in /usr/share/
test -f debian/control || sed -e 's/=V/$(version)/g' \
Changed in kernel-package (Ubuntu): | |
status: | New → Confirmed |
Additional note:
neither "make-kpkg clean" nor "make distclean" nor manually editing the "debian/control" file before running make-kpkg fixes this issue. The only thing one can do is to completely vanish all local changes to the upstream sources which is not possible if you want to test some patches.