Package: lintian Version: 2.4.3 Severity: wishlist Tags: patch User: debian-...@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.min...@linaro.org> Wed, 16 Mar 2011 18:29:28 +0100 + lintian (2.5.0~rc1) experimental; urgency=low The "welcome Niels Thykier!" release.