Web lists-archives.com

Exclude some architectures from an architecture-independent package ?


I'm the maintainer of package acpi-call, which is a kernel module
allowing a user to call ACPI methods. Its build is handled by DKMS.

The module used to build on all architectures, even if it was obviously
useless on those which don't support ACPI.

Starting with Linux 5.2, what used to be a mere warning about
"acpi_root_dir" set to an undefined value, became an error, and prevents
the module to be built on architectures which don't support ACPI,
meaning every one except i386, amd64, ia64 and arm64.

Since, AFAIK, the "Architecture" field in debian/control doesn't allow
tuning the "all" wildcard by excluding some architectures, I have
several (IMHO non-optimal) solutions to fix this:

1/ Restrict the architectures to i386, amd64, ia64, arm64 in
debian/control. This would fix the problem, but will make the mirrors
hold four copies of nearly identical binary packages, so wasting some
space (even if it's not much: the binary package holding the module
source code for DKMS is only 13 KB in size).

2/ Keep "arch:all" and set KBUILD_MODPOST_WARN in the module source
code, to allow build on unsupported architectures.

3/ Keep the status quo and close the bug [1] as wontfix (that's what the
reporter of [2], which is a duplicate of [1], did).

[1] https://bugs.launchpad.net/ubuntu/+source/acpi-call/+bug/1830040
[2] https://bugs.launchpad.net/ubuntu/+source/acpi-call/+bug/1830787

What would be the "cleanest" solution according to you ?

Thanks in advance for your advice.


Raphaël Halimi

Attachment: signature.asc
Description: OpenPGP digital signature