set-paths phase throws match-error "match" "no matching pattern" while cross-compiling a kernel module

  • Open
  • quality assurance status badge
Details
2 participants
  • Maxime Devos
  • Pavel Shlyak
Owner
unassigned
Submitted by
Pavel Shlyak
Severity
normal
P
P
Pavel Shlyak wrote on 27 Jun 2022 20:05
(address . bug-guix@gnu.org)
7DAC1F06-8B35-4677-B072-9E65FEF8EC59@pantherx.org
I don’t know the reason it happens. Maybe it’s somehow related to file-append hack that is used to set driver location in the repo. The other problem can be about
inputs or native-inputs being empty. Anyway, package definition looks fine to me and I suppose there’s a problem with set-paths phase.
Package definition:
Package ltr30x-linux-module builds successfully here with aarch64 host and it fails if I cross-compile it with x86_64 host
Error log here:
P
P
Pavel Shlyak wrote on 27 Jun 2022 20:10
Another reproducer
(address . 56263@debbugs.gnu.org)
417E9A2B-6A16-4602-8573-8D7A51CE2155@pantherx.org
Another reproducer:
guix build librem-ec-acpi-linux-module --target=aarch64-linux-gnu
Fails with the same error. It doesn’t require external packages like the previous reproducer.
P
P
Pavel Shlyak wrote on 10 Aug 2022 19:00
set-paths phase throws match-error "match" "no matching pattern" while cross-compiling a kernel module
(address . 56263@debbugs.gnu.org)
60567E67-2134-4A58-94A9-C528C20E7DAB@pantherx.org
I just checked, this one is still relevant as of b21d05d232ec0aba5abec20e83cc52c1d5163cc3
M
M
Maxime Devos wrote on 10 Aug 2022 19:45
0eecd7c6-6f92-79f6-5ef4-60e9be2cfed1@telenet.be
On 27-06-2022 20:05, Pavel Shlyak wrote:
Toggle quote (3 lines)
> Error log here:
> https://gist.github.com/shlyakpavel/b8b53e9bb4392cce1bba3c77c6d35d58
>
I recommend a paste service such as paste.debian.net, it's doesn't have
trackers or non-free javascript, and its implementation is apparently
unlike GitHub.
Greetings,
Maxime.
Attachment: OpenPGP_signature
M
M
Maxime Devos wrote on 10 Aug 2022 20:02
b9021b87-ca72-d86e-abbd-ddd840fa7a64@telenet.be
On 27-06-2022 20:05, Pavel Shlyak wrote:
Toggle quote (7 lines)
> I don’t know the reason it happens. Maybe it’s somehow related to file-append hack that is used to set driver location in the repo. The other problem can be about
> inputs or native-inputs being empty. Anyway, package definition looks fine to me and I suppose there’s a problem with set-paths phase.
> Package definition:
> https://git.pantherx.org/development/hardware/raspberry/-/blob/c9260f1720f63c409ef3ce88cefa677a21eb9e0b/reterminal.scm
> Package ltr30x-linux-module builds successfully here with aarch64 host and it fails if I cross-compile it with x86_64 host
> Error log here:
> https://gist.github.com/shlyakpavel/b8b53e9bb4392cce1bba3c77c6d35d58
linux-module-build-cross quotes stuff:
          (define %build-host-inputs
            '#+(input-tuples->gexp build-inputs))
but 'input-tuples->gexp' already returns something quoted, so its quoted
twice.
Try removing the 'quote' (i.e., ').
No relation to file-append as far as I can tell.
In rpi-kernel.scm, you are copying stuff from linux.scm without
preserving copyright lines or the license header and the GPL license
text is also removed; please respect the GPL license.
In the README, you are writing GUIX, but the standard capitalisation is
Guix (sometimes guix, but never GUIX outside things like environment
variable names).
License headers are missing from teterminal.scm, I recommend being
explicit (gpl3 is kind of implied, but do you mean gpl3-only or gpl3+?)
Greetings,
Maxime.
Attachment: OpenPGP_signature
?