cpio: Fix device number calculation.
authorTobias Geerinckx-Rice <me@tobias.gr>
Sun, 4 Jul 2021 02:26:01 +0000 (04:26 +0200)
committerTobias Geerinckx-Rice <me@tobias.gr>
Sun, 4 Jul 2021 02:35:35 +0000 (04:35 +0200)
commitf7e14782025bf87aaef694a21f34010b1a95f7f6
tree7b147bf974e3e0d811fc950b0b1d7a2b4dc3e8b6
parent7cde70c7f88e1b283bb61d8a35c5ceeafb39884e
cpio: Fix device number calculation.

“dev_t in glibc is a 64-bit quantity, with 32-bit major and minor
 numbers.”  — glibc's <bits/sysmacros.h>

The "tests/cpio.scm" was failing because (guix cpio) treated it as a
16-bit quantity instead, leading to header mismatches with the GNU cpio
reference output.

* guix/cpio.scm (device-number, device->major+minor): Use all the bits.
guix/cpio.scm