Bug#618587: armhf support
Package: lintian
Version: 2.4.3
Severity: wishlist
Tags: patch
User: debian-arm@lists.debian.org
Usertags: armhf
Hey there
While working on adding armhf to control files, I got some warnings
from lintian that armhf is an unknown architecture. I see most
occurrences in lintian are from autogenerated data coming from
dpkg-architecture, except for the expected output of the "file"
command. dpkg.git just got support for armhf, so this should land in
the next upload, but I've built and installed a dpkg here and ran the
lintian update scripts.
I'm attaching a patch which updates all mentions of armel in lintian to
also cover armhf; you probably want to wait for the dpkg upload to
merge this though.
Concerning the output of "file" on armhf binaries, I looked at
patching the file magic to detect hard-float versus soft-float
binaries, but while detecting EABI (arm versus armel) is reasonnably
easy, it's much harder to detect the floating point ABI as it's in an
"aeabi" section of the ELF file which requires parsing of the ELF
string tables to find out the right section, and then the right tags
need to be located in the section. It would be much easier to use
readelf -A to detect these binaries instead.
So this means that %ARCH_REGEX has duplicate entries for armel and
armhf, just as for i386 and lpia.
For my own reference, this is the snippet to have file's ELF snippet
detect ARM EABI binaries:
# ARM EABI
>>18 leshort 40
>>>4 byte 1
>>>>36 lelong&0xff000000 >0 EABI,
Thanks!
--
Loïc Minier
diff -Nru lintian-2.5.0~rc1/checks/binaries lintian-2.5.0~rc1armhf1/checks/binaries
--- lintian-2.5.0~rc1/checks/binaries 2011-02-20 10:23:45.000000000 +0100
+++ lintian-2.5.0~rc1armhf1/checks/binaries 2011-03-16 18:29:20.000000000 +0100
@@ -39,6 +39,7 @@
'arm' => qr'ELF 32-bit LSB .* ARM, version \d,',
'armeb' => qr'ELF 32-bit MSB .* ARM',
'armel' => qr'ELF 32-bit LSB .* ARM, .* \(SYSV\)',
+ 'armhf' => qr'ELF 32-bit LSB .* ARM, .* \(SYSV\)',
# 'avr32' => qr'ELF 32-bit MSB .* \(SYSV\)',
'hppa' => qr'ELF 32-bit MSB .* PA-RISC',
'hppa64' => qr'ELF 64-bit MSB .* PA-RISC',
diff -Nru lintian-2.5.0~rc1/data/fields/architectures lintian-2.5.0~rc1armhf1/data/fields/architectures
--- lintian-2.5.0~rc1/data/fields/architectures 2011-02-20 10:23:45.000000000 +0100
+++ lintian-2.5.0~rc1armhf1/data/fields/architectures 2011-03-16 18:29:20.000000000 +0100
@@ -1,5 +1,5 @@
# List of known architectures as provided by dpkg-architecture
-# Last updated: 2011-02-19
+# Last updated: 2011-03-16
# With: Debian dpkg-architecture version 1.15.8.10.
all
@@ -9,6 +9,7 @@
arm
armeb
armel
+armhf
avr32
darwin-alpha
darwin-amd64
diff -Nru lintian-2.5.0~rc1/data/files/triplets lintian-2.5.0~rc1armhf1/data/files/triplets
--- lintian-2.5.0~rc1/data/files/triplets 2011-02-20 10:23:45.000000000 +0100
+++ lintian-2.5.0~rc1armhf1/data/files/triplets 2011-03-16 18:29:20.000000000 +0100
@@ -1,6 +1,6 @@
# List of "triplet architecture" relationships as provided by
# dpkg-architecture
-# Last updated: 2011-02-19
+# Last updated: 2011-03-16
# With: Debian dpkg-architecture version 1.15.8.10.
alpha-darwin darwin-alpha
@@ -23,6 +23,7 @@
arm-kopensolaris-gnu kopensolaris-arm
arm-linux-gnu arm
arm-linux-gnueabi armel
+arm-linux-gnueabihf armhf
arm-linux-uclibc uclibc-linux-arm
arm-linux-uclibceabi uclibc-linux-armel
arm-netbsd netbsd-arm
diff -Nru lintian-2.5.0~rc1/debian/changelog lintian-2.5.0~rc1armhf1/debian/changelog
--- lintian-2.5.0~rc1/debian/changelog 2011-02-23 03:28:50.000000000 +0100
+++ lintian-2.5.0~rc1armhf1/debian/changelog 2011-03-16 18:29:38.000000000 +0100
@@ -1,3 +1,12 @@
+lintian (2.5.0~rc1armhf1) UNRELEASED; urgency=low
+
+ * check/binaries: add support for armhf with the same pattern as armel for
+ now.
+ * Run "private/refresh-archs data" with an armhf-aware dpkg-architecture to
+ refresh data/fields/architectures and data/files/triplets.
+
+ -- Loïc Minier <loic.minier@linaro.org> Wed, 16 Mar 2011 18:29:28 +0100
+
lintian (2.5.0~rc1) experimental; urgency=low
The "welcome Niels Thykier!" release.
Reply to: