Package: kernel-package
Version: 13.011
Severity: serious
On i386, "make-kpkg linux-image" creates packages without an
"Architecture:" field which dpkg will then fail to process (unless
--force-architecture is specified). This is due to a broken logic in
/usr/share/kernel-package/ruleset/targets/image.mk:
BUILD_SUBARCH := $(shell $(DPKG_ARCH) -a$(KPKG_SUBARCH) -qDEB_HOST_ARCH)
Here KPKG_SUBARCH refers to a kernel subarch which will often be 686 on
typical i386 Debian systems, and "686" is not a valid Debian
architecture, so BUILD_SUBARCH ends up empty. Later this value is
passed on to dpkg-gencontrol:
dpkg-gencontrol -DArchitecture=$(BUILD_SUBARCH) -isp
Attached is the output of "LC_ALL=C linux32 make-kpkg linux-image" after
"linux32 make allnoconfig" where you can see dpkg-architecture
complaining.
exec make kpkg_version=13.011 -f /usr/share/kernel-package/ruleset/minimal.mk
debian
====== making target debian/stamp/conf/minimal_debian [new prereqs: ]======
This is kernel package version 13.011.
test -d debian || mkdir debian
test ! -e stamp-building || rm -f stamp-building
install -p -m 755 /usr/share/kernel-package/rules debian/rules
for file in ChangeLog Control Control.bin86 config templates.in rules; do
\
cp -f /usr/share/kernel-package/$file ./debian/;
\
done
cp: cannot stat '/usr/share/kernel-package/ChangeLog': No such file or directory
for dir in Config docs examples ruleset scripts pkg po; do
\
cp -af /usr/share/kernel-package/$dir ./debian/;
\
done
test -f debian/control || sed -e 's/=V/3.15.0-rc5/g' \
-e 's/=D/3.15.0-rc5-1/g' -e 's/=A/i386/g' \
-e 's/=SA//g' \
-e 's/=I//g' \
-e 's/=CV/3.15/g' \
-e 's/=M/Sven Joachim <[email protected]>/g' \
-e 's/=ST/linux/g' -e 's/=B/i386/g' \
-e 's/=R//g' /usr/share/kernel-package/Control >
debian/control
test -f debian/changelog || sed -e 's/=V/3.15.0-rc5/g' \
-e 's/=D/3.15.0-rc5-1/g' -e 's/=A/i386/g' \
-e 's/=ST/linux/g' -e 's/=B/i386/g' \
-e 's/=M/Sven Joachim <[email protected]>/g'
\
/usr/share/kernel-package/changelog > debian/changelog
chmod 0644 debian/control debian/changelog
test -d ./debian/stamp || mkdir debian/stamp
make -f debian/rules debian/stamp/conf/kernel-conf
make[1]: Entering directory '/usr/local/src/linux'
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
====== making target debian/stamp/conf/kernel-conf [new prereqs: ]======
make ARCH=i386 \
oldconfig;
make[2]: Entering directory '/usr/local/src/linux'
scripts/kconfig/conf --oldconfig Kconfig
#
# configuration written to .config
#
make[2]: Leaving directory '/usr/local/src/linux'
make ARCH=i386 prepare
make[2]: Entering directory '/usr/local/src/linux'
scripts/kconfig/conf --silentoldconfig Kconfig
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
CALL scripts/checksyscalls.sh
make[2]: Leaving directory '/usr/local/src/linux'
echo done > debian/stamp/conf/kernel-conf
make[1]: Leaving directory '/usr/local/src/linux'
make -f debian/rules debian/stamp/conf/full-changelog
make[1]: Entering directory '/usr/local/src/linux'
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
====== making target debian/stamp/conf/full-changelog [new prereqs: ]======
for file in ChangeLog Control Control.bin86 config templates.in rules; do
\
cp -f /usr/share/kernel-package/$file ./debian/; \
done
cp: cannot stat '/usr/share/kernel-package/ChangeLog': No such file or directory
for dir in Config docs examples ruleset scripts pkg po; do
\
cp -af /usr/share/kernel-package/$dir ./debian/;
\
done
install -p -m 755 /usr/share/kernel-package/rules debian/rules
sed -e 's/=V/3.15.0-rc5/g' \
-e 's/=D/3.15.0-rc5-1/g' -e 's/=A/i386/g' \
-e 's/=SA//g' \
-e 's/=I//g' \
-e 's/=CV/3.15/g' \
-e 's/=M/Sven Joachim <[email protected]>/g' \
-e 's/=ST/linux/g' -e 's/=B/i386/g' \
-e 's/=R//g' /usr/share/kernel-package/Control > debian/control
sed -e 's/=V/3.15.0-rc5/g' -e 's/=D/3.15.0-rc5-1/g' \
-e 's/=A/i386/g' -e 's/=M/Sven Joachim <[email protected]>/g' \
-e 's/=ST/linux/g' -e 's/=B/i386/g' \
/usr/share/kernel-package/changelog > debian/changelog
chmod 0644 debian/control debian/changelog
make -f debian/rules debian/stamp/conf/kernel-conf
make[2]: Entering directory '/usr/local/src/linux'
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
make[2]: 'debian/stamp/conf/kernel-conf' is up to date.
make[2]: Leaving directory '/usr/local/src/linux'
make[1]: Leaving directory '/usr/local/src/linux'
echo done > debian/stamp/conf/minimal_debian
exec debian/rules linux-image
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
====== making target debian/stamp/conf/vars [new prereqs: ]======
====== making target debian/stamp/build/kernel [new prereqs: vars]======
This is kernel package version 13.011.
restore_upstream_debianization
test ! -f scripts/package/builddeb.kpkg-dist || mv -f
scripts/package/builddeb.kpkg-dist scripts/package/builddeb
test ! -f scripts/package/Makefile.kpkg-dist || mv -f
scripts/package/Makefile.kpkg-dist scripts/package/Makefile
/usr/bin/make ARCH=i386 \
bzImage
make[1]: Entering directory '/usr/local/src/linux'
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
CALL scripts/checksyscalls.sh
CHK include/generated/compile.h
PASYMS arch/x86/realmode/rm/pasyms.h
LDS arch/x86/realmode/rm/realmode.lds
LD arch/x86/realmode/rm/realmode.elf
RELOCS arch/x86/realmode/rm/realmode.relocs
OBJCOPY arch/x86/realmode/rm/realmode.bin
AS arch/x86/realmode/rmpiggy.o
LD arch/x86/realmode/built-in.o
VDSOSYM arch/x86/vdso/vdso32-int80-syms.lds
VDSOSYM arch/x86/vdso/vdso32-sysenter-syms.lds
VDSOSYM arch/x86/vdso/vdso32-syms.lds
LD arch/x86/vdso/built-in.o
LD arch/x86/built-in.o
LINK vmlinux
LD vmlinux.o
MODPOST vmlinux.o
GEN .version
CHK include/generated/compile.h
UPD include/generated/compile.h
CC init/version.o
LD init/built-in.o
LD vmlinux
SORTEX vmlinux
SYSMAP System.map
VOFFSET arch/x86/boot/voffset.h
OBJCOPY arch/x86/boot/compressed/vmlinux.bin
GZIP arch/x86/boot/compressed/vmlinux.bin.gz
MKPIGGY arch/x86/boot/compressed/piggy.S
AS arch/x86/boot/compressed/piggy.o
LD arch/x86/boot/compressed/vmlinux
ZOFFSET arch/x86/boot/zoffset.h
AS arch/x86/boot/header.o
CC arch/x86/boot/version.o
LD arch/x86/boot/setup.elf
OBJCOPY arch/x86/boot/setup.bin
OBJCOPY arch/x86/boot/vmlinux.bin
BUILD arch/x86/boot/bzImage
Setup is 15216 bytes (padded to 15360 bytes).
System is 456 kB
CRC d28c9d98
Kernel: arch/x86/boot/bzImage is ready (#2)
make[1]: Leaving directory '/usr/local/src/linux'
COLUMNS=150 dpkg -l 'gcc*' perl dpkg 'libc6*' binutils make dpkg-dev |\
awk '$1 ~ /[hi]i/ { printf("%s-%s\n", $2, $3) }'> debian/stamp/build/info
uname -a >> debian/stamp/build/info
echo using the compiler: >> debian/stamp/build/info
if [ -f include/generated/compile.h ]; then \
grep LINUX_COMPILER include/generated/compile.h | \
sed -e 's/.*LINUX_COMPILER "//' -e 's/"$//' >> \
debian/stamp/build/info; \
elif [ -f include/linux/compile.h ]; then \
grep LINUX_COMPILER include/linux/compile.h | \
sed -e 's/.*LINUX_COMPILER "//' -e 's/"$//' >> \
debian/stamp/build/info; \
fi
echo done > debian/stamp/build/kernel
fakeroot /usr/bin/make -f ./debian/rules
debian/stamp/binary/pre-linux-image-3.15.0-rc5
make[1]: Entering directory '/usr/local/src/linux'
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
====== making target debian/stamp/install/linux-image-3.15.0-rc5 [new prereqs:
]======
This is kernel package version 13.011.
rm -f -r .//usr/local/src/linux/debian/linux-image-3.15.0-rc5
.//usr/local/src/linux/debian/linux-image-3.15.0-rc5.deb
install -p -d -o root -g root -m 755
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/etc/kernel/postinst.d
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/etc/kernel/preinst.d \
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/etc/kernel/postrm.d
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/etc/kernel/prerm.d
install -p -d -o root -g root -m 755
/usr/local/src/linux/debian/linux-image-3.15.0-rc5//boot
install -p -d -o root -g root -m 755
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/usr/share/doc/linux-image-3.15.0-rc5/examples
install -p -o root -g root -m 644 debian/changelog
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/usr/share/doc/linux-image-3.15.0-rc5/changelog.Debian
install -p -o root -g root -m 644 Documentation/Changes
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/usr/share/doc/linux-image-3.15.0-rc5/
test ! -d ./debian/examples/ || \
(cd ./debian; tar cf - examples | (cd
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/usr/share/doc/linux-image-3.15.0-rc5;
umask 000; tar xsf -));
install -p -o root -g root -m 644 ./debian/pkg/image/README
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/usr/share/doc/linux-image-3.15.0-rc5/debian.README
install -p -o root -g root -m 644 .config
/usr/local/src/linux/debian/linux-image-3.15.0-rc5//boot/config-3.15.0-rc5
test ! -f debian/stamp/conf/vars || \
install -p -o root -g root -m 644 debian/stamp/conf/vars
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/usr/share/doc/linux-image-3.15.0-rc5/conf.vars
echo "This was produced by kernel-package version 13.011." > \
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/usr/share/doc/linux-image-3.15.0-rc5/Buildinfo
chmod 0644
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/usr/share/doc/linux-image-3.15.0-rc5/Buildinfo
test ! -f debian/stamp/build/info || \
install -p -o root -g root -m 644 debian/stamp/build/info
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/usr/share/doc/linux-image-3.15.0-rc5/buildinfo
if test -f README.Debian ; then \
install -p -o root -g root -m 644 README.Debian
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/usr/share/doc/linux-image-3.15.0-rc5/README.Debian.1st;\
fi
if test -f Debian.src.changelog; then \
install -p -o root -g root -m 644 Debian.src.changelog
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/usr/share/doc/linux-image-3.15.0-rc5/;
\
fi
gzip -9qfr
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/usr/share/doc/linux-image-3.15.0-rc5
install -p -o root -g root -m 644 ./debian/pkg/image/copyright
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/usr/share/doc/linux-image-3.15.0-rc5/copyright
test ! -f System.map || cp System.map \
/usr/local/src/linux/debian/linux-image-3.15.0-rc5//boot/System.map-3.15.0-rc5;
test ! -f System.map || chmod 600 \
/usr/local/src/linux/debian/linux-image-3.15.0-rc5//boot/System.map-3.15.0-rc5;
cp arch/x86/boot/bzImage
/usr/local/src/linux/debian/linux-image-3.15.0-rc5//boot/vmlinuz-3.15.0-rc5
restore_upstream_debianization
test ! -f scripts/package/builddeb.kpkg-dist || mv -f
scripts/package/builddeb.kpkg-dist scripts/package/builddeb
test ! -f scripts/package/Makefile.kpkg-dist || mv -f
scripts/package/Makefile.kpkg-dist scripts/package/Makefile
chmod 600
/usr/local/src/linux/debian/linux-image-3.15.0-rc5//boot/vmlinuz-3.15.0-rc5;
if test -d /usr/local/src/linux/debian/image.d ; then \
TMPTOP=/usr/local/src/linux/debian/linux-image-3.15.0-rc5
version=3.15.0-rc5 IMAGE_TOP=/usr/local/src/linux/debian/linux-image-3.15.0-rc5
\
run-parts --verbose /usr/local/src/linux/debian/image.d ; \
fi
if [ -x debian/post-install ]; then \
TMPTOP=/usr/local/src/linux/debian/linux-image-3.15.0-rc5 STEM=linux
version=3.15.0-rc5 \
IMAGE_TOP=/usr/local/src/linux/debian/linux-image-3.15.0-rc5
debian/post-install; \
fi
test ! -f Kerntypes || cp Kerntypes \
/usr/local/src/linux/debian/linux-image-3.15.0-rc5//boot/Kerntypes-3.15.0-rc5
test ! -f Kerntypes || chmod 600 \
/usr/local/src/linux/debian/linux-image-3.15.0-rc5//boot/Kerntypes-3.15.0-rc5
====== making target debian/stamp/binary/pre-linux-image-3.15.0-rc5 [new
prereqs: linux-image-3.15.0-rc5]======
This is kernel package version 13.011.
/usr/bin/make -f ./debian/rules debian/stamp/binary/linux-image-3.15.0-rc5
make[2]: Entering directory '/usr/local/src/linux'
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
dpkg-architecture: error: unknown Debian architecture 686, you must specify GNU
system type, too
====== making target debian/stamp/binary/linux-image-3.15.0-rc5 [new prereqs:
]======
This is kernel package version 13.011.
install -p -d -o root -g root -m 755
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/DEBIAN
sed -e 's/=V/3.15.0-rc5/g' -e 's/=IB/True/g' \
-e 's/=ST/linux/g' -e 's/=R//g' \
-e 's/=KPV/13.011/g' \
-e 's/=K/vmlinuz/g' \
-e 's/=I/YES/g' -e 's,=D,/boot,g' \
-e 's@=A@i386@g' \
-e 's@=B@i386@g' \
./debian/pkg/image/postinst >
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/DEBIAN/postinst
chmod 755 /usr/local/src/linux/debian/linux-image-3.15.0-rc5/DEBIAN/postinst
sed -e 's/=V/3.15.0-rc5/g' -e 's/=IB/True/g' \
-e 's/=ST/linux/g' -e 's/=R//g' \
-e 's/=KPV/13.011/g' \
-e 's/=K/vmlinuz/g' \
-e 's/=I/YES/g' -e 's,=D,/boot,g' \
-e 's@=A@i386@g' \
-e 's@=B@i386@g' \
./debian/pkg/image/config >
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/DEBIAN/config
chmod 755 /usr/local/src/linux/debian/linux-image-3.15.0-rc5/DEBIAN/config
sed -e 's/=V/3.15.0-rc5/g' -e 's/=IB/True/g' \
-e 's/=ST/linux/g' -e 's/=R//g' \
-e 's/=KPV/13.011/g' \
-e 's/=K/vmlinuz/g' \
-e 's/=I/YES/g' -e 's,=D,/boot,g' \
-e 's/=MD//g' \
-e 's@=MK@@g' -e 's@=A@i386@g' \
-e 's@=M@@g' -e 's/=OF//g' \
-e 's/=S//g' -e 's@=B@i386@g' \
./debian/pkg/image/postrm >
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/DEBIAN/postrm
chmod 755 /usr/local/src/linux/debian/linux-image-3.15.0-rc5/DEBIAN/postrm
sed -e 's/=V/3.15.0-rc5/g' -e 's/=IB/True/g' \
-e 's/=ST/linux/g' -e 's/=R//g' \
-e 's/=KPV/13.011/g' \
-e 's/=K/vmlinuz/g' \
-e 's/=I/YES/g' -e 's,=D,/boot,g' \
-e 's/=MD//g' \
-e 's@=MK@@g' -e 's@=A@i386@g' \
-e 's@=M@@g' -e 's/=OF//g' \
-e 's/=S//g' -e 's@=B@i386@g' \
./debian/pkg/image/preinst >
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/DEBIAN/preinst
chmod 755 /usr/local/src/linux/debian/linux-image-3.15.0-rc5/DEBIAN/preinst
sed -e 's/=V/3.15.0-rc5/g' -e 's/=IB/True/g' \
-e 's/=ST/linux/g' -e 's/=R//g' \
-e 's/=KPV/13.011/g' \
-e 's/=K/vmlinuz/g' \
-e 's/=I/YES/g' -e 's,=D,/boot,g' \
-e 's/=MD//g' \
-e 's@=MK@@g' -e 's@=A@i386@g' \
-e 's@=M@@g' -e 's/=OF//g' \
-e 's/=S//g' -e 's@=B@i386@g' \
./debian/pkg/image/prerm >
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/DEBIAN/prerm
chmod 755 /usr/local/src/linux/debian/linux-image-3.15.0-rc5/DEBIAN/prerm
po2debconf debian/templates.in > debian/templates.l10n
sed -e 's/=V/3.15.0-rc5/g' -e 's/=IB/True/g' \
-e 's/=ST/linux/g' -e 's/=R//g' \
-e 's/=KPV/13.011/g' \
-e 's/=K/vmlinuz/g' \
-e 's@=MK@@g' -e 's@=A@i386@g' \
-e 's/=I/YES/g' -e 's,=D,/boot,g' \
-e 's/=MD//g' \
-e 's@=M@@g' -e 's/=OF//g' \
-e 's/=S//g' -e 's@=B@i386@g' \
./debian/templates.l10n > ./debian/templates.master
install -p -o root -g root -m 644 ./debian/templates.master
/usr/local/src/linux/debian/linux-image-3.15.0-rc5/DEBIAN/templates
dpkg-gencontrol -DArchitecture= -isp \
-plinux-image-3.15.0-rc5
-P/usr/local/src/linux/debian/linux-image-3.15.0-rc5/
create_md5sums_fn () { cd $1 ; find . -type f ! -regex './DEBIAN/.*' ! -regex
'./var/.*' -printf '%P\0' | xargs -r0 md5sum > DEBIAN/md5sums ; if [ -z
"DEBIAN/md5sums" ] ; then rm -f "DEBIAN/md5sums" ; fi ; } ; create_md5sums_fn
/usr/local/src/linux/debian/linux-image-3.15.0-rc5
chmod -R og=rX
/usr/local/src/linux/debian/linux-image-3.15.0-rc5
test ! -e
/usr/local/src/linux/debian/linux-image-3.15.0-rc5//boot/vmlinuz-3.15.0-rc5
|| chmod og-rx
/usr/local/src/linux/debian/linux-image-3.15.0-rc5//boot/vmlinuz-3.15.0-rc5
test ! -e
/usr/local/src/linux/debian/linux-image-3.15.0-rc5//boot/System.map-3.15.0-rc5
|| \
chmod og-rx
/usr/local/src/linux/debian/linux-image-3.15.0-rc5//boot/System.map-3.15.0-rc5
/usr/local/src/linux/debian/linux-image-3.15.0-rc5//boot/vmlinuz-3.15.0-rc5
chown -R root:root
/usr/local/src/linux/debian/linux-image-3.15.0-rc5
dpkg --build
/usr/local/src/linux/debian/linux-image-3.15.0-rc5 ..
dpkg-deb: warning: parsing file
'/usr/local/src/linux/debian/linux-image-3.15.0-rc5/DEBIAN/control' near line
26 package 'linux-image-3.15.0-rc5':
missing architecture
dpkg-deb: warning: ignoring 1 warning about the control file(s)
dpkg-deb: building package `linux-image-3.15.0-rc5' in
`../linux-image-3.15.0-rc5_3.15.0-rc5-1_.deb'.
make[2]: Leaving directory '/usr/local/src/linux'
make[1]: Leaving directory '/usr/local/src/linux'
-- System Information:
Debian Release: jessie/sid
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'stable'), (101, 'experimental')
Architecture: i386 (x86_64)
Kernel: Linux 3.14.4-nouveau+ (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages kernel-package depends on:
ii bc 1.06.95-8
ii binutils 2.24.51.20140425-1
ii build-essential 11.6
ii bzip2 1.0.6-5
ii file 1:5.18-1
ii gettext 0.18.3.2-1
ii kmod 17-2
ii po-debconf 1.0.16+nmu2
ii xmlto 0.0.25-2
ii xz-utils [lzma] 5.1.1alpha+20120614-2
Versions of packages kernel-package recommends:
ii cpio 2.11+dfsg-2
pn docbook-utils <none>
ii kernel-common 13.011
pn uboot-mkimage <none>
Versions of packages kernel-package suggests:
ii libncurses5-dev [libncurses-dev] 5.9+20140118-1
pn linux-source <none>
-- no debconf information