[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#794295: lintian: please complain about development packages that make cross building impossible



Hi Chris,

TL;DR: I suggest ignoring Multi-Arch: foreign packages for the purpose of
this tag to remove false positives.

Explanation:

On Sat, Dec 09, 2017 at 10:44:26PM +0000, Chris Lamb wrote:
> I've implemented this in Git:
> 
>   https://anonscm.debian.org/git/lintian/lintian.git/commit/?id=fc226826c81a5642779e422d927aa334e2ff1587
> 
> I hope it's useful :)

Thank you!

In the mean time, I gained a bit more experience with these issues and
wonder whether there should be an additional restriction:

some libraries are header-only or split their tools into separate
Multi-Arch: foreign packages.  A quick grep-dctrl -F Section libdevel -a
-F Multi-Arch foreign -sPackage -n suggests that this is true for 130
packages. Now the question is: How many of these ship ELF executables?
Hard to answer, but the following ship some (not necessarily ELF)
executables:

libkf5akonadi-dev: /usr/bin/akonadi2xml
libkf5akonadi-dev: /usr/bin/akonaditest
libkf5akonadi-dev-bin: /usr/bin/akonadi_knut_resource
libboost1.61-tools-dev: /usr/bin/b2
libboost1.61-tools-dev: /usr/bin/bcp
libboost1.61-tools-dev: /usr/bin/bjam
libboost1.61-tools-dev: /usr/bin/inspect
libboost1.61-tools-dev: /usr/bin/quickbook
libboost1.62-tools-dev: /usr/bin/b2
libboost1.62-tools-dev: /usr/bin/bcp
libboost1.62-tools-dev: /usr/bin/bjam
libboost1.62-tools-dev: /usr/bin/inspect
libboost1.62-tools-dev: /usr/bin/quickbook
libboost1.63-tools-dev: /usr/bin/b2
libboost1.63-tools-dev: /usr/bin/bcp
libboost1.63-tools-dev: /usr/bin/bjam
libboost1.63-tools-dev: /usr/bin/inspect
libboost1.63-tools-dev: /usr/bin/quickbook
libglib2.0-dev-bin: /usr/bin/gdbus-codegen
libglib2.0-dev-bin: /usr/bin/glib-genmarshal
libglib2.0-dev-bin: /usr/bin/glib-gettextize
libglib2.0-dev-bin: /usr/bin/glib-mkenums
libglib2.0-dev-bin: /usr/bin/gobject-query
libglib2.0-dev-bin: /usr/bin/gtester
libglib2.0-dev-bin: /usr/bin/gtester-report
libc-dev-bin: /usr/bin/gencat
libc-dev-bin: /usr/bin/mtrace
libc-dev-bin: /usr/bin/rpcgen
libc-dev-bin: /usr/bin/sotruss
libc-dev-bin: /usr/bin/sprof
icu-devtools: /usr/bin/derb
icu-devtools: /usr/bin/genbrk
icu-devtools: /usr/bin/gencfu
icu-devtools: /usr/bin/gencnval
icu-devtools: /usr/bin/gendict
icu-devtools: /usr/bin/genrb
icu-devtools: /usr/bin/icuinfo
icu-devtools: /usr/bin/makeconv
icu-devtools: /usr/bin/pkgdata
icu-devtools: /usr/bin/uconv
icu-devtools: /usr/sbin/escapesrc
icu-devtools: /usr/sbin/genccode
icu-devtools: /usr/sbin/gencmn
icu-devtools: /usr/sbin/gennorm2
icu-devtools: /usr/sbin/gensprep
icu-devtools: /usr/sbin/icupkg
libkf5coreaddons-bin-dev: /usr/bin/desktoptojson
lib3ds-dev: /usr/bin/3dsdump
libmikmod-config: /usr/bin/libmikmod-config
libpng-tools: /usr/bin/png-fix-itxt
libpng-tools: /usr/bin/pngfix
libvncserver-config: /usr/bin/libvncserver-config
qtchooser: /usr/bin/assistant
qtchooser: /usr/bin/designer
qtchooser: /usr/bin/lconvert
qtchooser: /usr/bin/linguist
qtchooser: /usr/bin/lrelease
qtchooser: /usr/bin/lupdate
qtchooser: /usr/bin/moc
qtchooser: /usr/bin/pixeltool
qtchooser: /usr/bin/qcollectiongenerator
qtchooser: /usr/bin/qdbus
qtchooser: /usr/bin/qdbuscpp2xml
qtchooser: /usr/bin/qdbusviewer
qtchooser: /usr/bin/qdbusxml2cpp
qtchooser: /usr/bin/qdoc
qtchooser: /usr/bin/qdoc3
qtchooser: /usr/bin/qgltf
qtchooser: /usr/bin/qhelpconverter
qtchooser: /usr/bin/qhelpgenerator
qtchooser: /usr/bin/qlalr
qtchooser: /usr/bin/qmake
qtchooser: /usr/bin/qml
qtchooser: /usr/bin/qml1plugindump
qtchooser: /usr/bin/qmlbundle
qtchooser: /usr/bin/qmlcachegen
qtchooser: /usr/bin/qmleasing
qtchooser: /usr/bin/qmlimportscanner
qtchooser: /usr/bin/qmljs
qtchooser: /usr/bin/qmllint
qtchooser: /usr/bin/qmlmin
qtchooser: /usr/bin/qmlplugindump
qtchooser: /usr/bin/qmlprofiler
qtchooser: /usr/bin/qmlscene
qtchooser: /usr/bin/qmltestrunner
qtchooser: /usr/bin/qmlviewer
qtchooser: /usr/bin/qtchooser
qtchooser: /usr/bin/qtconfig
qtchooser: /usr/bin/qtdiag
qtchooser: /usr/bin/qtpaths
qtchooser: /usr/bin/qtplugininfo
qtchooser: /usr/bin/qvkgen
qtchooser: /usr/bin/rcc
qtchooser: /usr/bin/repc
qtchooser: /usr/bin/uic
qtchooser: /usr/bin/uic3
qtchooser: /usr/bin/xmlpatterns
qtchooser: /usr/bin/xmlpatternsvalidator
libsimage-dev: /usr/bin/simage-config
libkf5sonnet-dev-bin: /usr/bin/gentrigrams
libkf5sonnet-dev-bin: /usr/bin/parsetrigrams
uwsgi-dev: /usr/bin/dh_uwsgi
libwayland-bin: /usr/bin/wayland-scanner
wine64-tools: /usr/bin/widl-stable
wine64-tools: /usr/bin/winebuild-stable
wine64-tools: /usr/bin/winecpp-stable
wine64-tools: /usr/bin/winedump-stable
wine64-tools: /usr/bin/wineg++-stable
wine64-tools: /usr/bin/winegcc-stable
wine64-tools: /usr/bin/winemaker-stable
wine64-tools: /usr/bin/wmc-stable
wine64-tools: /usr/bin/wrc-stable
wine64-development-tools: /usr/bin/widl-development
wine64-development-tools: /usr/bin/winebuild-development
wine64-development-tools: /usr/bin/winecpp-development
wine64-development-tools: /usr/bin/winedump-development
wine64-development-tools: /usr/bin/wineg++-development
wine64-development-tools: /usr/bin/winegcc-development
wine64-development-tools: /usr/bin/winemaker-development
wine64-development-tools: /usr/bin/wmc-development
wine64-development-tools: /usr/bin/wrc-development

I guess icu-devtools *-dev-bin *-tools-dev and more will be false
positives. Some of these certainly are wrongly marked Multi-Arch:
foreign. (KDE is prone to abusing that, e.g. #872207.)

Thus I suggest ignoring Multi-Arch: foreign packages for the purpose of
this tag to remove false positives.

Helmut


Reply to: